@charset "utf-8";

/* HOME
-------------------------------------------------------------------*/
.btn a{
	display:block;
}

.img{
	line-height:0;
}

.mv{
	border-top:8px solid #EAA291;
	position:relative;
}

.mv .logo{
	position:absolute;
	left:10px;
	top:10px;
}

.mv .box{
	padding:0 20px;
	position:relative;
	margin-top:-17%;
	background:url(../img/top/mv-txt-bg.png) no-repeat top center;
}

.mv .box:after{
	content:"";
	height:200px;
	width:100%;
	background:#FFF9E8;
	position:absolute;
	left:0;
	right:0;
	bottom:20px;
}

.mv .box h2{
	position:relative;
	z-index:2;
}

.mv .box .txt{
	font-size:16px;
	line-height:1.8;
	padding:0 0 20px 0;
}

.mv .box dl{
	border-radius: 12px;
	background: #fff;
	border: 8px solid #ffead0;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	padding:30px 20px;
	position:relative;
	z-index:2;
}

.tit01{
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
	color:#F57F64;
}

.tit01 span{
	font-size: clamp(16px, 3vw, 22px);
	color:#000;
	display:block;
}

.mv .box dd{
	padding:10px 0 0 0;
}

.taught{
	background:url(../img/top/taught-bg.jpg) no-repeat center center;
	background-size:cover;
	padding:45px 20px;
	margin-top:-20px;
}

.taught .txt{
	padding:10px 0 0 0;
}

.when{
	background:url(../img/top/when-bg.jpg) no-repeat center center;
	background-size:cover;
	padding:0 20px 90px 20px;
	line-height:0;
}

.when .min{
	background:#D59384;
	color:#fff;
	text-align:center;
	width:150px;
	margin:0 auto;
	line-height:1.6;
	padding:3px 0;
	border-radius: 17px;
	position:relative;
	top:-15px;
}

.when h2{
	text-align:center;
	line-height:1.5;
	padding:0 0 10px 0;
}

.when .txt{
	line-height:1.8;
}

.circle-txt li{
	padding:0 0 0 20px;
	line-height:1.8;
	position:relative;
}

.circle-txt li:after{
	content:"";
	width:10px;
	height:10px;
	border-radius:50%;
	background:#E0BD8E;
	position:absolute;
	top: 10px;
	left:0;
}

.when .arrow{
	text-align:center;
	padding:10px 0;
}

.input{
	padding:40px 20px 80px 20px;
	background:url(../img/top/input-bg.png) no-repeat top center;
	background-size:cover;
	margin-top:-70px;
}

.input h2{
	font-size: clamp(20px, 6vw, 36px);
	font-weight:700;
	text-align:center;
	padding:0 0 10px 0;
}

.input h2 span{
	color:#F57F64;
}

.input dl{
	border-radius: 12px;
	background: #fff;
	border: 3px solid #3d5ca2;
	padding:30px 20px;
	margin:20px 0 0 0;
}

.input dl dt{
	font-size: clamp(18px, 3vw, 22px);
	color:#3D5CA2;
	font-weight:700;
	text-align:center;
	padding:0 0 10px 0;
}

.huki{
	position:relative;
	padding:10px 20px;
	color:#fff;
	font-size:18px;
	text-align:center;
	background:#3F928F;
	border-radius:50px;
}

.huki:after{
	content:"";
	position:absolute;
	bottom:-10px;
	left:0;
	right:0;
	margin:0 auto;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #3F928F;
}

.check-area .huki{
	top:-30px;
	width:245px;
	margin:0 auto -10px;
}

.check-area{
	padding:0 20px 40px 20px;
	background:url(../img/top/check-bg.jpg);
}

.check-area h2{
	text-align:center;
	font-size: clamp(18px, 4vw, 28px);
	font-weight:700;
	padding:0 0 10px 0;
}

.check-area h2 span{
	font-size: clamp(20px, 6vw, 36px);
	color:#F57F64;
}

.check-area .graph{
	padding:20px 0;
}

.check-area .txt span{
	font-size:13px;
}

.check-area .arrow{
	padding:20px 0 0 0;
	text-align:center;
}

.check-area dl{
	text-align:center;
}

.check-area dl dt{
	font-size: clamp(18px, 3vw, 22px);
	color:#fff;
	font-weight:700;
	border-radius: 24px;
	background: #c46752;
	display:inline-block;
	padding:5px 25px;
	position:relative;
	bottom:-25px;
}

.check-area dl dd{
	border-radius: 12px;
	background: #fff;
	border: 3px solid #c46752;
	padding:40px 20px 20px 20px;
	text-align:left;
}

.confusion .box01{
	padding:40px 20px 130px 20px;
	background:url(../img/top/confusion-bg.jpg);
}

.confusion .box01 h2{
	font-size: clamp(20px, 4vw, 26px);
	font-weight:700;
	padding:0 0 20px 0;
}

.orange{
	color:#F57F64;
}

.confusion .box01 .img{
	padding:10px 0;
}

.confusion .box01 .txt .min{
	font-size:13px;
}

.confusion .box02{
	padding:0 20px 40px 20px;
	background:url(../img/top/confusion-bg02.jpg);
}

.confusion .box02 dl{
	position:relative;
	top:-90px;
	border-radius: 12px;
	background: #fff;
	border: 3px solid #e9b2a5;
	padding:0 20px 20px 20px;
}

.confusion .box02 dl dt{
	font-size: clamp(16px, 3vw, 18px);
	background:#E9B2A5;
	color:#fff;
	text-align:center;
	padding:10px 20px;
	border-radius:24px;
	position:relative;
	top:-25px;
}

