@charset "UTF-8";

.thumbnail{display: none;}
header{background: #fff;}/*mission用*/


/*アニメーション
---------------------------------------------------------*/
/*その場でフェードしながら出てくる２*/
.fadein2{
    opacity: 0;
}
.anime_on .fadein2,
.anime_on.fadein2 {
	animation: fade2 .5s ease-in-out 0s 1 normal forwards;
}
@keyframes fade2 {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

/*下からフェードしながら出てくる*/
.fadeup {
	opacity: 0;
	transform: translateY(20px);
	transition: all 1.2s cubic-bezier(0.25, 1, 0.5, 1);
}
.anime_on .fadeup,
.anime_on.fadeup {
	opacity: 1;
	transform: translateY(0px);
}

/*その場でくるっと回る*/
.anime_on .com_kuron,
.anime_on.com_kuron{
    animation: anime_kurun .6s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@keyframes anime_kurun{
  0% {
    -webkit-transform: rotateY(-80deg);
            transform: rotateY(-80deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    opacity: 1;
  }
}

/*テキストアニメーション*/
.anime_txt span,
.anime_txt_orange span,
.anime_txt_white span,
.anime_txt_mission1 span,
.anime_txt_mission2 span,
.anime_txt_mission3 span,
.anime_txt_mission4 span,
.anime_txt_mission5 span{
    opacity: 0;
}
.anime_on.anime_txt span{
    animation: anime_txt 0.5s forwards;}
.anime_on.anime_txt_orange span{
    animation: anime_txt_orange 0.5s forwards;}
.anime_on.anime_txt_white span{
    animation: anime_txt_white 0.5s forwards;}
.anime_on.anime_txt_mission1 span{
    animation: anime_txt_mission1 0.5s forwards;}
.anime_on.anime_txt_mission2 span{
    animation: anime_txt_mission2 0.5s forwards;}
.anime_on.anime_txt_mission3 span{
    animation: anime_txt_mission3 0.5s forwards;}
.anime_on.anime_txt_mission4 span{
    animation: anime_txt_mission4 0.5s forwards;}
.anime_on.anime_txt_mission5 span{
    animation: anime_txt_mission5 0.5s forwards;}

.anime_on.anime_txt span:nth-child(2),
.anime_on.anime_txt_orange span:nth-child(2),
.anime_on.anime_txt_white span:nth-child(2),
.anime_on.anime_txt_mission1 span:nth-child(2),
.anime_on.anime_txt_mission2 span:nth-child(2),
.anime_on.anime_txt_mission3 span:nth-child(2),
.anime_on.anime_txt_mission4 span:nth-child(2),
.anime_on.anime_txt_mission5 span:nth-child(2){
    animation-delay: 0.05s;}
.anime_on.anime_txt span:nth-child(3),
.anime_on.anime_txt_orange span:nth-child(3),
.anime_on.anime_txt_white span:nth-child(3),
.anime_on.anime_txt_mission1 span:nth-child(3),
.anime_on.anime_txt_mission2 span:nth-child(3),
.anime_on.anime_txt_mission3 span:nth-child(3),
.anime_on.anime_txt_mission4 span:nth-child(3),
.anime_on.anime_txt_mission5 span:nth-child(3){
    animation-delay: 0.1s;}
.anime_on.anime_txt span:nth-child(4),
.anime_on.anime_txt_orange span:nth-child(4),
.anime_on.anime_txt_white span:nth-child(4),
.anime_on.anime_txt_mission1 span:nth-child(4),
.anime_on.anime_txt_mission2 span:nth-child(4),
.anime_on.anime_txt_mission3 span:nth-child(4),
.anime_on.anime_txt_mission4 span:nth-child(4),
.anime_on.anime_txt_mission5 span:nth-child(4){
    animation-delay: 0.15s;}
.anime_on.anime_txt span:nth-child(5),
.anime_on.anime_txt_orange span:nth-child(5),
.anime_on.anime_txt_white span:nth-child(5),
.anime_on.anime_txt_mission1 span:nth-child(5),
.anime_on.anime_txt_mission2 span:nth-child(5),
.anime_on.anime_txt_mission3 span:nth-child(5),
.anime_on.anime_txt_mission4 span:nth-child(5),
.anime_on.anime_txt_mission5 span:nth-child(5){
    animation-delay: 0.2s;}
.anime_on.anime_txt span:nth-child(6),
.anime_on.anime_txt_orange span:nth-child(6),
.anime_on.anime_txt_white span:nth-child(6),
.anime_on.anime_txt_mission1 span:nth-child(6),
.anime_on.anime_txt_mission2 span:nth-child(6),
.anime_on.anime_txt_mission3 span:nth-child(6),
.anime_on.anime_txt_mission4 span:nth-child(6),
.anime_on.anime_txt_mission5 span:nth-child(6){
    animation-delay: 0.25s;}
.anime_on.anime_txt span:nth-child(7),
.anime_on.anime_txt_orange span:nth-child(7),
.anime_on.anime_txt_white span:nth-child(7),
.anime_on.anime_txt_mission1 span:nth-child(7),
.anime_on.anime_txt_mission2 span:nth-child(7),
.anime_on.anime_txt_mission3 span:nth-child(7),
.anime_on.anime_txt_mission4 span:nth-child(7),
.anime_on.anime_txt_mission5 span:nth-child(7){
    animation-delay: 0.3s;}
.anime_on.anime_txt span:nth-child(8),
.anime_on.anime_txt_orange span:nth-child(8),
.anime_on.anime_txt_white span:nth-child(8),
.anime_on.anime_txt_mission1 span:nth-child(8),
.anime_on.anime_txt_mission2 span:nth-child(8),
.anime_on.anime_txt_mission3 span:nth-child(8),
.anime_on.anime_txt_mission4 span:nth-child(8),
.anime_on.anime_txt_mission5 span:nth-child(8){
    animation-delay: 0.35s;}
.anime_on.anime_txt span:nth-child(9),
.anime_on.anime_txt_orange span:nth-child(9),
.anime_on.anime_txt_white span:nth-child(9),
.anime_on.anime_txt_mission1 span:nth-child(9),
.anime_on.anime_txt_mission2 span:nth-child(9),
.anime_on.anime_txt_mission3 span:nth-child(9),
.anime_on.anime_txt_mission4 span:nth-child(9),
.anime_on.anime_txt_mission5 span:nth-child(9){
    animation-delay: 0.4s;}
.anime_on.anime_txt span:nth-child(10),
.anime_on.anime_txt_orange span:nth-child(10),
.anime_on.anime_txt_white span:nth-child(10),
.anime_on.anime_txt_mission1 span:nth-child(10),
.anime_on.anime_txt_mission2 span:nth-child(10),
.anime_on.anime_txt_mission3 span:nth-child(10),
.anime_on.anime_txt_mission4 span:nth-child(10),
.anime_on.anime_txt_mission5 span:nth-child(10){
    animation-delay: 0.45s;}
.anime_on.anime_txt span:nth-child(11),
.anime_on.anime_txt_orange span:nth-child(11),
.anime_on.anime_txt_white span:nth-child(11),
.anime_on.anime_txt_mission1 span:nth-child(11),
.anime_on.anime_txt_mission2 span:nth-child(11),
.anime_on.anime_txt_mission3 span:nth-child(11),
.anime_on.anime_txt_mission4 span:nth-child(11),
.anime_on.anime_txt_mission5 span:nth-child(11){
    animation-delay: 0.5s;}
.anime_on.anime_txt span:nth-child(12),
.anime_on.anime_txt_orange span:nth-child(12),
.anime_on.anime_txt_white span:nth-child(12),
.anime_on.anime_txt_mission1 span:nth-child(12),
.anime_on.anime_txt_mission2 span:nth-child(12),
.anime_on.anime_txt_mission3 span:nth-child(12),
.anime_on.anime_txt_mission4 span:nth-child(12),
.anime_on.anime_txt_mission5 span:nth-child(12){
    animation-delay: 0.55s;}
.anime_on.anime_txt span:nth-child(13),
.anime_on.anime_txt_orange span:nth-child(13),
.anime_on.anime_txt_white span:nth-child(13),
.anime_on.anime_txt_mission1 span:nth-child(13),
.anime_on.anime_txt_mission2 span:nth-child(13),
.anime_on.anime_txt_mission3 span:nth-child(13),
.anime_on.anime_txt_mission4 span:nth-child(13),
.anime_on.anime_txt_mission5 span:nth-child(13){
    animation-delay: 0.6s;}
.anime_on.anime_txt span:nth-child(14),
.anime_on.anime_txt_orange span:nth-child(14),
.anime_on.anime_txt_white span:nth-child(14),
.anime_on.anime_txt_mission1 span:nth-child(14),
.anime_on.anime_txt_mission2 span:nth-child(14),
.anime_on.anime_txt_mission3 span:nth-child(14),
.anime_on.anime_txt_mission4 span:nth-child(14),
.anime_on.anime_txt_mission5 span:nth-child(14){
    animation-delay: 0.65s;}
.anime_on.anime_txt span:nth-child(15),
.anime_on.anime_txt_orange span:nth-child(15),
.anime_on.anime_txt_mission1 span:nth-child(15),
.anime_on.anime_txt_mission2 span:nth-child(15),
.anime_on.anime_txt_mission3 span:nth-child(15),
.anime_on.anime_txt_mission4 span:nth-child(15),
.anime_on.anime_txt_mission5 span:nth-child(15){
    animation-delay: 0.7s;}
.anime_on.anime_txt span:nth-child(16),
.anime_on.anime_txt_orange span:nth-child(16),
.anime_on.anime_txt_mission1 span:nth-child(16),
.anime_on.anime_txt_mission2 span:nth-child(16),
.anime_on.anime_txt_mission3 span:nth-child(16),
.anime_on.anime_txt_mission4 span:nth-child(16),
.anime_on.anime_txt_mission5 span:nth-child(16){
    animation-delay: 0.75s;}
.anime_on.anime_txt span:nth-child(17),
.anime_on.anime_txt_orange span:nth-child(17){
    animation-delay: 0.8s;}
.anime_on.anime_txt span:nth-child(18),
.anime_on.anime_txt_orange span:nth-child(18){
    animation-delay: 0.85s;}
.anime_on.anime_txt span:nth-child(19),
.anime_on.anime_txt_orange span:nth-child(19){
    animation-delay: 0.9s;}
.anime_on.anime_txt span:nth-child(20),
.anime_on.anime_txt_orange span:nth-child(20){
    animation-delay: 0.95s;}
.anime_on.anime_txt span:nth-child(21),
.anime_on.anime_txt_orange span:nth-child(21){
    animation-delay: 1s;}
.anime_on.anime_txt span:nth-child(22),
.anime_on.anime_txt_orange span:nth-child(22){
    animation-delay: 1.05s;}
.anime_on.anime_txt span:nth-child(23){
    animation-delay: 1.1s;}
.anime_on.anime_txt span:nth-child(24){
    animation-delay: 1.15s;}
.anime_on.anime_txt span:nth-child(25){
    animation-delay: 1.2s;}

@keyframes anime_txt {
  0% {
    color: #63B7A3;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #63B7A3;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_orange {
  0% {
    color: #E3831B;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #E3831B;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_white {
  0% {
    color: #DAFAC6;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #DAFAC6;
  } 
  100% {
    color: #fff;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_mission1 {
  0% {
    color: #77B763;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #77B763;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_mission2 {
  0% {
    color: #637EB7;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #637EB7;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_mission3 {
  0% {
    color: #98B749;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #98B749;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_mission4 {
  0% {
    color: #D49A57;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #D49A57;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes anime_txt_mission5 {
  0% {
    color: #60AABF;
    opacity: 0;
    transform: translateX(30px);
  } 
  45% {
    color: #60AABF;
  } 
  100% {
    color: #423932;
    opacity: 1;
    transform: translateX(0);
  }
}






/*m_img_area
---------------------------------------------------------*/
.m_img_area {
	position: relative;
    background: #fff;
}
.m_img_area .swiper-wrapper{
    overflow: hidden;
}
.m_img_area .m_slider .swiper-slide{
    min-height: 610px;
}
.m_img_area .m_slider .slide_bg{
    overflow: hidden;
    content: "";
    background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
    height: 100%;
}

/*メインイメージ背景*/
.m_img_area .slide1 .slide_bg{
    background-image: url("../images/top/m_img1@2x.jpg");}
.m_img_area .slide3 .slide_bg{
    background-image: url("../images/top/m_img3@2x.jpg");}
.m_img_area .slide4 .slide_bg{
    background-image: url("../images/top/m_img4@2x.jpg");}

/*type_chonchon*/
.m_img_area .type_chonchon .slide_bg{
	transform: scale(1.0);
	transition: all 9s;	/*スライドショー設定の「speed + delay」より少し大きくする*/
}
.m_img_area .type_chonchon[class*=-active] .slide_bg {
	transform: scale(1.1);
}
.m_img_area .type_chonchon[class*=-prev] .slide_bg {
	transform: scale(1.1);
}

/*slide2*/
.m_img_area .slide2{
    position: relative;
    overflow: hidden;
}
.m_img_area .m_slider .slide2{
    position: relative;
}
.m_img_area .m_slider .slide2::before{
    position: absolute;
    display: block;
    content: "";
    background: linear-gradient(to bottom,  rgba(56,43,34,0) 0%,rgba(56,43,34,0.5) 100%);
    background-size: 100% auto;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    z-index: 10;
}
.m_img_area .slide2 .slide_bg_list{
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: auto;
}
.m_img_area .slide2 .slide_bg_list li{
    position: relative;
    width: 25%;
} 
.m_img_area .slide2 .slide_bg_list li img{
    width: 100%;
    height: auto;
}
.m_img_area .slide2 .slide_bg_list li .parts{
	transition: all 20s;
}
.m_img_area .slide2 .slide_bg_list li:nth-child(1) .parts{
    transform: translateY(-500px);
}
.m_img_area .slide2 .slide_bg_list li:nth-child(2) .parts{
    transform: translateY(-500px);
}
.m_img_area .slide2 .slide_bg_list li:nth-child(3) .parts{
    transform: translateY(-500px);
}
.m_img_area .slide2 .slide_bg_list li:nth-child(4) .parts{
    transform: translateY(-500px);
}
.m_img_area .slide2[class*=-prev] .slide_bg_list li .parts,
.m_img_area .slide2[class*=-active] .slide_bg_list li .parts {
    transform: translateY(-700px);
}
.m_img_area .slide2[class*=-prev] .slide_bg_list li:nth-child(2) .parts,
.m_img_area .slide2[class*=-active] .slide_bg_list li:nth-child(2) .parts {
    transform: translateY(-300px);
}
.m_img_area .slide2[class*=-prev] .slide_bg_list li:nth-child(3) .parts,
.m_img_area .slide2[class*=-active] .slide_bg_list li:nth-child(3) .parts {
    transform: translateY(-700px);
}
.m_img_area .slide2[class*=-prev] .slide_bg_list li:nth-child(4) .parts,
.m_img_area .slide2[class*=-active] .slide_bg_list li:nth-child(4) .parts {
    transform: translateY(-300px);
}

/*m_copy*/
.m_copybox{
    position:absolute;
    display: block;
    width: 90%;
    max-width: 1020px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 5;
    bottom: 205px;/*150px*/
}
/*表示アニメーション*/
.m_img_area .m_copy{
    position: relative;
}
.m_img_area .m_copy img{
    opacity: 0;
}
.m_img_area .swiper-slide-active .m_copy img{
    animation: anime_m_copy 1s forwards 0.2s;
}
@keyframes anime_m_copy{
  0% {
    opacity: 0;
	transform: translateY(20px);
	transition: all 1.2s cubic-bezier(0.25, 1, 0.5, 1);
  }
  100% {
    opacity: 1;
	transform: translateY(0px);
  }
}

/*com_chon*/
.m_img_area .swiper-slide-active .m_copy .com_chon::before{
    animation: anime_com_chon .4s forwards;
    animation-delay: 1s;
}
@keyframes anime_com_chon {
  0% {
    height: 0;
  } 
  60% {
    height: 100%;
  }
  100% {
    height: 60%;
  }
}

.m_copy .com_chon{
    height:32px;
    width: 2px;
}
.m_copy .com_chon.type1{
    top: 53.5%;
	left: 37%;
}
.m_copy .com_chon.type2{
    top:53.5%;
	right:8%;
}
.m_copy .com_chon.type3{
    bottom:7%;
	left: 37%;
}
.m_copy .com_chon.type4{
    bottom:7%;
	right:8%;
}

/*slide2*/
.slide2 .m_copy .com_chon{
    height:40px;
    width: 3px;
}
.slide2 .m_copy .com_chon.type1{
    top: 19%;
	left:15%;
}
.slide2 .m_copy .com_chon.type2{
    top: 19%;
	left: 51%;
}
.slide2 .m_copy .com_chon.type3{
    top: 58%;
	left:15%;
}
.slide2 .m_copy .com_chon.type4{
    top: 58%;
	left: 51%;
}

/*slide3*/
.slide3 .m_copy .com_chon.type1{
    top: 13%;
	left:25%;
}
.slide3 .m_copy .com_chon.type2{
    top: 13%;
	left: 49%;
}
.slide3 .m_copy .com_chon.type3{
    top: 45%;
	left: 25%;
}
.slide3 .m_copy .com_chon.type4{
    top:45%;
	left: 49%;
}

/*slide4*/
.slide4 .m_copy .com_chon.type1{
    top: 45%;
	left: 26%;
}
.slide4 .m_copy .com_chon.type2{
    top: 45%;
	right: 38%;
}
.slide4 .m_copy .com_chon.type3{
    bottom: 15%;
	left: 26%;
}
.slide4 .m_copy .com_chon.type4{
    bottom: 15%;
	right: 38%;
}

/*ちょんちょんの色*/
.m_copy .com_chon::before{
    background-color:#fff;
}
.slide2 .m_copy .com_chon::before{
    background-color:#7BF5ED;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
.m_img_area .m_slider .swiper-slide{
    min-height: 45vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img_area .m_slider .swiper-slide {
    min-height:400px!important;
}
.m_copybox{
    bottom: 17vw;
}
}

/* TBデバイスが横向き
------------------------------------------*/
@media (orientation: landscape) and (min-width: 768px) and (max-width: 959px) {

}

/* TBデバイスが縦向き
------------------------------------------*/
@media (orientation: portrait) and (min-width: 768px) and (max-width: 959px) {
.m_copybox{
    bottom: 25vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_img_area .m_slider .swiper-slide{
    min-height: 100px;
}
.m_img_area .slide1 .slide_bg {background-image: url("../images/top/m_img1_sp@2x.jpg");}
.m_img_area .slide3 .slide_bg {background-image: url("../images/top/m_img3_sp@2x.jpg");}
.m_img_area .slide4 .slide_bg {background-image: url("../images/top/m_img4_sp@2x.jpg");}
    
.m_img_area .slide2 .slide_bg_list li{
    width: 50%;
} 
.m_copybox{
    pointer-events: none;
    width: 100%;
    max-width:650px;
    bottom: 2vw;
}
.mc_slider .swiper-wrapper {
     overflow: visible !important; 
}
.m_copybox,
.mc_slider,
.mc_slider .swiper-wrapper,
.mc_slider .swiper-slide{
	height: 100%;
}
.mc_slider .swiper-slide{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}
   
/*com_chon*/
.m_copy .com_chon,
.slide1 .m_copy .com_chon,
.slide2 .m_copy .com_chon,
.slide3 .m_copy .com_chon,
.slide4 .m_copy .com_chon{
    height: 6vw;
    width: 3px;
}
    
/*slide1*/
.mc_slider .swiper-slide.slide1{
	justify-content: center;
}
.m_copy .com_chon.type1{
    top: 63%;
	left: 6%;
}
.m_copy .com_chon.type2{
    top:63%;
	right: 6%;
}
.m_copy .com_chon.type3{
    bottom:11%;
	left: 6%;
}
.m_copy .com_chon.type4{
    bottom:11%;
	right: 6%;
}  
    
/*slide2*/
.slide2 .m_copy .com_chon.type1{
    top: 1%;
	left:22%;
}
.slide2 .m_copy .com_chon.type2{
    top: 1%;
	left: 76%;
}
.slide2 .m_copy .com_chon.type3{
    top: 22%;
	left:22%;
}
.slide2 .m_copy .com_chon.type4{
    top: 22%;
	left:76%;
}
    
/*slide3*/
.mc_slider .swiper-slide.slide3{
	justify-content: center;
}
.slide3 .m_copy .com_chon.type1{
    top: 25%;
	left:10%;
}
.slide3 .m_copy .com_chon.type2{
    top: 25%;
	left: 47%;
}
.slide3 .m_copy .com_chon.type3{
    top: 46%;
	left:10%;
}
.slide3 .m_copy .com_chon.type4{
    top:46%;
	left: 47%;
}

/*slide4*/
.slide4 .m_copy .com_chon.type1{
    top: 53%;
	left: 38%;
}
.slide4 .m_copy .com_chon.type2{
    top: 53%;
	right: 6%;
}
.slide4 .m_copy .com_chon.type3{
    bottom: 19%;
	left: 38%;
}
.slide4 .m_copy .com_chon.type4{
    bottom: 19%;
	right: 6%;
}
}





/* reopening_nairan
---------------------------------------------------------*/
.reopening_nairan{
	padding-bottom: 75px;
	border-bottom: 1px solid rgba(66,57,50,0.3);
	padding-top: 75px;
}
.reopening_nairan .reopening div{
	max-width: 810px;
	width: 70%;
	margin: 0 auto;
	text-align: center;
}
.reopening_nairan .nairan{
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px solid rgba(66,57,50,0.5);
}
.reopening_nairan .nairan dl{
	max-width: 1100px;
	margin: 0 auto 1em;
	display: flex;
	justify-content: space-between;
}
.reopening_nairan .nairan dl dt{
	max-width: 570px;
	width: 51.818182%;
}
.reopening_nairan .nairan dl dd{
	max-width: 550px;
	width: 45.4545455%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1300px) {
.reopening_nairan{
	padding-bottom: 5vw;
	padding-top:  5vw;
}
.reopening_nairan .nairan{
	padding-top: 2.7vw;
	margin-top: 2.7vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.reopening_nairan{
	padding-bottom: 6vw;
	padding-top: 6vw;
	border-bottom: none;
}
.reopening_nairan .reopening div{
	width: 94%;
}
.reopening_nairan .nairan{
	padding-top: 3.7vw;
	margin-top: 3.7vw;
}
.reopening_nairan .nairan dl{
	max-width: 94%;
	display: block;
}
.reopening_nairan .nairan dl dt{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.reopening_nairan .nairan dl dd{
	width: 96.49122807%;
	margin: 3% auto 0;
	text-align: center;
}
}





/* sp_menu
---------------------------------------------------------*/
#sp_menu .bg{
    background:rgba(237,236,235,0.30);
    padding: 1.5% 0 2%;
}
#sp_menu li{
    position: relative;
    width: 47.5%;
}
#sp_menu li a{
    position: relative;
    display: block;
    padding: 1.1em .5em;
    box-sizing: border-box;
    border-top:1px solid rgba(66,57,50,0.35);
    font-size:88%;
    font-weight: bold;
}
#sp_menu li:nth-child(1) a,
#sp_menu li:nth-child(2) a{
    border-top:none;
}
#sp_menu li a::before{
    position: absolute;
	font-family: 'fontello';
	content: '\e802';	
	right: .5em;
	font-size: 50%;
	top: 50%;
	transform: translateY(-50%);
}
#sp_menu li .open_trigger a::before{
    display: none;
}

#sp_menu .open_box{
    position: absolute;
    width: 210%;
    right: 0;
    padding: 0;
    z-index: 10;
}
#sp_menu .com_sp_med_menu{
    border-radius: 30px;
}
#sp_menu .open_box{
    display: none;}
#sp_menu .open_box.active{
    display: block;}

/*開閉*/
#sp_menu .open_trigger strong.open_txt {
    position: relative;
	display: block;
    width: 100%;
}
#sp_menu .open_trigger strong.round_btn {
    position: absolute;
	display: block;
	width: .8em;
	height: .8em;
	top: 50%;
	transform: translateY(-50%);
    right: .2em;
}
#sp_menu .open_trigger strong.round_btn::before,
#sp_menu .open_trigger strong.round_btn::after{
    position: absolute;
    display: block;
	content: '';
    width: .8em;
    height: 1px;
    border-radius: 5px;
    background: #423932;
    left: 0;
	right: 0;
    top: 50%;
    transform: translateY(-50%);
	margin: auto;
}
#sp_menu .open_trigger strong.round_btn::after {
	background: #423932;
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
#sp_menu .open_trigger.active .round_btn::after {
	transform: rotate(0);
	transition: 0.5s;
}




/* toplead
---------------------------------------------------------*/
#toplead{
    background: #fff;
}
#toplead .w1320{
    padding-top: 75px;
    padding-bottom: 65px;
}
#toplead .toplead_time{
    width: 66.5%;
    border-right: 1px solid #E6E6E6;
    box-sizing:border-box;
    padding-right: 8%;
}
#toplead .toplead_time_inbox{
    position: relative;
    max-width: 770px;
    text-align: center;
    padding:25px 9% 0;
    box-sizing: border-box;
}
#toplead .toplead_time_inbox::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/top/time_abs1@2x.png")no-repeat top left;
    background-size: 100% auto;
    width: 20%;
    max-width: 150px;
    height: 150px;
    top: 60%;
	transform: translateY(-50%);
    left: -1.5%;
}
#toplead .toplead_time_inbox::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/top/time_abs2@2x.png")no-repeat top right;
    background-size: 100% auto;
    width: 20%;
    max-width: 150px;
    height: 150px;
    top: 45%;
	transform: translateY(-50%);
    right: -7%;
}
#toplead .toplead_time .maru{
    margin-bottom: 30px;
}
#toplead .toplead_time .maru li{
    width: 22.5%;
}
#toplead .toplead_time .timetable{
    margin-bottom: 1em;
}
#toplead .toplead_time .timetable p{
    font-size:90%;
    letter-spacing: 0.25em;
    font-weight: bold;
    color: #63B7A3;
    line-height: 1.5em;
    margin-top: .5em;
}
#toplead .toplead_time .address{
    font-size:80%;
    line-height: 1.65em;
    margin-top: 1em;
}

