.fv{
    margin-top:0;
	/*margin-top:120px;*/
    width:100%;
	z-index: 1;
}
.fv__img{
    position:relative
}
.fv__img--main{
    object-fit:contain;
    width:100%;
    height:100%
}
@media screen and (max-width:1280px){
    .fv{
        height:auto
    }
    .fv__img{
        position:relative
    }
}
@media screen and (max-width:1100px){
    .fv{
        margin-top:0;
    }
}
@media screen and (max-width:767px){
    .fv{
        margin-top:50px;
    }
	.fv__img{
        height:0;
        padding-bottom:50%
    }
    .fv__img--main{
        position:absolute;
        top:0;
        left:0
    }
}

.catch {
	padding-right:30px;
    padding-left:30px;
    margin-right:auto;
    margin-left:auto;
    max-width:1260px;
	box-sizing: border-box;
	text-align: center;
	padding-top: 3em;
	padding-bottom: 3.2em;
}
.catch p {
	font-size: 3.0rem;
	line-height: 2;
	font-family: 'Noto Serif JP', sans-serif;
}
@media screen and (max-width:767px){
	.catch {
		padding-right:5%;
		padding-left:5%;
		max-width:auto;
		padding-top: 3em;
		padding-bottom: 3.2em;
	}
	.catch p {
		font-size: 1.9rem;
	}
}

