@charset "UTF-8";
.sns_waku{
	padding: 20px 20px 0;
	border: 1px solid #000000;
	margin-top: 30px;
}
.img_box{
	position: relative;
}
.make_list02{text-align: center;margin-bottom: 30px;}
.make_list{
	position: absolute;
	bottom: 8px;
	 left: 0;
  right: 0;
  margin:0 auto;	
}
.make_list span,.make_list02 span{
	border: 4px solid #FFFFFF;
	border-radius: 30px;
	font-size: 12px;
	padding: 8px 15px;
	font-weight: normal;
}
.p_btn{
	background-color: #FFEDEE;
}
.b_btn{
	background-color: #C2E7F3;
}
.y_btn{
	background-color: #F9F1A3;
}

@media screen and (max-width: 769px) {
.make_list span{
	font-size: 2.1vw;
	padding: 5px 9px;
	border: 2px solid #FFFFFF;
	letter-spacing: 0;

}	
.make_list{
	bottom: 0;
}	
	
	
}

/* * * * *
kodomo_hospital
* * * * */

.kodomo,.kodomo_follw a{
	color: #68340a;
}
.kodomo_h{
	background-image: url("images/kodomo/flag.png"),url(images/kodomo/k_h_bk.jpg);
	background-position: center top, center center;
	background-size: 730px auto,cover;
	background-repeat: repeat-x,no-repeat;
	display: block;
	position: relative;
	
}
.kodomo_h .inner_kodomo{
	background-image: url(images/kodomo/rainbow.png);
	background-repeat: no-repeat;
	background-position: center bottom 120px;
	background-size: 860px auto;
}
.kodomo_h .inner_kodomo_con{
	background-position: center bottom 120px;
	background-size: 860px auto;
}
.kodomo_h .title_ara{
	padding: 200px 0 80px ;
	max-width: 750px;
	margin: auto;
	z-index: 5;
}
.kodomo_h .title_ara h1{
	font-size: 36px;
	font-family: "kei";
  font-weight: normal;
  letter-spacing: 0.08em;
  line-height: 1.5;
	text-align: center;
}
.kodomo_h img,.kodomo_under_bk img{
	width: 100%;
max-width: 100%;
height: auto;
}
.balloon_r{
	width: 200px;
	position: absolute;
	right: 0;
	bottom: 0px;
	z-index: 1;
}
.balloon_l{
	width: 200px;
	position: absolute;
	left: 0;
	bottom: 0px;
	z-index: 1;
}
.t_cloud_l{
	width: 300px;
	position: absolute;
	 right: calc(50% + 300px);
	top: 100px;

}
.t_cloud_r{
	width: 280px;
	position: absolute;
	 left: calc(50% + 300px);
	top: 120px;

}
.bird01{
    animation: bird01 ease 4s infinite;
}
@keyframes bird01 {
	0% { left: -67px;  }
 50% { left: -77px;  }
 100% { left: -67px;  }
}
.fuwafuwa {
    animation-name: fuwafuwa;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;
}
@keyframes fuwafuwa {
    0% {
        transform: translate(0,0px);
    }

    100% {
        transform: translate(0,-15px)
    }
}
.fuwafuwa02 {
    animation-name: fuwafuwa02;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;
}
@keyframes fuwafuwa02 {
    0% {
        transform: translateX(-2%);
    }

    100% {
        transform: translateX(2%)
    }
}
.fuwafuwa03 {
    animation-name: fuwafuwa03;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;
}
@keyframes fuwafuwa03 {
    0% {
        transform: translateX(2%);
    }

    100% {
        transform: translateX(-2%)
    }
}


.kodomo_h .text_ara{
	text-align: center;
	padding: 0 0 200px;
	position: relative;
	z-index: 10;
}
.kodomo_h .text_ara p{
	font-size: 20px;
	line-height: 2;
	letter-spacing: 0.01em;
}
.kodomo_h .notes{
	color: #FFFFFF;
	background-color: #D32525;
	padding: 10px 30px;
	border-radius: 100px;
	max-width: 400px;
	text-align: center;
	margin: 0 auto 20px;
	font-size: 26px !important;
}
.kodomo_under_bk{
	background-color: #BFE2F1;
	position: relative;
	background-image: url(images/kodomo/star_bk.png);
	background-repeat: repeat-y;
	background-position: center top;
	background-size: 100% auto;
}
.kodomo_under_bk::after{
	background-image: url(images/kodomo/kodomo_fotter_bk.png);
	background-repeat: no-repeat;
	background-position: center bottom ;
	background-size: cover;
	content: "";
	display: block;
	height: 500px;
	width: 100%;
}
.k_h_bk_after{
	width: 100%;
	position: absolute;
	top: -300px;
	  left: 0;
  right: 0;
  margin:0 auto;
	
}
.mokumoku{
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	height: 300px;
	background-image: url("images/kodomo/k_h_bk_after.png");
	position: absolute;
	bottom: 0px;
	  left: 0;
  right: 0;
  margin:0 auto;
	
}
#kodomo_treatment{
	position: relative;
}
#kodomo_treatment h2{
	max-width: 480px;
	margin: auto;
	padding: 50px 0 30px;
}
#kodomo_treatment .text_ara p{
	font-size: 24px;
  line-height: 2;
  letter-spacing: 0.01em;
text-align: center;
	margin: 0 0 120px;
}
.popochan{
	width: 281px;
	position: absolute;
	top: -280px;
	right: 0px;
	z-index: 10;
}
.kodomo_box,.kodomo_box_con{
	background-color: #FFFFFF;
	border-radius: 30px;
	padding: 15px;
	position: relative;
  max-width: 1080px;
  margin: 0 auto 150px;
}
.kodomo_box .wappar{
	border: 3px solid #FFD6DE;
	padding: 120px 50px 80px;
	border-radius: 30px;
}
.kodomo_box_con  .wappar{
	border: 3px solid #FFD6DE;
	padding: 80px 50px 80px;
	border-radius: 30px;
}
.kodomo_box_con  .wappar h2{
	font-size: 26px;
  line-height: 2;
  letter-spacing: 0.01em;
	text-align: center;
	margin: 0 0 50px;
}
.kodomo_box_con  .wappar .note_list li{
	font-size: 20px;
  line-height: 2;
	margin: 0 0 30px;
	padding-left: 1.5em;
  text-indent: -1.5em;
}
.kodomo_box_con  .wappar .note_list li:last-child{
	margin: 0;
}
.kodomo_box .signboard{
	position: absolute;
	top: -30px;
	  left: 0;
  right: 0;
  margin:0 auto;
	max-width: 420px;
	width: 90%;
}
.kodomo_box .signboard02{
	position: absolute;
	top: -50px;
	  left: 0;
  right: 0;
  margin:0 auto;
	max-width: 420px;
	width: 90%;
}
.kodomo_box .boxes{
	background-repeat: no-repeat;
	background-position: left 20px top 20px;
	background-size: 115px auto;
	padding: 0 0 60px 200px;
	margin: 0 0 60px;
	display: flex;
	align-items: center;
	border-bottom: 2px dashed #a48047;
}
.kodomo_box .boxes:last-of-type{
	margin: 0 ;
	border-bottom: none;
	padding: 0 0 0 200px;
}
.kodomo_box .boxes .content{
	width: 45%;
}
.kodomo_box .boxes .content h4{
	font-size: 26px;
	margin: 0 0 10px;
	color: #e95097;
	font-family: "kei";
	font-weight: normal;
	letter-spacing: 0.08em;
	line-height: 1.5;
}
.kodomo_box .boxes .content p{
	font-size: 20px;
	line-height: 2;
	margin: 0 0 10px;
}
.kodomo_box .boxes .content .fee{
	font-size: 18px;
	color: #e95097;
	padding: 5px 30px;
	border-radius: 100px;
	border: 3px solid #e95097;
	display: inline-block;
}
.kodomo_box .boxes .content_image{
	width: 55%;
}
.k_no_01{background-image: url(images/kodomo/no_01.png);}
.k_no_02{background-image: url(images/kodomo/no_02.png);}
.k_no_03{background-image: url(images/kodomo/no_03.png);}
.k_no_04{background-image: url(images/kodomo/no_04.png);}
.k_no_05{background-image: url(images/kodomo/no_05.png);}
.kodomo_box .con_box,.kodomo_box .con_box02{
	display: flex;
  align-items: center;
}
.kodomo_box .con_box .right_box{
	width: 55%;
	padding: 0 0 0 10%;
}
.kodomo_box .con_box .left_box{
	width: 35%;
}
.kodomo_box .con_box ul{}
.kodomo_box .con_box ul li{
	font-size: 24px;
  line-height: 2.3;
	  padding-left: 1.5em;
  text-indent: -1.5em;
}
.kodomo_box .con_box .left_box img{
	max-width: 230px;
	margin: auto;
}
.kodomo_follw{
	font-size: 24px;
  line-height: 2;
	text-align: center;
}
.kodomo_follw a{
	text-decoration: underline;	
}
.kodomo_follw a:hover{
	text-decoration: none;
}
.kodomo_box .con_box02 .right_box{
	width: 35%;
	text-align: center;
	padding: 0 0 0 5%;
}
.kodomo_box .con_box02 .left_box{
		width: 50%;
	padding: 0 0 0 10%;
}
.kodomo_box .con_box02 .left_box p{
	font-size: 28px;
	line-height: 2;
	color: #e95097;
	margin: 0 0 30px;
	font-family: "kei";
	font-weight: normal;
	letter-spacing: 0.08em;
}
.popo_btn{
	
}
.popo_btn a {
  position: relative;
  color: #FFFFFF;
  background: #e95097;
  border-radius: 30px;
  padding: 20px 31px 19px;
  text-align: center;
  line-height: 1.3;
  transition-property: all;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  box-shadow: 0 4px 0 0 #f2879b;
  font-size: 22px;
	 font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
	max-width: 300px;
	margin: 50px auto 0;
}
.popo_btn a:hover {
  opacity: 0.8;
  color: #fff;
  background: #f2879b;
  box-shadow: none;
  transform: translate3d(0, 2px, 0);
}
.kodomo_box .movie{
	margin: 140px auto 0;
	text-align: center;
	width: 90%;
}
.kodomo_box .movie h4{
	font-size: 28px;
	line-height: 1.5;
	background-color: #ffdee3;
	padding: 5px;
	border-radius: 100px;
	position: relative;
}
.kodomo_box .movie h4 span{
	border: 4px solid #FFFFFF;
	padding: 17px 100px 17px 30px;
	display: block;
	border-radius: 100px;
	text-align: center;
	font-family: "kei";
		font-weight: normal;
	letter-spacing: 0.08em;
	
}
.kodomo_box .movie dl{
	margin: 55px auto 10px;
	width: 95%;
	
}
.kodomo_box .movie dl dt{
	font-size: 24px;
	line-height: 2;
	margin: 0 0 10px;
}
.kodomo_box .movie dl dt dd{}
.doll_07{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 170px !important;
}
.online_shop_bana{
	width: 90%;
	margin: 80px auto 0;
}
.font_case{
	font-size: 26px;
	text-decoration: underline;	
	line-height: 2;
}
.q_a dl{
	margin: 0 auto 50px;
	width: 90%;
}
.q_a dl:last-of-type{
	margin: 0 auto ;
}
.q_a dl dt{
	font-size: 26px;
	line-height: 1.5;
	color: #e95097;
	margin: 0  0 10px;
}
.q_a dl dd{
	font-size: 20px;
	line-height: 2;
	padding: 0 0 0 60px;
}
.text_right{
	text-align: right;
	font-size: 16px;
	line-height: 2;
}
.link_btn_ara li{
	width: 43%;
	position: relative;
	z-index: 10;
}

.kodomo_footer{
	background-color: transparent;
	position: relative;
	padding: 0;

}
.kodomo_footer::before{
	display: none;
}
.top_go_kodomo{
	position: absolute;
	top: -260px;
	  left: 0;
  right: 0;
  margin:0 auto;
	width: 120px;
	
}
.f_cloud_l{
	width: 270px;
	position: absolute;
	top: -780px;
	  left: -50px;
}
.f_cloud_r{
	width: 180px;
	position: absolute;
	top: -580px;
	  right: -50px;
}
.usually{
	padding: 100px 0 0;
}
.kodomo_wapper{
max-width: 1080px;
	margin: auto;
	}
.kodomo_wapper .box_w{
	width: auto !important;
	padding: 80px 50px 80px !important;
	position: relative;
	z-index: 10;
}
@media screen and (max-width: 1100px) {
.kodomo_box .movie h4 span{
	padding: 12px 150px 12px 30px;
	
}

}
@media screen and (max-width: 768px) {
.popochan{
	width: 231px;
	top: -200px;
}
.kodomo_box {
  border-radius: 20px;
  padding: 15px;
  position: relative;
	margin: 0 auto 100px;
	
}
.kodomo_box:last-of-type {margin: 0 auto 70px;}
.kodomo_box .wappar {
  padding: 80px 30px 50px;
	border-radius: 20px;
}
.kodomo_box_con .wappar	{
	 padding: 50px 15px 50px;	
	}
.kodomo_box .boxes {
  background-position: center top;
  background-size: 95px auto;
  padding: 120px 0 45px;
  margin: 0 0 45px;
  display: block;
}	
.kodomo_box .boxes:last-of-type{
	 padding: 120px 0 0;
}
.kodomo_box .boxes .content {
  width: 100%;
	text-align: center;
}	
.kodomo_box .boxes .content_image {
  width: 93%;
	padding: 5% 3%;
}	
.kodomo_box .con_box02{
	display: block;
}	
.kodomo_box .con_box02 .right_box{
	width: 80%;
	padding: 0 0 30px 0;
	margin: auto;
}
.kodomo_box .con_box02 .left_box{
		width: 100%;
	padding: 0;
}
.kodomo_box .movie{
	width: 100%;
	margin: 170px auto 0;
}
.kodomo_box .movie dl {
  margin: 30px auto 10px;
	width: 100%;
}
.kodomo_box .movie dl dt {
  font-size: 20px;
  line-height: 1.5;
}
.doll_07{
  left: 0;
  right: 0;
  margin:0 auto;
	top: -40px;
	width: 130px !important;
}
.kodomo_box .movie h4{
	border-radius: 30px;
}
.kodomo_box .movie h4 span{
	border-radius: 30px;
	padding: 12px 20px 12px 20px;
}
.kodomo_box .con_box02 .left_box p {
  font-size: 24px;
  line-height: 1.5;
	}
.popo_btn a {
  font-size: 18px;  
}
.q_a dl {
  margin: 0 auto 40px;
  width: 100%;
}
.top50_sp{
	margin: 0px auto 40px !important;	
	}
.q_a dl dd {
  padding: 0 0 0 0px;
}
.text_right{
	text-align: center;
	font-size: 14px;
	line-height: 2;
}
.q_a dl dt{
	font-size: 24px;
}
.online_shop_bana{
	width: 100%;
	margin: 50px auto 0;
}
.link_btn_ara li{
	width: 90%;
	margin: 0 auto 40px;
}
.kodomo_under_bk::after {
  height: 250px;
}
.top_go_kodomo {
  top: -180px;
  width: 100px;
}
.usually{
	padding: 30px 0 0;
	position: relative;
	z-index: 10;
	line-height: 1.5 !important;
}
.kodomo_wapper .box_w {
  padding: 60px 20px 50px !important;
}
.kodomo_box, .kodomo_box_con {
  margin: 0 auto 100px;
}
}
@media screen and (max-width: 640px){
.kodomo_under_bk {
  padding: 50px 0 0;
}
.kodomo_h {
  background-size: 330px auto,cover;
}	
.balloon_r,.balloon_l {
  width: 70px;
	bottom: auto;
	top: 50px;
}
.t_cloud_l{
	width: 100px;
	 right: auto;
	left: 0;
	top: 390px;
}
.t_cloud_r{
	width: 80px;
	 left: auto;
	right: 0;
	top: 450px;

}
.popochan{
	width: 161px;
	top: -180px;
	  left: 0;
  right: 0;
  margin:0 auto;
}
.kodomo_h .title_ara {
  padding: 100px 0 30px;
}	
.kodomo_h .title_ara{
	max-width: 75%;	
	}
.kodomo_h .text_ara {
  padding: 0 40px 150px;
}
.kodomo_h .notes {
  font-size: 20px !important;
	line-height: 1.6 !important;
}
.kodomo_h .inner_kodomo {
  background-position: center bottom 400px;
  background-size: 360px auto;
}
.kodomo_h .text_ara p {
  font-size: 4.188vw;

}
.mokumoku {
  height: 200px;
}
#kodomo_treatment .text_ara p {
  margin: 0 0 80px;
}
.kodomo_box .con_box {
  display: block;
}
.kodomo_box .con_box .right_box {
  width: 100%;
  padding: 0 0 30px 0;
}
.kodomo_box .boxes .content p{
	line-height: 1.6;
}
.kodomo_box .con_box ul li {
  line-height: 1.8;
}
.kodomo_box .con_box .left_box {
  width: 100%;
	text-align: center;
}
.kodomo_box .con_box .left_box img {
  max-width: 180px;
}
  .kodomo_box .wappar {
    padding: 50px 30px 50px;
  }
  .kodomo_box:last-of-type {
    margin: 0 auto 50px;
  }
.font_case {
  font-size: 16px;
	display: block;
	margin: 0 0 10px;
}
.f_cloud_l {
display: none;
}
.f_cloud_r {
  width: 130px;
  top: -300px;
  right: -10px;
}	
.link_btn_ara li {
    width: 100%;
  }	
 .kodomo_under_bk::after {
    height: 200px;
  }
 .top_go_kodomo {
    top: -150px;
    width: 100px;
  }
}








.bk_pale_orange {
	background-color: #fff6ea;

}
.tabu_kara {
  display: none;
}
.text_12{
	font-size: 11px;
	font-weight: normal;
}
/* * * * *
オーダメイド
* * * * */
#taiin-set .text_box{
	display: flex;
	margin: 0 0 50px;
	}
#taiin-set .text_box .leftbox{
	width: 65%;
	margin: 0 5% 0 0;
	line-height: 2;
	font-weight: normal;
}
#taiin-set .text_box .rightbox{
	width: 30%;
	position: relative;
}
.semi-order_icon{
	position: absolute;
	top: -80px;
	right: 0;
	
}
#taiin-set .text_box::after{
	clear: both;
	content: '';
}
.content_box{
	margin: 0 0 50px;
}
.content_box h4{
	margin: 0 0 0px;
	padding:  10px 0 10px 40px;
	background-position: left center;
	background-size: 30px auto;
	background-repeat: no-repeat;
}
.content_box .no_01{background-image: url(images/menu/no_01.jpg);}
.content_box .no_02{background-image: url(images/menu/no_02.jpg);}
.content_box .no_03{background-image: url(images/menu/no_03.jpg);}
.feature_box{
	border: 2px solid #000000;
	padding: 60px 60px 40px;
	border-radius: 10px;
	position: relative;
}
.feature_box h3{
	text-align: center;
	font-size: 20px;
	margin: 0 0 50px;
	text-decoration: underline;
}
.feature_box ul{}
.feature_box ul li{
	font-weight: normal;
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 1px dashed #B8B8B8;
}
.feature_box ul li:last-child{
	border-bottom: none;
}
.feature_box ul li dl{
	display: flex;
	align-items: flex-start;
}
.feature_box ul li dt{
	font-size: 18px;
	margin: 0 15px 0 0;
}
.feature_box ul li dd{
	font-size: 14px;
	line-height: 1.7;
}
.feature_img{
	width: 90%;
	margin: 15px auto ;	
}
.semi-order_icon02{
	width: 150px;
	position: absolute;
	top: -80px;
	left: 60px;
}
.box_png{
	width: 280px;
	margin: 30px 0 0;
}