/*toplead_news*/
#toplead .toplead_news{
    width: 33.5%;
    box-sizing:border-box;
    padding-left: 5%;
}
#toplead .toplead_news h2{
    font-size: min(400%,5vw);
    letter-spacing: normal;
    line-height: 1em;
    margin-top: -0.1em;
    margin-bottom: .5em;
}
#toplead .toplead_news ul li{
    margin-bottom: 2.5em;
}
#toplead .toplead_news ul li:last-child{
    margin-bottom:0;
}
#toplead .toplead_news ul li .ft_dip{
    font-size:90%;
    line-height: 1em;
    letter-spacing: 0.1em;
    color: #63B7A3;
    margin-bottom: .6em;
}
#toplead .toplead_news ul li .fw_bold{
    line-height: 1.5em;
}

#toplead .toplead_news ul li .fw_bold a{
    padding-bottom: .25em;
    background: linear-gradient(#423932, #423932) 0 100%/0 1px no-repeat;
    transition: background .4s;
}
#toplead .toplead_news ul li .fw_bold a:hover {
  background-size: 100% 1px;
}

#toplead .toplead_news .com_btn1{
    margin-top: 4em;
}

#toplead .com_chon{
    height: 75px;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1400px) {
/*toplead_news*/
#toplead .toplead_news{
    padding-left: 4%;
}
#toplead .toplead_news ul li .ft_dip{
    letter-spacing: normal;
}
}
/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#toplead .w1320{
    padding-top: 5vw;
    padding-bottom: 5vw;
}
#toplead .toplead_time_inbox::before{
    top: 75%;
    left: -5%;
}
#toplead .toplead_time_inbox::after{
    top: 40%;
    right: -12%;
}