.menu__panel{
    border-top:2px solid #e0e0e0;
    height:385px
}
.menu__panel.bgGray {
	background: #fcfcfc;
}
.menu__panel:nth-child(odd) .menu__img{
    order:1
}
.menu__panel:nth-child(2n) .menu__img,.menu__panel:nth-child(odd) .menu__txt{
    order:2
}
.menu__panel:nth-child(2n) .menu__txt{
    order:1
}
.menu__inner{
    padding-right:30px;
    padding-left:30px;
    margin-right:auto;
    margin-left:auto;
    max-width:1260px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    height:100%
}
@media screen and (max-width:1050px){
    .menu__inner{
        max-width:100%;
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:900px){
    .menu__inner{
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:767px){
    .menu__inner{
        padding-right:20px;
        padding-left:20px
    }
}
.menu__img{
    position:relative;
    flex:1 0 0%;
    height:100%;
    overflow:hidden
}
.menu__img img{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    object-fit:cover;
    object-position:center;
    width:100%;
    height:100%;
    -webkit-transition:all .4s ease;
    -moz-transition:all .4s ease;
    -o-transition:all .4s ease;
    transition:all .4s ease
}
.menu__img a{
    display:block
}
@media screen and (min-width:1025px){
    .menu__img a:hover img{
        width:104%;
        height:104%
    }
}
.menu__txt{
    display:block;
    width:480px;
    text-align:center;
    height:100%;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:center;
    flex-direction:column;
	padding: 30px;
}
@media screen and (min-width:1025px){
    .menu__txt:hover+.menu__img img{
        width:104%;
        height:104%
    }
}
.menu__ttl{
    font-size:3rem;
	font-weight: bold;
	color: #000066;
    letter-spacing:.1em
}
.menu__ttlEn{
    margin-top:0.6em;
    font-size:1.5rem;
	color: #999999;
}
.menu__desc{
    margin-top:2em;
    font-size:1.6rem;
    line-height:1.6;
    letter-spacing:.02em
}

.menu__link{
    margin-top:2em;
	background: #000066;
    color:#fff;
    font-size:1.5rem;
	line-height: 1.2;
	font-weight: bold;
    position:relative;
    display:inline-block;
    padding:0.65em 3em 0.55em 1.5em;
    transition:all .4s ease;
	border-radius: 0.6em;
}
.menu__link:after{
    position:absolute;
    right:1.4em;
    top:50%;
    width:1em;
    height:1em;
	margin-top: -0.5em;
    content:"";
    background:url("../img/base/icn-arrow_wh.svg") no-repeat center center / cover;
}
@media screen and (max-width:1050px){
    .menu__inner{
        padding-right:0;
        padding-left:0
    }
}
@media screen and (max-width:900px){
    .menu__txt{
        width:46.875%
    }
    .menu__ttl{
        line-height:3.6rem
    }
}
@media screen and (max-width:767px){
    .menu__panel{
        height:auto
    }
    .menu__inner{
        display:block
    }
    .menu__img,.menu__img img{
        width:100%;
        height:auto
    }
    .menu__img img{
        position:static;
        transform:none
    }
    .menu__txt{
        width:100%;
        padding:28px 0 42px
    }
    .menu__icn img{
        width:auto;
        height:53px
    }
    .menu__ttl{
        font-size:2.4rem;
        line-height:3.2rem
    }
}

.organ {
	background: url("../img/index/bg_organ.jpg") no-repeat center center / cover;
	padding:90px 0 70px;
	text-align: center;
	color: #fff;
}
.organ__inner{
    padding-right:30px;
    padding-left:30px;
    margin-right:auto;
    margin-left:auto;
    max-width:1260px
}
.organ .menu__ttl{
    font-size:3rem;
	color: #fff;
	text-align: center;
}
.organ .menu__ttlEn{
    margin-top:0.6em;
    font-size:1.5rem;
	color: #fff;
	text-align: center;
}
.organ .menu__desc{
    margin-top:2em;
    font-size:1.6rem;
    line-height:1.6;
	color: #fff;
	text-align: center;
}
.organ ul {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	margin-top: 75px;
}
.organ ul li {
	width: calc(calc(100% - 40px) / 3);
	margin: 0 10px 20px;
	padding: 0.5em 1em 1em;
	border: 2px solid #fff;
	box-sizing: border-box;
	position: relative;
}
.organ ul li:nth-child(3n+1) {
	margin-left: 0;
}
.organ ul li:nth-child(3n) {
	margin-right: 0;
}
.organ ul li:before {
	content: '';
	display: block;
	padding-top: 70%;
	background-repeat: no-repeat;
	background-position: top center;
	background-size: 76% auto;
}
.organ ul li a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transition:all .4s ease;
	box-sizing: border-box;
	background: rgba(255,255,255,0);
}
.organ ul li a:hover {
	opacity: 0.8;
	background: rgba(255,255,255,0.2);
}
.organ ul li.esophagus:before {
	background-image: url("../img/index/icon_org_esophagus.svg");
}
.organ ul li.stomach:before {
	background-image: url("../img/index/icon_org_stomach.svg");
}
.organ ul li.liver:before {
	background-image: url("../img/index/icon_org_liver.svg");
}
.organ ul li.biliarytract:before {
	background-image: url("../img/index/icon_org_biliarytract.svg");
}
.organ ul li.pancreas:before {
	background-image: url("../img/index/icon_org_pancreas.svg");
}
.organ ul li.largeintestines:before {
	background-image: url("../img/index/icon_org_largeintestines.svg");
}
.organ ul li.prediatricsurgery:before {
	background-image: url("../img/index/icon_org_prediatricsurgery.svg");
}
.organ ul li.topics01:before {
	background-image: url("../img/index/icon_topics_topics01.svg");
}
.organ ul li.topics02:before {
	background-image: url("../img/index/icon_topics_topics02.svg");
}
.organ ul li.topics03:before {
	background-image: url("../img/index/icon_topics_topics03.svg");
}
.organ ul li.topics04:before {
	background-image: url("../img/index/icon_topics_topics04.svg");
}
.organ ul li.topics07:before {
	background-image: url("../img/index/icon_topics_topics07.svg");
}
.organ ul li.topics08:before {
	background-image: url("../img/index/icon_topics_topics08.svg");
}
.organ ul li.topics09:before {
	background-image: url("../img/index/icon_topics_topics09.svg");
}
.organ ul li h3 {
	position: absolute;
	top: 55%;
	left: 0;
	right: 0;
	font-size: clamp(1.5rem, 1.9vw, 2.5rem);
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: 0.03em;
	padding-left: 0.3em;
	margin-top: 0.3em;
}
.organ ul li.topics04 h3 {
	margin-top: -0.5em;
}
@media screen and (max-width:767px){
	.organ ul li.topics04 h3 {
		margin-top: -0.3em;
	}
}
.organ ul li .menu__link {
	position: absolute;
	top: 82%;
	left: 0;
	right: 0;
	margin-top: -0.8em;
	margin-left: auto;
	margin-right: auto;
	padding:0.3em 3em 0.3em 1.5em;
	width: 11em;
	border-width: 1px;
	border-style: solid;
	border-color: rgba(255,255,255,0.7);
}

@media screen and (max-width:1050px){
	.organ ul li .menu__link {
		font-size: 1.4rem;
	}
}
@media screen and (max-width:767px) {
	.organ {
		padding:45px 0 35px;
	}
	.organ__inner{
		padding-right:5%;
		padding-left:5%;
		max-width:100%;
		box-sizing: border-box;
	}
	.organ .menu__ttl{
		font-size:2.4rem;
	}
	.organ ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 35px;
	}
	.organ ul li {
		width: 47.5%;
		margin: 0 2.5% 20px;
		padding: 0.5em 0.5em 1em;
		box-sizing: border-box;
	}
	.organ ul li:before {
		padding-top: 95%;
		background-size: 90% auto;
	}
	.organ ul li:nth-child(4n+1) {
		margin-left: inherit;
	}
	.organ ul li:nth-child(2n+1){
		margin-left: 0;
	}
	.organ ul li:nth-child(4n) {
		margin-right: inherit;
	}
	.organ ul li:nth-child(2n) {
		margin-right: 0;
	}
	.organ ul li h3 {
		top: 51%;
		font-size: clamp(3.9vw, 3.9vw, 2.5rem);
	}
	.organ ul li h3.h3_2 {
		margin-top: -0.4em;
	}
	.organ ul li .menu__link {
		top: 84%;
		left: 0.5em;
		right: 0.5em;
		line-height: 1.15;
		/*font-size: 1.25rem;*/
		font-size: clamp(2.5vw, 2.5vw, 1.7rem);
	}
}
.news{
    background:#fcfcfc;
    padding:90px 0 60px;
    border-top:1px solid #e0e0e0
}
.news__inner{
    padding-right:30px;
    padding-left:30px;
    margin-right:auto;
    margin-left:auto;
    max-width:1260px
}
@media screen and (max-width:1050px){
    .news__inner{
        max-width:100%;
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:900px){
    .news__inner{
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:767px){
    .news__inner{
        padding-right:20px;
        padding-left:20px
    }
}
.news .ttl{
    font-size:3rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	text-align: center;
}
.news .ttlEn{
    margin-top:0.6em;
    font-size:1.5rem;
	text-align: center;
}
.news__list{
    margin-top:2em;
}
.news__list a {
	color: inherit;
	text-decoration: none;
}
.news__item{
    border-bottom:1px solid #e0e0e0
}
.news__item a {
	display:flex;
	justify-content: flex-start;
	align-items: top;
	padding: 1.5em 0;
}

@media screen and (min-width:1025px){
    .news__item a:hover{
        opacity:.7
    }
}
.news__date{
    width: 8em;
	line-height: 1.8;
}
.news__ttl{
    flex: 1;
	line-height: 1.8;
}
.news__more{
    margin-top:24px;
    text-align:right
}
.news__more a{
    color:#366ddd;
    font-size:1.6rem;
    position:relative;
    display:inline-block;
    padding:4px 27px 4px 0;
    transition:all .4s ease
}
.news__more a:after {
    position:absolute;
    right:0.5em;
    top:6px;
    width:0.8em;
    height:0.8em;
    content:"";
    background:url("../img/base/icn-arrow2.svg") no-repeat center right / cover;
}
@media screen and (min-width:1025px){
    .news__more a:hover{
        opacity:.7
    }
}
@media screen and (max-width:767px){
    .news{
        padding:60px 0 48px
    }
    .news .ttl{
        font-size:2rem
    }
    .news .ttl img{
        width:52px;
        height:auto;
        margin-right:15px;
        vertical-align:-6px
    }
	.news__item a {
		display: block;
		padding: 1.5em 0;
	}
    .news__date{
		width: auto;
    }
    .news__ttl{
        flex: 1;
		font-size:1.6rem;
        line-height:2.6rem;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
        text-overflow:clip;
        white-space:normal
    }
}

/* banner */
#index_banner {  padding:60px 40px; background:#fafafa; line-height:100%; }
#index_banner ul { display:flex; justify-content: center; flex-wrap: wrap; margin:0 auto; }
#index_banner li { background: #fff; width: 300px; height: 90px; margin:40px; padding:0; border: 1px solid #d9d9d9; box-sizing: border-box; position: relative; }
#index_banner li a { display: flex; justify-content: flex-start; align-items: center; color:#333; text-decoration: none; transition: 0.3s; }
#index_banner li img { width:120px; margin: -1px; }
#index_banner li span {padding-left: 1em; font-size: 16px; line-height: 1.2; }
#index_banner li a:hover { opacity:0.7; }

@media screen and (max-width:767px){
	#index_banner { padding:20px 0; background:#fafafa; line-height:100%; }
	#index_banner ul { margin:0 5%; overflow: hidden; }

	#index_banner li { background: #fff; width: 100%; height: 90px; margin:20px 0; padding:0; border: 1px solid #d9d9d9; box-sizing: border-box; position: relative; }
	#index_banner li a { display: flex; justify-content: flex-start; align-items: center; color:#333; text-decoration: none; transition: 0.3s; }
	#index_banner li img { width:120px; margin: -1px; }
	#index_banner li span {padding-left: 1em; font-size: 16px; }
	#index_banner li a:hover { opacity:0.7; }
/*
#index_banner li { margin:0 2% 3%; padding:0; float:left; width: 46%;}
#index_banner li img { width:100%; }
}

/*.banner{
}
.banner__inner{
    padding-right:30px;
    padding-left:30px;
    margin-right:auto;
    margin-left:auto;
    max-width:1260px
}
@media screen and (max-width:1050px){
    .banner__inner{
        max-width:100%;
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:900px){
    .banner__inner{
        padding-right:30px;
        padding-left:30px
    }
}
@media screen and (max-width:767px){
    .banner__inner{
        padding-right:20px;
        padding-left:20px
    }
}
.banner__list {
	display: flex;
	justify-content: center;
	margin: 40px auto 0;
}
.banner__item {
	margin: 0 15px;
	width: 300px;
}
.banner__item img{
    width:100%;
    height:auto
}
.banner__item a{
    display:block
}
@media screen and (min-width:1025px){
    .banner__item a:hover{
        opacity:.7
    }
}

.banner__prev{
    left:12px
}
.banner__next,.banner__prev{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:99;
    cursor:pointer
}
.banner__next{
    right:12px
}

@media screen and (max-width:1050px){
    .banner__inner{
        padding:0
    }
}
@media screen and (max-width:767px){
    .banner__list {
        display: inherit;
    }
	.banner__item {
		width: 70%;
		margin: 1em auto;
	}
}
*/