.content_box .cloth {
	margin: 10px 0 0;
}
.content_box .cloth .arrange03{
	

}
.content_box .cloth li{
	width: 18%;
	margin: 0 0.5% 30px;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.zoom_01{
	position: absolute;
	right: 5px;
	bottom: 50px;
	width: 28px;
}
.content_box .cloth figcaption{
	font-size: 12px;
	margin: 5px 0 0;
	font-weight: normal;
}
.content_box .cloth figure a img{
	border: 1px solid #e2e4e6;
}

@media screen and (max-width: 640px){
.custom-made .line-he{
	text-align: left;
}	
.content_box{
	margin: 0 0 30px;
}
.feature_box ul li dl{
	align-items: start;
}
.feature_box {
  padding: 35px 25px 10px;
}
.feature_box h3 {
  font-size: 18px;
  margin: 0 0 20px;
	line-height: 1.8;
}
.feature_box ul li dt {
  font-size: 16px;
}
.feature_img {
  width: 100%;
  margin: 15px auto 0;
}
.semi-order_icon02{
width: 100px;
	left: 10px;
	top: -50px;
	}
.content_box .cloth li{
	width: 31%;
	margin: 0 0 20px;
}
.lightbox .lb-image,.lb-outerContainer {
  width: 100% !important;
	height: 100% !important;
}
.lb-outerContainer {
	  width: 90% !important;
}
.zoom_01 {
  bottom: 30px;
  width: 23px;
}
}

/* * * * *
ジェネリック
* * * * */
.title_en_b {
  font-size: 14px;
  color: #0096df;
  margin: 0 0 20px;
}
.generic .bottom,.custom-made .bottom{
	margin: 0 0 80px;
}
.generic .box{
  border: 5px solid #0096df !important;
}
.line-he{
	line-height: 2;
}
.important_text02{
	margin: 20px 0 0;
	text-decoration: underline;
	line-height: 2;
	padding: 0 0 0 40px;
	background-image: url(images/menu/icon-caution.png);
	background-repeat: no-repeat;
	background-size: 23px auto;
	background-position: left center;
	font-weight: normal;
	font-size: 13px;
}
.important_text02 a,.confirmation_box dd a{
	color: #0016ff;
text-decoration: underline;
}
.important_text02 a:hover,.confirmation_box dd a:hover{
	color: #9E5BCA;
	text-decoration: none;
}
.basic_park{
	padding: 30px 0 0;
}
.basic_park li{
	width: 30%;
	margin: 0 0 40px;
	position: relative;
}
.basic_park li h4{
	margin: 0 0 30px;
}
.c-tipu h4{
	margin: 0 0 10px !important;
}
.basic_park li h4 span{
	font-size:12px;
	letter-spacing: 0;
	font-weight:  normal;
	display: block;
}
.basic_park li .boxes{
	
}
.basic_park li .boxes .left{
	width: 80%;
	margin: 0 auto 20px;
	float: none;
}
.basic_park li .boxes .right{
	width: 100%;
	float: none;
	
}
.basic_park li .boxes .right dl{
	font-size: 13px;
	margin: 0 0 15px;
}
.basic_park li .boxes .right dl dt{
	background-color: #000000;	
	color: #FFFFFF;
	padding: 3px 10px;
	margin: 0 0 4px;
}
.basic_park li .boxes .right dl dd{
	line-height: 1.8;
	font-weight: normal;
}
.confirmation_box,.confirmation_box_order{
	padding: 30px;
	background-color: #F9F8F6;
	border-radius: 30px;
	line-height: 1.8;
	text-align: center;
}
.confirmation_box dt{
	margin: 0 0 10px;
	font-size: 15px;
}
.confirmation_box dt::before{
  content: "";
  display: inline-block;
  width: 23px;
  height: 26px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 15px 0 0;
}
.confirmation_box dd{
	font-size: 13px;
	font-weight: normal;
}
.dis_b{
	background-image: url("images/menu/icon_clothes_b.png");
}
.close{
	margin: 50px 0 0;
}
.hukidashi{
	position: absolute;
	width: 102px;
	right: -20px;
	top: 100px;
}
.card{
	position: absolute;
	width: 206px;
	right: 50px;
	top: 150px;
}
.go_home .line_hi2{
	width: 70%;
}
@media screen and (max-width: 768px) {
.basic_park li h4 span{
	display: block;
}
.basic_park li .boxes .left {
  width: 100%;
	float: none;
}
.basic_park li .boxes .right {
  width: 100%;
  margin: 20px 0 0 0;
	float: none;
}
.important_text02 {
  padding: 15px 15px 15px  60px;
	background-color: #F9F8F6;
	background-position: left 15px center;
}
.go_home .line_hi2 {
  width: 100%;
	margin: 0 0 40px;
}
.card{
position: static;
	margin: auto;
}	
.hukidashi {
  width: 80px;
  right: auto;
	 left: calc(50% + 80px);
  bottom: 120px;
	top: auto;
}	
}
@media screen and (max-width: 640px){
.generic .bottom,.custom-made .bottom{
  margin: 0 0 60px;
}
.basic_park {
  padding: 0;
	margin: 0 0 30px;
}
.basic_park li {
  width: 100%;
  margin: 0 0 30px;
}
.basic_park li:last-child{
	margin: 0 0 0px;	
}
.basic_park li .boxes .left {
  width: 60%;
  margin: auto;
}
.basic_park li h4 {
  margin: 0 0 15px;
}
.confirmation_box {
  position: static;
	border-radius: 20px;
}
.close {
  margin: 30px 0 0;
}
}

/* * * * *
ドールスクール
* * * * */

#doll_school {
  position: relative;
  padding: 0 0 100px;
}
#doll_school::after {
  background-position: center bottom;
  background-color: #ffd2d8;
  height: 300px;
  width: 100%;
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
}

#doll_school .box {
  text-align: center;
  background-image: url(images/doll-school/left.png), url(images/doll-school/right.png);
  background-position: left 120px center, right 120px center;
  background-repeat: no-repeat;
  background-size: 100px auto;
  padding: 0 0 90px;
}
#doll_school .box h2 {
  margin: 0 0 50px;
}
.maru,
.maru_ore {
  position: relative;
}
.maru::after {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-image: url(images/doll-school/maru_red.png);
  width: 7px;
  height: 7px;
  background-size: 7px 7px;
  top: -15px;
}
.maru_ore::after {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-image: url(images/doll-school/maru_yeoll.png);
  width: 6px;
  height: 6px;
  background-size: 6px 6px;
  top: -12px;
}
#doll_school .box p {
  letter-spacing: 0.1em;
  line-height: 2;
}
.course_box ul {
}
.top30 {
  margin-top: 30px;
  display: block;
}
.course_box li {
  background-color: #ffffff;
  width: 30%;
  margin: auto;
  border-radius: 15px;
  position: relative;
}
.course_box li:first-child,
.pink_waku {
  border: 2px solid #df5b80;
}
.course_box li:nth-child(2),
.blue_waku {
  border: 2px solid #2e9ad3;
}
.course_box li:last-child,
.orange_waku {
  border: 2px solid #e68b00;
}
.course_box li dl {
  padding: 35px 40px 20px;
  text-align: center;
}
.course_box li dl dt {
  margin: 0 auto;
  width: 90%;
}
.course_box li dl dd {
  letter-spacing: 0.05em;
  line-height: 2;
  font-weight: normal;
}
.link_btn {
  text-align: center;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
}
.link_btn a {
  color: #ffffff;
  display: block;
  padding: 25px;
}
.link_btn a:hover,
#doll_school_features .center_box a:hover {
  opacity: 0.5;
}
.making {
  background-color: #e68b00;
}
.kosu {
  background-color: #2e9ad3;
}
.ripea {
  background-color: #df5b80;
}
.ripea a {
  background-size: 18px auto;
  background-image: url(images/doll-school/icon_sankaku.png);
  background-repeat: no-repeat;
  background-position: right 70px center;
}

.icon_course {
  width: 80%;
  margin: 20px auto 0;
}
.course_box {
  margin: 50px 0 0;
}
.icon_2023 {
  width: 100px;
  position: absolute;
  top: -30px;
  right: -20px;
}
#doll_school_features {
  padding: 100px 0 120px;
}
#doll_school_features .title_area {
  text-align: center;
  margin: 0 0 100px;
}
#doll_school_features .box {
  max-width: 1000px;
  margin: 0 auto 150px;
  border: 3px solid #ffcdd3;
  padding: 50px 80px;
  border-radius: 15px;
  width: 100%;
  position: relative;
}
#doll_school_features .box:last-of-type {
  margin: 0 auto 0px;
}
#doll_school_features .box .box_left {
  width: 46%;
}
#doll_school_features .box .box_left h3 {
  font-size: 20px;
  letter-spacing: 0.1em;
  margin: 0 0 30px;
  line-height: 1.8;
}
#doll_school_features .box .box_left p {
  line-height: 2.5;
  line-height: 2;
  font-weight: normal;
}
#doll_school_features .box .box_right {
  width: 46%;
  position: relative;
  margin: 0 0 0 50px;
}
.arrange02 .box_right {
  margin: 0 50px 0 0 !important;
}
#doll_school_features .box .box_right img {
  position: absolute;
  top: -100px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
#doll_school_features .center_box {
  margin: 30px 0 0;
}
#doll_school_features .center_box a {
  padding: 15px 50px;
  background-color: #000000;
  color: #ffffff;
  border-radius: 100px;
  font-size: 13px;
  background-image: url(images/doll-school/icon_gaibu.png);
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 12px auto;
  display: block;
}
.arrange02 {
  flex-direction: row-reverse;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
}
.icon_star {
  width: 80px;
  position: absolute;
  top: -45px;
  left: 50px;
}
.icon_star02 {
  width: 80px;
  position: absolute;
  top: -45px;
  right: 50px;
}
.school_02 {
  width: 91px;
  height: auto;
  position: absolute;
  bottom: 0;
  right: calc(50% + 100px);
}
.school_04 {
  width: 205px;
  height: auto;
  position: absolute;
  bottom: 0;
  left: 180px;
}
.school_06 {
  width: 355px;
  height: auto;
  position: absolute;
  bottom: -30px;
  right: 100px;
}
#doll_course {
  padding: 100px 0 50px;
}
#doll_course .box {
  background-color: #ffffff;
  border-radius: 30px;
  max-width: 900px;
  margin: 0 auto 50px;
  width: 90%;
  padding: 50px 5% 50px;
  position: relative;
}
#doll_course .box .content_box {
}
#doll_course .box .box_left {
  width: 15%;
}
#doll_course .box .box_right {
  width: 80%;
  margin: 0 0 0px 5%;
}
#doll_course .box_right .title {
  font-size: 20px;
  letter-spacing: 0.1em;
  margin: 0 0 15px;
}
#doll_course .box_right h3 {
  width: 70%;
  margin: 0 0 15px;
}
#doll_course .box_right .sab_title {
  font-weight: normal;
}
#doll_course .box .btn {
  margin: 50px auto 20px;
  width: 80%;
  max-width: 300px;
}
.youtube {
  text-align: center;
  margin: 50px 0 0 0;
}
.next_time {
  background-color: #000000;
  padding: 10px 30px;
  border-radius: 100px;
  position: absolute;
  top: 25px;
  right: 30px;
  color: #ffffff;
  font-size: 14px;
}
#doll_flow {
  padding: 100px 0;
}
#doll_flow .title_area,
#doll_qfa .title_area {
  text-align: center;
  margin: 0 0 50px;
}
#doll_flow .box {
}

#doll_flow .box .setpbox {
}
#doll_flow .box .setpbox {
  width: 20%;
  padding: 0 5% 0 0;
  text-align: center;
  background-image: url(images/doll-school/flow_arow.png);
  background-position: right top 130px;
  background-size: 30px auto;
  background-repeat: no-repeat;
}
#doll_flow .box li:last-child {
  padding: 0;
  background: none;
}
#doll_flow .box .setpbox .setp_text {
  color: #df5b80;
  font-size: 27px;
  margin: 0 0 15px;
}
#doll_flow .box .setpbox .setp_text span {
  display: block;
  font-size: 12px;
}
#doll_flow .box .setpbox dl {
}
#doll_flow .box .setpbox dl dt {
  color: #df5b80;
  border-bottom: 2px dotted #000000;
  padding: 0 0 10px;
  margin: 0 0 10px;
}
#doll_flow .box .setpbox dl dd {
  font-size: 14px;
  font-weight: normal;
  text-align: justify;
  line-height: 1.8;
}
.icon_flow {
  width: 75%;
  margin: 0 auto 20px;
}
#doll_qfa {
  padding: 100px 0 150px;
}

@media screen and (max-width: 1024px) {
  #doll_school .box {
    background-position: left 20px center, right 20px center;
    padding: 0 0 90px;
  }
  #doll_school_features .box .box_right img {
    position: static;
  }
  .school_02 {
    right: calc(50% + 0px);
  }
}
@media screen and (max-width: 768px) {
  .tabu_kara {
    display: block;
  }
  .tabu_none {
    display: none;
  }
  #doll_school .box {
    background-position: left center, right center;
    background-size: 50px auto;
    padding: 0 0 40px;
  }
  #doll_school .box p {
    padding: 0 80px 0;
  }
  .course_box li {
    width: 100%;
    margin: 0 auto 30px;
    border-radius: 15px;
  }
  .course_box {
    margin: 20px 0 0;
  }
  .course_box li dl dt {
    margin: 0 auto 10px;
    width: 100%;
  }
  .icon_course {
    margin: 0px auto 0;
  }
  #doll_school {
    padding: 0 0 80px;
  }
  #doll_school_features {
    padding: 80px 0;
  }
  #doll_school_features .title_area {
    margin: 0 0 40px;
  }

  #doll_course .box {
    border-radius: 15px;
  }

  #doll_school_features .box {
    margin: 0 auto 50px;
    padding: 50px 40px;
    border-radius: 15px;
  }
  #doll_school_features .center_box {
    margin: 30px auto 0;
  }
  .school_02 {
    right: 100px;
  }
  #doll_school_features .box .box_right,
  .arrange02 .box_right {
    margin: 0 !important;
  }
  .next_time {
    position: static;
    text-align: center;
    margin: 30px 0 0;
  }
  #doll_flow .box .setpbox {
    width: 45%;
    padding: 0 10% 0 0;
    background-position: right 10px top 110px;
    background-size: 20px auto;
    margin: 0 0 30px;
  }
  #doll_flow .box li:nth-child(2) {
    padding: 0;
    background: none;
  }
  #doll_qfa {
    padding: 100px 0 150px;
  }
}
@media screen and (max-width: 640px) {
  #doll_school .box p {
    padding: 0 20px 0;
    text-align: left;
  }
  #doll_school {
    padding: 0 0 30px;
  }
  #doll_school .box {
    background: none;
    padding: 0 0 40px;
  }
  #doll_school .box h2 {
    margin: 0 0 30px;
  }
  .top30 {
    margin: 0;
  }
  .icon_2023 {
    right: 10px;
    top: auto;
    bottom: 30px;
    width: 80px;
  }
  .ripea a {
    background-position: right 35px center;
  }
  .course_box {
    margin: 0;
  }
  .icon_course {
    width: 70%;
    margin: 5px auto 0;
  }
  #doll_school_features {
    padding: 50px 0;
  }
  #doll_school_features .box {
    padding: 40px 30px;
  }
  #doll_school_features .box .box_left {
    margin: 0 0 20px;
  }
  #doll_school_features .box .box_left,
  #doll_school_features .box .box_right {
    width: 100%;
  }
  #doll_school_features .box .box_left h3 {
    margin: 0 0 15px;
  }
  .school_02 {
    right: 0px;
    bottom: -50px;
    width: 70px;
  }
  .icon_star,
  .icon_star02 {
    right: auto;
    left: 20px;
    width: 70px;
    top: -35px;
  }
  .school_04,
  .school_06 {
    position: static;
    width: 80%;
    margin: auto;
  }
  .school_06 {
    width: 100%;
  }
  .youtube {
    margin: 20px 0 0 0;
  }
  #doll_course .box {
    padding: 30px 7% 45px;
    width: 86%;
    margin: 0 auto 30px;
  }
  #doll_course .box_right h3 {
    width: 95%;
  }
  #doll_course .box .box_left {
    width: 25%;
    margin: auto;
  }
  #doll_course .box .box_right {
    width: 100%;
    margin: 20px 0 0px 0;
  }
  #doll_course .box_right .title {
    font-size: 18px;
    text-align: center;
  }
  #doll_course .box_right .sab_title {
    line-height: 1.8;
    letter-spacing: 0.1em;
  }
  #doll_course {
    padding: 40px 0 20px;
  }
  #doll_course .box .btn {
    margin: 30px auto 10px;
  }
  #doll_flow {
    padding: 45px 0 20px;
  }
  #doll_flow .title_area,
  #doll_qfa .title_area {
    margin: 0 0 30px;
  }
  #doll_flow .box .setpbox .setp_text {
    margin: 0 0 5px;
    font-size: 22px;
  }
  #doll_flow .box .setpbox dl dt {
    font-size: 15px;
  }
  #doll_flow .box .setpbox dl dd {
    font-size: 13px;
  }
  #doll_qfa {
    padding: 50px 0 100px;
  }
}

.Group {
  margin-bottom: 24px;
  position: relative;
  width: 100%;
  max-width: 900px;
  display: flex;
  justify-content: space-between;
  z-index: 0;
  margin: 0 auto 30px;
}
.Group-Bar {
  position: absolute;
  top: 12px;
  left: 1%;
  width: 97%;
  height: 2px;
  background-color: #eaeaea; /*バーの色*/
  z-index: -1;
}
.marupoti {
  max-width: 900px;
  margin: 0 auto 100px;
}
.marupoti li {
  padding: 5 0 0 20px;
  font-size: 12px;
}
.circle_01 {
  width: 15px;
  height: 15px;
  -webkit-border-radius: 50%; /* 50%でもOK */
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #58a159; /* 円の色 */
  display: inline-block;
  margin: 0 5px 0 0;
}
.circle_02 {
  width: 15px;
  height: 15px;
  -webkit-border-radius: 50%; /* 50%でもOK */
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #e97a8f; /* 円の色 */
  display: inline-block;
  margin: 0 5px 0 0;
}
@media screen and (min-width: 768px) {
  .Group-Bar {
    top: 17px;
    height: 5px;
  }
}
.Shapeborder.red01 {
  border: 1px solid #499347;
}
.Shapeborder.red03 {
  border: 1px solid #e97a8f;
}