/*toplead_news*/
#toplead .toplead_news ul li{
    margin-bottom: 1.5em;
}
#toplead .toplead_news ul li .fw_bold{
    line-height: 1.5em;
}
#toplead .toplead_news .com_btn1{
    margin-top: 1.5em;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#toplead .w1320{
    padding-top: 6vw;
    padding-bottom: 5vw;
}
#toplead .toplead_time{
    padding-right: 5%;
}
#toplead .toplead_time_inbox{
    padding: 2vw 9% 0;
}
#toplead .toplead_time_inbox::before{
    top:75%;
    left: -4%;
}
#toplead .toplead_time_inbox::after{
    top: 40%;
    right: -10%;
}
#toplead .com_chon{
    height: 4.5vw;
}
#toplead .toplead_time .maru{
    margin-bottom:3vw;
}
#toplead .toplead_time .maru li{
    width: 24%;
}
    
/*toplead_news*/
#toplead .toplead_news{
    padding-left: 3%;
}
#toplead .toplead_news ul li{
    margin-bottom: 2em;
}
#toplead .toplead_news ul li .fw_bold{
    letter-spacing: normal;
}
#toplead .toplead_news .com_btn1{
    margin-top: 1.5em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#toplead .w1320{
    padding-top: 6%;
    padding-bottom: 10%;
}
#toplead .toplead_time{
    position: relative;
    width: 100%;
    border-right: none;
    padding-right:0;
    padding-bottom: 8%;
    margin-bottom: 6%;
}
#toplead .toplead_time::before{
    position: absolute;
    display: block;
    content: "";
    background: #E6E6E6;
    background-size: 100% auto;
    width: 110%;
    height: 1px;
    left: -5%;
    bottom: 0;
}
#toplead .toplead_time_inbox{
    width: 96%;
    margin: 0 auto;
    max-width: 100%;
    padding: 4vw 0;
}
#toplead .toplead_time_inbox::before{
    width: 18vw;
    top: 15em;
	transform: translateY(0);
    left: -5%;
}
#toplead .toplead_time_inbox::after{
    width:18vw;
    top: 15em;
	transform: translateY(0);
    right: -5.5%;
}
#toplead .com_chon{
    height: 7vw;
}
#toplead .toplead_time .maru{
    width: 94%;
    margin: 0 auto 3vw;
}
#toplead .toplead_time .maru li{
    width: 24%;
}
#toplead .toplead_time .timetable{
    width: 94%;
    margin: 0 auto 5%;
}
#toplead .toplead_time .timetable img{
    width: 100%;
    height:auto;
}
#toplead .toplead_time .timetable p{
    letter-spacing: 0.1em;
}
#toplead .toplead_time .address{
    font-size:80%;
    line-height: 1.65em;
    margin-top: 1em;
}

/*toplead_news*/
#toplead .toplead_news{
    width: 92%;
    margin: 0 auto;
    padding-left: 0;
}
#toplead .toplead_news h2{
    font-size: 13vw;
    margin-top: 0;
    margin-bottom: .4em;
}
#toplead .toplead_news ul li .ft_dip{
    margin-bottom: .4em;
}
#toplead .toplead_news ul li .fw_bold{
    font-size:95%;
}
#toplead .toplead_news ul li{
    margin-bottom: 1.5em;
}
#toplead .toplead_news .com_btn1{
    margin-top: 1.7em;
    text-align: center;
}
#toplead .toplead_news ul li .fw_bold a{
    background: none;
}
}






/* kensa
---------------------------------------------------------*/
#kensa{
    background: #fff;
    padding-bottom: 110px;
}
#kensa .bg{
    position: relative;
    padding: 105px 4% 75px;
    box-sizing: border-box;
}
#kensa .bg::before{
    position: absolute;
    display: block;
    content: "";
    background: linear-gradient(to right,  #63b7a3 0%,#84d4c1 100%);
    background-size: 100% auto;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    z-index: 1;
    border-radius: 30px!important;
}
#kensa .bg::after{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/top/kensa_bg@2x.jpg")no-repeat top left;
    background-size: 100% auto;
    width: 58%;
    height: 710px;
    top:0;
    left: 0;
    border-radius: 30px 0 0 0;
    z-index:2;
}

/*kensa_tit*/
#kensa .kensa_tit{
    position: relative;
    z-index: 3;
    text-align: center;
    margin-bottom: 70px;
}
#kensa .kensa_tit h2{
    position: relative;
    display: inline-block;
    max-width: 495px;
}
#kensa .kensa_tit .fw_bold{
    margin-top: 1em;
    line-height: 1.6em;
}

/*kensa_tit_line*/
#kensa .kensa_tit h2 .kensa_tit_line{
    position: absolute;
    top: 45%;
	right: 13%;
	transform: translate(-50% -50%); 
    width: 21%;
    max-width: 102px;
    height: 98px;
}
#kensa .kensa_tit h2 .kensa_tit_line #contents{
    fill:none;
    stroke:url(#kensa_tit_line_grd);
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width:17px;
}
.kensa_tit.anime_on .anima-kensa_tit_line{
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: anima-kensa_tit_line 2s linear .3s forwards;
}
@keyframes anima-kensa_tit_line {
    0% {stroke-dashoffset: 1000;}
    100% {stroke-dashoffset: 0;}
}

/*kensa_inbox*/
#kensa .kensa_inbox{
    position: relative;
    z-index: 3;
    max-width: 1120px;
    margin: 0 auto;
}

