@charset "utf-8";
/* CSS Document */
/*★★★★★★★★テンプレート[始]★★★★★★★★*/

/*===============================================
	reset
===============================================*/
*{margin:0; padding:0; color:#000;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
} 
h1,h2,h3,h4,h5,h6,p,address,
ul,ol,li,dl,dt,dd,
table,caption,th,td,img,form{margin:0; padding:0; border:none; font-style:normal; font-weight:normal; font-size:100%; text-align:left;}
textarea{font-size:100%;}
img{vertical-align:bottom;}
li{list-style:none;}
/*===============================================
	a,text
===============================================*/
a:hover{text-decoration:underline;}
a{text-decoration:none; color:#1800ff;}
/*=============================================== 
	base
===============================================*/
html,body{height:100%;}
/*===============================================
	font
===============================================*/
body{font-family: 'Noto Sans JP', sans-serif;}
input,textarea,select{font-family: 'Noto Sans JP', sans-serif; font-size:12px;}
/* for IE6 */
* html body{font-family: 'Noto Sans JP', sans-serif;}
* html input, * html textarea{font-family: 'Noto Sans JP', sans-serif;}
h1,h2,h3,h4{font-family: 'Noto Sans JP', sans-serif; font-weight: bold; }
.mincho{font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;}
/*===============================================
	align
===============================================*/
.center{text-align:center !important; margin: 0 auto !important;}
.textleft{text-align:left !important;}
.textright{text-align:right !important;}

/*===============================================
	他span
===============================================*/
.underL{text-decoration:underline !important;}
.displayN{display:none !important;}
.bold{font-weight:bold !important;}

/*===============================================
	cFix
===============================================*/
/*Opera Fix*/
body:before{content:""; height:100%; float:left; width:0; margin-top:-32767px;}
/*cFix*/
.cFix:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
* html .cFix {height:1%;}
.cFix {display:block;}

/*===============================================
	共通部分
===============================================*/
#wrap{width: 100%;}
/* img mouse hover */
a:hover img {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.sp{display:none;}
.pc{display: inline;}
p{line-height: 2rem;}
.mb20{margin-bottom: 20px !important;}
.mt80{margin-top: 80px !important;}
.under_red{text-decoration: underline; text-decoration-color: red; text-decoration-style: double; }
.lineball{margin: 0 auto 50px; display: block; text-align: center; height: 15px;}
.lineball img{margin: 0 auto; display: block; text-align: center; height: 15px;}
@media screen and (max-width:640px) {
	.lineball{margin: 0 auto 50px; display: block; text-align: center; height: 10px;}
	.lineball img{margin: 0 auto; display: block; text-align: center; height: 10px;}
}
.dots { -webkit-text-emphasis: filled; text-emphasis: filled;}

@media screen and (max-width:640px) {
	#wrap{width: 100%;}
	p{font-size: 0.9rem; line-height: 1.8rem;}
	.sp{display:inline;}
	.pc{display:none !important;}

}

	
/*===============================================
	個別
===============================================*/

/*ヘッダー*/
header{width: 100%; margin:0 auto 5px; padding: 0 20px;}
.head__logo{float: left; padding-top: 15px; width: 40%;}
.head__logo h1{width: 400px; float: left;}
.head__logo h1 img{width: 100%; display: inline-block;}
.head__navi{float: right; width: 500px; padding-top: 10px;}
.head__navi li{float: left; margin: 10px 0 0 10px;}
.head__navi li img{width: 100%;}
@media screen and (max-width:640px) {
	header{width: 100% ; margin-bottom: 0; padding: 0 0 0 3%; }
	.head__logo{float: left; padding: 0; width: 55%; margin: 0 auto; display: block; text-align: center;}
	.head__logo h1{width: 100%; padding-top: 10px;}
	.head__logo img {width: 100%; margin: 0 auto; text-align: center; display: block;}
	.head__navi{float: right; width: 40%; padding: 0 0 10px;}
	.head__navi li{float: left; margin: 10px 0 0 2.5%; width: 30%;}
	.head__navi li img{width: 100%;}
}


/*FV*/
#main{ background: url(../img/mainBG.png) no-repeat right top; height: 700px; background-size: cover;}
#main .in{position: relative; margin: 0 auto; width: 1000px;}
#main .main_tx{text-align: center; max-width: 1000px; width: 1000px; position: relative; height: 700px; margin: 0 auto; display: block; bottom: 0;}
#main .main_tx img{ position: absolute; bottom: 50px; left: 0; width: 100%;}
@media screen and (max-width:640px) {
	#main{background: url(../img/mainSP.png) center top no-repeat; height: 152vw; padding: 0; background-size: contain; position: relative;}
	#main .in{position: relative; margin: 0 auto; width: 100%; height: 100%;}
	#main .main_tx{display: none;}
	#main .main_tx img{display: none;}
}


.cta{width: 100%; padding: 30px 0 0; background: #fff; background: url(../img/ctaBG.png);}
.cta h2{text-align: center; color: #fff; font-size: 1.5rem;}
.cta .in{width: 1000px; height: 170px; margin: 0 auto; position: relative; padding: 0 50px;}
.cta .tel{ width:320px; margin: 0 auto; position: absolute; left: 0; top: 50px;}
.cta .line{ width:320px; margin: 0 auto; position: absolute; left: 340px; top: 50px;}
.cta .mail{ width:320px; margin: 0 auto; position: absolute; right: 0; top: 50px;}
.cta .mobile{ width:494px; margin: 0 auto; position: absolute; right: 0; left: 0; bottom: 70px;}
.cta .tel img,.cta .line img,.cta .mail img{ width:100%; }
@media screen and (max-width:640px) {
	.cta{width: 100%; padding: 15px 0;}
	.cta h2{text-align: center; color: #fff; font-size: 1rem;}
	.cta .in{width: 95%; height: 20vw; margin: 0 auto; background: url(../img/ctaBG_SP.png) no-repeat; position: relative; padding: 0; background-size: contain;}
	.cta .tel{ width:33%; margin: 0 auto; position: absolute; left: 0; top: 8vw;}
	.cta .line{ width:33%; margin: 0 auto; position: absolute; left: 32vw; top: 8vw;}
	.cta .mail{ width:33%; margin: 0 auto; position: absolute; right: 0; top: 8vw;}
	.cta .mobile{ width:100%; margin: 0 auto; position: absolute; right: 0; left: 0; top: 47vw;}
	.cta .tel img,.cta .line img,.cta .mail img,.cta .mobile img{ width:100%; }
}


/*タイム*/
.time{background:#8B2899; padding: 15px;}
.time p{text-align: center; font-size: 1.5rem; color: #ff0; font-weight: bold;}
@media screen and (max-width:640px) {
	.time{ padding: 10px;}
	.time p{ font-size: 1rem; }
}


/*ポイント*/
#point{width: 100%; background: url(../img/pointBG.png) repeat-x; padding: 50px 0; border-bottom: 6px #0072CC solid; background-size: cover;}
#point .in{width: 1200px; margin: 0 auto;}
#point .subttl{text-align: center; color: #8B2899; font-size: 1.5rem; letter-spacing: 2px}
#point h2{text-align: center; color: #8B2899; font-size: 3rem; font-weight: 500; letter-spacing: 3px;}
#point h2 span{ color: #8B2899; font-size: 3.5rem; font-weight: 500;}
#point ul{display: flex; flex-wrap: wrap; justify-content: space-between;}
#point li{width: 580px; margin-bottom: 50px;}
#point .point1{background: url(../img/point1.png) no-repeat top; background-size: contain; height: 424px;}
#point .point2{background: url(../img/point2.png) no-repeat top; background-size: contain; height: 424px;}
#point .point3{background: url(../img/point3.png) no-repeat top; background-size: contain; height: 429px;}
#point .point4{background: url(../img/point4.png) no-repeat top; background-size: contain; height: 429px;}
#point .point5{background: url(../img/point5.png) no-repeat top; background-size: contain; height: 414px;}
#point .tx{padding: 215px 80px 0;}
#point h3{text-align: center; color: #8B2899; font-size: 1.8rem; margin-bottom: 5px;}
#point .h3sub{text-align: center; color: #8B2899; line-height: 1.8rem; font-size: 1.2rem;}
#point .under{border-bottom: 1px solid #000; width: 50%; margin: 10px auto;}
@media screen and (max-width:640px) {
	#point .in{width: 100%; margin: 0 auto;}
	#point{ padding: 50px 4% 10px;}
	#point .subttl{ font-size: 1.2rem; letter-spacing: 1px}
	#point h2{ font-size: 1.8rem; letter-spacing: 0;}
	#point h2 span{ color: #8B2899; font-size: 2.3rem; font-weight: 500;}
	#point .tx{padding: 33vw 5% 0;}
	#point h3{ font-size: 1.2rem; margin-bottom: 1px;}
	#point .h3sub{ line-height: 1.3rem; font-size: .9rem;}
	#point .under{ margin: 5px auto;}
	#point li{margin-bottom: 30px;}
	#point li p{font-size: .8rem; line-height: 1.3rem; letter-spacing: 0;}
	#point .point1{background: url(../img/point1SP.png) no-repeat top; height: 67vw; background-size: contain; }
	#point .point2{background: url(../img/point2SP.png) no-repeat top; height: 69vw; background-size: contain; }
	#point .point3{background: url(../img/point3SP.png) no-repeat top; height: 59vw; background-size: contain; }
	#point .point4{background: url(../img/point4SP.png) no-repeat top; height: 67vw; background-size: contain; }
	#point .point5{background: url(../img/point5SP.png) no-repeat top; height: 65vw; background-size: contain; }
}


/*安くレンタルできる秘密*/
#secret{width: 100%; background: url(../img/secretBG.png) repeat-x bottom center; padding: 50px 0; }
#secret .in{width: 1000px; margin: 0 auto;}
#secret .subttl{text-align: center; color: #0072CC; font-size: 1.5rem; letter-spacing: 2px}
#secret h2{text-align: center; color: #0072CC; font-size: 3rem; font-weight: 500; letter-spacing: 3px;}
#secret h2 span{ color: #0072CC; font-size: 3.5rem; font-weight: 500;}
#secret ul{display: flex; flex-wrap: wrap; justify-content: space-between;}
#secret li{width: 100%; margin-bottom: 60px;}
#secret li .left{float: left;}
#secret li .right{float: right;}
#secret li .left img , #secret li .right img{width: 100%;}
#secret li .img{width: 500px;}
#secret li .tx{width: 480px;}
#secret li h3{ color:#0072CC; font-size:1.8rem; font-weight: 500; padding: 20px 0; letter-spacing: 2px;}
#secret li .under{  border-bottom:1px solid #0072CC; }
#secret .shime1{ color:#0072CC; font-size:2.5rem; text-align:center; margin: 50px auto 10px; letter-spacing: 3px;}
#secret .shime2{ color:#0072CC; font-size:4rem; text-align:center; letter-spacing: 3px; margin-bottom: 50px;}
@media screen and (max-width:640px) {
	#secret .in{width: 100%; margin: 0 auto;}
	#secret li { padding: 0 7.5%; margin-bottom: 40px;}
	#secret li .left{float: none;}
	#secret li .right{float: none;}
	#secret li .img{width: 100%;}
	#secret li .tx{width: 100%;}
	#secret li h3{ font-size:1.3rem; letter-spacing: 0; padding: 0 0 10px;}
	#secret .subttl{ font-size: 1.2rem; letter-spacing: 1px}
	#secret h2{ font-size: 1.8rem; letter-spacing: -1px;}
	#secret h2 span{ font-size: 2.3rem; font-weight: 500; letter-spacing: -2px;}
	#secret .shime1{ font-size:1.5rem; margin: 10px auto 0; letter-spacing: 0;}
	#secret .shime2{ font-size:3rem; letter-spacing: 0; margin-bottom: 20px; letter-spacing: 2px;}
}


/*あらゆる肌トラブルに、この一台*/
#menu{width: 100%; padding: 50px 0; }
#menu .in{width: 1000px; margin: 0 auto;}
#menu h2{ color:#8B2899; font-weight:500; font-size:2.5rem; text-align: center; margin-bottom: 30px;}
#menu h2 .ul{ position:relative; color:#8B2899;}
#menu h2 .ul:after{ position:absolute; height:10px; background:#FFF49F; content: ""; width: 100%; left: 0; bottom: 0; z-index: -1;}
#menu h2 .big{ font-size:4rem; color:#8B2899;}
#menu .img{width: 100%; margin: 0 auto;}
#menu .img img{width: 100%; }
#menu h3{background: #F0E7F2; padding: 15px; text-align: center; color: #8B2899; font-size: 1.5rem; letter-spacing: 2px; }
#menu ul{display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 50px;}
#menu li{width: 100%; border-bottom: 1px solid #B5B5B5; padding: 30px 0;}
#menu li .left{float: left; width: 300px;}
#menu li .right{float: right; width: 670px;}
#menu li img{width: 100%;}
#menu li .tag {margin-bottom: 10px;}
#menu li .tag span{border: 1px solid #B5B5B5; padding: 2px 5px; font-size: .8rem; margin-right: 10px;}
#menu li h4{ color: #8B2899; font-size: 1.2rem; margin-bottom: 10px;}
#menu li p{ font-size: .95rem; line-height: 1.6rem;}
#menu .item_read{text-align: center; font-size: 1.5rem; color:#8B2899; line-height: 3rem; margin-bottom: 30px;}
#menu .item{width: 100%;}
#menu .item img{width: 100%;}
@media screen and (max-width:640px) {
	#menu .in{width: 100%; margin: 0 auto;}
	#menu h2{ font-size: 1.8rem; letter-spacing: 0;}
	#menu h2 span{ font-size: 2rem; font-weight: 500;}
	#menu h2 .big{ font-size:3rem; color:#8B2899;}
	#menu ul{ margin-bottom: 30px;}
	#menu h3{padding: 10px; font-size: 1.1rem; letter-spacing: 0; width: 94%; margin: 0 auto; font-weight: 500;}
	#menu li {margin: 0 3%; width: 94%; padding: 15px 0;}
	#menu li .left{float: left; width: 35%;}
	#menu li .right{float: right; width: 63%;}
	#menu li .tag {margin-bottom: 2px; line-height: .9rem;}
	#menu li .tag span{border: 1px solid #B5B5B5; padding: 1px 3px; font-size: .7rem; margin-right: 5px;}
	#menu li h4{ font-size: .9rem; margin-bottom: 0;}
	#menu li p{ font-size: .9rem; line-height: 1.3rem;}
	#menu li .cFix{margin-bottom: 5px;}
	#menu .item_read{font-size: 1.2rem; line-height: 2rem; margin-bottom: 30px;}
}



/*case*/
#case{width: 100%; padding: 50px 0; background: url(../img/caseBG.png) repeat-x bottom center; background-size: cover;}
#case .in{width: 1000px; margin: 0 auto;}
#case h2{ color: #fff; font-size: 2rem; font-weight: 500; letter-spacing: 3px; margin-bottom: 40px;}
#case h2 .big{ font-size: 4rem; color: #fff; margin-right: 20px;}
#case ul{display: flex; flex-wrap: wrap; justify-content: space-between;}
#case li{width: 48%; margin-bottom: 40px;}
#case li img{width: 100%;}
@media screen and (max-width:640px) {
	#case .in{width: 100%; margin: 0 auto; padding: 0 5%;}
	#case h2{ font-size: 1.5rem; letter-spacing: 3px; margin-bottom: 40px;}
	#case h2 .big{ font-size: 3rem; margin-right: 10px;}
	#case li{width: 100%; margin-bottom: 20px;}
}



/*あらゆる肌トラブルに、この一台*/
#hydra{width: 100%; padding: 0 0 80px; background: url(../img/hydraBG.png) repeat-x bottom center; margin:150px auto 0; z-index: -100 !important;}
#hydra .in{width: 1000px; margin: 0 auto;}
#hydra h2{ width: 80%; margin: 0 auto;}
#hydra h2 img{ width: 100%; margin-top: -100px;}
#hydra .img1 {width: 100%; margin-bottom: 20px;}
#hydra .img1 img{width: 100%;}
#hydra .img2 {width: 100%; margin-bottom: 50px;}
#hydra .img2 img{width: 100%;}
#hydra .youzai{padding: 20px; font-size: 1.8rem; font-weight: bold; background: #fff; width: 60%; margin: 0 auto; text-align: center;
 filter: drop-shadow(0 0 10px rgba(100,100,100,0.1)); border-radius: 30px; margin-bottom: 50px; letter-spacing: 2px;}
#hydra .voice{text-align: center; font-size: 1.5rem; margin-bottom: 20px; line-height: 3rem; letter-spacing: 1px;}
#hydra .off{text-align: center; font-size: 2.5rem; line-height: 3rem; z-index: 100;}
#hydra .off .ul{position: relative; z-index: 100;}
#hydra .off .ul:before {height: 10px; background: #FFF49F; position: absolute; content: ""; width: 100%; left: 0; bottom: 0; z-index: -1;}
#hydra .off .big{font-size: 3.5rem;}
@media screen and (max-width:640px) {
	#hydra{padding: 0 0 50px;}
	#hydra .in{width: 100%; margin: 0 auto;}
	#hydra .img1 {width: 100%; margin-bottom: 20px;}
	#hydra .img1 img{width: 100%;}
	#hydra .img2 {width: 100%; margin-bottom: 30px; overflow: scroll;}
	#hydra .img2 img{width: 160%;}
	#hydra .youzai{padding: 20px; font-size: 1.1rem; width: 85%; border-radius: 20px; margin-bottom: 20px; letter-spacing: 1px;}
	#hydra .voice{ font-size: 1rem; margin-bottom: 10px; line-height: 2rem; letter-spacing: 0;}
	#hydra .off{ font-size: 1.6rem; line-height: 2rem; }
	#hydra .off .ul:before {height: 10px;}
	#hydra .off .big{font-size: 2.2rem;}
}


/*スペック*/
#spec{width: 100%; padding: 50px 0; background: url(../img/specBG.png) repeat-x bottom center;}
#spec .in{width: 1000px; margin: 0 auto;}
#spec h2{ color: #fff; font-size: 2rem; font-weight: 500; letter-spacing: 3px;}
#spec h2 .big{ font-size: 4rem; color: #fff; margin-right: 20px;}
#spec .graf{width: 100%; background: #fff; padding: 50px; position: relative;}
#spec .graf img{position: absolute; width: 350px; right: 20px; top: 80px;}
#spec .graf table{width: 60%;}
#spec .graf th,#spec .graf td{border-bottom: #585858 1px solid; padding: 5px 0; }
#spec .graf th{width: 25%;}
#spec .graf td{width: 75%;}
@media screen and (max-width:640px) {
	#spec .in{width: 100%; margin: 0 auto; padding: 0 5%;}
	#spec h2{ font-size: 1.2rem; letter-spacing: 3px; line-height: 1.8rem; margin-bottom: 30px; padding: 0 0 0 15px;}
	#spec h2 .big{ font-size: 3rem;  margin-right: 20px;}
	#spec .graf{ padding: 30px 25px; position: relative;}
	#spec .graf table{width: 100%;}
	#spec .graf img{position: absolute; width: 38%; right: 10px; top: -135px;}
	#spec .graf table p{font-size:.8rem; }
	#spec .graf th{width: 26%;}
	#spec .graf td{width: 74%;}
}


/*料金*/
#price{width: 100%; padding: 50px 0; background: #E6E6E6;}
#price .in{width: 1000px; margin: 0 auto;}
#price h2{ width: 55%; margin: 0 auto 50px;}
#price h2 img{ width: 100%;}
#price .img{ width: 80%; margin: 0 auto;}
#price .img img{ width: 100%;}
@media screen and (max-width:640px) {
	#price .in{width: 100%; margin: 0 auto;}
	#price h2{ width: 60%; margin-bottom: 30px;}
	#price .img{ width: 85%; }
}


/*フォローアップ*/
#follow{width: 100%; background: url(../img/followBG.png) repeat-x bottom center; padding: 50px 0; }
#follow .in{width: 1000px; margin: 0 auto;}
#follow h2{text-align: center; color: #0072CC; font-size: 3rem; font-weight: 500; letter-spacing: 3px;}
#follow ul{display: flex; flex-wrap: wrap; justify-content: space-between;}
#follow li{width: 100%; margin-bottom: 60px;}
#follow li .left{float: left;}
#follow li .right{float: right;}
#follow li .left img , #follow li .right img{width: 100%;}
#follow li .img{width: 500px;}
#follow li .tx{width: 480px;}
#follow li h3{ color:#0072CC; font-size:1.8rem; font-weight: 500; padding: 20px 0; letter-spacing: 2px;}
#follow li .under{  border-bottom:1px solid #0072CC; }
@media screen and (max-width:640px) {
	#follow{padding: 50px 0 0;}
	#follow .in{width: 100%; margin: 0 auto; padding: 0 5%;}
	#follow li .img{width: 100%;}
	#follow li .tx{width: 100%;}
	#follow li .left{float: none;}
	#follow li .right{float: none;}
	#follow li .img{width: 100%;}
	#follow li .tx{width: 100%;}
	#follow li h3{ font-size:1.3rem; letter-spacing: 0; padding: 0 0 10px;}
	#follow .subttl{ font-size: 1.2rem; letter-spacing: 1px}
	#follow h2{ font-size: 1.8rem; letter-spacing: 0;}
	#follow h2 span{ font-size: 2.3rem; font-weight: 500;}
}


/*フロー*/
#flow{width: 100%; padding: 50px 0; background: #E6E6E6;}
#flow .in{width: 1000px; margin: 0 auto;}
#flow h2{ width: 55%; margin: 0 auto 50px;}
#flow h2 img{ width: 100%;}
#flow h3{text-align: center; font-size: 2rem; font-weight:500; margin: 80px auto 20px;}
#flow .flowCNT{background: #fff; padding: 30px 40px; margin-bottom: 30px; width: 100%;}
#flow .flowCNT table{width: 100%;}
#flow .flowCNT th{width: 12%;}
#flow .flowCNT th p{font-size: 1.3rem; width: 100%;}
#flow .flowCNT td{width: 88%;}
#flow .flowCNT h4{padding: 5px 0; border-bottom: #888 1px solid; width: 100%; font-size: 1.4rem; margin-bottom: 10px; font-weight: 500; letter-spacing: 2px;}
#flow .flowCNT .hosoku{font-size: .9rem; line-height: 1.5rem;}
#flow .gray{background: #565656;}
#flow .gray h4,#flow .gray p{color: #fff;}
#flow .caution{margin: 100px auto 50px;}
#flow .caution h4{ text-align:center; }
@media screen and (max-width:640px) {
	#flow .in{width: 100%; margin: 0 auto; padding: 0 5%;}
	#flow h2{ width: 60%; margin: 0 auto;}
	#flow h3{text-align: center; font-size: 1.5rem; font-weight:500; margin: 40px auto 20px;}
	#flow .flowCNT{padding: 10px 15px; margin-bottom: 30px; width: 100%;}
	#flow .flowCNT th{width: 20%;}
	#flow .flowCNT th p{font-size: 1rem; width: 100%;}
	#flow .flowCNT td{width: 80%;}
	#flow .flowCNT td p{font-size: .8rem; width: 100%; line-height: 1.2rem;}
	#flow .flowCNT h4{padding: 5px 0; font-size: 1rem; margin-bottom: 10px; letter-spacing: 0;}
	#flow .flowCNT .hosoku{font-size: .7rem; line-height: 1rem;}
	#flow .caution{margin: 50px auto 0;}
	#flow .caution p{font-size: .8rem; line-height: 1.2rem;}
}


/*バナー*/
#bnr{width: 100%; padding: 50px 0; }
#bnr .in{width: 1000px; margin: 0 auto;}
#bnr h2{text-align: center; color: #8B2899; font-size: 2rem; font-weight: 500; letter-spacing: 3px; margin-bottom: 50px;}
#bnr .img{width: 100%;}
#bnr .img img{width: 100%;}
@media screen and (max-width:640px) {
	#bnr{width: 100%; padding: 50px 0 0; }
	#bnr .in{width: 100%; margin: 0 auto; padding: 0 5%;}
	#bnr h2{ font-size: 1.3rem; letter-spacing: 0; margin-bottom: 20px;}
}




#about{background: #F2F2F2; padding: 50px 0; }
#about .in{width: 950px; margin: 0 auto; }
#about h2{color: #000; font-size: 2rem; font-weight: 500; text-align: center; margin-bottom: 30px; letter-spacing: 3px;}
#about table{width: 700px; margin: 20px auto 0;}
#about table th{font-weight: bold; width: 25%;}
#about table th,#about table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0;}
#about a{color: #139e66;}
#about p{text-align: center; padding: 20px 0;}
@media screen and (max-width:640px) {
	#about{background: #F2F2F2; padding: 30px 5%; }
	#about .in{width: 100%;}
	#about h2{ margin: 0 auto 20px; letter-spacing: 1px; font-size: 1.8rem; }
	#about table{width: 90%; margin: 0 auto;}
	#about table th{font-weight: bold; width: 25%;}
	#about table th,#about table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0; font-size: 0.9rem;}
}


/*フォーム*/
.formWrap__bg{width: 100%; padding: 50px 0; background: #fff;}
#formWrap{width: 1000px; background: #fff; margin: 0 auto; padding: 40px; border-radius: 10px;
 filter: drop-shadow(0 0 10px rgba(100,100,100,0.1));}
.formWrap__bg h2{font-size: 2rem; font-weight: 500; text-align: center; margin-bottom: 30px; letter-spacing: 3px;}
.formWrap__bg .read{color: #000; font-size: 1rem; text-align: center; letter-spacing: 1px; margin-bottom: 50px;}
.formTable{width: 800px; margin: 0 auto;}
.formTable th {width: 28%; font-size: 0.9rem; font-weight: bold; padding: 10px; border: #fff 3px solid;  }
.formTable th span{color: #fff; font-weight: bold; background: #ff6464; display: inline-block; padding: 1px 5px; float: right;}
/*.formTable .th2 {background: #eee;}*/
.formTable td{width: 72%; border: 10px solid #fff;}
.formTable .formtextarea{width: 80%;}
.formTable input ,.formTable select{padding: 10px; border: 1px solid #ccc; font-size: 1rem; margin-right: 5px;}
.formTable .serect_margin input{margin-bottom: 7px;}
.formTable label{ margin-right: 30px; }
.formTable textarea{width: 100%; padding: 10px; border: 1px solid #ccc; font-size: 1rem; }
::placeholder{color: #ccc}
.formWrap__botton{text-align: center; margin:20px auto;}
.formWrap__botton__submit{ background: #E40000; width: 350px; height:80px; border: none; border-radius: 10px; color: #fff; font-size: 1.2rem;}
.formWrap__botton__submit:hover {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.formWrap__policy{width: 800px; height: 200px; margin: 30px auto 30px ; overflow: auto;  border: 1px solid #ccc; padding: 20px;}
.formWrap__policy p{font-size: 0.8rem; margin-bottom: 20px; line-height: 1.5rem;}
.formTable__sutxt{font-size: 0.7rem; line-height: 1.5rem;}
.formTable__short span{padding: 12px 0 0 20px; display: inline-block;}
.formTable__short input{width: 70% !important; float: right; margin-bottom: 10px; display: inline-block;}
.formTable__short__red{font-size: 0.8rem; color: #f00;}
#formWrap .form__date input{width: 50%;}
.form_select_tx{font-size: 0.8rem; color: #f00;}
.form_select_tx span{color: #f00; font-weight: bold;}
.formWrap__policy__agree{text-align: center; margin-top: 20px auto;}

/*確認画面*/
.formWrap__txt{text-align: center; margin-bottom: 30px;}

/*フォーム機能*/
#formWrap2{width: 800px; margin: 50px auto;}
.error_messe_h3{text-align: center; background: #fcc; padding: 20px; width: 100%; font-weight: bold; font-size: 1.1rem; margin-bottom: 20px;}
.error_messe{color: #f00; font-weight: bold; background: #fee; padding: 10px; margin-bottom: 10px;}
.form__error__back{color: #fff; padding: 20px ; border:none; font-size: 1.1rem; letter-spacing: 2px; background: #888; border-radius: 10px; width: 30%; }
.form__error__next{color: #fff; padding: 20px ; border:none; font-size: 1.1rem; letter-spacing: 2px;
 background: #E40000; border-radius: 10px; width: 30%; margin-bottom: 10px; font-weight: bold;}
.form__fix__h3{text-align: center; padding: 20px; color: #fff; background: #8B2899; font-size: 1.3rem; letter-spacing: 2px; margin-bottom: 20px; font-weight: bold;}
.form__fix__h3__tx{text-align: center; margin-bottom: 20px;}

/*サンキューページ*/
.form__submit{width: 100%; background: #8B2899; padding: 30px 0;}
.form__submit h2{text-align: center; color: #fff; font-weight: bold; font-size: 1.2rem;}
.form__submit__area{margin: 20px 0 0;}
.form__submit__sub{background-color: #fff200; padding: 5px; border-radius: 10px; text-align: center; margin: -21px auto 0; font-size: 1.2rem; letter-spacing: 1px; width: 350px; font-weight: bold;}
.form__submit__txtarea{width: 800px; margin: 20px auto; }
.form__submit__btn{margin: 0 auto 30px; display: block; text-align: center; width: 289px;}
.form__submit__btn img{width: 100%;}


/*フォーム*/
@media screen and (max-width:640px) {
	.formWrap__bg{width: 100%; margin: 0 auto;}
	#formWrap{width: 90%; margin: 0 auto; padding: 15px;}
	.formWrap__bg h2{font-size: 1.5rem;  margin-bottom: 10px; letter-spacing: 1px;}
	.formWrap__bg .read{color: #6E6E6E; font-size: .75rem; font-weight: bold; text-align: center; letter-spacing: 0; margin-bottom: 30px; line-height: 1.5rem;}
	.formTable{width: 100% !important; padding: 0;}
	.formTable th {width: 100% !important; border: 4px solid #fff; display: block; padding: 0px;}
	.formTable td {font-size: 0.9rem;}
	.formTable .th2 {background: #eee;}
	.formTable td{width: 100% !important; border: 0; display: block;}
	.formTable input{ margin-bottom: 10px;}
	.formTable textarea{width: 100%; padding: 10px; }
	.formWrap__botton{text-align: center; margin:20px auto;}
	.formWrap__botton__submit{ width: 70%; height:15vw; background-size: contain; font-size: 1.1rem; }
	.formWrap__botton{text-align: center; margin:20px auto;}
	.formWrap__policy{width: 100%; height: 150px; margin: 30px auto ; overflow: auto;  border: 1px solid #ccc; padding: 20px;}
	.formWrap__policy p{font-size: 0.8rem; margin-bottom: 20px; line-height: 1.5rem;}
	.formTable__sutxt{line-height: 1.0rem; margin-top: 3px;}
	#formWrap .form__date input{width: 80%;}
	.formTable .formtextarea{width:100%;}
	.formTable .formtextareaADD{width:60%;}
	.formTable label{line-height: 2rem; font-size: 0.95rem; padding-left: 3vw;}
	.formWrap__policy__agree{text-align: center; margin-top: 20px auto;}
	input[type="submit"], input[type="button"] { -webkit-appearance: none; }
	.formTable .serect_margin input{margin-bottom: 7px; font-size: 0.8rem;}
	.formTable .serect_margin select{margin-bottom: 15px; font-size: 0.8rem;}

	/*フォーム機能*/
	#formWrap2{width: 90%; margin: 10px auto 50px;}
	.error_messe_h3{ font-size: 1.0rem; }
	.error_messe{ margin:0 auto 10px; width: 95%;}
	.form__error__back{font-size: 1.0rem; letter-spacing: 1px; border-radius: 10px; width: 50%; margin: 0 auto; display: block;}
	.form__error__next{font-size: 1.0rem; letter-spacing: 1px; border-radius: 10px; width: 50%; margin-bottom: 10px; font-weight: bold;}
	.form__fix__h3{padding: 10px; margin-top: 30px;}
	.form__fix__h3__tx{padding: 0 20px;}

	/*サンキューページ*/
	.form__submit{width: 100%; padding: 20px 0; margin: 0 0 20px;}
	.form__submit  h2{font-weight: bold; text-align: center; font-size: 1.0rem;}
	.form__submit__sub{margin: 20px auto 0; font-size: 1.0rem; letter-spacing: 1px; width: 80%; font-weight: bold;}
	.form__submit__txtarea{width: 90%; margin: 0 auto 30px;}
	.form__submit__area{width: 100%; margin: 0 auto;}
	.form__submit__area a{width: 50%; margin: 0 auto;}
	.form__submit__area img{width: 60%; margin: 20px auto; display: block;}
	.form__submit__btn{width: 100%;}
}


/*コピーライト*/
#cnt_copy p{background: #8B2899; text-align: center; padding: 10px; color: #fff;}
#cnt_copy2 p{background: #8B2899; text-align: center; padding: 10px; color: #fff;}
@media screen and (max-width:640px) {
	/*コピーライト*/
	#cnt_copy p{font-size: 0.8rem; padding: 10px 0; background: #8B2899;}
	#cnt_copy2 p{text-align: center; padding: 10px; color: #fff; background: #8B2899;}
}




#cta_sp{display: none;}
#cta_sp p{display: none;}
#cta_sp img{display: none;}
@media screen and (max-width:640px) {
	/*cta_sp*/
	#cta_sp{display: block; position: fixed; width: 100%; bottom: 0; z-index: 9999; background-size: 20%; background: #fff; padding: 5px; height: auto;}
	#cta_sp p{margin: 0 auto; text-align: center; color: #fff; font-weight: bold; padding: 0; display: block; font-size: 1rem;}
	#cta_sp ul{ display:flex; flex-wrap:wrap; justify-content: space-between; padding: 0 1%;}
	#cta_sp li{width: 50%; }
	#cta_sp img{width: 100%; display: block;}
	#cta_sp a{
		position: relative;
		display: block;
		width: 100%;
		overflow: hidden;}
	#cta_sp a::after {
		content: '';
		position: absolute;
		top: -10%;
		left: -20%;
		width: 40px;
		height: 100%;
		transform: scale(2) rotate(20deg);
		background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
		/* アニメーション */
		animation-name: shiny;
		animation-duration: 3s;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite;}
	@keyframes shiny {
		0% { left: -20%; }
		10% { left: 120%; }
		100% { left: 120%; }
	}
	#cta_sp2 .cta_sp2_line{position: fixed; bottom: 23vw; right: 1vw; width: 34vw; z-index: 9999; display: block;}
	#cta_sp2 .cta_sp2_line img{width: 100%;}
}


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

	/*===============================================
	ハンバーガーアイコンをCSSだけで表現
	===============================================*/
	#nav-drawer {position: relative;}
	/*アイコンのスペース*/
	#nav-open {
	  display: inline-block;
	  width: 30px;
	  height: 22px;
	  vertical-align: middle;
	  position: fixed;
	  top: 10px;
	  right: 10px;
	  z-index: 9999;
	}
	#nav-open span, #nav-open span:before, #nav-open span:after {
	  position: absolute;
	  height: 4px;/*線の太さ*/
	  width: 30px;/*長さ*/
	  border-radius: 3px;
	  background: #fff;
	  display: block;
	  content: '';
	  cursor: pointer;
	}
	#nav-open span:before {
	  bottom: -8px;
	}
	#nav-open span:after {
	  bottom: -16px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
	  display: none;/*はじめは隠しておく*/
	  position: fixed;
	  z-index: 99;
	  top: 0;/*全体に広がるように*/
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: black;
	  opacity: 0;
	  transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
	  overflow: auto;
	  position: fixed;
	  top: 0;
	  right: 0;
	  z-index: 9999;/*最前面に*/
	  width: 60%;/*右側に隙間を作る（閉じるカバーを表示）*/
	  max-width: 330px;/*最大幅（調整してください）*/
	  height: 100%;
	  background: #fff;/*背景色*/
	  transition: .3s ease-in-out;/*滑らかに表示*/
	  -webkit-transform: translateX(105%);
	  transform: translateX(105%);/*左に隠しておく*/
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
	  display: block;/*カバーを表示*/
	  opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
	  -webkit-transform: translateX(0%);
	  transform: translateX(0%);/*中身を表示（右へスライド）*/
	  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	  background: #000;
	  background: rgba(0,0,0,0.3);
	  z-index: 99999;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
	  display:none;
	}
	.MainImage_navi li{background: #fff; width: 80%; margin:13px auto; text-align: center; font-size: 0.9rem;}
	.MainImage_navi li a{ color: #000; width: 100%; display: block; padding: 5px; font-size: 0.9rem;}
	.MainImage_navi .MainImage_navi_link{background: none;}
	.MainImage_navi .MainImage_navi_link a{width: 100%; padding: 0;}
	.MainImage_navi .MainImage_navi_link img{width: 100%;}
	/*===============================================
	ハンバーガーアイコン終わり
	===============================================*/

	/*20250123追加*/
	#chart{width: 100%; background: #fff; padding: 30px 5%;}
	#chart .in{width: 100%; margin: 0 auto;}
	#chart .in img{width: 100%;}
	#chart h2{font-size: 1.3rem; letter-spacing: 1px; position: relative; margin-bottom: 30px;}
	#chart h2::after{position: absolute; content: ""; left: 0; right: 0; margin: 0 auto; display: block; border-bottom: 1px solid #fff;
	 width: 100px; padding-bottom: 10px;}


}