.Circle {
  border-radius: 50%;
}
.Group-Item {
  color: #b7b7b7;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.Group-Item.red01 .Group-Item-Text {
  color: #499347;
  font-weight: 600 !important;
}
.Group-Item.red03 .Group-Item-Text {
  color: #e97a8f;
  font-weight: 600 !important;
}
.Group-Item-CircleOuter {
  width: 26px;
  height: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .Group-Item-CircleOuter {
    width: 39px;
    height: 39px;
  }
}
.Group-Item-CircleOuter.red01,
.Group-Item-CircleOuter.red03 {
  background: #fff;
}
.Group-Item-CircleInner {
  width: 16px;
  height: 16px;
  background-color: #b7b7b7;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .Group-Item-CircleInner {
    width: 25px;
    height: 25px;
  }
}
.Group-Item-CircleInner.red01 {
  background: #499347;
}
.Group-Item-CircleInner.red03 {
  background: #e97a8f;
}
.Group-Item-CircleInner:last-of-type::after {
  content: none;
}
.Group-Item-Text {
  margin-top: 10px;
  font-size: 13px;
  font-weight: normal;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

@media screen and (max-width: 640px) {
  .Group-Bar {
    display: none;
  }
  .Group-Item-Text {
    font-size: 12px;
    display: block;
    writing-mode: horizontal-tb;
    margin: 0;
    float: left;
    padding: 3px 0 0 15px;
  }
  .Group {
    margin: 0 auto 30px;
    display: block;
  }
  .Group-Item {
    display: block;
    clear: both;
    padding: 0 0 25px;
    overflow: hidden;
    position: relative;
  }
  .Group-Item::before {
    content: "";
    display: block;
    width: 3px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 12px;
    background-color: #eaeaea; /*バーの色*/
    z-index: -1;
  }
  .Group-Item:last-of-type::before {
    display: none;
    content: "";
  }

  .Group-Item-CircleOuter {
    float: left;
  }
  .marupoti {
    margin: 0 auto 30px;
    text-align: right;
  }
  .marupoti li {
    padding: 0 0 0 20px;
    font-size: 11px;
  }
}

.big_text01 {
  font-weight: bold;
  font-size: 17px;
  margin-bottom: 10px;
}
.text_ara dt {
  font-weight: bold;
}
.big_text01 dd {
}
.my_p_td .box {
  margin-bottom: 30px;
}
/***********************************
画像
************************************/
.sp_sns img,
main img,
footer img,
.feature_box img,
.best3 li img,
.top_price li img,
.point_box li img,
.content_img img,
#anshin ul li img,
.nagare_img img,
.left_content img,
.right_content img,
.modaal-inner-wrapper img {
  max-width: 100%;
  height: auto;
}

.triangle {
  position: relative;
  z-index: 1;
  background-repeat: repeat-y;
  background-image: url(images/about/pink_bk.jpg);
  background-position: center top;
  background-size: 100% 1600px;
}
.ribon {
  width: 235px;
  margin: 0 auto 25px;
}
.atari {
  background-color: #dcdddd;
  padding: 100px 0;
  text-align: center;
}
.big_text {
  font-size: 16px;
  line-height: 2;
  color: #cd215f;
}
.message {
  line-height: 2;
}
.pagenavi {
  margin: 0 0 150px;
}
/*****************************************************
アンケート
******************************************************/
.questionnaire {
  margin: 0 0 50px;
}

.questionnaire h2 {
  margin: 0 0 10px;
  line-height: 1.8;
}

/*****************************************************
ブログ
******************************************************/
/*
詳細ページ
*/
.c-single_title__info,
.c-single_title__sub {
  font-size: calc(0.16327vw + 1.23878rem);
  margin-bottom: calc(0.65306vw + 17.55102px);
}
.c-single_title__info {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.c-single_title {
  padding: 0 0 30px;
}
.c-single_article p {
  line-height: 2;
  margin-bottom: 20px;
}
.p-news_detail {
  margin-bottom: calc(1.63265vw + 33.87755px);
  padding-bottom: calc(3.26531vw + 27.7551px);
}
/*
一覧ページ
*/
.p-news_archive {
  margin-bottom: calc(9.79592vw + 43.26531px);
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.c-container {
  padding: 0 calc(1.63265vw + 23.87755px);
  font-weight: normal;
}
.p-news_archive__list {
  margin-bottom: calc(8.57143vw + 27.85714px);
  border-top: 1px solid #e5e5e1;
}
.c-news_list__link {
  padding: calc(0.97959vw + 19.32653px) calc(2.44898vw + 30.81633px) calc(0.97959vw + 19.32653px) 0;
}
.c-news_list__link {
  border-bottom: 1px solid #e5e5e1;
  display: block;
  padding: 35px 70px 35px 0;
  position: relative;
}

.c-news_list__link__info {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: calc(0.2449vw + 14.08163px);
}
.c-news_list__link__info time {
  font-size: calc(0.16327vw + 1.23878rem);
  margin-right: calc(0.65306vw + 4.55102px);
}
.c-news_list__link__info time,
.c-single_title__info time {
  color: #999;
  font-size: 13px;
  letter-spacing: 0.01em;
  margin-right: 15px;
  font-weight: normal;
}
.c-news_list__link__info ._cat,
.c-single_title__info ._cat a {
  font-size: calc(0.08163vw + 1.06939rem);
}
.c-news_list__link__info ._cat,
.c-single_title__info ._cat a {
  border: 1px solid #f15b82;
  border-radius: 3px;
  color: #f15b82;
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  padding: 5px 7px;
  font-weight: normal;
}
.c-news_list__link__title {
  color: #1e2229;
  letter-spacing: 0.04em;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  white-space: nowrap;
  width: 100%;
}

.c-news_list__link__arrow {
  right: calc(1.63265vw - 6.12245px);
}
.c-news_list__link__arrow {
  color: #367cb2;
  font-size: 1.4rem;
  margin-top: -0.5em;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}
.c-news_list__link .c-ico {
  transition: all 0.3s;
}
.c-news_list__link:hover .c-ico {
  transform: translate(10px, 0px);
}
.c-ico {
  height: 1em;
  overflow: hidden;
  vertical-align: middle;
  width: 1em;
}
@media screen and (max-width: 768px) {
  .p-news_archive {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .p-news_detail {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  .p-news_archive {
    margin-bottom: 0;
  }
  .p-news_archive__list {
    margin-bottom: 30px;
  }
  .c-container.-narrow {
    padding: 0 20px;
  }
  .c-news_list__link__info time {
    font-size: 12px;
    letter-spacing: 0.01em;
  }
  .c-news_list__link__info ._cat {
    font-size: 10px;
  }
  .c-news_list__link__title {
    font-size: 14px;
    white-space: normal;
    width: 100%;
  }
  .c-news_list__link {
    padding: calc(0.97959vw + 19.32653px) calc(2.44898vw + 30.81633px) calc(0.97959vw + 19.32653px) 0;
  }
}
/*****************************************************
治療対象のお人形
******************************************************/
.tab {
  width: 100%;
  max-width: 100%;
  margin: auto;
}

.tab-menu {
  width: 70%;
  margin: auto;
}

.tab-item {
  border-radius: 10px;
  text-align: center;
  padding: 40px 0;
  cursor: pointer;
  color: white;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 110px auto;
  font-size: 20px;
  width: 48%;
}
.ok {
  background-color: #ec5b82;
  background-image: url(images/treatment/ok.png);
}
.ng {
  background-color: #44b6c0;
  background-image: url(images/treatment/ng.png);
}
.tab-item:not(:first-child) {
  border-left: none;
}
.icon-caution-mae::before {
  content: "";
  display: inline-block;
  width: 33px;
  height: 30px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 15px 0 0;
}
/* アクティブなタブはデザインを変えて選択中であることが解るようにする */
.tab-item.active {
  position: relative;
}
.ok.active::after {
  content: "";
  background-image: url(images/treatment/triangle_pink.png);
  background-repeat: no-repeat;
  background-size: 30px 26px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -18px;
  margin: 0 auto;
  width: 30px;
  height: 26px;
  z-index: -1;
}
.ng.active::after {
  content: "";
  background-image: url("images/treatment/triangle_blue.png");
  background-repeat: no-repeat;
  background-size: 30px 26px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -18px;
  margin: 0 auto;
  width: 30px;
  height: 26px;
  z-index: -1;
}
.tab-box {
  height: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid skyblue;
}

/* コンテンツは原則非表示 */
.tab-content {
  display: none;
  font-size: 40px;
}

/* .showがついたコンテンツのみ表示 */
.tab-content.show {
  display: block;
  padding: 50px 0 100px;
  margin: 80px 0 0;
}
.tab-content .box_w {
  padding: 50px 50px 0;
  margin: 0 auto 80px;
}
.tab-content h2 {
  text-align: center;
  margin: 0 0 50px;
}
.tab-content ul {
}
.tab-content ul li {
  width: 38%;
  padding: 30px 5%;
  margin: 0 0 50px;
}
.tab-content ul li:nth-child(odd) {
  border-right: 2px dotted #000000;
}
.tab-content ul li .box {
  position: relative;
}
.font_45 {
  font-size: 85px;
  display: block;
  font-family: "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", sans-serif, Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
  font-weight: bold;
  line-height: 1.2;
}
.bk_pink .font_45 {
  color: #ec5b82;
}
.bk_blue .font_45 {
  color: #44b6c0;
}

.tab-content ul li .box h3 {
  font-size: 18px;
  text-decoration: underline;
  margin: 0 0 30px;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 60px;
  padding: 13px 0 20px 70px;
}
.ok_ara li:first-child .box h3 {
  background-image: url(images/treatment/ok_01.png);
}
.ok_ara li:nth-child(2) .box h3 {
  background-image: url(images/treatment/ok_02.png);
}
.ok_ara li:nth-child(3) .box h3 {
  background-image: url(images/treatment/ok_03.png);
}
.ok_ara li:nth-child(4) .box h3 {
  background-image: url(images/treatment/ok_04.png);
}
.ok_ara li:nth-child(5) .box h3 {
  background-image: url(images/treatment/ok_05.png);
}
.ng_ara li:first-child .box h3 {
  background-image: url(images/treatment/ng_01.png);
}
.ng_ara li:nth-child(2) .box h3 {
  background-image: url(images/treatment/ng_02.png);
}
.ng_ara li:nth-child(3) .box h3 {
  background-image: url(images/treatment/ng_03.png);
}
.ng_ara li:nth-child(4) .box h3 {
  background-image: url(images/treatment/ng_04.png);
}
.ng_ara li:nth-child(5) .box h3 {
  background-image: url(images/treatment/ng_05.png);
}
.ng_ara li:nth-child(6) .box h3 {
  background-image: url(images/treatment/ng_06.png);
}
.tab-content .ng_ara .box h3 {
  text-decoration: none;
  margin: 0;
  background-size: auto 60px;
  padding: 13px 0 20px 70px;
}

.okimg {
  width: 80%;
  margin: auto;
}
.tab-content ul li .box img {
}
.tab-content .font12 {
  font-size: 12px;
  text-align: center;
  margin: 30px 0 0;
  font-weight: normal;
}
.verification {
  position: absolute;
  right: 0px;
  top: 100px;
  width: 100%;
}
.text_ara_ng {
  margin: 0 0 50px;
  font-size: 20px;
  text-align: center;
  line-height: 2;
}
.t_s_ng {
  font-size: 14px;
  color: #44b6c0;
  margin: 0 0 30px;
}
.blue_text {
  color: #44b6c0;
  font-weight: bold;
  font-size: 23px;
}

@media screen and (max-width: 768px) {
  .tab-content .box_w {
    padding: 50px 7% 0;
  }
  .tab-menu {
    width: 90%;
  }
  .tab-item {
    padding: 40px 0;
    font-size: 16px;
  }
  .tab-content ul li {
    width: 90%;
    padding: 40px 5% 40px;
    border-bottom: 1px dotted #000000;
    margin: 0;
  }
  .tab-content ul li:first-child {
    padding: 0px 5% 40px;
  }
  .tab-content ul li:nth-child(2n + 1) {
    border-right: none;
  }
  .tab-content ul li .box h3 {
    margin: 0 0 10px;
  }
  .ok_ara li:nth-child(5),
  .ng_ara li:last-child {
    border-bottom: none;
  }
  .verification {
    right: -50px;
    top: auto;
    bottom: -100px;
    width: 300px;
  }
}
@media screen and (max-width: 640px) {
  .tab-content .box_w {
    padding: 35px 5% 0;
  }
  .bk_blue .box_w {
    margin: 0 auto 30px;
  }
  .tab-item {
    padding: 20px 0;
    font-size: 16px;
    text-align: center;
  }
  .icon-caution-mae::before {
    display: none;
  }
  .tab-content.show {
    padding: 30px 0;
    margin: 50px 0 0;
  }
  .font_45 {
    font-size: 65px;
  }
  .okimg {
    width: 90%;
  }
  .tab-content h2 {
    margin: 0 0 20px;
  }
  .tab-content ul li .box h3::before {
    margin: 0 15px 0 0;
  }
  .tab-content ul li {
    padding: 30px 5% 30px;
  }
  .tab-content ul li:first-child {
    padding: 0px 5% 30px;
  }
  .verification {
    right: -50px;
    top: auto;
    bottom: -100px;
    width: 250px;
  }
  .text_ara_ng {
    margin: 0 0 30px;
    font-size: 16px;
  }
  .text_ara_ng {
    text-align: left;
  }
  .t_s_ng {
    margin: 0 0 20px;
    text-align: center;
  }
}

/*****************************************************
マイページ
******************************************************/
#mypage {
}
#mypage .my_p {
}
#mypage .my_p .my_p_tr {
}
#mypage .my_p .my_p_th {
}

#mypage .my_p .my_p_td {
  width: 100%;
  padding: 0 0 80px;
}
#mypage .doll_data {
  width: auto;
  max-width: 85%;
  margin: 0 auto;
}
.circle {
}
.doll_photo {
  width: 25%;
}
.doll_info {
  width: 60%;
  padding: 0 0 0 10%;
}
.parents {
  margin: 50px 0;
}
.my_p_box {
  width: 88%;
  margin: 0 0 0 3%;
}
.my_p_box .title_m {
  text-align: left;
  margin: 0 0 20px;
}
.my_p_box .text_ara {
  font-weight: normal;
  line-height: 2;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.my_p_box .description {
  margin: 20px 0;
}
.estimate {
  width: 80%;
  max-width: 80%;
  margin: 20px 0 0;
}
.estimate02 {
  width: 30%;
  margin: 20px 0 0;
}
.taiin_photo {
}
.taiin_photo li {
  width: 45%;
  margin: 0 0 20px 20px;
}
.credit {
  margin: 10px 0 0;
}
.credit .top10 {
  margin: 10px 0 0;
  font-size: 12px;
}
.credit .red_t {
  font-weight: bold;
  color: #f15b82;
}
.font_20 {
  font-size: 20px;
  margin: 0 0 20px;
}
.box_pink {
  padding: 30px;
  background-color: #ffdae0;
}
.text_18 {
  font-size: 16px;
  text-decoration: underline;
}
.box_pink .red_t {
  display: block;
  color: #f15b82;
}
.box_pink p {
  line-height: 2;
}
.under_line {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .doll_photo {
    width: 80%;
    margin: 0 auto 20px;
    text-align: center;
  }
  .doll_info {
    width: 100%;
    padding: 0;
  }
  .estimate {
    width: 100%;
    max-width: 100%;
  }
  .taiin_photo li {
    width: 100%;
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 640px) {
  .circle {
  }
  .my_p_box .title_m {
    margin: 0 0 10px;
  }
  .parents {
    margin: 30px 0;
  }

  .my_p_box {
    margin: 0 0 0 5%;
    width: 95%;
  }
  .estimate02 {
    width: 180px;
  }
  .font_20 {
    font-size: 16px;
    margin: 0 0 15px;
  }
  .text_18 {
    font-size: 14px !important;
  }
  .box_pink {
    padding: 20px;
  }
  .box_pink p {
    font-size: 13px;
  }
}
/*****************************************************
WEBお申し込み
******************************************************/
#reserve .caution li {
  margin: 0 0 20px;
}
#reserve .caution li:last-child {
  margin: 0;
}
#reserve .caution {
  position: relative;
}
.dolles11 {
  position: absolute;
  bottom: -30px;
  right: -20px;
  width: 130px;
}

#reserve_box .bk_pink {
  padding: 100px 0 170px;
}
#reserve_box .boxes {
  margin: 0 0 100px;
}
#reserve_box .boxes h2 {
  font-size: 18px;
}
#reserve_box .boxes .title_ara {
  border-bottom: 2px dotted #000000;
  display: block;
  margin: 0 0 30px;
}
#reserve_box .boxes .title_ara p,
.clothes_photo {
  font-weight: normal;
  line-height: 2;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 12px;
}
.last_box {
  border: 3px solid #ec5b82;
  padding: 30px 5%;
  border-radius: 20px;
}
.last_box h3 {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 20px;
  padding: 0 0 15px;
  border-bottom: 2px dotted #ec5b82;
  color: #ec5b82;
  text-align: center;
}
.last_box li {
  font-size: 14px;
  line-height: 2;
  font-weight: normal;
  margin: 0 0 10px;
  display: flex;
}
.box_w {
  padding: 50px 50px;
  background-color: #ffffff;
  border-radius: 30px;
  width: 80%;
  margin: 0 auto 20px;
  position: relative;
}
.necessary {
  font-size: 11px;
  line-height: 2;
  margin: 5px 0 0;
  font-weight: normal;
}
.necessary p {
  padding-left: 1em;
  text-indent: -1em;
}
.important_text {
  margin-bottom: 5px;
  font-size: 12px;
  font-weight: bold;
}
.font12 {
  font-size: 12px;
}
.dolles_photo {
  margin: 10px 0 0;
  width: 60%;
}
.wpcf7-form-control-wrap {
  display: inline-block !important;
  margin: 0 10px 0 0;
  width: 100%;
}
.last_box_l {
  display: inline-block;
  vertical-align: top;
}
.last_box_r {
  display: inline-block;
  vertical-align: top;
}
.inner10 {
  width: 70%;
  margin: 0 auto 170px;
}

@media screen and (max-width: 768px) {
  .box_w {
    padding: 50px 7%;
    width: 86%;
  }
  .dolles11 {
    bottom: -50px;
    right: -10px;
  }
  .inner10 {
    width: 90%;
    margin: 0 auto 100px;
  }
  .dolles_photo {
    width: 80%;
  }
}
@media screen and (max-width: 640px) {
  .box_w {
    padding: 35px 5%;
    width: 90%;
  }
  .dolles11 {
    bottom: -130px;
    right: -10px;
    z-index: 10;
  }
  #reserve_box .boxes .title_ara {
    margin: 0 0 10px;
  }
  #reserve_box .bk_pink {
    padding: 50px 0 80px;
  }
  #reserve_box .boxes {
    margin: 0 0 30px;
  }
  .last_box h3 {
    text-align: left;
  }
  .last_box {
    padding: 20px 5%;
    border-radius: 20px;
  }
  .inner10 {
    width: 90%;
  }
}

/*****************************************************
オーダーメイド治療(修繕・修理)
******************************************************/
#repair_about {
  padding: 0 0 120px;
  background-image: url(images/repair/repair_bk.png);
  background-repeat: no-repeat;
  background-position: left -100px top;
  background-size: 80% auto;
}
#repair_about .t_inner {
  position: relative;
  overflow: hidden;
}
#repair_about .box {
  width: 50%;
  float: right;
  line-height: 2.2;
}
#repair_about .box h2 {
  margin: 0 0 40px;
}
#repair_about .box p {
  margin-bottom: 40px;
}
.cat10 {
  width: 100px;
  position: absolute;
  bottom: 30px;
  left: 0;
}
.nurse10 {
  width: 180px;
  bottom: 30px;
  left: 130px;
  position: absolute;
}
/*
オーダーメイド治療
*/
#repair {
  padding: 150px 0 100px;
  position: relative;
  text-align: center;
  clear: both;
  background-image: url(common/images/star_big_w.png);
  background-position: right -180px top 50px;
  background-size: auto 300px;
  background-repeat: no-repeat;
}
#repair .title_area {
  margin: 0 0 50px;
}
#repair .box {
  padding: 80px 5% 60px;
  border: 2px dotted #000000;
  border-radius: 50px;
  width: 80%;
  margin: auto;
  position: relative;
  background-color: #ffffff;
}
.repair_ara {
  padding: 30px 0 30px;
}
.pohto {
  position: relative;
}
.click {
  position: absolute;
  bottom: -10px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 65px;
}
#repair .ribon {
  position: absolute;
  top: 80px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
/*
お客様の声
*/
#voice {
  padding: 100px 0 100px;
  position: relative;
}
.flag_bk {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 90%;
}
#voice .title_area {
  text-align: center;
  margin: 0 0 100px;
}
#voice .box,
#voice .box02 {
  overflow: hidden;
  width: 80%;
  margin: 0 auto 80px;
}
#voice .box .photo,
#voice .box02 .left {
  width: 47%;
}
#voice .box .right,
#voice .box02 .right {
  overflow: hidden;
  width: 47%;
}
#voice .box h3,
#voice .box02 h3 {
  font-size: 16px;
  margin: 0 0 30px;
}
#voice .box p,
#voice .box02 p {
  font-size: 14px;
  line-height: 2;
}
#voice .box02:last-of-type {
  margin: 0 auto 0px;
}

@media screen and (max-width: 1280px) {
  .cat10 {
    width: 80px;
    left: 0;
  }
  .nurse10 {
    width: 150px;
    left: 90px;
  }
}
@media screen and (max-width: 768px) {
  #repair {
    background-size: auto 200px;
  }
  #repair_about {
    padding: 400px 0 120px;
    background-image: url(images/repair/repair_bk_sp.png);
    background-position: center top;
    background-size: 100% auto;
  }

  #repair_about .box {
    width: 100%;
    float: none;
    line-height: 2;
  }
  #repair_about .box p {
    font-size: 15px;
  }
  .cat10,
  .nurse10 {
    display: none;
  }

  #voice .box,
  #voice .box02 {
    margin: 0 auto 50px;
  }
  #voice .box .left {
    float: none;
  }
  #voice .box .photo,
  #voice .box02 .photo {
    width: 80%;
    margin: 0 auto 30px;
  }

  #voice .box .right,
  #voice .box02 .left {
    width: 100%;
    margin: 0 auto 20px;
  }
  #voice .box02 .right {
    float: none;
  }
  #voice .box h3,
  #voice .box02 h3 {
    margin: 0 0 20px;
  }
  .flag_bk {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  #repair {
    background-size: auto 150px;
    background-position: right -180px top 120px;
  }
  #repair_about {
    padding: 0px 0 20px;
    background: none;
  }
  #repair .box {
    padding: 25px 5% 10px;
    width: 90%;
    border-radius: 30px;
  }
  #repair_about .box h2 {
    margin: 30px 0 40px !important;
  }
  #repair_about .box p {
    margin-bottom: 30px;
  }
  #repair {
    padding: 110px 0 70px;
  }
  #repair .ribon {
    top: 40px;
  }
  #repair .title_area {
    margin: 0 0 30px;
  }
  #repair .t_pri {
    text-align: left;
  }
  #voice {
    padding: 50px 0 0px;
  }
  #voice .title_area {
    margin: 0 0 30px;
  }
  #voice .box,
  #voice .box02 {
    width: 90%;
    margin: 0 auto 30px;
  }
  #voice .box .photo,
  #voice .box02 .photo {
    width: 95%;
  }
}

/*****************************************************
お問い合わせ
******************************************************/
#contact {
  padding: 0 0 50px;
}
#contact .text_ara {
  line-height: 1.8;
  font-size: 16px;
  margin: 0 0 70px;
  text-align: center;
  position: relative;
}
.icon_cat {
  position: absolute;
  left: calc(50% + 300px);
  bottom: -70px;
  width: 80px;
}
#contact .lization {
  background-color: rgba(255, 222, 225, 0.3);
}
#contact .mail_form {
  background-color: #fbfbfa;
}
#contact .lization .left {
  padding: 50px 0 0 10% !important;
}

#contact .box {
  width: 80%;
  margin: 50px auto 0;
  border-radius: 20px;
  position: relative;
  max-width: 850px;
  overflow: hidden;
  padding: 34px 5% 37px;
}
#contact .box .left {
  width: 50%;
  font-weight: normal;
  text-align: left;
  padding: 0 0 0 10%;
  line-height: 2;
}
#contact .box .left::before {
  top: 50%;
  left: 50px;
  transform: translateY(-50%);
  content: "";
  position: absolute;
  background-size: auto 60px;
  background-repeat: no-repeat;
  width: 60px;
  height: 60px;
}
#contact .lization .left::before {
  background-image: url(images/contact/icon_lization.png);
}
#contact .mail_form .left::before {
  background-image: url("images/contact/icon_mail.png");
}
#contact .box .left h2 {
  margin: 0 0 10px;
  font-size: 20px;
}
#contact .box .right {
  width: 40%;
}
#contact .box .right li {
  margin: 0 0 15px;
}
#contact .box .right li:last-child {
  margin: 0;
}
#contact .mail_form {
  position: relative;
}
#contact .mail_form .left::before {
  top: 80px;
}
.con_nurse {
  position: absolute;
  left: 100px;
  bottom: 30px;
  width: 250px;
}
@media screen and (max-width: 1024px) {
  .icon_cat {
    left: auto;
    right: 90px;
  }
  #contact .box .left::before {
    top: 50px;
    left: 50px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  #contact .lization .left,
  #contact .mail_form .left {
    padding: 70px 0 30px 0 !important;
  }
  #contact .box .left {
    width: 100%;
    padding: 0;
    float: none;
    text-align: center;
  }
  #contact .box .right {
    width: 80%;
    float: none;
    margin: auto;
  }
  .con_nurse {
    position: static;
    bottom: 30px;
    width: 250px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
@media screen and (max-width: 850px) {
  .icon_cat {
    display: none;
  }
  #price .searchbox ul a {
    width: 40% !important;
    margin: 0 auto 10px !important;
  }
}
@media screen and (max-width: 640px) {
  #contact {
    padding: 0;
  }
  #contact .text_ara {
    margin: 0 0 30px;
    text-align: left;
  }
  #contact .box {
    width: 90%;
    margin: 30px auto 0;
  }
  #contact .box .left h2 {
    font-size: 18px;
  }
  #contact .box .right {
    width: 90%;
  }
}

/*****************************************************
料金表
******************************************************/
#price {
  margin: 0px 0 150px;
}
#price .inner_p {
  position: relative;
	padding: 50px 5% 200px;
}
#price .box {
  border: 5px solid #ec5b82;
  border-radius: 50px;
  width: 80%;
  margin: auto;
}

#price .title_ara {
  text-align: center;
}
#price .text_ara {
  font-size: 18px;
  text-align: center;
  margin: 30px 0 50px;
}
#price .text_ara .small_text {
  font-size: 14px;
  font-weight: normal;
  margin: 20px 0 0;
  line-height: 1.8;
}

.modaal-container {
  max-width: 800px !important;
}
.hide-area {
  display: none;
}
.modaal-content-container {
  text-align: center;
}
.modaal-inner-wrapper img {
  width: 50%;
  margin: auto;
}
.modaal_h2 {
  font-size: 18px;
  margin: 20px 0 10px;
}
.modaal_p {
  font-size: 13px;
  line-height: 1.8;
  text-align: left;
}