/*kensa_index1*/
#kensa .kensa_index1 h3{
    display: inline-block;
}
#kensa .kensa_index1 .fw_bold{
    font-size: min(125%,2.1vw);
    line-height: 1.6em;
    color: #fff;
    margin-top: .3em;
    margin-bottom: 1.4em;
}
#kensa .kensa_index1 .fw_bold.nomgn{
    margin-bottom: 0;
}
#kensa .kensa_index1 .fw_bold span{
    font-size:80%;
}

/*kensa1_2*/
#kensa .kensa1_2 .kensa1{
    width: 44%;
}
#kensa .kensa1_2 .kensa2{
    width: 51.5%;
}

/*kensa1*/
#kensa .kensa1{
    position: relative;
}
#kensa .kensa1 .kensa_index1 h3{
    width: 30%;
    max-width: 144px;
}
#kensa .kensa1 .img{
    width: 55%;
}
#kensa .kensa1 .kensa_line1_box{
    position: absolute;
    top: 35px;
    right: 0;
    width: 61%;
}

/*kensa2*/
#kensa .kensa2{
    position: relative;
}
#kensa .kensa2 .kensa_index1 h3{
    width: 71%;
    max-width: 403px;
}
#kensa .kensa2 .kensa_line2_box{
    position: absolute;
    top: 35px;
    right: -12%;
    width: 32%;
}
#kensa .kensa2 .kensa_line3_box{
    position: absolute;
    top: 37px;
    right: -12%;
    width: 133%;
}
#kensa .kensa2 .kensa_list1{
    position: relative;
    z-index: 2;
    margin-bottom: -30px;
}
#kensa .kensa2 .kensa_list1 li{
    width: 47.5%;
    margin-bottom: 30px;
}
#kensa .kensa2 .kensa_list1 .inbox{
    position: relative;
}
#kensa .kensa2 .kensa_list1 .fw_bold{
    position: absolute;
    bottom:1em;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
    z-index: 2;
    border-radius: 100px;
    padding: .1em 0;
    box-sizing: border-box;
    background:rgba(255,255,255,0.9);
    width: 77%;
}
#kensa .kensa2 .kensa_list1 .in_maru{
    position: absolute;
    top:-15px;
    right: -15px;
    width: 35%;
}

/*kensa3*/
#kensa .kensa3{
    width: 36.5%;
    text-align: right;
    margin-top: -75px;
    margin-bottom: 45px;
}
#kensa .kensa3 .kensa_index1 h3{
    width: 40%;
    max-width: 158px;
}

/*kensa4*/
#kensa .kensa4{
    position: relative;
    padding-left: 25.5%;
    box-sizing: border-box;
}
#kensa .kensa4 .kensa_line4_box{
    position: absolute;
    top:-27px;
    left: 5%;
    width: 7.5%;
}
#kensa .kensa4 .kensa_line5_box{
    position: absolute;
    top: 12px;
    left: 5%;
    width: 15%;
}
#kensa .kensa4 .fw_bold{
    line-height: 1.75em;
}

/*kensa_btn*/
#kensa .kensa_btn{
    position: absolute;
    right: 4.5%;
    bottom:-40px;
    width: 18.5%;
    max-width: 250px;
    text-align: center;
    font-size: min(100%,1.5vw);
    z-index: 3;
    transition: 0.4s;
}
#kensa .kensa_btn .inbox{
    position: absolute;
    top: 55%;
	transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    line-height: 1.8em;
}
#kensa .kensa_btn a{
    display:block;
}
#kensa .kensa_btn a span{
    font-size:160%;
}
#kensa .kensa_btn i{
    font-size: 70%;
}
#kensa .bg.anime_on .kensa_btn img{
    animation: btn_shadow 1.5s linear forwards;
    animation-delay: 4.5s;
}
@keyframes btn_shadow {
    0% { filter: drop-shadow(0 0 20px rgba(0,0,0,0)); }
    100% { filter: drop-shadow(0 0 20px rgba(0,0,0,0.25)); }
}
#kensa .kensa_btn:hover{
    filter: drop-shadow(0 0 20px rgba(0,0,0,0.35));
    transition: 0.4s;
}

/*線*/
.kensa_line1,.kensa_line2,.kensa_line3,.kensa_line4,.kensa_line5,.kensa_line1_sp{
    fill:none;
    opacity:.6;
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-width: 22px;
}
.kensa_line1 {stroke:url(#grd1);}
.kensa_line2 {stroke:url(#grd2);}
.kensa_line3 {stroke:url(#grd3);}
.kensa_line4 {stroke:url(#grd4);}
.kensa_line5 {stroke:url(#grd5);}
.kensa_line1_sp {stroke:url(#sp_grd1);}

.anime_on .anima-kensa-line {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: line-kensa-animation 1.2s linear forwards;
}
@keyframes line-kensa-animation {
    0% {
        stroke-dashoffset: 1000;
    }
    100% {
        stroke-dashoffset: 0;
    }
}

/*アニメーション*/
.bg.anime_on .kensa1 .fadein2{/*聴く*/
	animation-delay: 1.4s;
}
.bg.anime_on .kensa1 .com_kuron{/*聴くの画像*/
    animation-delay: 1.4s;
}
.bg.anime_on .kensa1 .anima-kensa-line{/*聴くの線*/
	animation-delay: 1.8s;
    animation-duration: 1s;
}
.bg.anime_on .kensa2 .fadein2{/*包括的診断*/
	animation-delay: 1.9s;
}
.bg.anime_on .kensa2 .com_kuron{/*包括的診断の画像*/
	animation-delay: 1.9s;
}
.bg.anime_on .kensa2 .kensa2_line1 .anima-kensa-line{/*包括的診断の線*/
	animation-delay: 2.4s;
    animation-duration: 1s;
}
.bg.anime_on .kensa2 .kensa2_line2 .anima-kensa-line{/*包括的診断の線2*/
	animation-delay: 2.7s;
    animation-duration: 0.4s;
}
.bg.anime_on .kensa3 .fadein2{/*話す*/
	animation-delay: 2.8s;
}
.bg.anime_on .kensa4 .kensa_line4_box .anima-kensa-line{/*話すとkensa4の間の線*/
	animation-delay: 3.3s;
}
.bg.anime_on .kensa4 .kensa_line5_box .anima-kensa-line{/*話すとkensa4の間の線2*/
	animation-delay: 3.5s;
}
.bg.anime_on .kensa4 .fadein2{
	animation-delay: 3.6s;
}
.bg.anime_on .kensa_btn.fadein2{/*kensa_btn*/
	animation-delay: 3.6s;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#kensa{
    padding-bottom: 10vw;
}
#kensa .bg{
    padding: 6.5vw 4% 7vw;
}

/*kensa_tit*/
#kensa .kensa_tit{
    margin-bottom: 5vw;
}
#kensa .kensa_tit h2{
    width: 35vw;
    margin: 0 auto;
}
#kensa .kensa_index1 .fw_bold{
    letter-spacing: normal;
}
    
/*kensa1*/
#kensa .kensa1 .kensa_line1_box{
    top: 20px;
}
#kensa .kensa1 .img{
    width: 19vw;
    margin-top: -1vw;
}
    
/*kensa2*/
#kensa .kensa2 .kensa_line2_box{
    top: 20px;
    right: -4%;
    width: 28%;
}
#kensa .kensa2 .kensa_line3_box{
    top: 30px;
    right: -4%;
    width: 120%;
}
#kensa .kensa2 .kensa_list1{
    margin-bottom: -5vw;
}
#kensa .kensa2 .kensa_list1 .fw_bold{
    bottom:.7em;
    padding: 0;
    width: 90%;
}

/*kensa3*/
#kensa .kensa3{
    width: 43%;
    margin-top: -8.5vw;
    margin-bottom: 3.5vw;
}
#kensa .kensa3 .kensa_index1 h3{
    width: 32%;
}
    
/*kensa4*/
#kensa .kensa4{
    padding-left: 20%;
}
#kensa .kensa4 .kensa_line4_box{
    left: 3%;
    top:-2vw;
}
#kensa .kensa4 .kensa_line5_box{
    top: 1vw;
    left: 3%;
}
#kensa .kensa4 .fw_bold{
    line-height: 1.75em;
}

/*kensa_btn*/
#kensa .kensa_btn{
    right: 2%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#kensa{
    padding-bottom: 8vw;
}
#kensa .bg{
    padding: 5.5vw 4% 4vw;
}
/*kensa_tit*/
#kensa .kensa_tit{
    margin-bottom: 5vw;
}
#kensa .kensa_tit h2{
    width: 40vw;
    margin: 0 auto;
}

/*kensa_index1*/
#kensa .kensa_index1 .fw_bold{
    letter-spacing: normal;
    margin-bottom: 1.2em;
}
#kensa .kensa_index1 .fw_bold span{
    letter-spacing: -0.05em;
    margin-left: -0.5em;
}
/*kensa1*/
#kensa .kensa1 .kensa_line1_box{
    top:2vw;
}
#kensa .kensa1 .img{
    width: 50%;
}
    
/*kensa2*/
#kensa .kensa2 .kensa_line2_box{
    top: 2vw;
    right:-3%;
    width: 28%;
}
#kensa .kensa2 .kensa_line3_box{
    top: 3vw;
    right: -3%;
    width: 125%;
}
#kensa .kensa2 .kensa_list1{
    margin-bottom: -1vw;
}
#kensa .kensa2 .kensa_list1 li{
    margin-bottom: 2vw;
}
#kensa .kensa2 .kensa_list1 .fw_bold{
    bottom:1vw;
    padding: .5em 0 .4em;
    width:85%;
    font-size: 1.8vw;
    line-height: 1em;
}
#kensa .kensa2 .kensa_list1 .in_maru{
    top:-1.5vw;
    right: -1.5vw;
    width: 35%;
}

/*kensa3*/
#kensa .kensa3{
    width: 43%;
    margin-top: -10vw;
    margin-bottom:4vw;
}
#kensa .kensa3 .kensa_index1 h3{
    width: 35%;
}
    
/*kensa4*/
#kensa .kensa4{
    padding-left: 21%;
}
#kensa .kensa4 .kensa_line4_box{
    top:-4.5vw;
    left: 3.8%;
    width: 7.5%;
}
#kensa .kensa4 .kensa_line5_box{
    top: 0;
    left: 4%;
    width: 15%;
}
#kensa .kensa4 .fw_bold{
    width: 75%;
}
/*線*/
.kensa_line1{
    stroke-width:20px!important;
}
.kensa_line4{
    stroke-width:14px!important;
}
    
/*kensa_btn*/
#kensa .kensa_btn{
    width: 22%;
    right:-2%;
    bottom:-2.5vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#kensa{
    padding-bottom:15%;
}
#kensa .w1380{
    width: 100%;
    padding: 0;
}
#kensa .bg{
    padding: 15% 4% 35vw;
}

/*kensa_tit*/
#kensa .kensa_tit{
    margin-bottom: 10%;
}
#kensa .kensa_tit h2{
    width: 80%;
    margin: 0 auto;
}    
#kensa .kensa_tit .fw_bold{
    margin-top: 1em;
    font-size:90%;
    letter-spacing: normal;
}