.confusion .box02 .img{
	margin-top:-80px;
}

.learn{
	padding:40px 20px 50px 20px;
	background:url(../img/top/learn-bg.png);
}

.learn h2{
	font-size: clamp(20px, 4vw, 26px);
	font-weight:700;
	padding:0 0 20px 0;
}

.learn dl{
	border-radius: 12px;
	background:url(../img/top/learn-bg02.png) #fff;
	background-size:cover;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	border:5px solid #F8ECDD;
	position:relative;
	padding:30px 20px 50px 20px;
	margin:30px 0 0 0;
}

.learn dl dt{
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
	color:#F57F64;
	padding:0 0 10px 0;
}

.learn dl dd .img{
	position:absolute;
	right:0;
	top:-50px;
}

.know-how{
	padding:40px 20px;
	background:url(../img/top/know-how-bg.png);
}

.know-how h2{
	font-size: clamp(20px, 6vw, 36px);
	font-weight:700;
	color:#F57F64;
	padding:0 0 20px 0;
	line-height:1.4;
}

.know-how h2 span{
	font-size: clamp(18px, 5vw, 28px);
	color:#000000;
}

.know-how .txt span{
	font-size: clamp(16px, 3vw, 22px);
	color:#F57F64;
	font-weight:700;
}

.know-how .btn{
	padding:20px 10px 0 10px;
}

.operation{
	padding:40px 20px 0 20px;
	background:#FCF5E7;
	text-align:center;
}

.operation .huki{
	background:#76B0C3;
	display:inline-block;
	padding: 15px 25px;
}

.operation .huki:after {
    border-top: 10px solid #76B0C3;
}

.operation h2{
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
	color:#906B30;
	padding:10px 0 30px 0;
}

.operation .box-in{
	background:#fff;
	border-radius:12px;
	position:relative;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
}

.operation .box-in ul li{
	position:absolute;
}

.operation .box-in .img01{
	left:20px;
	top:-70px;
}

.operation .box-in .img02{
	right:20px;
	top:-70px;
}

.operation .box-in .logo{
	left:0;
	right:0;
	top:-20px;
	margin:0 auto;
}