.modaal-close:after,
.modaal-close:before {
  background: #ccc;
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
  background: #666;
}
.info-list dl,
.gallery-list {
  display: flex;
}

.info-list dt {
  margin: 0 10px 0 0;
}

.gallery-list li {
  margin: 0 10px 0 0;
}
.searchbox {
}
.title_m {
  font-size: 20px;
  text-decoration: underline;
  text-align: center;
}
.searc_text_ara {
  font-size: 16px;
  text-align: center;
}
.searc_text_ara .small_text {
  font-size: 13px;
  font-weight: normal;
  margin: 20px 0 0px;
  line-height: 1.6;
}
.confirmation_box_order .searchbox ul a {
  width: 18%;
  margin: 0 0 30px;
  position: relative;
}
.confirmation_box ul a {
  width: 16%;
  margin: 0 0 30px;
  position: relative;
	text-align: center;
}
.confirmation_box_order ul a {
 width: 18%;
margin: 0 0 30px;
position: relative;
	text-align: center;
}
.confirmation_box .title,.confirmation_box_order .title{
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 20px;
}
.confirmation_box ul a h3,.confirmation_box_order ul a h3{
  font-size: 13px;
  line-height: 1.6;
	margin: 7px 0 0;
}
.zoom {
  position: absolute;
  right: -10px;
  bottom: 30px;
  width: 35px;
}
#price .searchbox,
#price_detail .searchbox {
  position: relative;
  width: 90%;
}
.plus::before {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "＋";
  display: block;
  font-size: 30px;
  top: -75px;
}
.nurse02 {
  width: 70%;
  position: absolute;
  bottom: 80px;
  left: 0;
  right: 0;
  margin: 0 auto;
	max-width: 700px;
}
#price .ribon,
#price_detail .ribon {
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
#price_detail {
  padding: 100px 0 60px;
}
#price_detail .box {
  padding: 80px 5% 60px;
  border: 2px dotted #000000;
  border-radius: 50px;
  width: 80%;
  margin: 0 auto 80px;
  position: relative;
  background-color: #ffffff;
}
#price_detail .box .text_ara {
  margin: 50px auto;
  width: 90%;
  line-height: 2;
}
#price_detail .btn50 {
  margin: 0 0 50px;
}
.price_box {
  position: relative;
}
.price_pack tr {
  display: flex;
  font-size: 14px;
}
.price_pack th {
  width: 65%;
  margin: 0 0 12px;
  padding: 0 0 12px;
  border-bottom: 1px dotted #000000;
  text-align: left;
  font-weight: normal;
}
.price_pack td {
  width: 35%;
  margin: 0 0 12px;
  padding: 0 0 12px;
  border-bottom: 1px dotted #000000;
  text-align: right;
  font-weight: normal;
}
#price_detail .searchbox {
  margin: 0 auto;
}
#taiin-set {
	position: relative;
	padding: 35px 0 0 0;
}
#taiin-set .exclusive{
	background-color: #000000;	
	padding: 5px 10px;
	color: #FFFFFF;
	font-size: 13px;
	position: absolute;
	top: 0;
	left: 0px;
}



.last_table th,
.last_table td {
  border-bottom: none;
  font-size: 12px;
  margin: 0;
  padding: 0;
}
#price_detail .btn {
  width: 80%;
  margin: 50px auto 0;
  max-width: 350px;
}
.option_box {
  margin: 50px 0;
}
.option_box:last-of-type {
  margin: 50px 0 0;
}
.option {
  font-size: 18px;
  padding: 10px 0 18px 55px;
  background-repeat: no-repeat;
  background-position: left top 5px;
  background-size: 45px auto;
  margin: 0 0 30px;
}
.op {
  background-image: url(images/menu/icon_brush.jpg);
}
.dis {
  background-image: url("images/menu/icon_clothes.jpg");
}
.option:nth-child(2) {
  margin: 0 0 10px;
}
.box_four {
}
.box_four .boxes {
  width: 40%;
  padding: 0 4% 0;
  margin: 0 0 45px;
}
.box_four .box img {
  width: 90%;
  margin: 0 auto 20px;
}
.t_pri {
  line-height: 1.8;
  text-align: center;
  font-size: 13px;
  margin: 10px 0 0;
}
.box_four .boxes:nth-of-type(odd) {
  border-right: 2px dotted #000000;
}
.option_box .small_text {
  font-size: 14px;
}
.dischargeset {
  margin: 10px 0;
}



.dischargeset li {
	width: 45%;
	text-align: center;
	margin: 0 0 30px;
	
}
.dischargeset li div{
	border: 1px solid #e2e4e6;
	border-radius: 50px;
}
.dischargeset li  span{
	display: inline-block;
	vertical-align: middle;
}
.dischargeset li div img{
	width: 80%;
	margin: auto;
	padding: 30px 20px;
}
.dischargeset li figcaption {
  font-size: 14px;
  font-weight: normal;
  margin: 8px 0 0;
}
.addition {
	margin: 30px 0 0;
}
.addition h4 {
  font-size: 18px;
  text-decoration: underline;
  color: #ec5b82;
  line-height: 1.8;
  margin: 0 0 10px;
}
.addition p {
  line-height: 1.8;
  margin: 0 0 40px;
  font-weight: normal;
  font-size: 14px;
}
.two_set{
	width: 95%;
	max-width: 350px;
	margin: 0 auto 20px;
}

.addition li span {
  font-size: 12px;
  font-weight: normal;
  margin: 10px 0 0;
  display: block;
}
.dischargeset03 {
  position: absolute;
  bottom: -50px;
  right: -30px;
  width: 250px;
}
.cawaii {
  position: absolute;
  width: 150px;
  top: -12px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.dolles {
  padding: 30px 0;
  background-image: url(images/menu/hosi_bk.png);
  background-position: center top;
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 90%;
  margin: 30px auto 0;
}
.dolles li {
  width: 23%;
}
.dolles li:nth-child(even) {
  margin: 20px 0 0;
}
.tax {
  font-size: 12px;
  text-align: right;
  font-weight: normal;
}

@media screen and (max-width: 1000px) {
.confirmation_box ul a {
  width: 21%;
}

}
@media screen and (max-width: 950px) {
.semi-order_icon {
  position: static;
}
.confirmation_box_order ul a {
  width: 25%;
	margin: 0 2% 30px;
}	
}
@media screen and (max-width: 850px) {
  .addition ul {
  
  }
  .addition ul li {

  }
  .dischargeset03 {
    position: static;
    width: 250px;
    margin: 30px auto;
  }
  .dolles {
    padding: 30px 0 0;
    margin: 30px 0 0;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #price {
    margin: 50px 0 80px;
  }
  .nurse02 {
    width: 90%;
  }
  #price_detail .box {
    margin: 0 auto 50px;
  }
#price_detail .box:last-of-type {
  margin: 0;
}
  .dolles {
    padding: 30px 0 0;
    margin: 10px 0 20px;
    width: 100%;
  }
.confirmation_box ul a {
  width: 28%;
}
}
@media screen and (max-width: 640px) {
  #price {
    margin: 35px 0 40px;
  }
	#price .inner_p {
	padding: 0px 5% 50px;
}
#price .ribon{
  top: -80px;
}
  #price .box {
    padding: 50px 0 0 0;
    width: 97%;
    margin: auto;
	  border-radius: 30px;
  }
  #price .searchbox:last-of-type {
    margin: 0 auto 30px;
  }
	

  .plus::before {
    top: -55px;
    font-size: 25px;
  }
  .nurse02 {
    position: static;
    width: 100%;
  }
  #price_detail .box {
    padding: 50px 5% 40px;
    width: 90%;
    border-radius: 30px;
  }
  #price_detail .box .text_ara {
    margin: 30px auto;
    width: 100%;
    line-height: 2;
  }
  #price_detail .box .btn50 {
    margin: 0 0 30px;
  }
  .price_pack tr {
    font-size: 12px;
  }
  .last_table th,
  .last_table td {
    font-size: 10px;
  }
  .option {
    font-size: 16px;
    margin: 0 0 20px;
    background-size: 35px auto;
    padding: 10px 0 10px 45px;
  }
  .option_box {
    margin: 30px 0 0;
  }
  #price_detail .btn {
    width: 100%;
    margin: 30px auto 0;
  }
  .box_four .boxes {
    width: 100%;
    padding: 0 0 20px;
    margin: 0 0 25px;
  }
  .box_four .boxes:nth-of-type(2n + 1) {
    border-bottom: 1px dotted #000000;
    border-right: none;
  }
  .box_four .boxes:nth-of-type(2) {
    border-bottom: 1px dotted #000000;
  }
  .box_four .boxes:last-of-type {
    margin: 0;
    padding: 0;
  }
  .t_pri {
    font-size: 12px;
  }
  .dischargeset li figcaption {
    font-size: 12px;
  }
  .dischargeset li {
    width: 48%;
	  margin: 0 0 15px;
  }
.dischargeset li div {
  border-radius: 30px;
}
  .addition {
    margin: 20px 0 ;
  }
  .addition h4 {
    font-size: 16px;
  }
  .addition p {
    margin: 0 0 20px;
    text-align: left;
    font-size: 13px;
  }
  .addition ul li {
    margin: 0 0 20px;
  }
  .addition li:nth-child(2n) {
    margin: 0;
  }
  .dischargeset03 {
    width: 200px;
    margin: 0px auto;
  }
  .tax {
    font-size: 10px;
  }
  #price .text_ara {
    margin: 30px 0 30px;
  }
#taiin-set .text_box .leftbox {
  width: 100%;
  margin: 0 0 30px;
}
#taiin-set .text_box .rightbox {
  width: 70%;
	margin: auto;
}
#taiin-set .text_box{
	display: block;	
	}

.confirmation_box ul a,.confirmation_box_order ul a {
  width: 45%;
	margin: 0 0 30px;
}
.confirmation_box ul a h3,.confirmation_box_order ul a h3 {
  font-size: 11px;
}

}

/*-------------------------
入院費用の一例
-------------------------*/
#example {
}
#example .text_ara,
#reserve .text_ara {
  text-align: center;
  margin: 0 0 50px;
  line-height: 2;
}
.btm_none{
	margin-bottom: 0!important;
}
.caution {
  background-color: #ec5b82;
  border-radius: 10px;
  width: 80%;
  max-width: 1000px;
  margin: 0 auto 100px;
  padding: 15px 2% 25px;
}
.caution h2 {
  font-size: 18px;
  color: #ffffff;
  text-align: center;
  line-height: 1.5;
  margin: 0 0 15px;
}
.caution a,
.my_p_box a {
  color: #3600fe;
  text-decoration: underline;
}
.caution a:hover,
.my_p_box a:hover {
  color: #3600fe;
  text-decoration: none;
}
.caution .box {
  background-color: #ffffff;
  border-radius: 10px;
  padding: 30px 5%;
}
.caution .big_text {
  text-align: center;
  margin: 0 0 25px;
}
.caution li,
.caution ol {
  font-size: 13px;
  font-weight: normal;
  line-height: 1.8;
  padding-left: 1em;
  text-indent: -1em;
  margin: 0 0 10px;
}
.caution li:last-child,
.caution ol:last-child {
  margin: 0;
}
.icon-caution {
}
.icon-caution::before {
  content: "";
  display: inline-block;
  width: 33px;
  height: 30px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 15px 0 0;
}
.icon-caution::after {
  content: "";
  display: inline-block;
  width: 33px;
  height: 30px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 0 0 15px;
}
#case .bk_pink,
#case .bk_yellow {
  padding: 100px 0 ;
}
#case .bk_blue {
  padding: 100px 0 100px;
}
.case_box {
  padding: 50px 50px 50px;
  background-color: #ffffff;
  border-radius: 30px;
  width: 80%;
  margin: 0 auto 20px;
  position: relative;
}
.case_box:last-of-type {
  margin: 0 auto;
}
.case_box h2 {
  font-size: 20px;
  margin: 0 0 50px;
  padding: 0 0 0 120px;
  position: relative;
	text-align: left;
	line-height: 2;
}
.case01::before,
.case02::before,
.case03::before,
.case04::before,
.case05::before {
  content: "";
  display: block;
  width: 109px;
  height: 124px;
  background-repeat: no-repeat;
  margin: 0 25px 0 0;
  position: absolute;
  top: -65px;
  left: 0px;
  background-size: 109px 124px;
}
.case_box .case01::before {
  background-image: url("images/repair/point01.png");
}
.case_box .case02::before {
  background-image: url(images/repair/point02.png);
}
.case_box .case03::before {
  background-image: url(images/repair/point03.png);
}
.case_box .case04::before {
  background-image: url(images/menu/case04.png);
}
.case_box .case05::before {
  background-image: url(images/menu/case05.png);
}

.case_box h2 span {
  border-bottom: 2px dotted #000000;
  display: block;
}
.case_box_inner {
  overflow: hidden;
}
.case_box_inner .left {
  width: 47%;
}
.case_box_inner .right {
  width: 47%;
	margin: 0 0 0 5%;
}
.case_box_inner .arrange{
	justify-content: center;
-webkit-align-items: center;
align-items: center;
}





.costs {
  display: block;
  width: 100%;
  margin: 0 0 10px;
}
.costs p {
  background-color: #000000;
  padding: 10px 10px;
  font-size: 18px;
  color: #ffffff;
  border-radius: 30px;
  letter-spacing: 0.1em;
  text-align: center;
}
.price {
  
}
.price .total {
  font-size: 28px;
}
.price .en {
  font-size: 22px;
  font-weight: normal;
}
.price .tax {
  font-size: 13px;
  font-weight: normal;
}
.price .courier {
  font-size: 11px;
  margin: 20px 0 0;
  font-weight: normal;
text-align: right;
}
.case_box .doll_data {
  width: 90%;
  margin: 30px 0 50px;
	text-align: left;
	line-height: 2;
	font-size: 14px;
}
.clear{
	clear: both;
}
.case_box .clear{

}
.case_box .btn{
	margin: 50px auto 20px;
width: 80%;
max-width: 300px;
}
.price_box {
  clear: both;
  margin: 50px 0 0;
}
.price_box .acordion {
  width: 99%;
  background-color: #ffffff;
  border-radius: 15px;
  margin: 0 auto 25px;
  border: 1px solid #000000;
}
.price_box .trigger {
  padding: 23px 60px 18px 25px;
  background: none;
  font-size: 16px;
  text-decoration: none;
}
.price_box .open-close {
  background-image: url(images/menu/ue.png);
  background-color: #000000;
  padding: 8px;
}
.price_box .trigger.active .open-close {
  background-image: url("images/menu/shita.png");
}
.price_box .trigger.active {
  background: none;
}
.price_box .doll_data_table th {
  border-bottom: 1px dotted #000000;
  width: 70%;
  padding: 10px 0;
  font-weight: normal;
}
.price_box .doll_data_table td {
  border-bottom: 1px dotted #000000;
  width: 30%;
  padding: 10px 0;
  text-align: right;
  font-weight: normal;
}
.doll_data_table li{
	 border-bottom: 1px dotted #000000;
  padding: 10px 0;
  font-weight: normal;
	  padding-left: 1.5em;
  text-indent: -1.5em;
	
}
.one_free {
  padding: 10px 5% 10px 20px !important;
}
.last_test {
  font-size: 11px;
  line-height: 1.8;
  width: 80%;
  margin: 0 auto;
  padding: 0 0 100px;
  font-weight: normal;
}
.normal{
	font-weight: normal;
}
.new_price{
	width: 80%;
	margin: 0 0 0 20%;
	
}
.new_price td{
	font-size: 12px;
	text-align: right;
}
.number{
	color: #ea1a7b;
	font-size: 20px !important;
	font-weight: 600 !important;
}
.number .en{
	font-size: 12px;
}
@media screen and (max-width: 1024px) {
  /*-------------------------
入院費用の一例
-------------------------*/
}
@media screen and (max-width: 768px) {
  /*-------------------------
入院費用の一例
-------------------------*/
  .caution {
    width: 92%;
    padding: 10px 4% 25px;
  }
  .case_box {
    padding: 50px 7% 15px;
    width: 86%;
  }
  .case_box_inner .left {
    width: 100%;
    margin: 0 auto 20px;
    float: none;
  }
  .case_box_inner .right {
    width: 100%;
    float: none;
	    margin: 0;
}
  .case_box .doll_data {
    width: 90%;
    margin: 30px 0 0px;
  }
  .price_box {
    margin: 30px 0 0;
  }
  .price_box .acordion_tree {
    padding: 0px 0px 25px 0px;
  }
  .price_box .region {
    padding: 0 10px;
  }
  .last_test {
    width: 100%;
  }
.case_box .clear {
  padding:0;
}
}
@media screen and (max-width: 640px) {
  /*-------------------------
入院費用の一例
-------------------------*/
  #example .text_ara,
  #reserve .text_ara {
    text-align: left;
    margin: 0 0 30px;
  }
  .caution {
    padding: 10px 4% 15px;
    margin: 0 auto 50px;
  }
  .caution .big_text {
    text-align: left;
  }
  .caution .box {
    padding: 15px 5% 20px;
  }
  .caution h2 {
    font-size: 16px;
  }
  .caution .big_text {
    font-size: 15px;
    line-height: 1.8;
    margin: 0 0 17px;
  }
  #case .bk_pink,
  #case .bk_yellow {
    padding: 50px 0 0;
  }
  .case_box {
  }
  .case_box h2 {
    margin: 0 0 20px;
    padding: 0 0 0 70px;
	  font-size: 18px;
  }
  .case_box h2 span {
    padding: 0 0 5px;
  }
  .case_box h2::before {
    width: 68px;
    height: 77px;
    top: -30px;
    left: 0px;
    background-size: 68px 77px;
  }
  .case_box {
    padding: 20px 5% 35px;
    width: 90%;
  }
.new_price {
  width: 100%;
  margin: 0;
}
.number {
width: 45%;
	font-size: 16px !important;
}
.price .courier {
  text-align: left;
}
.price_box .doll_data_table th {
  width: 60%;
}
.price_box .doll_data_table td {
  width: 40%;
}
  .costs {
    display: block;
    width: 80%;
    margin: 0 auto 8px;
  }
  .price {
    display: block;
    margin: auto;
    width: 100%;
    text-align: center;
  }
  .price .courier {
    margin: 10px 0 0;
  }
  .case_box .doll_data {
    margin: 20px 0 0px;
  }
  .price_box .acordion {
    margin: 0 auto 15px;
  }
  .price_box .trigger {
    font-size: 14px;
  }
  .last_test {
    padding: 0 0 50px;
  }
  #case .bk_blue {
    padding: 50px 0 30px;
  }
.price_box .region p{
	font-size: 12px;
}
.costs p {
  font-size: 16px;
}
}
@media screen and (max-width: 320px) {
}

/*****************************************************
退院されたお人形達
******************************************************/
.searchbox {
  background-color: #f7f7f6;
  border-radius: 10px;
  width: 70%;
  max-width: 800px;
  margin: 0 auto 100px;
  padding: 40px 5%;
  box-shadow: 2px 2px 4px rgba(181, 181, 181, 0.4);
}
.searchbox h2 {
  font-size: 16px;
  margin: 0 0 13px;
}
.searchbox h2::before {
  content: "";
  display: inline-block;
  width: 47px;
  height: 47px;
  background-image: url(images/discharged/syringe.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 15px 0 0;
}
.searchbox ul {
}
.searchbox ul a li {
}
.searchbox ul a {
  width: 16%;
  text-align: center;
	margin: 0 0 20px;
}
.searchbox ul a li h3 {
  font-size: 14px;
  margin: 7px 0 0;
  letter-spacing: 0;
}
.searchbox ul a li img {
  width: 90%;
  margin: auto;
}
.searchbox ul a li img,
.doll_list ul a li img {
  transition: transform 0.3s linear;
}
.searchbox ul a li img:hover,
.doll_list ul a li img:hover {
  transform: scale(1.1);
}
/*
一覧部分
*/
#discharged_dolls {
  padding: 50px 0 150px;
  position: relative;
}
#discharged_dolls .title_area {
  text-align: center;
  margin: 0 0 50px;
}
#discharged_dolls .ribon {
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.doll_list {
  width: 90%;
  margin: auto;
}
.doll_list ul {
}
.doll_list ul a {
  width: 23%;
  margin: 0 auto 40px;
  text-align: center;
}
.doll_list h3 {
  margin: 7px 0 0;
  letter-spacing: 0;
}
.doll_list img {
  border-radius: 50%;
  margin: 0 auto 5px;
  border: 8px solid rgba(255, 222, 225, 0.3);
  width: 85%;
}
/*-------------------------
詳細ページ
-------------------------*/
.triangle02 {
  position: relative;
}
.triangle02::after {
  bottom: -142px;
  height: 112px;
  background-size: 100% 112px;
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  width: 100%;
  background-position: center bottom;
  background-image: url(images/discharged/info-bg-pc.png);
}
.congrats_box {
  border-radius: 10px;
  width: 70%;
  max-width: 800px;
  border: 3px dotted #000000;
  margin: 0 auto 30px;
  padding: 50px 5% 80px;
  position: relative;
}
.congrats_box .text_ara {
  margin: 0 0 70px;
}
.congrats_box .text_ara_h2 {
  text-decoration: underline;
  text-align: center;
  margin: 0 0 10px;
}
.congrats_box .comment {
  line-height: 2;
}
.c-balloon__shapes {
  left: 0;
  background-color: inherit;
  border-color: inherit;
  height: 0;
  position: absolute;
  top: 16px;
  width: 0;
  z-index: 1;
}
.c-balloon {
  align-content: flex-start;
  display: flex;
  justify-content: space-between;
  position: relative;
  margin: 80px auto 0;
}
.c-balloon__icon {
  flex-shrink: 0;
  position: relative;
  text-align: center;
  width: 140px;
}
.c-balloon__body {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  flex-basis: 100%;
  padding: 4px 24px;
}
.c-balloon__text {
  background: #ffffff;
  border-color: #e0627d;
  border-style: solid;
  border-width: 2px;
  border-radius: 8px;
  color: #333;
  line-height: 1.6;
  max-width: 560px;
  padding: 25px 25px;
  position: relative;
}
.c-balloon__text p {
  font-size: 13px;
  line-height: 2;
}
.c-balloon__after {
  border-right-color: inherit;
  z-index: 2;
  border-width: 8px 10px 8px 0;
  left: -10px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-style: solid;
  display: block;
  height: 0;
  position: absolute;
  top: 0;
  width: 0;
}
.c-balloon__before {
  left: -8px;
  border-right-color: #ffffff;
  border-width: 8px 10px 8px 0;
  z-index: 3;
  border-top-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  border-style: solid;
  display: block;
  height: 0;
  position: absolute;
  top: 0;
  width: 0;
}
.photoes p {
  line-height: 2;
  letter-spacing: 0.08em;
}
.congrats_box .photo {
  margin: 80px 0 0;
}