/*kensa_index1*/
#kensa .kensa_index1 h3{
    display: block;
    text-align: center;
    margin: 0 auto;
}
#kensa .kensa1 .kensa_index1 h3,
#kensa .kensa3 .kensa_index1 h3{
    width: 25vw;
}
#kensa .kensa2 .kensa_index1 h3{
    width:57vw;
}
#kensa .kensa_index1 .fw_bold{
    font-size:100%;
    line-height: 1.6em;
    margin-top: .7em;
    margin-bottom: 1em;
    text-align: center;
}

/*kensa1_2*/
 #kensa .kensa1_2.flexbox{
    display: block;
}   
#kensa .kensa1_2 .kensa1{
    width: 100%;
}
#kensa .kensa1_2 .kensa2{
    width: 100%;
}

/*kensa1*/
#kensa .kensa1 .img{
    width: 10em;
    height: 9em;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 30px;
}
#kensa .kensa1 .img img{
    width: 100%;
    margin-top: -4.5vw;
}
#kensa .kensa1 .kensa_line1_box{
    position: absolute;
    top: 35px;
    right: 0;
    width: 61%;
}

/*kensa2*/
#kensa .kensa2 .kensa_list1{
    margin-bottom: -5%;
}
#kensa .kensa2 .kensa_list1 li{
    margin-bottom: 5%;
}
#kensa .kensa2 .kensa_list1 .fw_bold{
    padding: .5em 0;
    width: 90%;
    font-size:90%;
    line-height: 1em;
    bottom: 2vw;
}
#kensa .kensa2 .kensa_list1 .in_maru{
    top:-2vw;
    right: -2vw;
}

/*kensa3*/
#kensa .kensa3{
    width: 100%;
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
}

/*kensa4*/
#kensa .kensa4{
    padding-left: 0;
    text-align: center;
}
#kensa .kensa4 .fw_bold{
    font-size:90%;
    letter-spacing: normal;
    line-height: 1.75em;
}

/*kensa_btn*/
#kensa .kensa_btn{
    bottom:-10vw;
    width: 42%;
    max-width: 100%;
    font-size: 80%;
}
#kensa .kensa_btn .inbox{
    top: 55%;
}
#kensa .kensa_btn i{
    font-size: 90%;
}
@keyframes btn_shadow {
    0% { filter: drop-shadow(0 0 8px rgba(0,0,0,0)); }
    100% { filter: drop-shadow(0 0 8px rgba(0,0,0,0.25)); }
}
#kensa .kensa_btn:hover{
    filter: drop-shadow(0 0 8px rgba(0,0,0,0.35));
}
    
/*線*/
.kensa_line1,.kensa_line2,.kensa_line3,.kensa_line4,.kensa_line5{
    display: none;
}   
#kensa .sp_line1_box{
    margin: 1em 0 .5em;
}   
#kensa .sp_line1_box .sp_line1{
    width: .8em;
    margin: 0 auto;
}
    
/*PC時のアニメーションを解除*/
.bg.anime_on .kensa1 .fadein2/*聴く*/,
.bg.anime_on .kensa1 .com_kuron/*聴くの画像*/,
.bg.anime_on .kensa1 .anima-kensa-line/*聴くの線*/,
.bg.anime_on .kensa2 .fadein2/*包括的診断*/,
.bg.anime_on .kensa2 .com_kuron/*包括的診断の画像*/,
.bg.anime_on .kensa2 .kensa2_line1 .anima-kensa-line/*包括的診断の線*/,
.bg.anime_on .kensa2 .kensa2_line2 .anima-kensa-line/*包括的診断の線2*/,
.bg.anime_on .kensa3 .fadein2/*話す*/,
.bg.anime_on .kensa4 .kensa_line4_box .anima-kensa-line/*話すとkensa4の間の線*/,
.bg.anime_on .kensa4 .kensa_line5_box .anima-kensa-line/*話すとkensa4の間の線2*/,
.bg.anime_on .kensa4 .fadein2,
.bg.anime_on .kensa_btn.fadein2/*kensa_btn*/{
	animation: none;
    opacity: 1;
}
/*その場でくるっと回る*/
.kensa1 .com_kuron,
.kensa2 .com_kuron{
    transform: rotateY(-80deg);
    transition: 0.6s;
}
.kensa1.anime_on .com_kuron,
.kensa2.anime_on .com_kuron{
    transform: rotateY(0);
    transition: 0.6s;
    animation-delay: 2s;
}
    
/*スマホアニメーション*/
.kensa1,
.kensa2,
.kensa3,
.kensa4{
    opacity: 0;
    transition: 0.6s;
} 
.kensa1.anime_on,
.kensa2.anime_on,
.kensa3.anime_on,
.kensa4.anime_on{
    opacity: 1;
}
.sp_line1_box .anima-kensa-line-sp{
    stroke-dashoffset: 1000;
    opacity: 0;
}
.sp_line1_box.anime_on .anima-kensa-line-sp {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: 4s line-kensa-animation-sp linear forwards;
    opacity: 1;
}
}

@keyframes line-kensa-animation-sp {
    0% {stroke-dashoffset: 1000;}
    100% {stroke-dashoffset: 0;}
}






/* mission
---------------------------------------------------------*/
#mission .mission_content{
    position: relative;
}
#mission .mi_tit_bg{
    position: relative;
    z-index: 10;
    background: #fff;
}

/*mi_tit*/
#mission .mi_tit{
    padding-bottom: 60px;
}
#mission .mi_tit .tit .fw_bold,
#mission .mi_tit .tit .deco1{
    display: inline-block;
    line-height: 1.25em;
    font-size: min(540%,7.2vw);
}
#mission .mi_tit .tit .fw_bold{
    margin-right: .5em;
}
#mission .mi_tit .tit .deco1{
    width: 2.3em;
    margin-bottom: -0.05em;
}
#mission .mi_tit p{
    margin-top:2em;
    line-height: 1.7em;
    letter-spacing: 0.08em;
}

/*mi_main_area*/
#mission .mi_main_area{
    position: relative;
}
#mission .scl_area {
    display: block;
    unicode-bidi: isolate;
    overflow-y: scroll;
    -ms-overflow-style: none!important;/*Microsoft Edgeでスクロールバーを非表示*/
    scrollbar-width: none!important;/*Firefoxでスクロールバーを非表示*/
}
#mission .scl_area::-webkit-scrollbar{
      display: none!important;/*Chrome/safariでスクロールバーを非表示*/
}
#mission .mi_list > li{
    margin-bottom: 80px;/*40px*/
}
#mission .mi_list > li:first-child{
    padding-top: 90px;
}
#mission .mi_list > li:last-child{
    padding-bottom: 90px;
}
#mission .li_inbox{
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    border-radius: 30px;
}
#mission .mi_bg{
    position: absolute;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    top:0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    height: 100vh;/*100vh*/
    z-index: -5;
    transition: opacity 1s ease 0s;
    opacity: 0;
}
#mission .mi_bg.pos_abs{
    position: absolute;
}
#mission .mi_bg.pos_fix{
    position: fixed;
}
#mission .show .mi_bg{
    opacity: 1;
}
#mission .mission1 .mi_bg{
	background-image: url("../images/top/mis1_bg@2x.jpg");
    opacity: 1!important;
}
#mission .mission2 .mi_bg{
	background-image: url("../images/top/mis2_bg@2x.jpg");}
#mission .mission3 .mi_bg{
	background-image: url("../images/top/mis3_bg@2x.jpg");}
#mission .mission4 .mi_bg{
	background-image: url("../images/top/mis4_bg@2x.jpg");}
#mission .mission5 .mi_bg{
	background-image: url("../images/top/mis5_bg@2x.jpg");}

/*mi_inbox*/
#mission .mi_list li .mi_inbox{
    width:57%;
    max-width: 850px;
    margin-left: 40.5%;
    background: #fff;
    padding: 75px 100px 90px;
    box-sizing: border-box;
    border-radius: 30px;
    text-align: left;
}

#mission .mi_list li.mission2 .com_chon_tit{
    color: #637EB7;}
#mission .mi_list li.mission3 .com_chon_tit{
    color: #98B749;}
#mission .mi_list li.mission4 .com_chon_tit{
    color: #D49A57;}
#mission .mi_list li.mission5 .com_chon_tit{
    color: #60AABF;}
#mission .mi_list li:nth-child(2) .com_chon::before{
    background-color: #637EB7;}
#mission .mi_list li:nth-child(3) .com_chon::before{
    background-color: #98B749;}
#mission .mi_list li:nth-child(4) .com_chon::before{
    background-color: #D49A57;}
#mission .mi_list li:nth-child(5) .com_chon::before{
    background-color: #60AABF;}

#mission .mi_list li .tit2{
    font-size: min(250%,3.3vw);
    letter-spacing: normal;
    line-height: 1.4em;
    margin-bottom: .6em;
}
#mission .mi_list li .mi_txt{
    line-height: 1.9em;
}
#mission .mi_list li .com_btn1{
    margin-top: 1.8em;
}
#mission .mi_list li.mission1 .com_btn1 a{
    background: #77B763;}
#mission .mi_list li.mission2 .com_btn1 a{
    background: #637EB7;}
#mission .mi_list li.mission3 .com_btn1 a{
    background: #98B749;}
#mission .mi_list li.mission4 .com_btn1 a{
    background: #D49A57;}
#mission .mi_list li.mission5 .com_btn1 a{
    background: #60AABF;}

#mission .mi_list li.mission1 .com_btn1 a:hover{
    background: #469E29;}
#mission .mi_list li.mission2 .com_btn1 a:hover{
    background: #3D558A;}
#mission .mi_list li.mission3 .com_btn1 a:hover{
    background: #789926;}
#mission .mi_list li.mission4 .com_btn1 a:hover{
    background: #C77A22;}
#mission .mi_list li.mission5 .com_btn1 a:hover{
    background: #2E8DA8;}

#mission .mi_list li.mission2 .img{
    width: 112%;
    margin-left: -6%;
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
}
#mission .mi_list li.mission4 .mi_inbox,
#mission .mi_list li.mission3 .mi_inbox{
    position: relative;
}
#mission .mi_list li.mission3 .img{
    position: absolute;
    bottom: 60px;
    right: 11%;
    width: 31%;
    max-width: 720px;
}
#mission .mi_list li.mission4 .abs_img{
    position: absolute;
    top: -20px;
    right: 4%;
    width: 20%;
}
#mission .mi_list li.mission4 .btnlist{
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
    max-width: 590px;
    margin-top: 1em;
}
#mission .mi_list li.mission4 .btnlist .com_btn1{
    width: 49.5%;
    margin-top: 1em;
}
#mission .mi_list li.mission5 .flt_l{
    width: 47%;
}
#mission .mi_list li.mission5 .flt_r{
    width: 64%;
    margin-right: -12%;
    margin-top: -1em;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
/*mi_tit*/
#mission .mi_tit{
    padding-bottom: 5vw;
}
#mission .mi_tit p{
    margin-top:1.5em;
}