.operation .box-in h3{
	font-weight:700;
	color:#F46C87;
	padding:30px 10px 15px 10px;
	border-radius:12px 12px 0 0;
	background: linear-gradient(#ffc9d4 0%, rgba(251, 234, 238, 0.4) 100%);
}

.operation .box-in .txt-box{
	padding:20px;
	border-radius:0 0 12px 12px;
	background:url(../img/top/operation-bg.jpg) no-repeat bottom center;
}

.operation .box-in .txt{
	text-align:left;
}

.operation .box-in span{
	font-size: clamp(18px, 3vw, 22px);
}

.pink{
	color:#F46C87;
}

.operation .box-in dl{
	padding:30px 0;
}

.operation .box-in dl dt{
	font-size: clamp(14px, 3vw, 18px);
	background:#C46752;
	color:#fff;
	text-align:center;
	padding:5px 20px;
	border-radius:24px;
	margin:0 0 20px 0;
}

@media screen and (max-width: 500px) {
.mv .logo{
	width:130px;
}

.mv .box .txt{
	font-size:15px;
}

.when{
	padding:0 20px 80px 20px;
}
	
.circle-txt li:after{
	top: 8px;
	width:8px;
	height:8px;
}

.input dl{
	border: 2px solid #3d5ca2;
}

.huki{
	font-size:16px;
}

.huki:after{
	bottom:-8px;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #3F928F;
}

.check-area .huki{
	top:-25px;
	width:230px;
}

.check-area .graph{
	padding:20px 0;
}

.check-area .txt span{
	font-size:13px;
}

.check-area dl dt{
	font-size:16px;
	bottom:-17px;
}

.check-area dl dd{
	border: 2px solid #c46752;
	padding:30px 20px 20px 20px;
}

.confusion .box01 .txt .min{
	font-size:12px;
}

.confusion .box02 dl{
	border: 2px solid #e9b2a5;
}
	
.confusion .box02 dl dt {
    font-size: 14px;
    padding: 5px 20px;
    border-radius: 50px;
    top: -30px;
}

.learn{
	padding:40px 20px 40px 20px;
}

.learn dl{
	border:3px solid #F8ECDD;
	padding:30px 20px ;
}

.learn dl dt{
	position:relative;
	z-index:2;
}

.learn dl dd .img{
	top:-30px;
	width:170px;
}

.know-how .btn{
	padding:20px 0 0 0;
}

.operation .huki{
	padding: 10px 20px;
}

.operation .huki:after {
    border-top: 8px solid #76B0C3;
}

.operation h2{
	padding:10px 0 40px 0;
}

.operation .box-in .img01{
	left:0;
	top:-30px;
	width:70px;
}

.operation .box-in .img02{
	right:0;
	top:-30px;
	width:70px;
}

.operation .box-in .logo{
	top:-20px;
	width:110px;
}

.operation .box-in dl dt{
	border-radius:30px;
}
}

/* SERVICE
-------------------------------------------------------------------*/
.kaso .mv{
	height:350px;
	background:url(../img/service/mv.jpg) no-repeat center center;
	background-size:cover;
}

.kaso .mv h1{
	font-size: clamp(22px, 5vw, 30px);
	font-weight:700;
	padding:150px 45px 0 45px;
	text-shadow: 0px 0px 6px #fff;
}

.patent{
	position:relative;
	text-align:center;
	padding:0 0 30px 0;
	background:url(../img/service/bg.jpg);
}

.patent h2{
	position:absolute;
	left:0;
	right:0;
	margin:0 auto;
	top:-6%;
	width:80%;
}

.patent .img{
	margin:0 -5px;
}

.tit02{
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
}

.natural{
	text-align:center;
	background:url(../img/service/bg.jpg);
	padding:0 20px 20px 20px;
}

.natural .huki{
	display:inline-block;
	background:#D59384;
}

.natural .huki:after {
    border-top: 10px solid #D59384;
}

.yellow{
	color:#F7E939;
}

.natural .tit02{
	padding:20px 0;
}

.natural .txt-box{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.natural .txt-box > li{
	padding:20px;
	box-sizing:border-box;
	width:48%;
	background:#fff;
	border-radius:12px;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	position:relative;
	margin:0 0 30px 0;
	display: flex;
    flex-direction: column;
}

.natural .txt-box > li h3{
	padding:3px 10px;
	background:#D59384;
	border-radius:20px;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	color:#fff;
	font-size: clamp(15px, 3vw, 18px);
	font-weight:500;
	margin:15px 0;
}

.service .circle-txt{
	font-size:14px;
	margin:0 0 10px 0;
	text-align:left;
}

.natural .circle-txt {
    flex-grow: 1;
}

.service .circle-txt li:after {
    top: 8px;
    transform: none;
	background:#D59384;
}

.natural .phrase:after{
	content:"";
	width:107px;
	height:38px;
	background:url(../img/service/natural-ico01.png) no-repeat left top;
	background-size:contain;
	position:absolute;
	left:0;
	top:-7px;
}

.natural dl{
	margin:auto -20px -20px -20px;
}

.natural dl dt{
	width:125px;
	line-height:0;
}

.natural dl dd{
	font-size:14px;
	background:#F7E939;
	padding:20px 30px;
	border-radius:0 0 12px 12px;
	text-align:left;
}

.system{
	background:url(../img/service/bg.jpg);
	padding:0 20px;
	text-align:center;
}

.system .huki{
	display:inline-block;
	background:#59C5BA;
}

.system .huki:after {
    border-top: 10px solid #59C5BA;
}

.system h2{
	padding:20px 0;
}

.system .txt-box > li{
	background:#fff;
	border-radius:12px;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	padding:20px;
	margin:0 0 30px 0;
}

.system .txt-box > li .flex-box{
	display:flex;
}

.system .txt-box > li .img{
	min-width:186px;
	width:186px;
	margin:0 20px 0 0;
}

.system .txt-box > li h3{
	padding:3px 10px;
	background:#59C5BA;
	border-radius:20px;
	box-shadow: 0px 0px 24px rgba(206, 206, 206, 0.55);
	color:#fff;
	font-size: clamp(16px, 3vw, 18px);
	font-weight:500;
	margin:0 0 20px 0;
}

.service .system .circle-txt li:after {
	background:#59C5BA;
}

.service .system dl{
	padding:20px 0 0 0;
}

.service .system dl dt{
	font-size:16px;
	font-weight:700;
	padding:0 0 10px 0;
}

.grow{
	background:#FFF6E9;
	padding:0 20px;
	position:relative;
	text-align:center;
}

.grow h2{
	font-size: clamp(18px, 3vw, 22px);
	font-weight:700;
	padding:30px 0 40px 0;
}

.grow h2 span{
	font-size: clamp(12px, 2vw, 14px);
}

.grow .ico{
	position:absolute;
	top:0;
	left:0;
}

.grow .box{
	position:relative;
	z-index:2;
}

.grow .box-in{
	border-radius:12px;
	border:3px solid #3D5CA2;
	background:#fff;
	padding:0 20px 30px 20px;
}

.grow .box-in02{
	border:3px solid #C46752;
	background:url(../img/service/grow-star.png) no-repeat bottom center #fff;
	background-size:contain;
}

.grow .box-in h3{
	max-width:380px;
	margin:0 auto;
	border-radius:20px;
	color:#fff;
	background:#3D5CA2;
	padding:3px 15px;
	font-weight:500;
	position:relative;
	top:-18px;
	font-size:16px;
}

.grow .box-in02 h3{
	background:#C46752;
}

.grow .box-in .list-box{
	display:flex;
}

.grow .box-in .list-box ul li{
	position:relative;
	font-weight:700;
	padding:0 0 0 30px;
}

.grow .box-in .check li{
	position:relative;
	font-weight:700;
	padding:0 0 10px 30px;
	text-align:left;
}

.grow .box-in .check li:after{
	content:"";
	width:20px;
	height:20px;
	background:url(../img/service/grow-check.png) no-repeat;
	background-size:contain;
	position:absolute;
	left:0;
	top:3px;
}

.grow .box-in02 .check li:after{
	background:url(../img/service/grow-check02.png) no-repeat;
	background-size:contain;
}

.grow .box-in .list-box .img{
	margin:-30px -20px 0 20px;
	min-width:200px;
	width:200px;
}

.grow .box-in .list-box .img img{
	border-radius:0 8px 0 60px;
}

.grow .box-in .f-txt{
	font-weight:700;
	line-height:1.8;
}

.grow .arrow{
	padding:25px 0;
}

.grow .box-in02 dl{
	padding:0 0 20px 0;
}

.grow .box-in02 dl dt{
	font-size: clamp(18px, 3vw, 22px);
	font-weight:700;
	padding:0 0 10px 0;
}

.grow .box-in02 .img-box > li{
	padding:20px 0 30px 0;
	border-top:1px dashed #C46752;
}

.grow .box-in02 .img-box > li:last-child{
	border-bottom:1px dashed #C46752;
}

.grow .box-in02 .img-box > li .txt{
	line-height:1.8;
	padding:10px 0;
}

.grow .box-in02 .img-box > li .f-txt{
	font-size: clamp(16px, 3vw, 20px);
}

.grow .box-in02 .tit{
	font-size: clamp(16px, 3vw, 20px);
	font-weight:700;
	padding:20px 0;
}

.grow h4{
	font-size: clamp(18px, 5vw, 28px);
	font-weight:700;
}

.grow h4 span{
	font-size: clamp(22px, 6vw, 36px);
}

.grow .box-in02 .f-txt02{
	padding:10px 0 0 0;
	font-size: clamp(16px, 2.5vw, 18px);
}

.grow .f-img{
	line-height:0;
	padding:50px 0 0 0;
	margin:0 -20px;
}

.feature{
	padding:0 20px 50px 20px;
	background:url(../img/service/feature-bg.jpg) no-repeat;
	background-size:cover;
	text-align:center;
}

.feature h2{
	font-size: clamp(18px, 4vw, 24px);
	font-weight:700;
	display:inline-block;
	position:relative;
	top:-25px;
	z-index:2;
	padding: 5px 30px;
}

.feature ul li{
	padding:5px 0 0 0;
	width:60%;
	margin:0 auto;
	min-width:280px;
}

.feature .txt{
	text-align:left;
	line-height:1.8;
	padding:20px 15px 0 15px;
}

@media screen and (max-width: 500px) {
.kaso .mv{
	height:280px;
}

.kaso .mv h1{
	padding:130px 25px 0 25px;
}

.patent h2{
	top:-4%;
	width:80%;
}

.patent .img{
	margin:0;
}
	
.natural .huki{
	padding:10px 30px;
}

.natural .huki:after {
    border-top: 8px solid #D59384;
}

.natural .txt-box{
	display:block;
}

.natural .txt-box > li{
	width:100%;
}
	
.natural .txt-box > li .img{
	width:180px;
	margin:0 auto;
}

.natural dl dd{
	font-size:13px;
	padding:20px;
}

.system .huki:after {
    border-top: 8px solid #59C5BA;
}

.system .txt-box > li .flex-box{
	display:block;
}

.system .txt-box > li .img{
	min-width:inherit;
	width:180px;
	margin:0 auto 20px;
}

.grow h2{
	padding:30px 0;
}

.grow .box-in{
	border:2px solid #3D5CA2;
}

.grow .box-in02{
	border:2px solid #C46752;
}

.grow .box-in h3{
	border-radius:50px;
	top:-15px;
	font-size:14px;
}

.grow .box-in .list-box{
	display:block;
}
	
.grow .box-in .list-box ul li {
	padding:0 0 10px 30px;
}
	
.grow .box-in .check li{
	padding:0 0 10px 30px;
}

.grow .box-in .check li:after{
	width:18px;
	height:18px;
	top:2px;
}

.grow .box-in .list-box .img{
	margin:20px auto;
	min-width:inherit;
	width:200px;
}

.grow .box-in .list-box .img img{
	border-radius:0;
}

.grow .f-img{
	padding:40px 0 0 0;
}

.feature{
	padding:0 20px 40px 20px;
}

.feature h2{
	top:-23px;
}

.feature ul li{
	width:65%;
}

.feature .txt{
	padding:20px 0 0 0;
}
}

/* Refund
-------------------------------------------------------------------*/
.refund .kaso .mv{
	background:url(../img/refund/mv.jpg) no-repeat center center;
	background-size:cover;
}

.genuine{
	text-align:center;
	background:url(../img/refund/genuine-bg.png) no-repeat bottom center;
	background-size:contain;
	padding:0 0 20px 0;
	position:relative;
	z-index:2;
}

.genuine h2{
	position:relative;
	margin:-100px -20px -30px -20px;
}

.genuine .box{
	padding:0 30px;
}

.genuine .box dl{
	position:relative;
	margin:20px 0 10px 0;
}

.genuine .box dl:after{
	content:"";
	width:100%;
	height:1px;
	border-top:1px dashed #B8B8B8;
	position:absolute;
	top:15px;
	left:0;
}

.genuine .box dl dt{
	width:100px;
	margin:0 auto 10px;
	color:#fff;
	background:#B8B8B8;
	border-radius:20px;
	padding:3px 0;
	font-size:14px;
	font-weight:700;
	position:relative;
	z-index:3;
}

.genuine .box dl dd span{
	font-size: clamp(17px, 3vw, 22px);
	display:block;
	text-shadow: 0px 0px 6px #fff;
	font-weight:700;
}

.genuine .box .btn{
	max-width:260px;
	margin:0 auto;
}

.confidence{
	background:url(../img/refund/confidence-bg.jpg) no-repeat center center;
	background-size:cover;
	padding:110px 20px 40px 20px;
	margin:-60px 0 0 0;
	text-align:center;
}

.confidence h2{
	width:75%;
	min-width:280px;
	margin:0 auto;
}

.confidence .txt{
	padding:20px 0 10px 0;
}

@media screen and (max-width: 500px) {
.genuine h2{
	position:relative;
	margin:-70px 0 0 0;
}

.genuine .box{
	padding:0 20px;
}
	
.genuine .box dl dd{
	line-height:1.8;
}	

.genuine .box dl dd span{
	font-size: clamp(17px, 3vw, 22px);
}

.confidence h2{
	width:80%;
}

.confidence .txt{
	padding:10px 0 20px 0;
	line-height:1.8;
}
}

/* DEVELOPER
-------------------------------------------------------------------*/
.developer .kaso .mv{
	background:url(../img/developer/mv.jpg) no-repeat center center;
	background-size:cover;
}

.developer .introduction{
	background:linear-gradient(to top, transparent 80px, rgba(0,0,0,0) 80px), url(../img/developer/introduction-bg.jpg) no-repeat top center;
	background-size: 100% calc(100% - 100px);
	padding:0 25px;
	text-align:center;
}

.developer .introduction ul{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin-top:-70px;
	position:relative;
	z-index:2;
}

.developer .introduction ul li{
	width:49%;
	margin:0 auto;
}

.developer .introduction h2{
	width:75%;
	margin:-10px auto 0;
	min-width:280px;
}

.developer .introduction dl{
	background:#FCF5E7;
	border-radius:12px;
	padding:20px 30px;
}

.developer .introduction dl dt{
	font-size: clamp(18px, 3vw, 22px);
	font-weight:700;
	color:#C46752;
	padding:0 0 10px 0;
}

.developer .introduction dl dd{
	text-align:left;
}

.developer .txt-area{
	padding:40px 0;
}

.developer .txt-area .box-in{
	position:relative;
	background:url(../img/developer/txt-area-bg.jpg) no-repeat top center rgba(248,196,196,0.3);
	background-size:contain;
	margin:0 0 140px 0;
	z-index:2;
}

.developer .txt-area .box-in .tit-box{
	display:flex;
	align-items:center;
	padding:0 30px;
}

.developer .txt-area .box-in .tit-box .img{
	min-width:180px;
	width:180px;
	margin:0 10px 0 0;
}

.developer .txt-area .box-in .tit-box h2 em{
	font-size:16px;
	display:block;
	color:#000000;
	font-weight:500;
}

.developer .txt-area .box-in .tit-box h2 strong{
	display:inline-block;
	padding:0 0 0 10px;
}

.developer .txt-area .box-in .txt{
	padding:20px 40px;
}

.developer .txt-area .box-in .txt-box{
	padding:0 20px;
	margin:20px 0 0 0;
	text-align:center;
}

.developer .txt-area .box-in .txt-box > li{
	padding:30px;
	background:#fff;
	border-radius:12px;
	border:3px solid #D59384;
	margin:0 0 20px 0;
	position:relative;
}

.developer .txt-area .box-in .txt-box > li:nth-child(1) h3{
	width:250px;
	margin:0 auto;
	font-size:18px;
	color:#fff;
	font-weight:700;
	padding:3px 0;
	background:#D59384;
	position:absolute;
	top:-20px;
	left:0;
	right:0;
	border-radius:20px;
}

.developer .txt-area .box-in .txt-box > li:nth-child(2) h3{
	display:inline-block;
	font-weight:700;
	font-size: clamp(18px, 3vw, 22px);
	border-bottom:1px solid #D59384;
	margin:0 0 10px 0;
	color:#C46752;
}

.developer .txt-area .box-in .txt-box > li:nth-child(2) .circle-txt{
	display:inline-block;
	padding:10px 0 0 0;
}

.developer .txt-area .box-in .txt-box > li:nth-child(2) .circle-txt li{
	padding-left:3em;
	text-indent:-3em;
	margin:0 0 0 20px;
}

.developer .txt-area .box-in02 .txt-box > li:nth-child(2) .circle-txt li{
	padding-left:0;
	text-indent:0;
}

.developer .txt-area .box-in .txt-box > li:nth-child(2) .circle-txt li:after {
    left: -20px;
}

.developer .txt-area .box-in .txt-box .f-txt{
	font-weight:700;
	color:#C46752;
	font-size:18px;
	padding:10px 0 0 0;
}

.developer .channel-box{
	padding:0 40px;
	position:relative;
	bottom:-80px;
	margin:-80px 0 0 0;
}

.channel-box .img-box{
	background:#FDFCF4;
	border-radius:12px 12px 0 0;
	padding:20px;
}

.channel-box .img-box .flex-box{
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 0 10px 0;
}

.channel-box .img-box .flex-box .img{
	width:100px;
	min-width:100px;
	margin:0 10px 0 0;
}

.channel-box .img-box .tit{
	font-size: clamp(18px, 3vw, 22px);
	font-weight:700;
	color:#F57F64;
}

.channel-box .f-box{
	background:#F5F4ED;
	padding:10px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:0 0 12px 12px;
}

.channel-box .f-box dl{
	padding:0 10px 0 0;
}

.channel-box .f-box dl .ico{
	width:115px;
}

.channel-box .f-box dl dt{
	font-weight:700;
	font-size:18px;
}

.channel-box .f-box dl dd{
	color:#C46752;
	padding:5px 0 0 0;
}

.channel-box .f-box .qr{
	width:110px;
}

.channel-box .f-box .book{
	width:100px;
	margin:-30px 0 0 0;
}

.developer .message .box01{
	padding:80px 20px 100px 20px;
	background:url(../img/developer/message-bg.jpg) no-repeat center center;
	background-size:cover;
	margin:-180px 0 0 0;
}

.developer .message h2{
	width:85%;
	min-width:300px;
	margin:0 auto;
	padding:20px 0;
}

.developer .message ul{
	padding:0 20px;
}

.developer .message .box02{
	padding:0 20px 40px 20px;
	background:#D59384;
}

.developer .message .box02 dl{
    padding: 30px;
    background: #fff;
    border-radius: 12px;
    border: 2px solid #D59384;
    position: relative;
	top:-60px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.developer .message .box02 dl dt{
	width: 260px;
    margin: 0 auto;
    font-size: 18px;
    color: #fff;
    font-weight: 700;
    padding: 3px 0;
    background: #D59384;
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
	border-radius:20px;
	text-align:center;
}

.developer .consultation{
	padding:50px 20px 30px 20px;
	background:#FDFCF4;
	text-align:center;
	position:relative;
}

.developer .consultation .ico{
	width:260px;
	margin:0 auto;
	position:absolute;
	top:-50px;
	left:0;
	right:0;
}

.developer .consultation h2{
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
	padding:0 0 10px 0;
}

.developer .consultation ul{
	padding:10px 10px 0 10px;
}

@media screen and (max-width: 500px) {
.developer .introduction{
	background-size: 100% calc(100% - 80px);
	padding:0 20px;
}

.developer .introduction ul{
	margin-top:-30px;
}

.developer .introduction h2{
	width:80%;
	margin:0 auto;
}

.developer .introduction dl{
	padding:20px;
}

.developer .txt-area .box-in{
	margin:0 0 120px 0;
}

.developer .txt-area .box-in .tit-box{
	display:block;
	padding:0 20px;
	text-align:center;
}

.developer .txt-area .box-in .tit-box .img{
	min-width:150px;
	width:150px;
	margin:0 auto 20px;
}

.developer .txt-area .box-in .tit-box h2 em{
	font-size:14px;
}

.developer .txt-area .box-in .txt{
	padding:20px;
	line-height:1.8;
}

.developer .txt-area .box-in .txt-box > li{
	border:2px solid #D59384;
	padding: 30px 20px 20px 20px;
}
	
.developer .txt-area .box-in .txt-box > li:nth-child(2){
	padding: 20px;
}

.developer .txt-area .box-in .txt-box > li:nth-child(1) h3{
	width:220px;
	font-size:16px;
	top:-16px;
}

.developer .txt-area .box-in .txt-box > li .t_left{
	line-height:1.8;
}

.developer .txt-area .box-in .txt-box .f-txt{
	font-size:16px;
}

.developer .channel-box{
	padding:0 20px;
}

.channel-box .img-box .flex-box{
	display:block;
	margin:0 0 10px 0;
}

.channel-box .img-box .flex-box .img{
	width:80px;
	min-width:80px;
	margin:0 auto 10px;
}

.channel-box .img-box .tit{
	text-align:center;
}

.channel-box .f-box dl .ico{
	width:100px;
}

.channel-box .f-box dl dt{
	font-size:16px;
}

.channel-box .f-box .qr{
	width:90px;
}

.channel-box .f-box .book{
	width:100px;
	margin:-20px 0 0 0;
}

.developer .message .box01{
	margin:-160px 0 0 0;
}

.developer .message h2{
	width:100%;
}

.developer .message ul{
	padding:0;
}

.developer .message .box02 dl{
    padding: 30px 20px;
	top:-40px;
}

.developer .message .box02 dl dt{
	width: 250px;
    font-size: 16px;
    top: -17px;
}
	
.developer .message .box02 dl dd{
	line-height:1.8;
}

.developer .consultation .ico{
	width:240px;
	top:-40px;
}

.developer .consultation ul{
	padding:10px 0 0 0;
}
}

/* FAQ
-------------------------------------------------------------------*/
.faq .kaso .mv{
	background:url(../img/faq/mv.jpg) no-repeat center center;
	background-size:cover;
}

.faq .faq-area{
	padding:0 20px 30px 20px;
	background:#FDFCF4;
}

.faq .faq-area ul{
	margin-top:-70px;
	position:relative;
	z-index:2;
}

.faq .faq-area ul li{
	border-radius: 12px;
	background: #fff;
	box-shadow: 0px 0px 24px rgba(224, 189, 142, 0.46);
	padding:20px;
	margin:0 0 20px 0;
}

.faq .faq-area ul li dl dt{
	font-size:20px;
	font-weight:700;
	padding:0 0 15px 60px;
	border-bottom:1px solid #B8B8B8;
	position:relative;
	background:url(../img/faq/question.png) no-repeat left top;
	background-size:45px;
}


.faq .faq-area ul li dl dd{
	margin:20px 0 0 0;
	padding:0 0 0 60px;
	background:url(../img/faq/answer.png) no-repeat left top;
	background-size:45px;
}

.faq .faq-area ul li dl dd span{
	font-size:8px;
	vertical-align:middle;
}

.faq .txt-area{
	text-align:center;
}

.faq .txt-area .box01{
	background:url(../img/faq/bg.jpg) no-repeat center center;
	background-size:cover;
	padding:40px 20px 150px 20px;
}

.faq .txt-area .box01 ul li{
	border-radius: 12px;
	background: #fff;
	border: 6px solid #c9e2df;
	padding:0 20px 30px 20px;
	margin:120px 0 0 0;
}

.faq .txt-area .box01 ul li .img{
	width:186px;
	margin:-90px auto 0;
}

.faq .txt-area .box01 ul li h2{
	font-size: clamp(16px, 3vw, 22px);
	font-weight:700;
	padding:10px 0;
}

.faq .txt-area .box01 ul li .txt{
	text-align:left;
}

.faq .txt-area .box02{
	background:#FDFCF4;
	padding:0 40px 40px 40px;
}

.faq .txt-area .box02 .img{
	position:relative;
	top:-110px;
	margin:0 0 -120px 0;
}

.faq .txt-area .box02 .txt{
	line-height:1.8;
}

.faq .txt-area .box02 .txt span{
	color:#F57F64;
	font-size: clamp(16px, 3vw, 20px);
	font-weight:700;
}

@media screen and (max-width: 500px) {
.faq .faq-area ul{
	margin-top:-40px;
}

.faq .faq-area ul li dl dt{
	font-size:16px;
	padding:0 0 15px 40px;
	background:url(../img/faq/question.png) no-repeat left top;
	background-size:30px;
}


.faq .faq-area ul li dl dd{
	margin:15px 0 0 0;
	padding:0 0 0 40px;
	background:url(../img/faq/answer.png) no-repeat left top;
	background-size:30px;
	line-height:1.8;
}

.faq .txt-area .box01 ul li{
	border: 3px solid #c9e2df;
	padding:0 20px 20px 20px;
	margin:80px 0 0 0;
}

.faq .txt-area .box01 ul li .img{
	width:150px;
	margin:-60px auto 0;
}

.faq .txt-area .box02{
	padding:0 20px 40px 20px;
}

.faq .txt-area .box02 .img{
	top:-80px;
	margin:0 0 -60px 0;
}
}

/* PRICE
-------------------------------------------------------------------*/
.price .kaso .mv{
	background:url(../img/price/mv.jpg) no-repeat center center;
	background-size:cover;
}

.price .txt-area{
	text-align:center;
}

.price .txt-area .box01{
	background:url(../img/price/bg.jpg) no-repeat center center;
	background-size:cover;
	padding:0 0 80px 0;
}

.price .txt-area .box01 ul{
	margin-top:-110px;
	display:flex;
	justify-content:center;
	align-items:flex-end;
	flex-wrap:wrap;
	position:relative;
	z-index:2;
}

.price .txt-area .box01 ul li{
	padding:0 10px 10px 10px;
}

.price .txt-area .box01 ul li:not(:last-child){
	max-width:265px;
}

.price .txt-area .box01 ul li:last-child{
	max-width:340px;
}

.price .txt-area .box01 .txt{
	font-size:13px;
}

.price .txt-area .box01 .img{
	margin:0 -20px;
}

.price .txt-area .box02{
	position:relative;
	background:#F8ECDD;
	padding:0 20px 40px 20px;
}

.price .txt-area .box02 .ico{
	position:absolute;
	left:0;
	right:0;
	margin:0 auto;
	top:-80px;
	width:344px;
}

.price .txt-area .box02 h2{
	display:inline-block;
	margin:0 0 20px 0;
	position:relative;
	font-size: clamp(20px, 5vw, 30px);
	font-weight:700;
}

.price .txt-area .box02 h2:after{
	display:block;
	content:"";
	width:1px;
	height:40px;
	background:#C46752;
	position:absolute;
	left:-30px;
	top:7px;
	transform: rotate(-32deg);
}

.price .txt-area .box02 h2:before{
	display:block;
	content:"";
	width:1px;
	height:40px;
	background:#C46752;
	position:absolute;
	right:-30px;
	top:7px;
	transform: rotate(32deg);
}

.price .txt-area .box02 .huki {
	font-size: clamp(16px, 3vw, 22px);
    background: #D59384;
    border-radius: 50px;
	font-weight:700;
}

.price .txt-area .box02 .huki:after{
    border-top: 10px solid #D59384;
}

@media screen and (max-width: 500px) {
.price .txt-area .box01 ul{
	margin-top:-40px;
}

.price .txt-area .box01 ul li{
	padding:0 10px 10px 10px;
}

.price .txt-area .box01 ul li:not(:last-child){
	width:50%;
}

.price .txt-area .box01 ul li:last-child{
	width:100%;
	max-width:320px;
}

.price .txt-area .box01 .txt{
	font-size:13px;
}

.price .txt-area .box01 .img{
	margin:0;
}

.price .txt-area .box02 .ico{
	top:-70px;
	width:320px;
}

.price .txt-area .box02 h2:after{
	height:30px;
}

.price .txt-area .box02 h2:before{
	height:30px;
}

.price .txt-area .box02 .huki {
	margin:15px 0 0 0;
}

.price .txt-area .box02 .huki:after{
    border-top: 8px solid #D59384;
}
}

/* STUDENT
-------------------------------------------------------------------*/
.student .kaso .mv{
	background:url(../img/student/mv.jpg) no-repeat center center;
	background-size:cover;
}

.student .txt-area{
	background:url(../img/student/bg02.jpg);
	background-size:550px;
}

.student .txt-area .box01{
	background:url(../img/student/bg.jpg) no-repeat bottom center;
	background-size:cover;
	padding:0 35px 20px 35px;
	text-align:center;
	position:relative;
}

.student .txt-area .box01 h2{
	position:absolute;
	top:-100px;
	left:0;
	right:0;
	margin:0 auto;
	z-index:3;
	padding:0 35px;
}

.student .txt-area .box01 ul{
	display:flex;
	justify-content:center;
	position:relative;
	top:-20px;
}

.student .txt-area .box01 ul li{
	padding:0 5px;
}

.student .txt-area .box02{
	text-align:right;
	position:relative;
	padding:0 20px 20px 20px;
}

.student .txt-area .box02 .img{
	width:250px;
	position:absolute;
	left:0;
	top:0;
}

.student .txt-area .box02 .tit-box{
	display:inline-block;
	text-align:left;
	width:325px;
	position:relative;
	z-index:2;
	padding:30px 0;
}

.student .txt-area .box02 h3{
	font-size: clamp(16px, 3vw, 22px);
	font-weight:700;
}

.student .txt-area .box02 p{
	text-shadow: 0px 0px 6px #fff;
}

.student .txt-area .box02 .txt{
	font-size: 14px;
}

.student .txt-area .box02 .movie-box{
	text-align:center;
}

.student .txt-area .box02 .movie-box h3{
	width:245px;
	margin:0 auto;
}

.student .txt-area .box02 .movie-box .txt{
	font-size:17px;
	font-weight:700;
	padding:20px 0 20px 0;
}

.student .txt-area .box02 .movie-box ul li{
	padding:0 0 20px 0;
}

.student .txt-area .box02 .movie-box ul li .photo{
	width:120px;
	margin:0 auto 10px;
}

.student .txt-area .box02 .movie-box ul li .kome{
	font-size:14px;
	padding:20px 0 0 0;
}

@media screen and (max-width: 500px) {
.student .txt-area .box01{
	padding:60px 15px 20px 15px;
}

.student .txt-area .box01 h2{
	top:-40px;
	padding:0 15px;
}

.student .txt-area .box01 ul{
	top:auto;
}

.student .txt-area .box02{
	text-align:right;
	position:relative;
	padding:0 20px 20px 20px;
}

.student .txt-area .box02 .img{
	width:150px;
	left:auto;
	right:0;
	transform: scaleX(-1);
}

.student .txt-area .box02 .tit-box{
	display:block;
	width:100%;
	padding:30px 0;
}
	
.student .txt-area .box02 h3 {
	padding:10px 0;
}

.student .txt-area .box02 .movie-box h3{
	width:230px;
}

.student .txt-area .box02 .movie-box .txt{
	font-size:16px;
}

.student .txt-area .box02 .movie-box ul li .photo{
	width:110px;
}

.student .txt-area .box02 .movie-box ul li .kome{
	font-size:13px;
	text-align:left;
}
}
/* MOVIE
-------------------------------------------------------------------*/
.movie .kaso .mv{
	background:url(../img/movie/mv.jpg) no-repeat center center;
	background-size:cover;
}

.movie .movie-area{
	position:relative;
	text-align:center;
	background:#E7F8F7;
}

.movie .movie-area .t-img{
	width:100px;
	position:absolute;
	left:0;
	right:0;
	margin:0 auto;
	top:-90px;
}

.movie .movie-area h2{
	padding:10px;
	color:#fff;
	font-size:18px;
	font-weight:700;
	background:#F57F64;
}

.movie .movie-area .huki{
	font-weight:700;
	margin:0 0 35px 0;
}

.movie .movie-area .box01{
	padding:30px 35px 60px 35px;
}

.movie .movie-area ul li{
	padding:0 0 30px 0;
}

.movie .movie-area ul li h4{
	font-size:14px;
	font-weight:700;
	padding:10px 0;
}

.movie .movie-area ul li .txt{
	font-size:14px;
}

.movie .movie-area .box02{
	background:#D64545;
	color:#fff;
	border-radius:80px 80px 0 0;
	position:relative;
	padding:0 35px 40px 35px;
}

.movie .movie-area .box02 .huki{
	position:relative;
	top:-20px;
	background: #000000;
	margin:0 0 15px 0;
}

.movie .movie-area .box02 .huki:after {
    border-top: 10px solid #000000;
}

.movie .movie-area .box02 .channel-box{
	text-align:left;
}

.movie .movie-area .box02 .channel-box .img-box{
	color:#000000;
}

.movie .movie-area .box02 .channel-box .f-box {
	border-top:1px solid #D59384;
}

@media screen and (max-width: 500px) {
.movie .movie-area .t-img{
	width:80px;
	top:-70px;
}

.movie .movie-area h2{
	font-size:16px;
}

.movie .movie-area .box01{
	padding:30px 20px 60px 20px;
}

.movie .movie-area ul li h4{
	font-size:13px;
}

.movie .movie-area ul li .txt{
	font-size:13px;
	text-align:left;
}

.movie .movie-area .box02{
	border-radius:60px 60px 0 0;
	padding:0 20px 40px 20px;
}

.movie .movie-area .box02 .huki:after {
    border-top: 8px solid #000000;
}
}

/* THANKS/404
-------------------------------------------------------------------*/
.thanks_area{
	padding:160px 0;
	text-align:center;
}

.thanks_area h1{
	font-size:28px;
	line-height:1.6em;
	font-weight:600;
	padding:50px 0;
	width:720px;
	border-bottom:1px solid #121B3A;
	margin:0 auto;
}

.thanks_area .txt{
	line-height:2;
	padding:50px 0;
	font-weight:500;
}

.m-btn {
	padding:30px 0 0 0;
}

.m-btn a{
	display:block;
	width:280px;
	box-sizing:border-box;
	height:50px;
	line-height:48px;
	border:1px solid #F57F64;
	background:#F57F64;
	border-radius:40px;
	font-size:16px;
	color:#fff;
	font-weight:600;
}

.m-btn a:hover{
	background:#fff;
	color:#F57F64;
}

.thanks_area .m-btn a {
    width: 200px;
    padding: 0;
	margin:0 auto;
	text-align:center;
}
@media screen and (max-width: 800px) {
.thanks_area{
	padding:100px 20px;
	text-align:left;
}

.thanks_area h1{
	font-size:20px;
	padding:30px 0;
	box-sizing:border-box;
	width:100%;
	text-align:center;
}

.thanks_area .txt{
	padding:30px 0 40px 0;
}
	
.thanks_area .m-btn a {
    padding: 10px 35px 10px 10px;
}
}