.congrats_box .photo ul {
  margin: 0 0 30px;
}
.congrats_box .photo li {
  width: 42%;
  margin: auto;
}
.congrats_box .photo .before,
.congrats_box .photo .after {
  position: relative;
}
.congrats_box .photo .before::before,
.congrats_box .photo .after::before {
  position: absolute;
  right: -40px;
  content: "";
  display: block;
  background-repeat: no-repeat;
  width: 204px;
  height: 120px;
  background-size: 100% auto;
  top: -35px;
}
.congrats_box .photo .before::before {
  background-image: url(images/discharged/before.png);
}
.congrats_box .photo .after::before {
  background-image: url("images/discharged/after.png");
}
.doll_data_waku {
  background-color: #f7f7f6;
  border-radius: 10px;
}
.doll_data {
  background-color: #f7f7f6;
  border-radius: 10px;
  width: 40%;
  margin: 50px auto 0;
  padding: 30px 5% 40px;
  position: relative;
}
.doll_data::before {
}
.doll_data h3,
.doll_data h2 {
  font-size: 16px;
  text-align: center;
  margin: 0 0 20px;
}
.doll_data_table {
  font-size: 14px;
}
.doll_data_table th {
  border-bottom: 2px dotted #000000;
  width: 20%;
  padding: 10px 5%;
}
.doll_data_table td {
  border-bottom: 2px dotted #000000;
  width: 60%;
  padding: 10px 5%;
}
.nurse_data {
  width: 160px;
  position: absolute;
  top: -100px;
  right: -50px;
}
.congrats {
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.voice {
  margin: 135px auto 0;
  background-color: #ffffff;
  border-radius: 10px;
  width: 70%;
  max-width: 800px;
  padding: 50px 5% 40px;
  box-shadow: 2px 2px 4px rgba(181, 181, 181, 0.4);
  position: relative;
}
.voice::before {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-image: url(images/discharged/pon.png);
  width: 28px;
  height: 42px;
  background-size: 28px 42px;
  top: -15px;
}
.voice h2 {
  font-size: 16px;
  text-align: center;
  margin: 0 auto 30px;
}
.voice h2 span {
  padding: 0 15px 10px;
  background-image: url(images/discharged/line10.png);
  background-size: auto 4px;
  background-repeat: repeat-x;
  background-position: left bottom;
  line-height: 2;
}
.voice .message p {
  font-size: 14px;
  padding: 0 0 5px;
  margin: 0 0 5px;
  border-bottom: 2px dotted #000000;
  display: inline;
  line-height: 3;
}
#discharged_dolls .btn03 {
  width: 300px;
  margin: 50px auto;
}
.other .text_ara {
  text-align: center;
}
#discharged_dolls .searchbox {
  margin: 0 auto 50px;
}
#discharged_dolls #ex06 {
  margin: 40px auto 70px;
}

@media screen and (max-width: 1024px) {
  .searchbox {
    width: 90%;
  }
  .congrats_box .photo .before::before,
  .congrats_box .photo .after::before {
    width: 137px;
    height: 81px;
    right: -30px;
    top: -20px;
  }
  /*-------------------------
詳細ページ
-------------------------*/
  .doll_data {
    width: 75%;
    max-width: 100%;
  }
  .voice {
    width: 90%;
  }
}
@media screen and (max-width: 768px) {
  .searchbox {
    padding: 25px 5% 20px;
    width: 85%;
  }
  .searchbox ul a {
    width: 30%;
    margin: 0 auto 10px;
  }
  .doll_list {
    width: 100%;
  }
  .doll_list ul a {
    width: 30%;
  }
  /*-------------------------
詳細ページ
-------------------------*/
  .congrats_box {
    width: 85%;
  }
  .doll_data {
    width: 85%;
    max-width: 100%;
  }
  .triangle02::after {
    bottom: -61px;
    height: 31px;
    background-image: url(images/discharged/info-bg-sp.png);
    background-size: 100% 31px;
  }
  .voice {
    padding: 50px 5% 30px;
    width: 85%;
    margin: 35px auto 0;
  }
}
@media screen and (max-width: 640px) {
  .searchbox {
    margin: auto;
  }
  .searchbox h2 {
    font-size: 14px;
    margin: 0 0 7px;
  }
  .searchbox h2::before {
    width: 37px;
    height: 37px;
  }
  .searchbox ul a li h3 {
    font-size: 11px;
  }
  #discharged_dolls {
    padding: 50px 0 80px;
	  margin: 30px 0 0;
  }
  #discharged_dolls .title_area {
    margin: 0 0 30px;
  }
  .doll_list ul a {
    margin: 0 auto 20px;
  }
  .doll_list h3 {
    font-size: 12px;
  }
  /*-------------------------
詳細ページ
-------------------------*/
  .congrats_box {
    padding: 40px 5% 30px;
    margin: 30px 0;
    border: 2px dotted #000000;
    width: 90%;
  }
  .congrats_box .text_ara_h2 {
    font-size: 20px;
    margin: 0 0 15px;
  }
  .congrats_box .text_ara {
    margin: 0 0 30px;
  }
  .congrats_box .comment {
    text-align: left;
    font-size: 12px;
  }
  .congrats_box .comment ul li {
    margin: 0 0 10px;
  }
  .congrats_box .photo ul {
    margin: 0;
  }
  .congrats_box .photo li {
    width: 100%;
    margin: 0 auto 20px;
  }
  .c-balloon__text p {
    font-size: 12px;
  }
  .c-balloon__text {
    padding: 15px 15px;
  }
  .doll_data {
    margin: 0px auto;
  }
  .doll_data h3 {
    font-size: 14px;
    margin: 0 0 10px;
  }
  .doll_data_table {
    font-size: 12px;
  }
  .nurse_data {
    display: none;
  }
  .c-balloon {
    margin: 30px auto;
  }
  .c-balloon__icon {
    width: 80px;
  }
  .congrats_box .photo {
    margin: 40px 0 0;
  }
  #discharged_dolls .btn03 {
    width: 80%;
    margin: 40px auto;
  }
  #discharged_dolls .searchbox {
    margin: 0 auto 40px;
  }
  #discharged_dolls #ex06 {
    margin: 20px auto 0px;
  }
.doll_list img {
  border: 5px solid rgba(255, 222, 225, 0.3);
}
}
@media screen and (max-width: 320px) {
  .nurse_data {
    display: none;
  }
}
/*****************************************************
よくある質問
******************************************************/
#dollschool .title_ara h2 {
  font-size: 20px;
  margin: 0 auto 30px;
  width: 80%;
}
.acordion {
  width: 80%;
  background-color: #ffdae0;
  border-radius: 15px;
  margin: 0 auto 25px;
}
.trigger {
  padding: 23px 60px 18px 75px;
  border-radius: 8px;
  background-image: url(images/faq/p.png);
  background-repeat: no-repeat;
  background-position: left 20px center;
  font-size: 18px;
  background-size: 40px 40px;
  position: relative;
  font-weight: bold;
  text-decoration: underline;
}

.trigger.active {
  border-radius: 8px 8px 0 0;
  background-image: url(images/faq/p.png);
  background-repeat: no-repeat;
  background-position: left 20px center;
  background-size: 40px 40px;
}

.acordion_tree {
  padding: 0px 10px 25px 15px;
  background-size: 32px 32px;
  position: relative;
  margin: 0 15px;
}
.answer {
  position: absolute;
  top: 20px;
  left: 20px;
}
.open-close {
  text-indent: -9999px;
  display: block;
  background-repeat: no-repeat;
  background-image: url(images/faq/up.png);
  background-size: 15px 7px;
  background-color: rgba(255, 255, 255, 1);
  padding: 10px;
  background-position: center center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
}

.trigger.active .open-close {
  background-repeat: no-repeat;
  background-image: url("images/faq/down.png");
}
.acordion_tree .box {
  clear: both;
  background-color: #fff;
  padding: 5px 10px 15px 15px;
  border-radius: 15px;
}
.region {
  padding: 15px;
  text-align: justify;
  font-size: 14px;
  line-height: 2;
}

.region a,
#contact .lization .left a,
.last_box a,
.important_text a,
#doll_flow .box .setpbox dl dd a {
  color: #2332ce;
  text-decoration: underline;
}
.region a:hover,
#contact .lization .left a:hover,
.last_box a:hover,
.important_text a:hover,
#doll_flow .box .setpbox dl dd a:hover {
  text-decoration: none;
}
/*===============================================
●タブレット.css 画面の横幅が768pxまで
===============================================*/
@media screen and (max-width: 768px) {
  #question {
    padding: 50px 0;
  }
  #dollschool .title_ara h2,
  .acordion {
    width: 100%;
  }
}
/*===============================================
●smart.css  画面の横幅が640pxまで
===============================================*/
@media screen and (max-width: 640px) {
  #dollschool .title_ara h2 {
    font-size: 18px;
    margin: 0 auto 20px;
  }
  .trigger {
    font-size: 14px;
    line-height: 1.5em;
  }
  .acordion {
    margin: 0 auto 15px;
  }
  .acordion_tree {
    margin: 0 5px;
    padding: 0px 10px 20px 15px;
  }
  #question {
    padding: 30px 0 0;
  }
}

/***********************************
404
************************************/
.p_404 {
  text-align: center;
  margin: 50px 0 300px;
}
.p_404 h2 {
  font-size: 22px;
  line-height: 1.8;
  margin-bottom: 50px;
}
.p_404 p {
  line-height: 1.8;
}
.p_search {
  text-align: left;
  margin: 50px 0 100px;
}
.p_search .time {
  font-size: 14px;
}
@media screen and (max-width: 640px) {
  .p_404 {
    text-align: left;
    margin: 0 0 50px;
  }
  .p_404 h2 {
    font-size: 4.8vw;
  }
  .p_search {
    margin: 0 0 50px;
  }
}

/*****************************************************
入院から退院までの流れ
******************************************************/
#flow {
  padding: 0 0 80px;
}
.flow-step {
  width: 80%;
  padding: 0 0 0 166px;
  margin: 80px auto 0;
  background-color: #ffdae0;
  border-radius: 20px;
  position: relative;
  counter-increment: num 1;
  max-width: 800px;
}
.flow-step:first-of-type {
  margin: 0 auto 0;
}
.flow-step::before {
  top: 31px;
  left: 57px;
  -webkit-transform: none;
  transform: none;
  content: "";
  position: absolute;
  color: #54a734;
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  background-size: auto 65px;
  background-repeat: no-repeat;
  width: 65px;
  height: 65px;
}
.f_01::before {
  background-image: url(images/flow/step01.png);
}
.f_02::before {
  background-image: url(images/flow/step02.png);
}
.f_03::before {
  background-image: url(images/flow/step03.png);
}
.f_04::before {
  background-image: url(images/flow/step04.png);
}
.f_05::before {
  background-image: url(images/flow/step05.png);
}
.f_06::before {
  background-image: url(images/flow/step06.png);
}
.f_07::before {
  background-image: url(images/flow/step07.png);
}
.f_08::before {
  background-image: url(images/flow/step08.png);
}
.f_09::before {
  background-image: url(images/flow/step09.png);
}
.f_10::before {
  background-image: url(images/flow/step10.png);
}
.flow-step_in {
  padding: 34px 30px 37px 0;
  background-color: transparent;
  position: relative;
  border-radius: 10px;
}
.flow-step_title {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 28px;
  text-decoration: underline;
}
.flow-step_text {
  font-size: 14px;
  line-height: 2;
  margin: 10px 0 0;
  font-weight: normal;

  letter-spacing: 0;
}
.flow-step_ul {
  margin: 20px 0 0;
}
.flow-step_ul li {
  font-size: 13px;
  line-height: 1.8;
  padding-left: 1em;
  text-indent: -1em;
  font-weight: 100;
}

.flow-step_in::after {
  bottom: -37px;
  transform: translate(-140px, 0);
  width: 94px;
  height: 39px;
  content: "";
  position: absolute;
  left: 50%;
  background: url(images/flow/arow_under.png) no-repeat;
  background-position: center;
  background-size: contain;
}
.last .flow-step_in::after {
  display: none;
}
.flow-step_box {
  position: relative;
  padding: 30px;
  margin: 20px 0 3px;
  background-color: #ffffff;
  border-radius: 15px;
}
.flow-step_box ul {
  width: 50%;
}
.flow-step_box ul li {
  margin: 18px 0 0;
}
.flow-step_box ul li:first-child {
  margin: 0;
}
.nurse_big {
  position: absolute;
  bottom: 0;
  right: 130px;
  width: 160px;
}
.feelfree {
  position: absolute;
  top: 40px;
  right: -20px;
  width: 160px;
}
.nurse_cat {
  position: absolute;
  right: 80px;
  top: 30px;
  width: 170px;
}
.box_w02 {
  padding: 30px;
  margin: 20px 0 3px;
  background-color: #ffffff;
  border-radius: 15px;
}
.icon-caution02::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 23px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 10px 0 0;
}
.icon-caution02::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 23px;
  background-image: url(images/menu/icon-caution.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 0 0 10px;
}
._link {
  color: #2332ce;
  text-decoration: underline;
}
@media screen and (max-width: 1024px) {
  .nurse_cat {
    right: 20px;
  }
}
@media screen and (max-width: 768px) {
  .flow-step {
    padding: 35px 10% 30px;
    margin: 55px auto 0;
    width: 80%;
  }
  .flow-step_in {
    position: relative;
    padding: 0;
    border-radius: 10px;
  }
  .flow-step::before {
    top: -20px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 45px;
    height: 45px;
    background-size: auto 45px;
  }
  .flow-step_title {
    font-size: 18px;
    letter-spacing: 0;
    line-height: 28px;
  }
  .flow-step_text {
    margin: 15px 0 0;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 26px;
  }
  .flow-step_in::after {
    bottom: -48px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 44px;
    height: 19px;
  }
  .flow-step::after {
    top: 13px;
    left: 50%;
    letter-spacing: 0.02em;
    line-height: 65px;
  }
  .nurse_big {
    right: 100px;
    width: 130px;
  }
  .feelfree {
    top: 80px;
    right: 0px;
    width: 100px;
  }
  .nurse_cat {
    right: -50px;
    top: 0px;
  }
}
@media screen and (max-width: 640px) {
  #flow {
    padding: 20px 0 0;
  }
  .flow-step_box {
    padding: 0px;
    background-color: transparent;
  }
  .flow-step_title {
    font-size: 16px;
  }
  .flow-step_box ul {
    width: 100%;
    margin: 0 auto;
  }
  .nurse_big {
    position: static;
    margin: 20px auto 0;
  }
  .feelfree {
    bottom: 100px;
    top: auto;
    right: 50;
    width: 100px;
  }
  .nurse_cat {
    right: 50%;
    position: static;
    top: auto;
    bottom: 0;
    margin: 20px auto 0;
  }
  .box_w02 {
    padding: 20px;
    margin: 20px 0 3px;
    border-radius: 5px;
  }
}
@media screen and (max-width: 320px) {
  .flow-step_box a {
    font-size: 11px;
  }
  .feelfree {
    width: 80px;
  }
}

/*****************************************************
ドールスクール
******************************************************/
#dollschool {
  padding: 0px 0 100px;
}
#dollschool .text_ara {
  margin: 0 0 80px;
}
#dollschool .text_ara h2 {
  text-align: center;
  color: #f15b82;
  margin: 0 0 30px;
}
#dollschool .text_ara p {
  text-align: center;
  line-height: 1.8;
}

.curriculum {
  width: 80%;
  margin: auto;
}
.curriculum li {
  width: 31%;
  margin: 0 0 30px;
}
.curriculum .box {
  border-radius: 15px;
  padding: 20px 30px;
  text-align: center;
}
.curriculum .box h3 {
  margin: 0 0 15px;
  font-size: 18px;
}
.curriculum .box h3 span {
  display: block;
  font-size: 13px;
}
.curr_inner {
  background-color: #fefefe;
  padding: 20px;
  border-radius: 15px;
}
@media screen and (max-width: 768px) {
  #dollschool .text_ara {
    margin: 0 0 50px;
  }
  .curriculum {
    width: 100%;
  }
  .curriculum li {
    width: 48%;
    margin: 0 0 30px;
  }
  .curriculum .box {
    padding: 20px 20px;
  }
}
@media screen and (max-width: 640px) {
  #dollschool {
    padding: 0;
  }
  #dollschool .text_ara h2 {
    margin: 0 0 20px;
  }
  #dollschool .text_ara p {
    text-align: left;
  }
  #dollschool .text_ara {
    margin: 0 0 30px;
  }
  .curr_inner {
    padding: 5px;
  }
  .curriculum li {
    margin: 0 0 20px;
  }
  .curriculum .box h3 {
    margin: 0 0 15px;
    font-size: 14px;
  }
  .curriculum .box h3 span {
    display: block;
    font-size: 10px;
  }
  .curriculum .box {
    padding: 20px 10px 10px;
  }
  .btm_none {
    margin: 0 !important;
  }
}

/*****************************************************
プライバシーポリシー・特定商取引法
******************************************************/
/*
プライバシーポリシー
*/
.terms .text_ara {
  margin: 0 0 80px;
  font-weight: normal;
  line-height: 2;
}
.terms .box {
  margin: 0 0 50px;
  text-align: justify;
}
.terms .box dt {
  font-size: 16px;
  margin-bottom: 5px;
}
.terms .box dd {
  font-size: 14px;
  font-weight: normal;
  line-height: 2;
}
._under {
  padding-left: 1em;
  text-indent: -1em;
}
.small_under ol {
  padding-left: 1em;
  text-indent: -1em;
}
/*
特定商取引法に基づく表示
*/
.c_table {
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 1.8em;
  border-top: 1px solid #d4d4d4;
  width: 80%;
  margin: 0 auto 80px;
  font-weight: normal;
}
.c_table tr {
}
.c_table th {
  padding: 20px;
  width: 20%;
  border-bottom: 1px solid #d4d4d4;
  border-right: 1px solid #d4d4d4;
  font-weight: normal;
}
.c_table td {
  padding: 20px;
  width: 80%;
  border-bottom: 1px solid #d4d4d4;
}

@media screen and (max-width: 768px) {
  /*
プライバシーポリシー
*/
  .terms .text_ara {
    margin: 0 0 50px;
  }
  .terms .box:last-of-type {
    margin: 0;
  }
  /*
特定商取引法に基づく表示
*/
  .c_table {
    width: 90%;
    margin: 0 auto 50px;
  }
  .c_table th {
    padding: 10px;
    width: 30%;
  }
  .c_table td {
    padding: 10px;
    width: 70%;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }
}
@media screen and (max-width: 640px) {
  .c_table {
    font-size: 13px;
    margin: 0 auto 0;
  }
}

/*****************************************************
お人形の病院とは
******************************************************/
/*-------------------------
お人形の病院について
-------------------------*/
#philosophy {
  margin: 0 0 120px;
}
.message-header {
  padding: 40px 0 30px 0;
  position: relative;
  z-index: 4;
}
.u_container {
  max-width: 1000px;
	margin: auto;
}
.t_inner {
  margin: 0 auto;
  width: 70%;
  position: relative;
}
.message-header-title {
  margin-right: auto;
  width: 10.4%;
}
.p_title-en {
  display: block;
  font-size: 14px;
  margin-bottom: 15px;
  color: #f15b82;
}
.s-greyclif-bold {
  font-family: "greyclif-bold", sans-serif;
  font-style: normal;
}
.message-header-text {
  width: -webkit-calc(100% - 24.4%);
  width: calc(100% - 18.4%);
  margin-left: auto;
}
.t_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.message-header-text-heading {
  margin-right: auto;
  line-height: 1.6;
  font-size: 40px;
}
.u_vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.s-midashi {
  font-weight: 600;
  font-style: normal;
}
.message-header-text-read {
  width: -webkit-calc(100% - 220px);
  width: calc(100% - 220px);
  margin-left: auto;
  padding: 0 0 0 15px;
  line-height: 2;
}
.message-header-text-read p {
  margin-bottom: 30px;
}
.about01 {
  width: 225px;
  position: absolute;
  left: 0;
  bottom: 0;
}
/*
お人形の病院スター
*/
#hospital {
  padding: 100px 0 100px;
  position: relative;
}
#hospital .title_area {
  text-align: center;
  margin: 0 0 60px;
}
#hospital .box {
  margin: 0 auto 80px;
  width: 80%;
}
#hospital .box li {
  width: 45%;
}
#hospital .box li h3 {
  font-size: 20px;
  text-align: center;
  margin: 0 0 20px;
  text-decoration: underline;
}
#hospital .box li img {
}
#hospital .box li p {
  margin: 15px 0 0;
  font-size: 14px;
}
#hospital .btn {
  width: 250px;
  margin: 0 auto;
}
.hosigif01 {
  width: 450px;
  position: absolute;
  bottom: -200px;
  left: -50px;
}
/*
院長あいさつ
*/
#greeting {
  padding: 100px 0 100px;
}
#greeting .title_area {
  text-align: center;
  margin: 0 0 30px;
}
#greeting .pro_ara {
  overflow: hidden;
  width: 80%;
  margin: auto;
  max-width: 1000px;
}
#greeting .pro_ara .right {
  width: 30%;
}
#greeting .pro_ara .left {
  background-color: #fdf7f6;
  margin: 100px 0;
  padding: 50px 10%;
  width: 50%;
}
#greeting .pro_ara .left h3 {
  font-size: 20px;
  color: #ea1a7b;
  margin: 0 0 60px;
  line-height: 2;
}
#greeting .pro_ara .left .box {
  display: flex;
}
#greeting .pro_ara .left p {
  font-size: 14px;
  font-weight: 100;
  vertical-align: middle;
  line-height: 1.8;
  margin: 0 30px 0 0;
}
#greeting .pro_ara .left img {
  width: 157px;
}
#greeting .text_ara_box {
  margin: 0 auto;
  width: 80%;
}