/*scl_area
#mission .scl_area {
    height: 60vw;
}*/
#mission .mi_list > li{
    margin-bottom: 5vw;/*2vw*/
}
#mission .mi_list > li:first-child{
    padding-top: 4vw;
}
#mission .mi_list > li:last-child{
    padding-bottom: 4vw;
}
/*mi_inbox*/
#mission .mi_list li .mi_inbox{
    width: 60%;
    margin-left: 37.5%;
    padding: 3vw 3.5% 4vw;
}
#mission .mi_list li.mission5 .flt_l{
    width: 100%;
    float: none;
}
#mission .mi_list li.mission5 .flt_r{
    width: 60%;
    margin-right: -6%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
/*mi_tit*/
#mission .mi_tit{
    padding-bottom: 3vw;
}
#mission .mi_tit .tit .fw_bold,
#mission .mi_tit .tit .deco1{
    font-size:7.2vw;
}
#mission .mi_tit .tit .deco1{
    width: 2.7em;
}
#mission .mi_tit p{
    margin-top:1.1em;
    letter-spacing: 0.05em;
}

/*scl_area
#mission .scl_area {
    height: 61vw;
}*/
#mission .mi_list > li{
    margin-bottom: 5vw;/*5vw*/
}
#mission .mi_list > li:first-child{
    padding-top: 5vw;
}
#mission .mi_list > li:last-child{
    padding-bottom: 0;
}

/*mi_inbox*/
#mission .mi_list li .mi_inbox{
    width:65%;
    margin-left: 32%;
    padding: 4vw 3.5%;
}
#mission .mi_list li .tit2{
    letter-spacing: normal;
}
#mission .mi_list li .mi_txt{
    line-height: 1.8em;
}
#mission .mi_list li .com_btn1{
    margin-top: 1.5em;
}
#mission .mi_list li.mission3 .img{
    bottom: 3vw;
    right: 3%;
    width: 31%;
}
#mission .mi_list li.mission4 .abs_img{
    top: -3vw;
}
#mission .mi_list li.mission4 .btnlist{
    margin-top: 5%;
}
#mission .mi_list li.mission4 .btnlist .com_btn1{
    margin-top: 1.5%;
}
#mission .mi_list li.mission5 .flt_l{
    width: 100%;
    float: none;
}
#mission .mi_list li.mission5 .flt_r{
    margin-right: -8%;
    margin-top: -1.2em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
/*mi_tit*/
#mission .mi_tit{
    position: relative;
    padding-top: 2.3em;
    padding-bottom: 5%;
}
#mission .mi_tit .tit .fw_bold,
#mission .mi_tit .tit .deco1{
    display: block;
    font-size: 8.5vw;
}
#mission .mi_tit .tit .fw_bold{
    margin-right: 0;
    text-align: center;
}
#mission .mi_tit .tit .deco1{
    position: absolute;
    bottom: calc(100% - .5em);
    left: 3%;
    width: 38%;
    margin-bottom: 0;
}
#mission .mi_tit p{
    margin-top:.8em;
    line-height: 1.7em;
    text-align: center;
}

/*scl_area*/
#mission .mi_main_area{
    position: relative;
}
#mission .scl_area {
    height: auto;
    display: block;
    overflow-y:auto;
}
#mission .mi_list > li{
    position: relative;
    padding-top: 37vw;
    margin-bottom: 8%;
}
#mission .mi_list > li:first-child{
    padding-top: 37vw;
}
#mission .mi_list > li:last-child{
    padding-bottom: 0;
}
#mission .mi_bg{
    background-size: 100% auto;
    background-position: top center;
    height: 100%;
    opacity: 1;
}
#mission .mission1 .mi_bg{
	background-image: url("../images/top/mis1_bg_sp@2x.jpg");}    
#mission .mission2 .mi_bg{
	background-image: url("../images/top/mis2_bg_sp@2x.jpg");}    
#mission .mission3 .mi_bg{
	background-image: url("../images/top/mis3_bg_sp@2x.jpg");}    
#mission .mission4 .mi_bg{
	background-image: url("../images/top/mis4_bg_sp@2x.jpg");}    
#mission .mission5 .mi_bg{
	background-image: url("../images/top/mis5_bg_sp@2x.jpg");}    
    
#mission .mi_bg.pos_fix{
    position: absolute;
}
    
/*mi_inbox*/
#mission .mi_list li .mi_inbox{
    width: 96%;
    margin:0 auto;
    padding: 7vw 8% 10vw;
    border:1px solid #77B763;
    text-align: center;
}
#mission .mi_list li:nth-child(2) .mi_inbox{
    border-color: #637EB7;}
#mission .mi_list li:nth-child(3) .mi_inbox{
    border-color: #98B749;}
#mission .mi_list li:nth-child(4) .mi_inbox{
    border-color: #D49A57;}
#mission .mi_list li:nth-child(5) .mi_inbox{
    border-color: #60AABF;}
  
#mission .mi_list li .com_chon_tit{
    font-size: 70%;
    margin-bottom: 2.5em;
}    
#mission .mi_list li .tit2{
    font-size: 155%;
    line-height: 1.3em;
    margin-bottom: .3em;
}
#mission .mi_list li .mi_txt{
    line-height: 1.8em;
    text-align: left;
}
#mission .mi_list li .com_btn1{
    margin-top: 1em;
}
#mission .mi_list li .com_btn1 a{
    max-width: 510px;
    width: 90%;
}
#mission .mi_list li.mission2 .img{
    width: 100%;
    margin: 1em auto 0;
}
#mission .mi_list li.mission2 .img .sp_col3{
    width: 114%;
    margin-left: -7%;
    display: flex;
    justify-content: space-between;
}
#mission .mi_list li.mission2 .img .sp_col3 li{
    width: 32%;
    text-align: center;
}
#mission .mi_list li.mission2 .img .sp_col3 li p{
    color: #637EB7;
    margin-top: .5em;
    font-weight: bold;
    line-height: 1.4em;
    font-size:88%;
}
#mission .mi_list li.mission3 .img{
    position: static;
    width: 50%;
    margin: 1em auto 0;
}
#mission .mi_list li.mission4 .abs_img{
    top: -10vw;
    width:25%;
}
#mission .mi_list li.mission4 .btnlist{
    max-width: 116%;
    margin-top: .8em;
    width: 116%;
    margin-left: -8%;
}
#mission .mi_list li.mission4 .btnlist .com_btn1{
    margin-top: 1.5%;
}
#mission .mi_list li.mission4 .btnlist .com_btn1 a{
    width: 100%;
}
#mission .mi_list li.mission5 .flt_l{
    float: none;
    width: 100%;
}
#mission .mi_list li.mission5 .flt_r{
    float: none;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -0.7em;
}
}





/* clinic
---------------------------------------------------------*/
#clinic{
    position: relative;
    z-index: 3;
}
#clinic .cli_inbox{
    position: relative;
    padding-top: 110px;
    padding-bottom: 75px;
    background: #fff;
}
#clinic .cli_inbox .cli_box{
    position: absolute;
    top:110px;
    right:77.8%;
    text-align: left;
}
#clinic .cli_inbox .cli_box h2{
    font-size: min(145%,2.5vw);
    letter-spacing: 0.01em;
    line-height: 1.7em;
    margin-bottom: 1.5em;
}
#clinic .cli_inbox .cli_box li{
    font-size:130%;
    padding: .25em 0 .25em .9em;
    box-sizing: border-box;
    margin-bottom: .8em;
    line-height: 1.4em;
    border-left: 4px solid #49B77F;
}
#clinic .cli_inbox .cli_box li:nth-child(2){
    border-color: #BA9C18;}
#clinic .cli_inbox .cli_box li:nth-child(3){
    border-color: #6385B7;}
#clinic .cli_inbox .cli_box li:nth-child(4){
    border-color: #CC8BCC;}

#clinic .cli_inbox .cli_box li:nth-child(1) span{
    color: #49B77F;}
#clinic .cli_inbox .cli_box li:nth-child(2) span{
    color: #BA9C18;}
#clinic .cli_inbox .cli_box li:nth-child(3) span{
    color: #6385B7;}
#clinic .cli_inbox .cli_box li:nth-child(4) span{
    color: #CC8BCC;}

#clinic .slide_area {
    position: relative;
	width: 74.5%;
	margin-left: auto;
	margin-right: 0;
	overflow: hidden;
}
#clinic .slide_clinic{
    position: relative;
    padding-bottom: 30px;
}
#clinic .slide_clinic .swiper-wrapper{
    opacity: 1!important;
    
}
#clinic .slide_clinic .swiper-slide {
    max-width: 980px;
    width: 65vw;
    margin: 0 30px 0 0;
}
#clinic .com_btn1{
    text-align: right;
    /*margin-top: 30px;*/
    margin-right: 5%;
}
#clinic .abs_img{
    position:absolute;
    bottom: -25px;
    left: 5%;
    width: 17%;
    max-width: 240px
}

/*ドット*/
#clinic .swiper-pagination {
	position: absolute;
	z-index: 10;
    left: 17px;
	bottom: 0;
    width: 90px;
    display: flex;
    justify-content: space-between;
}
#clinic .swiper-pagination-bullet {
	cursor: pointer;
	display: block;
	width: 7px;
	height:7px;
	border-radius: 50%;
	background: rgba(66,57,50,0.50);
    border:2px #fff solid;
	transition: all 0.4s;
	margin-right: 10px;
}
#clinic .swiper-pagination-bullet-active {
	background: rgba(66,57,50,1);
    border-color: rgba(66,57,50,1);
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
#clinic .cli_inbox{
    padding-top: 8vw;
}
#clinic .cli_inbox .cli_box{
    top:8vw;
}
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#clinic .cli_inbox{
    padding-bottom: 5vw;
}
#clinic .cli_inbox .cli_box{
    top:8vw;
    right:77%;
}
#clinic .cli_inbox .cli_box h2{
    font-size:2vw;
    letter-spacing: normal;
}
#clinic .cli_inbox .cli_box li{
    font-size: 1.8vw;
    letter-spacing: normal;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#clinic .cli_inbox{
    padding-top: 10vw;
    padding-bottom:6vw;
}
#clinic .cli_inbox .cli_box{
    top:10vw;
    right:74%;
}
#clinic .cli_inbox .cli_box h2{
    letter-spacing: normal;
    line-height: 1.7em;
    margin-bottom: 1.5em;
}
#clinic .cli_inbox .cli_box li{
    font-size:2vw;
}
#clinic .slide_area {
	width: 70%;
}
#clinic .slide_clinic{
    padding-bottom: 3vw;
}
#clinic .slide_clinic .swiper-slide {
    width: 55vw;
    margin: 0 2% 0 0;
}
#clinic .com_btn1{
    margin-right: 2%;
}
#clinic .abs_img{
    bottom: -2vw;
    left: 3%;
}

/*ドット*/
#clinic .swiper-pagination {
    left: 0;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#clinic .cli_inbox{
    padding-top:2%;
    padding-bottom: 10%;
}
#clinic .cli_inbox .cli_box{
    position: static;
    width: 92%;
    margin: 0 auto;
}
#clinic .cli_inbox .cli_box h2{
    font-size:135%;
    letter-spacing: 0.01em;
    line-height: 1.7em;
    margin-bottom: 1em;
}
#clinic .cli_inbox .cli_box ul{
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
    margin-bottom: 2%;
}
#clinic .cli_inbox .cli_box li{
    width: 50%;
    font-size:105%;
}

#clinic .slide_area {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
#clinic .slide_clinic{
    padding-bottom: 1.2em;
}
#clinic .slide_clinic .swiper-slide {
    max-width: 100%;
    width:100%;
    margin: 0;
}
#clinic .com_btn1{
    text-align: center;
    margin-right: auto;
    margin-top: 0;
}
#clinic .abs_img{
    position:absolute;
    bottom:auto;
    top:-3vw;
    left: 75%;
    width: 24%;
    max-width: 100%;
}
    
/*ナビゲーション*/
#clinic .swiper-button-prev,
#clinic .swiper-button-next{
    position: absolute;
    z-index: 10;
    top: 50%;
	transform: translateY(-50%);
    width: 8%;
    max-width: 50px;
    height: 50px;
    background: url("../images/top/cli_sp_arrow_l.svg")no-repeat top left;
    background-size: 100% auto;
}
#clinic .swiper-button-prev{
    left: 2%;
}
#clinic .swiper-button-next{
    background-image:url("../images/top/cli_sp_arrow_r.svg");
    background-position: top right;
    right: 2%;
}
}







/* menu
---------------------------------------------------------*/
#menu{
    position: relative;
    z-index: 2;
    background: #fff;
}
#menu .bg{
    background:rgba(237,236,235,0.30);
    padding: 130px 0 110px;
}
#menu .menu_tit{
    text-align: center;
    margin-bottom: 3rem;
}
#menu .menu_tit .fw_bold{
    line-height: 1.7em;
    margin-bottom: .8em;
    font-size: min(255%,3.8vw);
}
#menu .menu_tit .fw_bold strong{
    color: #E3831B;
}
#menu .menu_tit p{
    font-size:90%;
    line-height: 1.8em;
}

/*menu_list1*/
#menu .menu_list1{
    margin-bottom: -0.7rem;
}
#menu .menu_list1 li{
    width: 19.3%;
    border:1px solid #F2F2F2;
    background: #fff;
    border-radius: 30px;
    text-align: center;
    padding: 2rem 0 1.8rem;
    margin-bottom: .7rem;
    box-sizing: border-box;
    transition: 0.4s;
}
#menu .menu_list1 li p{
    color: #63B7A3;
    font-size: 78%;
    line-height: 1.5em;
    margin-bottom: .3em;
}
#menu .menu_list1 li a{
    font-size: 110%;
    line-height: 1em;
}
#menu .menu_list1 li:hover{
    border-color: #63B7A3;
    transition: 0.4s;
}

/*menu_list2*/
#menu .menu_list2{
    justify-content: start;
    margin-top: 35px;
}
#menu .menu_list2 li{
    width: 32.5%;
    margin-right: 1.25%;
    text-align: center;
    z-index: 1;    
}
#menu .menu_list2 li:nth-child(3n){
    margin-right: 0;
}
#menu .menu_list2 li:hover .img{
    filter: drop-shadow(0 0 8px rgba(0,0,0,0));
    transition: 0.5s;
}
#menu .menu_list2 li:hover .img{
    filter: drop-shadow(0 0 8px rgba(0,0,0,0.2));
    transition: 0.3s;
}
#menu .menu_list2 li .fw_bold{
    display: inline-block;
    margin-top: 1.2rem;
}
#menu .menu_list2 li .fw_bold a{
    position: relative;
    font-size: min(90%,1.5vw);
    padding-right:3em;
    box-sizing: border-box;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    display: flex;
    align-items: center;
    color: #5572AB;
}
#menu .menu_list2 li .fw_bold a::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/icon_soto.svg")no-repeat top right;
    background-size: 100%;
    height: 1.9em;
    width: 1.9em;
    top:50%;
	transform: translateY(-50%); 
    right: 0;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));
    transition: 0.8s;
}
#menu .menu_list2 li:hover .fw_bold a::before{
    background-image: url("../images/icon_soto_h.svg");
    filter: drop-shadow(0 0 10px rgba(0,0,0,0));
    transition: 0.8s;
}
#menu .menu_list2 li .fw_bold a span{
    display:inline-block;
    align-items: center;	
}
#menu .menu_list2 li .fw_bold a span:nth-child(1){
    font-size:160%;
    margin-right: 0.4em;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#menu .bg{
    padding: 8vw 0 6vw;
}

/*menu_list1*/
#menu .menu_list1 li{
    padding: 1.5rem 0 1.3rem;
    letter-spacing: normal;
}
#menu .menu_list1 li p{
    margin-bottom: .2em;
}

/*menu_list2*/
#menu .menu_list2{
    margin-top: 2.2vw;
}
#menu .menu_list2 li .fw_bold{
    margin-top: .8rem;
}
#menu .menu_list2 li .fw_bold a{
    letter-spacing: normal;
    padding-right:2.5em;
}
#menu .menu_list2 li .fw_bold a span:nth-child(1){
    font-size:150%;
    margin-right: 0.1em;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#menu .bg{
    padding: 8vw 0 8vw;
}
#menu .menu_tit{
    margin-bottom: 1rem;
}
#menu .menu_tit .fw_bold{
    margin-bottom: .5em;
}
#menu .menu_tit p{
    font-size:95%;
}

/*menu_list1*/
#menu .menu_list1{
    margin-bottom: -0.7rem;
}
#menu .menu_list1 li{
    border-radius:10px;
    letter-spacing: normal;
    padding: 1.2rem 0 1rem;
    margin-bottom: 1%;
}
#menu .menu_list1 li a{
    font-size: 110%;
}
#menu .menu_list1 li a span{
    letter-spacing: -0.1em;
}
    
/*menu_list2*/
#menu .menu_list2{
    margin-top: 3vw;
}
#menu .menu_list2 li .fw_bold{
    margin-top: 1rem;
}
#menu .menu_list2 li .fw_bold a{
    padding-right: 2.3em;
    letter-spacing:normal;
}
#menu .menu_list2 li .fw_bold a span:nth-child(1){
    font-size:140%;
    margin-right: 0.4em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#menu .bg{
    padding: 10% 0;
}
#menu .menu_tit{
    margin-bottom: 1.5rem;
}
#menu .menu_tit .fw_bold{
    font-size:160%;
    line-height: 1.6em;
    margin-bottom: .5em;
}
#menu .menu_tit p{
    font-size:90%;
    line-height: 1.8em;
    text-align: left;
}

/*menu_list1*/
#menu .menu_list1{
    margin-bottom: -1%;
}
#menu .menu_list1 li{
    width:49%;
    padding: 1.6rem 0 1.4rem;
    margin-bottom: 1.5%;
    border-radius: 20px;
}
#menu .menu_list1 li p{
    font-size: 78%;
    line-height: 1.5em;
    margin-bottom: .1em;
}
#menu .menu_list1 li a{
    font-size: 105%;
    line-height: 1em;
}
#menu .menu_list1 li a span{
    letter-spacing: normal;
}
    
/*menu_list2*/
#menu .menu_list2{
    margin-top: 5%;
}
#menu .menu_list2 li{
    width: 100%;
    margin-right: 0;
    margin-bottom: 6%;
}
#menu .menu_list2 li:last-child{
    margin-bottom:0;
}
#menu .menu_list2 li .fw_bold{
    margin-top: 1rem;
    
}
#menu .menu_list2 li .fw_bold a{
    font-size: 80%;
    padding-right: 2.5em;
    letter-spacing: normal;
}
#menu .menu_list2 li .fw_bold a::before{
    filter: drop-shadow(0 0 5px rgba(0,0,0,0.2));
}
}




/* question
---------------------------------------------------------*/
#question{
    background: #fff;
}
#question .w1250{
    padding-top: 100px;
    padding-bottom: 95px;
}
#question h2{
    font-size:110%;
    line-height:1em;
    margin-bottom:3em;
    letter-spacing: 0.05em;
}
#question .qu_list1 li{
    border-bottom: 1px solid #E6E6E6;
    padding-bottom: 40px;
    margin-bottom: 40px;
}
#question .qu_list1 li:last-child{
    margin-bottom: 0;
}
#question .qu_list1 li div{
    position:relative;
    padding-left: 4.7rem;
    padding-right:1.5em;
    box-sizing: border-box;
    line-height: 1.5em;
}
#question .qu_list1 li div::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/top/icon_q.svg")no-repeat top left;
    background-size: 100% auto;
    width:3rem;
    height: 3rem;
    top:-0.7em;
    left: 0.3em;
}
#question .qu_list1 li div.a_txt{
    font-size:95%;
    line-height: 1.6em;
    margin-top: 2em;
}
#question .qu_list1 li div.a_txt::before{
    background-image: url("../images/top/icon_a.svg");
    left: 0.35em;
}
#question .com_btn2{
    margin-top: 2.5em;
}

/*開閉*/
#question .open_trigger {
	cursor: pointer;
}
#question .open_trigger span.open_txt {
    position: relative;
	display: block;
    width: 100%;
}
#question .open_trigger span.round_btn {
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	top: .2em;
    right: 0;
}
#question .open_trigger span.round_btn::before,
#question .open_trigger span.round_btn::after{
	content: '';
    display: block;
    width: 20px;
    height: 1px;
    border-radius: 5px;
    background: #423932;
    position: absolute;
    left: 0;
	right: 0;
    top: 50%;
    transform: translateY(-50%);
	margin: auto;
}
#question .open_trigger span.round_btn::after {
	background: #423932;
	transform: translateY(-50%) rotate(90deg);
	transition: 0.5s;
}
#question .open_trigger.active .round_btn::after {
	transform: rotate(0);
	transition: 0.5s;
}
#question .open_box {
	display: none;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#question .w1250{
    padding-top: 8vw;
    padding-bottom: 6vw;
}
#question h2{
    margin-bottom:2.5em;
}
#question .qu_list1 li{
    padding-bottom: 3vw;
    margin-bottom: 3vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#question .w1250{
    padding-top: 8vw;
    padding-bottom: 8vw;
}
#question h2{
    margin-bottom: 2.5em;
}
#question .qu_list1 li{
    padding-bottom: 3.5vw;
    margin-bottom: 3.5vw;
}
#question .qu_list1 li div{
    padding-left: 3.4rem;
}
#question .qu_list1 li div::before{
    width: 2.8em;
    height: 2.8em;
    top:-0.6em;
    left: 0;
}
#question .qu_list1 li div.a_txt::before{
    left: 0.1em;
}
#question .com_btn2{
    margin-top: 2em;
}
    
/*開閉*/
#question .open_trigger span.round_btn {
	top: 0.15em;
    width: 1em;
	height: 1em;
}
#question .open_trigger span.round_btn::before,
#question .open_trigger span.round_btn::after{
    width: 1em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
#question .w1250{
    padding-top: 10%;
    padding-bottom: 15%;
}
#question h2{
    font-size:110%;
    margin-bottom: 1.5em;
}
#question .qu_list1 li{
    padding-bottom: 7%;
    margin-bottom: 7%;
}
#question .qu_list1 li div{
    padding-left: 3.3rem;
    padding-right:1.2em;
    line-height: 1.6em;
}
#question .qu_list1 li div::before{
    width: 2.5rem;
    height: 2.5rem;
    top:0;
    left: 0;
}
#question .qu_list1 li div.a_txt{
    margin-top: 1.2em;
}
#question .qu_list1 li div.a_txt::before{
    left:0;
}
#question .com_btn2{
    margin-top:1.5em;
}