#greeting .text_ara p {
  line-height: 2;
  margin: 0 0 30px;
}
#greeting .text_ara_box .left {
  width: 60%;
  margin: 0 10% 0 0;
}
#greeting .text_ara_box .right {
  width: 30%;
  position: relative;
}
.text_ara_box .profile_box {
  margin: 80px 0 0;
}
#greeting .text_ara_box .box {
  overflow: hidden;
}
.hosigif02 {
  position: absolute;
  right: 0;
  bottom: 0px;
  width: 450px;
  z-index: -1;
}
/*-------------------------
ドールドクター
-------------------------*/
#dolldoctors {
  margin: 0 auto 120px;
}
#dolldoctors .box {
  margin: 0 auto 150px;
  overflow: hidden;
  width: 80%;
  max-width: 1000px;
}
#dolldoctors .box:nth-of-type(2n + 2) {
  margin-right: 0px;
}
#dolldoctors .box .left {
  width: 30%;
}
.doctor_name {
  color: #ffffff;
  margin: -70px 0 0;
}
#dolldoctors .box .left h2 {
  margin: 0 0 5px;
}
#dolldoctors .box .left h2 span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  height: 25px;
  padding: 0 10px;
  background-color: #f15b82;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  font-size: 13px;
}
#dolldoctors .box .left h3 {
  background-color: #f15b82;
  padding: 5px 15px;
  display: inline-block;
  font-size: 18px;
}
#dolldoctors .box .left h3 span {
  font-size: 11px;
  margin: 0 0 0 15px;
}
#dolldoctors .box .right {
  width: 60%;
}
#dolldoctors .box .right .text_ara {
  margin: 0 0 30px;
}
#dolldoctors .box .right .text_ara p {
  padding: 0 0 5px;
  margin: 0 0 5px;
  border-bottom: 2px dotted #000000;
  display: inline;
  line-height: 2.5;
}
#dolldoctors .profile_box {
  padding: 25px 30px 20px;
}
#dolldoctors .profile_box h3 {
  font-size: 14px;
  margin: 0 0 10px;
}

@media screen and (max-width: 1280px) {
  .message-header {
    padding: 40px 0 0 0;
  }
  .message-header-text-heading {
    font-size: 3.125vw;
    width: 10vw;
  }
  .message-header-text-read,
  #repair_about .box p {
    font-size: 1.325vw;
  }
  .hosigif01 {
    bottom: -150px;
    left: -150px;
  }
  #repair_about .box h2 {
    font-size: 2.325vw;
  }
  /*
院長あいさつ
*/
  #greeting .pro_ara .left {
    margin: 0;
  }
}

@media screen and (max-width: 768px) {
  #philosophy {
    margin: 0 0 60px;
  }
  .t_flex {
    display: block;
  }
  .message-header {
    padding: 0;
  }
  .message-header-title {
    width: 100%;
  }
  .message-header-text {
    width: 100%;
  }
  .message-header-text-heading {
    font-size: 3.125vw;
    width: 100%;
    margin: 0 0 20px;
  }
  .u_vertical {
    writing-mode: inherit;
  }
  .message-header-text-read {
    width: 100%;
    padding: 0;
  }
  .message-header-text-read,
  #repair_about .box p {
    font-size: 15px;
  }
  .about01 {
    width: 225px;
    position: static;
    margin: 30px auto 0;
  }
  .hosigif01 {
    bottom: -150px;
    left: -50px;
    width: 300px;
    z-index: -1;
  }
  /*
院長あいさつ
*/
  #greeting .pro_ara .left p {
    display: block;
    margin: 0 0 10px 0;
  }

  #greeting .pro_ara .left .box {
    text-align: center;
    display: block;
  }
  #greeting .text_ara_box .right {
    width: 45%;
    float: none;
    margin: auto;
  }
  #greeting .text_ara_box .left {
    width: 100%;
    float: none;
    margin: 20px 0 0;
  }
  .text_ara_box .profile_box {
    margin: 40px 0 0;
  }

  /*-------------------------
ドールドクター
-------------------------*/
  #dolldoctors .box {
    margin: 0 auto 80px;
  }
  #dolldoctors .box .left {
    width: 50%;
    float: none;
    margin: 0 auto 20px;
  }
  #dolldoctors .box .right {
    width: 100%;
    float: none;
  }
  #dolldoctors .box:nth-of-type(2n + 2) {
    margin: auto;
  }
}
@media screen and (max-width: 640px) {
  #philosophy {
    margin: 0 0 50px;
  }
  .p_title-en {
    font-size: 12px;
  }
  .t_inner {
    width: 85%;
  }
  .message-header-text-heading,
  #repair_about .box h2 {
    font-size: 24px;
    width: 100%;
    margin: 0 0 20px;
  }
  .message-header {
    padding: 0;
  }
  /*
お人形の病院スター
*/
  #hospital {
    padding: 50px 0 70px;
  }
  #hospital .title_area {
    margin: 0 0 30px;
  }
  #hospital .box {
    margin: 0 auto 50px;
    width: 85%;
  }
  #hospital .box li {
    width: 100%;
  }
  #hospital .box li h3 {
    margin: 0 0 10px;
    font-size: 18px;
  }
  #hospital .box li:first-child {
    margin: 0 0 30px;
  }
  .hosigif01 {
    bottom: -100px;
    left: -50px;
    width: 280px;
  }
  /*
院長あいさつ
*/
  #greeting {
    padding: 50px 0 0px;
  }
  #greeting .title_area {
    margin: 0 0 0px;
  }
  #greeting .pro_ara {
    width: 85%;
    margin: 0 auto 30px;
  }
  #greeting .text_ara_box {
    width: 85%;
  }
  #greeting .pro_ara .right {
    width: 45%;
    float: none;
    margin: 0 auto;
  }
  #greeting .pro_ara .left {
    margin: 0;
    padding: 30px 7.5%;
    width: 85%;
    float: none;
  }
  #greeting .pro_ara .left h3 {
    font-size: 18px;
    margin: 0 0 15px;
    line-height: 1.5;
    text-align: justify;
  }
  #greeting .pro_ara .left img {
    width: 127px;
  }
  #greeting .text_ara_box .right {
    width: 55%;
  }
  .hosigif02 {
    right: -50px;
    bottom: -50px;
    width: 350px;
  }
  .text_ara_box .profile_box {
    margin: 0;
  }
  /*-------------------------
ドールドクター
-------------------------*/
  #dolldoctors {
    margin: 0 auto 0px;
  }
  #dolldoctors .box {
    width: 85%;
    margin: 0 auto 50px;
  }
  #dolldoctors .box .left {
    width: 80%;
  }
  #dolldoctors .box .left h2 span {
    font-size: 11px;
  }
  #dolldoctors .box .left h3 {
    font-size: 16px;
  }
  #dolldoctors .box .right .text_ara p {
    font-size: 14px;
    line-height: 2.5;
  }
  #dolldoctors .box .right .text_ara {
    margin: 0 0 20px;
  }
}
@media screen and (max-width: 320px) {
  .message-header-text-heading {
    font-size: 24px;
  }
}

/***************************************************************
TOP
****************************************************************/
/* 入院日の目安*/
.estimated{
	background-color: #FFFFFF;
	border: 1px solid #f4f5f5;
	border-radius: 10px;	
	width: 100%;
	margin:  0 auto 120px;
	position: relative;
	
	 box-shadow: 2px 2px 4px #cccccc;
	max-width: 800px
}
.estimated_inner{
	background-color: #ffdae0;	
	margin: 10px;
	padding: 35px 60px 35px 60px;
	border-radius: 10px;
	text-align: center;
}
/*.estimated_inner{
	background-color: #ffdae0;	
	margin: 10px;
	padding: 35px 40% 35px 60px;
	border-radius: 10px;
	text-align: center;
}2024年の6月のやつに戻す*/

.estimated h2{
	font-size: 20px !important;
	line-height: 1.5 !important;
	margin: 0 0 10px !important;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体";
	font-weight: bold;
}
.estimated h3,
.estimated p{
	font-size: 26px;
	color: #ec5b82;
	font-weight: normal;
	line-height: 1.5;
	font-family: "kei";
}
.estimated_nurse{
	width: 80%;
	position: absolute;
	bottom: 5px;
	right: 0px;
	max-width: 230px;
	
}
.underline_w {
  background: linear-gradient(transparent 50%, #ffffff 40%);
  display: inline;
}
@media screen and (max-width: 640px) {
.estimated h3{
	font-size: 20px;
}	
}




/* 新着情報*/
#top_info {
  padding: 60px 0 100px;
  position: relative;
}
#top_info .inner {
  width: calc(80% - 30px);
  max-width: 1130px;
}
#top_info h2 {
  font-size: 30px;
  line-height: 3;
  margin: 0 0 30px;
}
/*
#top_info h2::before {
  width: 41px;
  height: 36px;
  transition-duration: 0.2s;
  margin: 0 10px 0 0;
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 41px 36px;
  background-image: url(images/icon_heart.png);
}*/
#top_info .info_box {
  overflow: hidden;
  position: relative;
}
#top_info .info_box .left {
  width: 30%;
  text-align: center;
}
#top_info .info_box .left h3 {
  font-size: 20px;
}
#top_info .info_box .right {
  width: 70%;
}
.news_content {
  margin: auto;
  font-size: 14px;
}
.news_content li {
  margin: 0 0 15px;
  padding: 0 0 15px;
  border-bottom: 2px dotted #bababa;
}

.news_content li:last-child {
  border-bottom: none;
  margin: 0;
  padding: 0;
}

.news_content dl {
  position: relative;
}

.news_content dt {
  position: absolute;
  top: 0;
  left: 0;
  color: #f15b82;
}

.news_content dd {
  padding: 0 0 0 150px;
  line-height: 1.8;
}

.news_content h3 {
  font-weight: normal;
}

.top_news .category a {
  font-size: 14px;
  padding: 3px 10px;
  background-color: #ffffff;
  color: #db1e79;
  margin: 0 10px 0;
  border-radius: 20px;
}
#top_info .btn {
}
#top_info .btn a {
  display: block;
  width: 150px;
  font-size: 13px;
  margin: 50px auto 0;
}
.star01 {
  width: 200px;
  position: absolute;
  left: 380px;
  top: -40px;
}
.title_ara {
  position: relative;
}

#bana {
  padding: 0 0 100px;
}
#bana .pc_only {
  width: 48%;
  margin: auto;
}
#bana .tabu_kara {
  width: 95%;
  margin: 0 auto 10px;
}

/* お人形のオーダーメイド治療*/
#top_about {
  padding: 50px 0 150px;
  position: relative;
  z-index: 0;
}
#top_about::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0px;
  left: 0;
  max-width: 1200px;
  right: 35%;
  z-index: -1;
  display: block;
  background-image: url(images/top/top_a_bk.jpg);
  background-position: center;
  background-size: cover;
  border-bottom-right-radius: 80px;
  border-top-right-radius: 80px;
}
.top_a_con {
  width: 48%;
  margin: 100px 0 0 55%;
  max-width: calc(90% - 112px);
}
#top_about .title_area {
  text-align: center;
  margin: 0 0 60px;
}

#top_about .title_area .small_text {
  margin: 0 0 20px;
}
#top_about .title_area .top_h2 {
}
#top_about .title_area span {
  display: block;
  font-size: 18px;
}
#top_about .text_ara p {
  margin-bottom: 30px;
  line-height: 3;
}
#top_about .btn a,
#kodawari .btn a {
  display: block;
  width: 250px;
  font-size: 13px;
  margin: 100px auto 0;
}
#top_about::after {
  content: "";
  display: block;
  background-color: rgba(245, 225, 131, 0.2);
  position: absolute;
  z-index: -1;
  pointer-events: none;
  height: calc(100% - 40rem);
  border-radius: 2rem 0 0 0;
  bottom: 0px;
  right: 0;
  width: 200px;
}
.star_01 {
  width: 260px;
  top: -70px;
  right: calc(50% + 60px);
  position: absolute;
}
.star_02 {
  width: 40px;
  top: 100px;
  right: 50px;
  position: absolute;
  z-index: 1;
}
.star_03 {
  width: 30px;
  bottom: 250px;
  right: 120px;
  position: absolute;
}
/* オーダーメイド治療とは*/
#kodawari {
  padding: 100px 0 100px;
  position: relative;
}
#kodawari .title_area {
  text-align: center;
  margin: 0 0 30px;
  font-size: 18px;
	line-height: 2;
}
#kodawari .top_h2 {
  margin: 0 0 20px;
}
#kodawari .box {
  padding: 50px;
  line-height: 2.5;
  background-color: #ffffff;
  border: 2px dotted #000000;
  border-radius: 30px;
  width: 80%;
  margin: auto;
}
.nurse {
 width: 300px;
position: absolute;
left: calc(50% + 290px);
bottom: 0px;
}
.tree{
	 width: 130px;
	position: absolute;
	bottom: 0px;
	left: 10%;
}

@media screen and (max-width: 850px) {

  .nurse {
    left: auto;
    right: 0px;
	  width: 250px;
  }
#kodawari .btn a {
  margin: 50px auto 0;
}
.tree {
  width: 90px;
  left: 5%;
}
}
/* 退院されたお人形たち*/
.star_big_w02 {
  position: absolute;
  top: -30px;
  right: 0;
  width: 600px;
}
#top_discharged {
  padding: 80px 0 100px;
}
#top_discharged .title_area {
  text-align: center;
  margin: 0 0 30px;
}
#top_discharged .title_area span,
#discharged_dolls .title_area span {
  display: block;
  font-size: 12px;
  line-height: 3;
}
.dis_box {
  padding: 50px;
  background-color: #ffffff;
  border: 2px dotted #000000;
  border-radius: 30px;
  width: 80%;
  margin: auto;
  position: relative;
}
.dis_box h3 {
  font-size: 18px;
  margin: 0 0 50px;
  padding: 0 0 0 120px;
  position: relative;
}
.dis_box h3::before {
  content: "";
  display: block;
  width: 109px;
  height: 124px;
  background-image: url(images/top/flag.png);
  background-repeat: no-repeat;
  margin: 0 25px 0 0;
  position: absolute;
  top: -65px;
  left: 0px;
  background-size: 109px 124px;
}
.dis_box li {
  width: 26%;
  margin: 0 0 10px;
  padding: 20px 3%;
  border: 1px solid rgba(114, 113, 113, 0.2);
  background-color: #f7f7f6;
  font-size: 12px;
  border-radius: 10px;
  line-height: 1.5;
}
.dis_box li img {
  width: 20%;
  margin-right: 10px;
  vertical-align: middle;
  display: inline-block;
}
.dis_box li span {
  display: inline-block;
  width: 70%;
}
.cat {
  width: 80px;
  position: absolute;
  top: 20px;
  right: 50px;
}

#ex06 {
  width: 80%;
  margin: 60px auto 70px;
}
#ex06 .box {
  text-align: center;
}
#ex06 .box img {
  -webkit-border-radius: 50%; /* 50%でもOK */
  -moz-border-radius: 50%;
  border-radius: 50%;
  margin: 0 auto 5px;
  border: 5px solid #ffffff;
}
/*スターガイド*/
.guide_bk {
  background-image: url(images/top/top_guide.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top -150px;
  height: 610px;
}
#top_guide {
  padding: 0 0 380px;
  position: relative;
  background-color: #f7f7f6;
}
#top_guide .arrange {
  padding: 50px;
  background-color: #ffffff;
  border-radius: 30px;
  width: 90%;
  margin: -200px auto 0;
}
#top_guide .box {
  width: 49.8%;
  text-align: center;
}
.dolls {
  width: 70%;
  margin: auto;
}
.firast {
  border-right: 2px dotted #000000;
}

#top_guide .box h2 {
  margin-bottom: 30px;
  text-decoration: underline;
}
#top_guide .box p {
  font-size: 14px;
  line-height: 2;
  margin: 0 0 30px;
}
#top_guide .box .btn a,
#top_guide .box .btn01 a ,
#top_guide .box .btn02 a {
  width: 65%;
  margin: 0 auto 30px;
}
.support{
		width: 90%;
	margin: auto;
}
.support h3{
	text-align: left;
	line-height: 2;
	margin: 20px 0 0;
}
.time_title{
	background-color: #000000;	
	color: #FFFFFF;
	width: 25%;
}
.support tr{
	padding: 8px 12px;
	text-align: left;
	font-size: 12px;
	border: 1px solid #b8b8b8;
}
.support td{
	padding: 8px 12px;
	text-align: left;
	font-size: 12px;
	border: 1px solid #b8b8b8;
}
.support ul{
	margin: 5px 0 0;
}
.support ul li{
	font-size: 10px;
	line-height: 1.8;
	  padding-left: 1em;
  text-indent: -1em;
	text-align: left;
	font-weight: normal;
	
}
.support p {
  margin: 10px 0 0 !important;
}
.support p a {
  color: #0016ff;
  text-decoration: underline;
  margin: 20px 0 0;
  display: block;
}
.flag02 {
  position: absolute;
  top: 100px;
  left: 0;
  right: 0;
  margin: 0 auto;
  max-width: 900px;
  width: 90%;
}
/* ttl
**************************************** */
.inner_eye {
  width: 95%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.inner-rgt-non {
  margin-right: 0;
}
/* --- page_ttl --- */
.page_ttl {
  position: relative;
  z-index: 0;
}
.page_ttl::before {
  content: "";
  display: block;
  background-color: rgba(245, 225, 131, 0.2);
  position: absolute;
  z-index: -1;
  pointer-events: none;
  height: calc(100% - 32rem);
  border-radius: 0 2rem 0 0;
  bottom: 0px;
  left: 0;
  width: 200px;
}
.page_ttl--inner {
  position: relative;
  z-index: 0;
  width: 74%;
  max-width: 1800px;
  height: 700px;
  margin-left: auto;
  background-color: #eee;
  background-image: url(images/top/mv.jpg);
  background-position: center;
  background-size: cover;
  border-bottom-left-radius: 80px;
  border-top-left-radius: 80px;
}
.hero--ttl {
  position: absolute;
  top: 0;
  left: 8%;
  z-index: 10;
}
.page_ttl-jp {
  font-size: 40px;

  margin-left: -1rem;
  letter-spacing: 0.1em;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.t_logo {
  animation: 15s linear infinite rotation1;
}

@keyframes rotation1 {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.stardoll_text {
  width: 150px;
  position: absolute;
  left: 120px;
  top: 430px;
}

@media screen and (max-width: 768px) {
#bana .pc_only {
display: none;
}
/* 入院日の目安*/
.estimated h2{
	font-size: 18px !important;
	line-height: 1.5 !important;
}
.estimated p{
	font-size: 30px;
	color: #ec5b82;
	line-height: 1.5;
}
  .page_ttl-jp {
    font-size: 30px;
  }
  .hero--ttl {
    top: 100px;
    left: 9%;
  }
  .page_ttl::before {
    width: 150px;
  }
  .page_ttl--inner {
    width: 90%;
    height: calc(90vh - 72px);
  }
  .page_ttl--inner {
    border-top-left-radius: 0px;
  }
  /* 新着情報*/
  #top_info .inner {
    width: calc(90% - 30px);
  }
  #top_info .info_box .left {
    width: 100%;
    float: none;
    margin: 0 0 30px;
  }
  #top_info .info_box .right {
    width: 100%;
    float: none;
  }
  .star01 {
    width: 180px;
    left: auto;
    right: 20px;
  }
  /* お人形のオーダーメイド治療*/
  #top_about,
  #kodawari,
  #top_discharged {
    padding: 80px 0 80px;
  }
  #top_about::before {
    right: 15%;
    height: 500px;
  }
  .top_a_con {
    width: 90%;
    margin: 500px auto 0;
    max-width: calc(90% - 112px);
  }
  .star_02 {
    width: 40px;
    top: 600px;
    right: auto;
    left: 50px;
  }
  #top_about::after {
    z-index: -2;
    height: calc(100% - 10rem);
  }
  /* 退院されたお人形たち*/
  .cat {
    top: -60px;
  }
  /* スターガイド*/
  #top_guide .box {
    width: 100%;
  }
  .firast {
    border-right: none;
    border-bottom: 2px dotted #000000;
    margin: 0 0 35px;
    padding: 0 0 35px;
  }
}
@media screen and (max-width: 640px) {
/* 入院日の目安*/
.estimated .text_ara{
width: 60%;
	}
.estimated_inner {
  padding: 15px 10px;
	margin: 2px;
}
.estimated_nurse {
 width: 30%;
bottom: 10px;
right: -10px;
max-width: 130px;
}	
.estimated h2{
	font-size: 13px !important;
	margin: 0 0 5px !important;
}
.estimated p{
	font-size: 22px;
	margin: 0 0 20px;
}
.estimated p span{
	display: block;	
	}	
  .page_ttl::before {
    width: 120px;
  }
  .page_ttl-jp {
    font-size: 7.666vw;
    letter-spacing: 0.2em;
    text-shadow: 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 8px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff;
  }
  .stardoll_text {
    width: 130px;
    position: absolute;
    left: 10px;
    top: calc(90vh - 152px);
  }

  /* 新着情報*/
  #top_info {
    padding: 60px 0 60px;
  }
  #top_info .inner {
    width: calc(90% - 30px);
  }
  #top_info h2 {
    text-align: center;
    font-size: 24px;
    line-height: 1.5;
  }
  #top_info .info_box .left h3 {
    font-size: 18px;
  }
  .star01 {
    right: -20px;
    top: -90px;
	  width: 130px;
  }
  .news_content dt {
    font-size: 11px;
    padding: 3px 0 0 0;
  }
  .news_content dd {
    padding: 0 0 0 100px;
    font-size: 14px;
  }
  #bana {
    padding: 30px 0 40px;
  }
  /* お人形のオーダーメイド治療*/