/*開閉*/
#question .open_trigger span.round_btn {
	width: 1em;
	height: 1em;
	top: 50%;
	transform: translateY(-50%);
}
#question .open_trigger span.round_btn::before,
#question .open_trigger span.round_btn::after{
    width: 1em;
}
}




/* blogcolumn
---------------------------------------------------------*/
#blogcolumn{
    background: #fff;
}
#blogcolumn .bg{
    background: #63B7A3;
    border-radius: 30px;
    padding: 70px 5.3% 80px;
    box-sizing: border-box;
}
#blogcolumn .blo_tit{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 50px;
}
#blogcolumn .blo_tit .ft_dip,
#blogcolumn .blo_tit .com_btn2{
    display: inline-block;
}
#blogcolumn .blo_tit .ft_dip{
    font-size: min(350%,5vw);
    color: #fff;
    line-height: 1em;
}

#blogcolumn .blo_list1.flexbox{
    justify-content: start;
	flex-wrap: nowrap;
}
#blogcolumn .blo_list1 li{
    width: 23%;
    margin-right: 2.666%;
    line-height: 1.4em;
}
#blogcolumn .blo_list1 li:last-child{
    margin-right: 0;
}
#blogcolumn .blo_list1 li .img{
    position: relative;
    display: block;
    height: 160px;
    border-radius: 30px;
    overflow: hidden;
}
#blogcolumn .blo_list1 li .img img{
    transition: 1s;
}
#blogcolumn .blo_list1 li:hover .img img{
    transform:scale(1.1,1.1);
    transition: 0.3s;
}
#blogcolumn .blo_list1 li .ft_dip{
    font-size:90%;
    position: relative;
    padding-left: 1em;
    box-sizing: border-box;
    letter-spacing: 0.1em;
    margin-top: 1em;
    margin-bottom: .3em;
}
#blogcolumn .blo_list1 li .ft_dip::before{
    position: absolute;
    display: block;
    content: "";
    background: #423932;
    background-size: 100% auto;
    width: .35em;
    height: .35em;
    border-radius: 50%;
    top: 50%;
	transform: translateY(-50%);
    left: 0.2em;
}
#blogcolumn .blo_list1 li .fw_bold a{
    color: #fff;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1500px) {
#blogcolumn .blo_list1 li .img{
    height: 10.5vw;
}
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#blogcolumn .bg{
    padding: 4.5vw 4% 5vw;
}
#blogcolumn .blo_tit{
    margin-bottom: 3vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#blogcolumn .bg{
    padding: 5vw 4%;
}
#blogcolumn .blo_tit{
    margin-bottom: 4vw;
}
#blogcolumn .blo_list1 li{
    width: 23.5%;
    margin-right: 2%;
}
#blogcolumn .blo_list1 li .ft_dip{
    margin-top: .5em;
}
#blogcolumn .blo_list1 li .img{
    height: 11vw;
    border-radius: 10px;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#blogcolumn .w1400{
    width: 100%;
    margin: 0;
    padding: 0;
}
#blogcolumn .bg{
    padding: 8% 0 8% 5%;
    border-radius: 30px 0 0 30px;
}
#blogcolumn .blo_tit{
    margin-bottom: 8%;
}
#blogcolumn .blo_tit .ft_dip{
    font-size:220%;
}
#blogcolumn .blo_tit .com_btn2{
    margin-right: 5%;
}
#blogcolumn .blo_list1 li .img{
    height: 125px;
}
#blogcolumn .scl_erea{
    position: relative;
    padding-bottom: 1.8em;
}
#blogcolumn .scl_erea ul{
    width: 1000px;
}
#blogcolumn .blo_list1{
    margin-right: 1.3em;
}
#blogcolumn .blo_list1 li .ft_dip{
    margin-top: .8em;
}
}





/* other
---------------------------------------------------------*/
#other .other_bg{
    background: #fff;
    padding: 80px 0 65px;
}
#other .flexbox{
    align-items: center;	
}
#other .flexbox .instagram{
    position: relative;
    width: 21%;
    text-align: center;
    font-size:175%;
    letter-spacing: normal;
    line-height: 1em;
    margin-bottom: 40px;
}
#other .flexbox .instagram .icon{
    width: 1.5em;
    height: 1.5em;
    margin: 0 auto;
}
#other .flexbox .instagram .ft_dip{
    position: relative;
    padding:.4em 0 .7em;
}
#other .flexbox .instagram .ft_dip::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/icon_soto.svg")no-repeat top center;
    background-size: 100%;
    height: 1em;
    width: 1em;
    top:100%;
    left: 0;
    margin: 0 auto;
    right: 0;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));
    transition: 0.8s;
}
#other .flexbox .instagram:hover .ft_dip::before{
    background-image: url("../images/icon_soto_b.svg");
    filter: drop-shadow(0 0 10px rgba(0,0,0,0));
    transition: 0.8s;
}
#other .flexbox .instagram .deco{
    position: absolute;
    display: block;
    content: "";
    top:63%;
	transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
}
#other .flexbox .instagram .deco img{
    opacity: 0;
}
#other .flexbox .instagram .com_chon{
    height:30px;
    width: 1.5px;
}
#other .flexbox.anime_on .instagram .com_chon::before{
    animation: anime_com_chon 1s forwards;
    animation-delay:0s;
}

#other .flexbox .instagram .com_chon{
    transition: 0.5s;
}
#other .flexbox .instagram:hover .com_chon{
    transition: 0.3s;
}
#other .flexbox .instagram:hover .com_chon.type1{
    top: -0.2em;
    left:-0.2em;
}
#other .flexbox .instagram:hover .com_chon.type2{
    top: -0.2em;
    right: -0.2em;
}
#other .flexbox .instagram:hover .com_chon.type3{
    bottom: -0.2em;
    left: -0.2em;
}
#other .flexbox .instagram:hover .com_chon.type4{
    bottom:-0.2em;
    right: -0.2em;
}

#other .flexbox .recruit{
    position: relative;
    width: 71.8%;
}
#other .flexbox .recruit .inbox{
    position: relative;
    background: url("../images/top/bnr_rec@2x.jpg")no-repeat top 20% center;
    background-size: 100% auto;
    padding: 10px 4%;
    box-sizing: border-box;
    transition: 0.8s;
}
#other .flexbox .recruit:hover .inbox{
    background-size:105% auto;
    transition: 0.4s;
}
#other .flexbox .recruit .txt{
    text-align: center;
    font-size:88%;
    line-height: 1em;
    color: #63B7A3;
    margin-top: 1em;
}
#other .flexbox .recruit .btn{
    position: absolute;
    right: 0.5%;
    bottom:-30px;
    width: 18.5%;
    max-width: 250px;
    text-align: center;
}
#other .flexbox .recruit .btn .btn_inbox{
    position: absolute;
    top: 55%;
	transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    line-height: 1.8em;
}
#other .flexbox .recruit .btn a{
    display:block;
}
#other .flexbox .recruit .btn a span{
    font-size:160%;
}
#other .flexbox .recruit .btn i{
    font-size: 70%;
    transition: 0.8s;
}
#other .flexbox .recruit:hover .btn i{
    margin-left: 1em;
    transition: 0.4s;
} 
#other .flexbox .recruit .btn img{
    opacity: .9;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));
    transition: 0.8s;
}
#other .flexbox .recruit:hover .btn img{
    opacity: 1;
    /*filter: drop-shadow(0 0 10px rgba(0,0,0,0.8));*/
    transition: 0.4s;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1300px) {
#other .other_bg{
    padding: 5vw 0;
}
#other .flexbox .recruit .inbox{
    padding: 0 4% 1vw;
}
#other .flexbox .recruit .inbox_txt{
    width: 55vw;
    margin: 0 auto;
}
#other .flexbox .recruit .btn{
    right: -2%;
    bottom:-4vw;
}
#other .flexbox .recruit .btn .btn_inbox{
    line-height: 1.5em;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#other .other_bg{
    padding: 5vw 0;
}
#other .flexbox .instagram{
    width: 24%;
    font-size: 3vw;
    margin-bottom: 40px;
}
#other .flexbox .recruit .inbox{
    padding: 0 4%;
}
#other .flexbox .recruit .btn{
    right: -2%;
    bottom:-4vw;
    width: 18.5%;
}
#other .flexbox .recruit .btn .btn_inbox{
    line-height: 1.2em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#other .other_bg{
    padding: 10% 0 12%;
}
#other .flexbox{
    display: block;
}
#other .flexbox .instagram{
    width: 75%;
    margin: 0 auto 9%;    
    font-size:160%;
}

#other .flexbox .instagram .icon,
#other .flexbox .instagram .ft_dip{
    display: inline-block;
    vertical-align: top;
}
#other .flexbox .instagram .icon{
    width: 1.5em;
    height: 1.5em;
}
#other .flexbox .instagram .ft_dip{
    padding:0 2em 0 0;
    line-height: 1.3em;
}
#other .flexbox .instagram .ft_dip::before{
    background-position: top right;
    height: 1em;
    width: 1em;
    top: 55%;
	transform: translateY(-50%);
    left: auto;
    right: 0;
    filter: drop-shadow(0 0 6px rgba(0,0,0,0.2));
}
#other .flexbox .instagram:hover .ft_dip::before{
    background-image: url("../images/icon_soto.svg");
    filter: drop-shadow(0 0 6px rgba(0,0,0,0.2));
}
#other .flexbox .instagram .deco{
    top: 46%;
}  
    
#other .flexbox .instagram .com_chon{
    height: 20px;
} 
#other .flexbox .instagram:hover .com_chon.type1{
    top: 0;
    left:0;
}
#other .flexbox .instagram:hover .com_chon.type2{
    top: 0;
    right: 0;
}
#other .flexbox .instagram:hover .com_chon.type3{
    bottom: 0;
    left:0;
}
#other .flexbox .instagram:hover .com_chon.type4{
    bottom:0;
    right:0;
}
    
#other .flexbox .recruit{
    width:100%;
}
#other .flexbox .recruit .inbox{
    padding: 0 0 5vw;
    background-size: cover;
}
#other .flexbox .recruit .inbox_txt{
    width: 110%;
    margin-left: -5%;
}
#other .flexbox .recruit .txt{
    text-align: left;
    font-size:85%;
    line-height: 1.4em;
    margin-top: .7em;
}
#other .flexbox .recruit .btn{
    right:-5%;
    bottom:-15vw;
    width:30%;
    max-width: 100%;
}
#other .flexbox .recruit:hover .btn i{
    margin-left: 0;
} 
#other .flexbox .recruit .btn a span{
    font-size:140%;
}
#other .flexbox .recruit .btn img{
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));
}
#other .flexbox .recruit .btn .btn_inbox{
    line-height: 1.3em;
}
}



/* doctorsfile_bnr
---------------------------------------------------------*/
.doctorsfile_bnr{
	max-width: 400px;
	width: 40%;
	margin: 0 auto 65px;
	text-align: center;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.doctorsfile_bnr{
	margin: 0 auto 5vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
.doctorsfile_bnr{
	width: 70%;
	margin: 0 auto 12%;
}
}