#top_about{
	display: none;
	}
  #top_about,
  #kodawari,
  #top_discharged {
    padding: 50px 0 60px;
  }
  #top_about::after {
    width: 120px;
  }
  #top_about .title_area {
    margin: 0 0 30px;
  }
  #top_about .title_area .small_text {
    font-size: 14px;
  }
  #top_about .text_ara p {
    margin-bottom: 0px;
    line-height: 2.4;
  }
  .btm30 {
    margin-bottom: 30px !important;
  }
  .top_a_con {
    width: 90%;
    margin: 500px auto 0;
    max-width: 100%;
  }
  .star_01 {
    top: -30px;
    right: auto;
    left: 50px;
  }
  .star_02 {
    top: 500px;
  }
  .star_03 {
    bottom: 100px;
    right: 20px;
  }
  #top_about .btn a,


  /* こだわり*/
  .nurse {
   display: none;
  }
  #kodawari .box {
    padding: 30px;
    width: 80%;
    margin: 0 auto 30px;
  }
  #kodawari .box {
    line-height: 2;
  }
  #kodawari .btn a {
    width: 200px;
    margin: 50px auto 0;
  }
  /* 退院されたお人形たち*/
  .star_big_w02 {
    width: 400px;
    top: 50px;
  }
  #ex06 .box h3 {
    font-size: 14px;
  }
  .dis_box {
    padding: 30px;
    width: 80%;
    margin: 0 auto 30px;
  }
  .dis_box h3 {
    font-size: 16px;
    margin: 0 0 25px;
    padding: 0 0 0 100px;
  }
  .dis_box h3::before {
    width: 84px;
    height: 95px;
    top: -42px;
    left: 0px;
    background-size: 84px 95px;
  }
  .dis_box li img {
    width: 40%;
    margin: 0 auto 10px;
    vertical-align: middle;
    display: block;
  }
  .dis_box li span {
    display: block;
    width: 100%;
    text-align: center;
  }
  #ex06 {
    width: 80%;
    margin: 00px auto 50px;
  }
  .cat {
    right: 0;
    top: -70px;
  }
  .guide_bk {
    background-image: url("images/top/top_guide_sp.jpg");
  }
  /* スターガイド*/
#top_guide .inner,.support{
	width: 100%;
		
}
  .flag02 {
    top: -50px;
    width: 100%;
  }
  #top_guide .btn {
    width: 100%;
  }
  #top_guide {
    padding: 0 0 340px;
  }

  #top_guide .box h2 {
    font-size: 18px;
    margin-bottom: 20px;
  }
  #top_guide .arrange {
    padding: 45px 30px;
    margin: -300px auto 0;
    width: 100%;
  }
  #top_guide .box p {
    text-align: left;
  }
  #top_guide .box .btn a,
  #top_guide .box .btn01 a,
	#top_guide .box .btn02 a {
    width: auto;
    font-size: 12px;
    margin: 0 auto 20px;
  }
  .dolls {
    width: 90%;
  }


}

/* ----------------------------------------------------------
.スタイダー
---------------------------------------------------------- */
@media print, screen and (min-width: 768px) {
  .campaign {
    width: 200px;
    height: auto;
    position: absolute;
    right: 10%;
    bottom: 30px;
  }

  ._leads .bold {
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 300;
  }

  ._leads .mintyou {
    font-size: 42px;
    font-weight: 600;
    letter-spacing: 0.1em;
  }

  .block-index-mv ._dots {
    position: absolute;
    right: 35px;
    bottom: 50px;
  }

  .block-index-mv ._dots ._item {
    display: block;
    width: 12px;
    height: 12px;
    background: #fff;
    border: 2px solid #e35c00;
    border-radius: 50%;
    margin: 20px 0;
    -webkit-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
  }

  .block-index-mv ._dots ._item.js-show {
    background: #e35c00;
  }

  .block-index-mv img {
    width: 100%;
  }

  .block-index-mv .block-inner-wide:after {
    content: "";
    display: block;
    padding-top: 40%;
  }

  .block-index-mv ._visuals {
    overflow: hidden;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
  }

  .block-index-mv ._visuals ._item {
    opacity: 0;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    -webkit-transition-duration: 2s;
    -o-transition-duration: 2s;
    transition-duration: 2s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
  }

  .block-index-mv ._visuals ._item ._item-inner {
    width: 100%;
    height: 100%;
    -webkit-transform-origin: 0.5 0.7;
    -ms-transform-origin: 0.5 0.7;
    transform-origin: 0.5 0.7;
    -webkit-transition-duration: 6s;
    -o-transition-duration: 6s;
    transition-duration: 6s;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear;
    background-position: center center;
    background-size: cover;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  .block-index-mv ._visuals ._item.js-show {
    opacity: 1;
  }

  .block-index-mv ._visuals ._item.js-zooming {
    width: 100%;
  }

  .block-index-mv ._visuals ._item.js-zooming ._item-inner {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }

  .block-index-mv ._visuals ._item-1 ._item-inner {
    background-image: url(images/mv.jpg);
  }

  .block-index-mv ._visuals ._item-2 ._item-inner {
    background-image: url(images/mv2.jpg);
  }

  .block-index-mv ._visuals ._item-3 ._item-inner {
    background-image: url(images/mv3.jpg);
  }

  .block-index-mv ._visuals ._item-4 ._item-inner {
    background-image: url(images/mv4.jpg);
  }

  .block-index-mv ._leads {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    height: 14em;
    font-size: 24px;
    width: 80%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-align: center;
  }

  .block-index-mv ._leads ._lead {
    opacity: 0;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    position: absolute;
    top: 50px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    line-height: 1.75;
    font-size: 24px;
    letter-spacing: 0.15em;
    text-shadow: 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 8px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff;
    text-orientation: upright;
  }

  .block-index-mv ._leads ._lead.js-show {
    opacity: 1;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
  }

  .block-index-mv ._leads ._lead span {
    display: block;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
  }

  .block-index-mv ._row-news {
    opacity: 0;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    position: absolute;
    right: 40px;
    bottom: 40px;
    background: #fff;
    border-radius: 30px;
    padding: 17px 17px 0 25px;
    height: 50px;
    width: 700px;
  }

  .block-index-mv ._row-news.js-show {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .block-index-mv ._row-news dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
  }

  .block-index-mv ._row-news dt {
    width: 4em;
    margin: 0;
  }

  .block-index-mv ._row-news dd {
    width: calc(100% - 5.5em);
    margin: 0;
  }

  .block-index-mv ._row-news ._item {
    display: none;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .block-index-mv ._row-news ._item ._date {
    color: #888;
    margin: 0 0.5em 0 0;
  }

  .block-index-mv ._row-news a:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 767px) {
  .campaign {
    width: 200px;
    right: 5%;
    bottom: 0px;
    position: absolute;
  }

  .block-index-mv ._dots {
    position: absolute;
    left: 50%;
    bottom: -8.66667vw;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    z-index: 1;
  }

  .block-index-mv ._dots ._item {
    display: inline-block;
    width: 2.66667vw;
    height: 2.66667vw;
    background: #fff;
    border: 0.26667vw solid #e35c00;
    border-radius: 50%;
    margin: 0 1.6vw;
    -webkit-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
  }

  .block-index-mv ._dots ._item.js-show {
    background: #e35c00;
  }

  .block-index-mv img {
    width: 100%;
  }

  .block-index-mv .block-inner-wide:after {
    content: "";
    display: block;
    padding-top: 120%;
  }

  .block-index-mv ._visuals {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .block-index-mv ._visuals ._item {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    -webkit-transition-duration: 2s;
    -o-transition-duration: 2s;
    transition-duration: 2s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
  }

  .block-index-mv ._visuals ._item ._item-inner {
    width: 100%;
    height: 100%;
    -webkit-transform-origin: 0.5 0.7;
    -ms-transform-origin: 0.5 0.7;
    transform-origin: 0.5 0.7;
    -webkit-transition-duration: 6s;
    -o-transition-duration: 6s;
    transition-duration: 6s;
    -webkit-transition-timing-function: linear;
    -o-transition-timing-function: linear;
    transition-timing-function: linear;
    background-position: center center;
    background-size: cover;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  .block-index-mv ._visuals ._item.js-show {
    opacity: 1;
  }

  .block-index-mv ._visuals ._item.js-zooming {
    width: 100%;
  }

  .block-index-mv ._visuals ._item.js-zooming ._item-inner {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }

  .block-index-mv ._visuals ._item-1 ._item-inner {
    background-image: url(images/sp_mv.jpg);
  }

  .block-index-mv ._visuals ._item-2 ._item-inner {
    background-image: url(images/sp_mv2.jpg);
  }

  .block-index-mv ._visuals ._item-3 ._item-inner {
    background-image: url(images/sp_mv3.jpg);
  }

  .block-index-mv ._visuals ._item-4 ._item-inner {
    background-image: url(images/sp_mv4.jpg);
  }

  .block-index-mv ._leads {
    position: absolute;
    top: 55%;
    left: 50%;
    font-size: 4.26667vw;
    -webkit-transform: translate(-50%, -60%);
    -ms-transform: translate(-50%, -60%);
    transform: translate(-50%, -60%);
    width: 100px;
  }

  @media screen and (max-width: 768px) {
    .block-index-mv ._leads {
      height: 350px;
    }
  }

  @media screen and (max-width: 640px) {
    .block-index-mv ._leads {
      height: 200px;
    }
  }

  .block-index-mv ._leads ._lead {
    position: absolute;
    top: 0px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    opacity: 0;
    line-height: 1.75;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    letter-spacing: 0.15em;
    text-shadow: 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 8px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff, 0 0 12px #fff;
    text-orientation: upright;
  }

  .block-index-mv ._leads ._lead.js-show {
    opacity: 1;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
  }

  .block-index-mv ._leads ._lead span {
    display: inline-block;
  }

  .block-index-mv ._row-news {
    opacity: 0;
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    position: absolute;
    left: 5.33333vw;
    right: 5.33333vw;
    bottom: 5.33333vw;
    background: #fff;
    border-radius: 2.66667vw;
    padding: 2.66667vw 2.66667vw 0 4vw;
    height: 18.66667vw;
    font-size: 3.2vw;
  }

  .block-index-mv ._row-news.js-show {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .block-index-mv ._row-news dl {
    display: block;
    margin: 0;
  }

  .block-index-mv ._row-news dt {
    display: block;
    margin: 0;
  }

  .block-index-mv ._row-news dd {
    margin: 1.33333vw 0 0 0;
  }

  .block-index-mv ._row-news ._item {
    line-height: 1.4;
    display: none;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .block-index-mv ._row-news ._item ._date {
    color: #888;
    display: block;
  }

  .block-index-mv ._row-news a:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 640px) {
  .campaign {
    width: 130px;
    right: 3%;
    bottom: 15px;
    transition-duration: 6s;
  }
}

/***********************************
お問い合わせ
************************************/

.tel_box {
  border: 3px solid #e15c00;
  padding: 40px 5% 30px;
  background-color: #ffffff;
  border-radius: 10px;
  width: 60%;
  margin: auto;
  position: relative;
}
legend {
  color: #ffffff;
  text-align: center;
  background-color: #e15c00;
  padding: 8px 30px;
  border-radius: 20px;
  font-size: 18px;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.tel_box ._sitemenu .tel {
  font-size: 32px;
  font-weight: 600;
  color: #371e0a;
  margin-bottom: 10px;
}
._sitemenu .tel::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(common/images/icon_tel.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin: 0 10px 0 0;
}
.tel_box .day_time {
  font-size: 14px;
}
.big {
  font-weight: bold;
  margin: 30px 0 0;
  font-size: 16px;
}
.privacy {
  width: 300px;
  padding: 15px 25px;
  border: 3px solid #e15c00;
  background-color: #ffffff;
  border-radius: 10px;
  font-weight: bold;
  letter-spacing: 0;
}

.con-box {
  padding: 10px 0;
  border: 1px solid #1e89c8;
  border-radius: 3px;
  width: 70%;
  text-align: center;
  margin: 0 auto 50px;
}

.wpcf7-form-control-wrap .last,
.wpcf7-list-item {
}

#mailformpro {
  font-size: 13px;
  margin-top: 30px;
}

#mailformpro table tr td {
  padding: 15px;
}

#mailformpro table tr td p {
}

.size {
  font-size: 13px;
  line-height: 1.5em;
  margin-top: 5px;
}

.font13 {
  font-size: 13px;
  line-height: 1.5em;
}

.top10 {
  margin-top: 10px;
}

.info-box span {
  margin: 0 2px;
}

.wpcf7-form {
}
.table-box01 {
  display: table;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 0;
  text-align: left;
}
.table-box02 {
  display: table;
  width: 100%;
  box-sizing: border-box;
}

.table-box02-last {
  border-bottom: none !important;
}

.table-box02-l {
  font-size: 14px;
  width: 40%;
  padding: 15px;
  line-height: 1.8;
  vertical-align: top;
  box-sizing: border-box;
  display: table-cell;
  font-weight: bold;
  text-align: left;
}

.table-box02-r {
  width: 60%;
  display: table-cell;
  text-align: left;
  padding: 15px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.8;
  font-weight: normal;
}
.inner10 .table-box02-l {
  width: 60%;
}
.inner10 .table-box02-r {
  width: 40%;
}

.kibou .wpcf7-list-item {
}

.wpcf7-list-item {
  margin: 0 10px 0 0;
  white-space: nowrap;
}

.wpcf7-form input[type="text"],
input[type="text01"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="url"],
.wpcf7 textarea,
textarea.form-control,
.wp-editor-container {
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  padding: 10px 10px 15px 10px;
  margin: 2px 0;
  box-sizing: border-box;
  border: 1px solid #ddd;
  color: #333;
  font-size: 14px;
  line-height: 1.6em;
  background-color: #ffffff;
  border-radius: 5px;
}

.text02 {
  width: 100%;
}

.text05 {
  width: 40%;
}

.wi20 {
  width: 20% !important;
}

span.wpcf7-list-item {
  display: block !important;
  margin: 0 !important;
  line-height: 2;
}

.checkbox-l select {
  font-size: 20px;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  padding: 4px 10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  box-sizing: border-box;
  width: 70% !important;
  border: 1px solid #999 !important;
  background: #fff !important;
}

input[type="date"],
select {
  font-size: 15px !important;
  -webkit-box-shadow: none;
  box-shadow: none;
  outline: none;
  padding: 6px 10px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  margin: 10px 0;
  border: 1px solid #999 !important;
  background: #fff !important;
  box-sizing: border-box;
}

.wpcf7 {
  margin: auto;
}

.contact-title {
  position: absolute;
  top: 0px;
  left: 10px;
}

.c_date {
  display: table;
}

.c_date div {
  display: table-cell;
  padding: 10px;
}

.must {
  font-size: 9px;
  color: #fff;
  margin-left: 3px;
  font-weight: normal;
  background-color: #ec5b82;
  display: inline-block;
  line-height: 2;
  padding: 0px 5px;
  border-radius: 3px;
}

.submitbtn input {
  width: 110px;
  border: none;
  padding: 10px 10px;
}

.submitbtn input[type="submit"] {
  display: block;
  padding: 15px 20px;
  width: 200px;
  margin: 50px auto 0;
  text-align: center;
  color: #fff;
  border: none;
  background-color: #000000;
  font-size: 15px;
  font-weight: bold;
  border-radius: 13.33333vw;
}
.submitbtn input[type="button"] {
  display: block;
  padding: 15px 20px;
  width: 200px;
  margin: 0px auto 0;
  text-align: center;
  color: #fff;
  border: none;
  background-color: #000000;
  font-size: 15px;
  font-weight: bold;
  border-radius: 13.33333vw;
}

.submitbtn input[type="submit"]:hover {
  color: #fff;
  opacity: 0.8;
  -webkit-transition: 0.8s;
  transition: 0.8s;
}
.wpcf7-not-valid-tip {
  font-size: 11px !important;
  animation: flash 1s linear infinite;
}
@keyframes flash {
  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }
}

.checkbtm {
  border-bottom: 1px solid #c9c9c9;
  margin: 0 0 15px 0;
  padding: 15px 0;
  font-weight: bold;
}

.failure {
  text-align: left;
  margin: 40px 0;
}

/*===============================================
●タブレット.css 画面の横幅が768pxまで
===============================================*/
@media screen and (max-width: 768px) {
  .tel_box {
    width: 70%;
  }

  input[type="text"],
  input[type="text01"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input[type="url"],
  textarea,
  textarea.form-control,
  .wp-editor-container {
  }

  .left-30 {
    margin-left: 0px !important;
  }

  .wi20 {
    width: 35% !important;
  }

  .table-box02-l {
  }

  .wpcf7 {
    width: 100%;
    max-width: 100%;
  }

  .submitbtn input {
    width: 65%;
    border: none;
    padding: 10px 10px;
    min-height: 20px;
  }

  input[name="f_am"] {
    font-size: 10.8px;
  }

  .db {
    display: block;
  }

  input[type="button"],
  input[type="submit"] {
    -webkit-appearance: none;
  }

  .table-box02-l {
    width: 100%;
    padding: 10px 10px 0;
    border: none;
    vertical-align: middle;
    box-sizing: border-box;
    line-height: 1.6em;
    display: block;
  }
  .table-box02-r,
  .inner10 .table-box02-r {
    width: 100%;
    text-align: left;
    padding: 10px;
    border: none;
    display: block;
    font-size: 13px;
  }
}

/*===============================================
●smart.css  画面の横幅が640pxまで
===============================================*/
@media screen and (max-width: 640px) {
  .wpcf7-form input[type="text"],
  input[type="text01"],
  input[type="tel"],
  input[type="email"],
  input[type="password"],
  input[type="url"],
  .wpcf7 textarea,
  textarea.form-control,
  .wp-editor-container {
    padding: 10px 5% 15px 5%;
    width: 100%;
  }
  .tel_box {
    padding: 40px 3% 30px;
    width: 90%;
  }
  .tel_box .day_time {
    line-height: 2;
  }
  .big {
    margin: 20px 0 0;
  }
  .bordertop {
    border-top: 1px solid #c9c9c9;
  }

  .inner10 .table-box02 {
    padding: 0 0 20px 0;
  }
  .inner10 .table-box02-l {
    width: 100%;
  }
  .inner10 .table-box02-l {
    padding: 15px 10px 0;
  }
  .table-box02 {
    border-bottom: 1px solid #e6e6e6;
    display: block;
  }
  .inner10 .table-box02-l {
    padding: 15px 10px 0;
  }

  .kibou .wpcf7-list-item {
    display: table !important;
  }

  .wpcf7-form-control {
  }

  span.wpcf7-list-item {
    margin: 0;
  }
.wpcf7-list-item {
  white-space: normal;
}

  .wpcf7-form-control-wrap label {
    display: flex;
  }
  .wpcf7-list-item input {
  }

  .wpcf7-list-item-label {
    padding-left: 5px;
  }

  .c_date {
    display: block;
  }

  .c_date div {
    padding: 5px 0 15px 10px;
  }

  input[type="date"],
  select {
    padding: 10px 15px;
    font-size: 16px;
  }

  /*
.wpcf7-form-control{
	display: block;
	}	*/

  .checkbtm {
    margin: 0 0 15px 0;
    padding: 0 0 15px 0;
    font-weight: bold;
  }

  .text05 {
    width: 50%;
    margin-bottom: 5px;
    display: inline !important;
  }

  /* コンタクフォーム*/
  .con-box {
    width: 90%;
    text-align: center;
    margin: 0 auto 30px;
    padding: 10px 4%;
  }

  input[type="button"],
  input[type="submit"] {
    -webkit-appearance: none;
  }
}

/* ----------------------------------------------------------
.スタイダー
---------------------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
  margin: 0 15px;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
  text-align: center;
}

.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;

  height: auto;

  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  font-weight: normal;
  font-style: normal;

  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
}
/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;

  position: absolute;
  top: 50%;

  display: block;

  width: 20px;
  height: 70px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);

  cursor: pointer;

  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
  color: #000000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -60px;
}
[dir="rtl"] .slick-prev {
  right: -25px;
  left: auto;
}
.slick-prev:before {
  content: url(images/top/icon_a_left.png);
  width: 15px;
  height: 15px;
  display: inline-block;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}
[dir="rtl"] .slick-prev:before {
  content: url(images/top/icon_a_left.png);
  width: 15px;
  height: 15px;
  display: inline-block;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

.slick-next {
  right: -25px;
}
[dir="rtl"] .slick-next {
  right: auto;
  left: -25px;
}
.slick-next:before {
  content: url(images/top/icon_a_right.png);
  width: 15px;
  height: 15px;
  display: inline-block;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

[dir="rtl"] .slick-next:before {
  content: url(images/top/icon_a_left.png);
  width: 15px;
  height: 15px;
  display: inline-block;
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;

  cursor: pointer;
}
.slick-dots li button {
  font-size: 0;
  line-height: 0;

  display: block;

  width: 20px;
  height: 20px;
  padding: 5px;

  cursor: pointer;

  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;

  position: absolute;
  top: 0;
  left: 0;

  width: 20px;
  height: 20px;

  content: "•";
  text-align: center;

  opacity: 0.25;
  color: black;

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: black;
}

@media screen and (max-width: 640px) {
  .slick-next {
    right: -25px;
  }
  .slick-prev {
    left: -40px;
  }
  .slick-next::before,
  .slick-prev::before {
    -webkit-transform: scale(0.3);
    transform: scale(0.3);
  }
  .slick-prev,
  .slick-next {
    height: 50px;
  }
}

@media only screen and (max-width: 1099px) {
  .youtube-container {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .youtube-container iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
  }
}

/*2023年モーダルウィンド*/
.layer_board_bg,
.layer_board {
  position: absolute;
}
.layer_board_bg {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
  display: none;
  cursor: pointer;
  background: #000;
}
.layer_board {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;

  z-index: 2000;
  padding: 50px;
}
.layer_board h2 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 20px;
  text-align: center;
  line-height: 1.8;
}
.layer_board p {
  margin-bottom: 50px;
  text-align: left;
  line-height: 2;
}
.btn_close {
  display: block;
  text-decoration: none;
  background: #000;
  color: #fff;
  text-align: center;
  padding: 20px 40px;
  margin: 0 auto;
  width: 200px;
}
.waku01 {
  border: 2px solid #f15b82;
  padding: 5px !important;
  border-radius: 3px;
}
._sitemenu .waku01 a {
  padding: 3px !important;
}

/* treatment plansここから */
.treatment-plans {
  padding-bottom: 360px;
  padding-top: 113px;
  color: #231815;
  position: relative;
}

/* テーブルここから */
.treatment-plans .plan-table {
  max-width: 900px;
  margin-inline: auto;
  border-spacing: 5px 0;
  border-collapse: separate;
  padding-bottom: 75px;
}

.treatment-plans .plan-date__illust {
  position: absolute;
  top: 57px;
  display: flex;
  right: calc(50% + min(16.0833333333vw, 193px));
}

.treatment-plans .plan-date__illust01 {
  width: 150px;
}

.treatment-plans .plan-date__illust02 {
  width: 112px;
}

.treatment-plans .plan-date__illust02 img {
  position: relative;
  right: 29px;
  bottom: 24px;
}

.treatment-plans .plan-table thead th {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  font-size: 16px;
  border-bottom: 0;
  padding: 2em 0;
  text-align: center;
  line-height: 1.1875;
}

.treatment-plans .plan-table thead:after {
  content: "";
  height: 1px;
  width: 100%;
  padding: 2px 0;
  display: block;
}

.treatment-plans .plan-table thead th:nth-child(2) {
  background: rgba(247, 238, 46, 0.5);
}

.treatment-plans .plan-table thead th:nth-child(3) {
  background: rgba(51, 177, 218, 0.5);
}

.treatment-plans .plan-table thead th:nth-child(4) {
  background: rgba(255, 216, 222, 0.5);
}

.treatment-plans .plan-table tbody tr {
  height: 60px;
}

.treatment-plans .plan-table tbody th,
.treatment-plans .plan-table tbody td {
  vertical-align: middle;
  font-size: 14px;
  letter-spacing: 0.009em;
  line-height: 1.1428571429;
}

.treatment-plans .plan-table tbody th {
  background: rgba(224, 224, 224, 0.3);
}

.treatment-plans .plan-table tbody th span {
  display: block;
  margin-top: 3px;
}

.treatment-plans .plan-table {
  width: 100%;
  table-layout: fixed;
}

.treatment-plans .plan-table th {
  border-bottom: 1px solid #e0e0e0;
  text-align: left;
  padding-left: 0.9285714286em;
}

.treatment-plans .plan-table td {
  border-bottom: 1px solid #e0e0e0;
  text-align: center;
}

.treatment-plans .plan-table tbody td:not(:last-child) {
  border-right: 1px solid #e0e0e0;
}

.treatment-plans .plan-table .fz-1 {
  font-size: 22px;
}

.treatment-plans .plan-table .fz-3 {
  font-size: 16px;
}

.treatment-plans .plan-table .fz-2 {
  font-size: 12px;
}
/* テーブルここまで */

/* 治療の違い解説 */
.treatment-plans .compare {
  background: linear-gradient(90deg, #33b1da99 0%, #33b1da99 50%, #ffd8de99 50%, #ffd8de99 100%);
  padding-top: 100px;
  padding-bottom: 75px;
  margin-top: 130px;
  position: relative;
}

.treatment-plans .compare .compare__illust01 {
  position: absolute;
  top: -124px;
  left: calc(50% - 111px);
  transform: translateX(-50%);
  width: 200px;
  height: 200px;
}

.treatment-plans .compare .compare__illust02 {
  position: absolute;
  display: flex;
  top: -123px;
  right: -123px;
}

.treatment-plans .compare .compare__illust02 figure:first-child {
  width: 82px;
}

.treatment-plans .compare .compare__illust02 figure:last-child {
  width: 120px;
}
.treatment-plans .compare .compare__illust02 figure:last-child img {
  position: relative;
  top: -26px;
  right: -11px;
}

.treatment-plans .compare .compare__head {
  font-size: 34px;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.009em;
}

.treatment-plans .compare .compare__head span {
  background: linear-gradient(transparent 60%, #f7ee2e 60%);
}

.treatment-plans .compare .compare__head .fz-1 {
  font-size: 25px;
}

.treatment-plans .compare-plan__top {
  width: 83%;
  margin: auto;
}

.treatment-plans .compare .compare-plan__title {
  font-size: clamp(1.125rem, 1.8333333333vw, 1.375rem);
  line-height: 1.1818181818;
  color: #fff;
  max-width: 382px;
  border-radius: 35px;
  text-align: center;
  padding: 1em;
  border: 3px solid;
  box-shadow: 2px 2px 2px 0 rgba(211, 211, 211, 0.75);
}

.treatment-plans .compare .compare-plan__read {
  font-size: 12px;
  color: #000;
  line-height: 1.6666666667;
  text-align: center;
  margin-top: 0.8333333333em;
}

.treatment-plans .compare-plan.--generic .compare-plan__title {
  background-color: #33b1da;
  border-color: #33b1da;
}

.treatment-plans .compare-plan.--order .compare-plan__title {
  background-color: #ea5b80;
  border-color: #ea5b80;
}

.treatment-plans .compare-plan-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 100px;
  margin-top: 70px;
  margin-bottom: 90px;
}

.treatment-plans .compare-plan {
  width: 47%;
  display: flex;
  flex-direction: column;
}

.treatment-plans .compare-plan .compare-plan__image {
  margin-top: 60px;
}

.treatment-plans .compare-flow {
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 20px;
  padding: 25px 25px;
  margin-top: 55px;
  height: 100%;
}

.treatment-plans .compare-flow li:not(:last-child) {
  border-bottom: 1px dashed #231815;
}

.treatment-plans .compare-flow li {
  padding-top: 20px;
  padding-bottom: 30px;
  position: relative;
}

.treatment-plans .compare-flow .compare-flow__title {
  font-size: 16px;
  display: flex;
  align-items: center;
  padding-bottom: 0.625em;
}

.treatment-plans .compare-flow .compare-flow__title span {
  border-radius: 50%;
  font-size: 15px;
  background-color: #000;
  color: #fff;
  width: 30px;
  height: 30px;
  display: inline-block;
  display: grid;
  place-items: center;
  margin-right: 0.6666666667em;
}

.treatment-plans .compare-flow figcaption,
.treatment-plans .compare-flow p {
  font-size: 14px;
  letter-spacing: 0.009em;
  line-height: 1.6428571429;
  margin-bottom: 1.0714285714em;
}

.treatment-plans .compare .compare__btn {
  max-width: 355px;
  width: 90%;
  margin: 25px auto 0;
}

.treatment-plans .compare .compare__btn a {
  font-size: 16px;
}
/* 治療の違い解説ここまで */

.plan-list {
  display: flex;
  justify-content: space-between;
  margin-top: 110px;
  flex-wrap: wrap;
}

.plan-list .plan-list__item {
  
  width: calc((100% - 30px) / 3);
  text-align: center;
  position: relative;
  display: flex;
  flex-direction: column;
}

.plan-list .plan-list__link {
  padding: 55px 0 20px;
  display: flex;
  border-radius: 20px;
  flex-direction: column;
  cursor: pointer;
  height: 100%;
  overflow: hidden;
  box-shadow: 2px 2px 2px 0 rgba(206, 206, 206, 0.75);
  border: solid 1px #f1f1f1;
  transition: border-color 0.3s, box-shadow 0.3s, -webkit-box-shadow 0.3s;
	background-color: #fff;
}

.plan-list .plan-list__link:hover {
  border-color: transparent;
  -webkit-box-shadow: 0 20px 25px rgba(206, 206, 206, 0.75);
  box-shadow: 0 20px 25px rgba(206, 206, 206, 0.75);
}

.plan-list .plan-list__nbr {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 90px;
  position: absolute;
  top: -57px;
  left: 50%;
  transform: translateX(-50%);
}

.plan-list .plan-list__item.--repair .plan-list__link {
  padding-bottom: 44px;
	background-color: #fff;
}

.plan-list .plan-list__item.--repair .plan-list__nbr {
  color: #f9ca2e;

}
.plan-list .plan-list__item.--generic .plan-list__nbr {
  color: #33b1da;

}
.plan-list .plan-list__item.--order .plan-list__nbr {
  color: #f15b82;

}

.plan-list .plan-list__copy {
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2.4285714286;
}

.plan-list .plan-list__title {
  font-size: 24px;
  letter-spacing: 0.1em;
  line-height: 1.6666666667;
  width: fit-content;
  margin: 0 auto 20px;
}

.plan-list .plan-list__item.--repair .plan-list__title {
  background: linear-gradient(transparent 60%, rgba(247, 238, 46, 0.5) 60%);
}
.plan-list .plan-list__item.--generic .plan-list__title {
  background: linear-gradient(transparent 60%, rgba(51, 177, 218, 0.2) 60%);
}
.plan-list .plan-list__item.--order .plan-list__title {
  background: linear-gradient(transparent 60%, rgba(255, 216, 222, 0.3) 60%);
}

.plan-list .plan-list__subttl {
  color: #fff;
  font-size: 10px;
  border-radius: 100vmax;
  width: fit-content;
  margin-inline: auto;
  line-height: 1.5;
  padding: 4px 10px;
}

.plan-list .plan-list__item.--order .plan-list__subttl,
.plan-list .plan-list__item.--generic .plan-list__subttl {
  letter-spacing: -0.09em;
}

.plan-list .plan-list__item.--repair .plan-list__subttl {
  background-color: #f9ca2e;
}
.plan-list .plan-list__item.--generic .plan-list__subttl {
  background-color: #33b1da;
}
.plan-list .plan-list__item.--order .plan-list__subttl {
  background-color: #f15b82;
}

.plan-list dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: 0 clamp(5px, (20 /1280) * 100vw, 20px);
}

.plan-list dl > * {
  width: 48%;
}

.plan-list dt {
  font-size: 11px;
  text-align: right;
}

.plan-list dd {
  font-size: clamp(0.625rem, 1.25vw, 1rem);
  letter-spacing: 0.1em;
  white-space: nowrap;
  line-height: 1.75;
  font-weight: 600;
  font-family: "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}
.plan-list .plan-list__image {
  width: 70%;
  margin: 24px auto 12px;
}

.plan-list dd span {
  font-size: clamp(0.625rem, 0.9375vw, 0.75rem);
  letter-spacing: 0.1em;
}

.plan-list .plan-list__item.--repair dl {
  justify-content: center;
}

.plan-list .plan-list__item.--repair dt {
  margin: 0;
}

.plan-list .plan-list__item.--order dl,
.plan-list .plan-list__item.--generic dl {
  margin-top: 10px;
}

.plan-list__btn {
  margin-top: auto;
}

.plan-list__btn a {
  font-size: 14px;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.1em;
  width: 174px;
  background-color: #231815;
  display: block;
  padding: 10px 0;
  line-height: 1.7142857143;
  border-radius: 100vmax;
  margin-inline: auto;
  font-family: "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
}

.plan-list .plan-list__note {
  font-size: 10px;
  margin-top: 15px;
  color: #727171;
  letter-spacing: 0.05em;
}

/* instagram */
.instagram {
  border-radius: 20px;
  border: solid 5px #fff;
  background-color: #f15b82;
  max-width: 550px;
  margin: 0px auto 180px;
  position: relative;
  width: 90%;
	position: absolute;
	top: -300px;
	  left: 0;
  right: 0;
  margin:0 auto;
	
}
.instagram img{
	width: 100%;
max-width: 100%;
height: auto;
}
.instagram a {
  display: block;
  padding: 19px 30px 3px;
  color: #fff;
}

.instagram .instagram__illust {
  position: absolute;
  right: -33px;
  bottom: -11px;
  transform: scale(-1, 1);
  width: 235px;
}

.instagram .instagram__textWrap {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.instagram .instagram__logo {
  width: clamp(110px, 12.25vw, 147px);
  margin-left: 15px;
}

.instagram p,
.instagram .instagram__head {
  font-size: 13px;
  letter-spacing: 0.075em;
  line-height: 1.6153846154;
}
.instagram .instagram__btmWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 75%;
}
.instagram .instagram__icon {
  width: clamp(30px, 3.3333333333vw, 40px);
  position: relative;
  bottom: 12px;
  flex-shrink: 0;
}

.instagram .instagram__body {
  width: 60%;
}
/* instagramここまで */

.br-sp {
  display: none;
}

.br-tb {
  display: none;
}

/* アニメーションポップアップ */
.popup {
  -webkit-transform: scale(0) translate3d(0, 12rem, 0) rotate(0.00001deg);
  transform: scale(0) translate3d(0, 12rem, 0) rotate(0.00001deg);
  transition: 750ms cubic-bezier(0.075, 0.82, 0.165, 1);
  transition-delay: 0.3s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}

.fadeUpTrigger.fadeUp .popup {
  transform: scale(1) translate3d(0, 0, 0) rotate(0.00001deg);
}

/* アニメーションゆらゆら */
.anima-yurayura {
  -webkit-animation: rotateAnim 8s linear infinite;
  animation: rotateAnim 8s linear infinite;
}

@-webkit-keyframes rotateAnim {
  0%,
  50%,
  100% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(10deg);
  }
  75% {
    transform: rotate(-10deg);
  }
}

@keyframes rotateAnim {
  0%,
  50%,
  100% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(10deg);
  }
  75% {
    transform: rotate(-10deg);
  }
}

@media screen and (max-width: 768px) {
  .treatment-plans .plan-table {
    padding-bottom: 30px;
  }

  .treatment-plans .plan-table thead th {
    font-size: 12px;
  }

  .treatment-plans .plan-table thead th:first-child {
    width: clamp(120px, (195 /767) * 100vw, 195px);
  }

  .treatment-plans .plan-table tbody th,
  .treatment-plans .plan-table tbody td {
    font-size: 12px;
  }

  .treatment-plans .plan-table .fz-1 {
    font-size: 15px;
  }

  .treatment-plans .plan-table .fz-2 {
    font-size: 10px;
  }

  .treatment-plans .plan-date__illust01 {
    width: 125px;
  }

  .treatment-plans .plan-date__illust02 {
    width: 93px;
  }

  .treatment-plans .plan-date__illust {
    top: 62px;
  }

  .treatment-plans .compare {
    padding-top: 90px;
    padding-bottom: 153px;
    margin-top: 96px;
  }

  .treatment-plans .compare .compare__head {
    font-size: 26px;
    line-height: 1.8;
  }

  .treatment-plans .compare .compare__head .fz-1 {
    font-size: 18px;
  }

  .treatment-plans .compare .compare-plan__title {
    font-size: 16px;
  }

  .treatment-plans .compare-plan-row {
    margin-top: 55px;
  }

  .treatment-plans .compare-plan__top {
    width: 88%;
  }

  .treatment-plans .compare .compare-plan__read {
    font-size: 11px;
  }

  .treatment-plans .compare-plan .compare-plan__image {
    margin-top: 30px;
  }

  .treatment-plans .compare-flow figcaption,
  .treatment-plans .compare-flow p {
    font-size: 13px;
  }

  .treatment-plans .compare-flow {
    padding: 10px 20px;
  }

  .treatment-plans .compare-flow li {
    padding-top: 15px;
    padding-bottom: 20px;
  }

  .treatment-plans .compare-flow .compare-flow__title span {
    font-size: 10px;
    width: 20px;
    height: 20px;
  }

  .treatment-plans .compare .compare__btn a {
    font-size: 13px;
  }

  .treatment-plans .compare .compare__illust01 {
    width: 125px;
    top: -62px;
    left: calc(50% - 71px);
  }

  .treatment-plans .compare-plan-row {
    margin-bottom: 40px;
    row-gap: 50px;
  }

  .treatment-plans .compare .compare__illust02 {
    top: -10.6666666667vw;
  }

  .treatment-plans .compare .compare__illust02 figure:first-child {
    width: clamp(46px, 8vw, 60px);
  }

  .treatment-plans .compare .compare__illust02 figure:last-child {
    width: clamp(83px, 14.2666666667vw, 107px);
  }

.plan-list {
    justify-content: center;
    gap: 55px 10px;
    margin-top: 60px;
  }

.plan-list .plan-list__item {
    width: 48%;
  }

.plan-list dd {
    font-size: 16px;
  }

.plan-list dd span {
    font-size: 12px;
  }

.instagram {
   
  }

  .br-tb {
    display: block;
  }
}

@media screen and (max-width: 640px) {
  .treatment-plans {
    padding-top: 40px;
  }

  .treatment-plans .compare {
    padding-top: 60px;
  }

  .treatment-plans .plan-table tbody th {
    font-size: 10px;
  }

  .treatment-plans .plan-table thead th span {
    display: none;
  }

  .treatment-plans .plan-table .fz-1,
  .treatment-plans .plan-table .fz-3 {
    font-size: 12px;
  }

  .treatment-plans .plan-table tbody tr {
    height: 50px;
  }

  .treatment-plans .plan-date__illust {
    display: none;
  }

  .treatment-plans .compare {
    padding-top: 55px;
    padding-bottom: 60px;
  }

  .br-sp {
    display: block;
  }

  .treatment-plans .compare-plan-row {
    flex-direction: column;
    row-gap: 40px;
  }

  .treatment-plans .compare-plan {
    width: 100%;
  }

  .treatment-plans .compare .compare__head {
    font-size: 24px;
    line-height: 1.5;
  }

  .treatment-plans .compare .compare__head .fz-1 {
    font-size: 16px;
  }

  .treatment-plans .compare-plan-row {
    margin-top: 37px;
  }

  .treatment-plans .compare .inner {
    width: calc(100% - 30px);
  }

  .treatment-plans .compare .compare__illust02 {
    left: calc(50% + 44px);
    top: -45px;
  }

  .treatment-plans .compare .compare__illust02 figure:last-child img {
    top: -44px;
    right: 0;
  }

  .treatment-plans .compare .compare__illust01 {
    top: -85px;
  }

.plan-list {
    row-gap: 45px;
	margin-top: 30px
  }

.plan-list .plan-list__item {
    width: 100%;
    padding: 27px 5px 0px;
  }

.plan-list .plan-list__nbr {
    font-size: 72px;
    top: -28px;
  }

.plan-list .plan-list__copy {
    font-size: 13px;
  }

.plan-list dt {
    text-align: left;
  }

.plan-list dl {
    max-width: 277px;
    margin-inline: auto;
    width: 100%;
  }

.plan-list dd {
    font-size: 13px;
  }

.plan-list__item.--generic dl,
.plan-list__item.--order dl {
    justify-content: flex-start;
  }
.plan-list__item.--generic dt:nth-child(1),
.plan-list__item.--order dt:nth-child(1) {
    width: 7em;
  }
.plan-list__item.--generic dt:nth-child(3),
.plan-list__item.--order dt:nth-child(3) {
    width: 13em;
  }

.plan-list__btn a {
    font-size: 13px;
  }

  .instagram {
   
  }

  .instagram a {
    padding: 20px 15px 17px;
  }

  .instagram .instagram__illust {
    width: 165px;
    bottom: -8px;
  }

  .instagram .instagram__icon {
    position: static;
  }

  .instagram .instagram__textWrap {
    margin-bottom: 24px;
  }

  .instagram .instagram__btmWrap {
    margin-top: 12px;
  }

  .instagram .instagram__logo {
    margin-left: 7px;
  }

  .instagram .instagram__body {
    width: 75%;
  }
}

@media screen and (max-width: 320px) {
  .treatment-plans .plan-table thead th:first-child {
    width: 100px;
  }

  .treatment-plans .compare .compare__btn {
    width: 100%;
  }
}

.grecaptcha-badge{
margin-bottom: 100px !important;
}
/* モーダルの背景 */
.modal {
  display: none; /* 最初は非表示 */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  justify-content: center;
  align-items: center;
  z-index: 9999;
}
/* モーダルの中身 */
.modal__content_top {
  max-width: 800px;
  width: 90%;
  position: relative;
  animation: fadeIn 0.5s ease;
}
/* 閉じるボタン */
.modal__close_top {
  position: absolute;
top: -45px;
  right: 0px;
  margin:0 auto;
  border: none;
  font-size: 24px;
  cursor: pointer;
  background-color: #f15b82;
  padding: 10px 18px 12px;
  color: #fff;
  line-height: 1;
}
/* フワッと出るアニメーション */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-20px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media screen and (max-width: 796px) {
.modal {
  background: rgba(0,0,0,0.8);
}
}
.important-notice{
	padding: 30px;
	border: 3px solid #f15b82;
	background-color: #FFFFFF;
}
.important-notice h2{
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 20px;
	color: #f15b82;
	text-align: center;
	
}
.important-notice .text_ara{
	line-height: 2;
	font-size: 16px;
	margin-bottom: 30px;
}
.important-notice .btn01{
	text-align: center;
	max-width: 320px;
	margin: auto;
}