@charset "utf-8";

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,select,p,blockquote,th,td { margin:0;padding:0;}
table {border-collapse:collapse;border-spacing:0;}
fieldset,img { border:0;vertical-align:bottom;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
ol,ul{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after {content:'';}abbr,acronym { border:0;}
a{outline:none;}

/* clearfix */
.clearfix{zoom:1;}
.clearfix:after{content:""; display: block; clear: both; height: 0; visibility:hidden;}
.clear {clear:both; line-height:0;}

/* wordBreak */
table.wordBreak{word-break:break-all;}

table.comment {width: 100%;background: #cccccc;}
em{font-weight:bold;}
form input{font-family:MS UI Gothic;}

/*********************************
Base
*********************************/

html{font-size:16px;scroll-behavior:smooth;}
body{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;color:#5d514a;line-height:1.5;background:#fffdfb;font-size:1rem;letter-spacing: 0.5px;}

body *{-webkit-box-sizing: border-box;box-sizing: border-box;}
img{max-width:100%;height:auto;}
a{text-decoration:none;color:inherit;transition:.3s;}
a:hover{opacity:.7;}
.wrapper{max-width:1080px;margin:0 auto;padding:0 20px;}

h2.def_title{font-size:1.375rem;font-weight:bold;text-align:center;margin:0 auto 20px;}
h2.def_title > span{display:inline-block;padding:0 60px;position:relative;}
h2.def_title > span::after,h2.def_title > span::before{content:"";display:block;position:absolute;top:0;height:100%;width:60px;background:none 50% 50% no-repeat;-webkit-background-size:auto 24px;background-size:auto 24px;}
h2.def_title > span::after{background-image:url(../img/def_title_after.png);left:0;}
h2.def_title > span::before{background-image:url(../img/def_title_before.png);right:0;}

header{margin-bottom:30px;padding-top:80px;}

.navigation{background-color:rgba(255,255,255,0.8);position:fixed;top:0;left:0;width:100%;height:80px;z-index:100;}
.navigation .wrapper{padding-top:10px;padding-bottom:10px;position:relative;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;justify-content: space-between;}
.navigation nav ul.sns{display: none;}
.navigation h1{width:180px;height:60px;text-indent:150%;overflow:hidden;white-space:nowrap;
background:url(../img/logo.png) 50% 50% no-repeat;-webkit-background-size:contain;background-size:contain;}

.main_visual {text-align: center;position:relative;}
.main_visual img{max-width:1080px;width:100%;}

.main_visual .license {width: 370px;position: absolute;bottom: -20px;padding: 15px;border-radius: 10px;border: 2px solid #edd3ad;background: rgba(255,255,255,0.95);text-align: left;}
.main_visual .license p {font-weight: bold;padding: 0 5px 5px;border-bottom: 1px solid #edd3ad;margin-bottom: 5px;font-style: italic;}
.main_visual .license li {font-size: 15px;font-weight: bold;font-style: italic;}

.cont_about{margin-bottom:40px;background-color:#fcf7f3;}
.cont_about .wrapper{padding-top:50px;padding-bottom:40px;}
.cont_about .box{align-items: center;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-direction: row-reverse;background:url(../img/about_box.png) 100% 100% no-repeat;}
.cont_about .image{text-align:center;width:33.33%;margin:0 2.44% 0 2%;overflow:hidden;-webkit-border-radius: 5px;border-radius: 5px;}
.cont_about .text{width:62.23%;padding:15px 0 20px;}
.cont_about .text h2{font-size:1.375rem;font-weight:bold;display:inline-block;padding-right:36px;margin-bottom:10px;background:url(../img/about_title.png) 100% 50% no-repeat;}
.cont_about .text p{line-height:2;}

.cont_fee{margin-bottom:40px;}
.cont_fee .wrapper{text-align:center;}
.cont_fee .boxes{margin-bottom:20px;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;}
.cont_fee .box{text-align:center;width:48.66%;margin-right:2.68%;padding:20px 40px;border:2px solid #cdcdcd;-webkit-border-radius: 5px; border-radius: 5px;background: none 88% 46% no-repeat;background-size: 65% auto;}
.cont_fee .box:last-child{margin-right:0;}

.cont_fee .box h3{font-size:1.25rem;font-weight:bold;margin-bottom:5px;}
.cont_fee .box label{font-size:0.9375rem;}

.cont_fee .box .price_area{position:relative;padding:20px 0 0 60px;text-align:left;margin-left:-20px;}
.cont_fee .box .time{text-align:center;position:absolute;top:10px;left:0;background-color:#cdcdcd;width:48px;height:48px;padding:11px 0 15px;font-size:20px;color:#fff;font-weight:bold;-webkit-border-radius: 50%; border-radius: 50%;}
.cont_fee .box .time .unit{font-size:0.875rem;}

.cont_fee .box .before{padding-bottom:40px;position:relative;background:none 10% 90% no-repeat;-webkit-background-size:14px auto;background-size:14px auto;}
.cont_fee .box .before > *{display:block;}
.cont_fee .box .before .sub{font-size:0.9375rem;}
.cont_fee .box .before .price{font-size:1.25rem;}
.cont_fee .box .before .price .unit{font-size:1rem;}
.cont_fee .box .before .price .tax{font-size:0.875rem;}

.cont_fee .a_box .before {background-image: url(../img/a_arrow.png);}
.cont_fee .w_box .before {background-image: url(../img/w_arrow.png);}

.cont_fee .box .after > *{display:block;}
.cont_fee .box .after .sub{font-size:0.9375rem;}
.cont_fee .box .after .price{font-size:2.5rem;font-weight:bold;line-height: 1.1;}
.cont_fee .box .after .price .unit{font-size:1.5rem;}
.cont_fee .box .after .price .tax{font-size:0.875rem;}

.cont_fee .box ul{max-width:380px;margin:20px auto 0;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;justify-content: space-around;}
.cont_fee .box li{font-size:0.875rem;max-width:120px;width:32%;padding:3px 0;text-align:center;background-color:#cdcdcd;border:1px solid #cdcdcd;-webkit-border-radius: 10px; border-radius: 10px;}

.cont_fee .a_box{background-color:#fbf7f3;border-color:#f9e3df;background-image: url(../img/a_bg.png);}
.cont_fee .a_box h3{color:#de5873;}
.cont_fee .a_box .time{background-color:#de5873;}
.cont_fee .a_box .after{color:#de5873;}
.cont_fee .a_box li{background-color:#f9e9e7;color:#de5873;border-color:#f5dedc;}

.cont_fee .w_box{background-color:#f8f8f6;border-color:#d8e1eb;background-image: url(../img/w_bg.png);}
.cont_fee .w_box h3{color:#4672b8;}
.cont_fee .w_box .time{background-color:#4672b8;}
.cont_fee .w_box .after{color:#4672b8;}
.cont_fee .w_box li{background-color:#eceff3;color:#4672b8;border-color:#e3e9f2;}

.cont_fee .memo{width:90%;padding:8px 20px;border:1px solid #f1e4d4;-webkit-border-radius: 5px; border-radius: 5px;margin-right:auto;margin-left:auto;}

.cont_feature{margin-bottom:40px;}
.cont_feature .wrapper{text-align:center;}

.cont_feature .boxes{text-align:left;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;}
.cont_feature .box{padding:20px 10px;width:23.33%;margin-right:1.6%;border:1px solid #f5e9db;-webkit-border-radius: 5px; border-radius: 5px;}
.cont_feature .box:last{margin-right:0;}
.cont_feature .box .title{padding:20px 10px 20px 60px;margin-bottom:10px;background:none 0% 50% no-repeat;-webkit-background-size:auto 52px;background-size:auto 52px;}
.cont_feature .box .title h3{font-size:1.125rem;font-weight:bold;}
.cont_feature .box p{font-size:0.875rem;padding-left:20%;}

.cont_feature .box_01 .title {background-image: url(../img/feature_icon_01.png);}
.cont_feature .box_02 .title {background-image: url(../img/feature_icon_02.png);}
.cont_feature .box_03 .title {background-image: url(../img/feature_icon_03.png);}
.cont_feature .box_04 .title {background-image: url(../img/feature_icon_04.png);}

.cont_feature .box_04 .title{padding-left:50px;}


.cont_flow{margin-bottom:40px;}
.cont_flow .wrapper{text-align:center;}

.cont_flow .steps{text-align:left;display:-webkit-flex;display:flex;padding: 0 30px;}
.cont_flow .step{width:19.04%;/** max-width:184px; **/position:relative;margin-right:1.19%;padding:0 5px;position:relative;}
.cont_flow .step::after{width:41.66%;position:absolute;height:100%;top:0;right:0;background:none 50% 50% no-repeat;}
.cont_flow .step:last{margin-right:0;}
.cont_flow .step .image{text-align:center;position:relative;width:104px;margin:0 auto 10px;}
.cont_flow .step .num{top:0px;left:-8px;width:30px;height:30px;position:absolute;top:-5px;left:-5px;font-size:20px;padding:6px 0 4px;line-height:20px;text-align:center;color:#fff;background-color:#e08782;-webkit-border-radius: 50%; border-radius: 50%;}
.cont_flow .step h3{margin-bottom:10px;font-size:0.9375rem;font-weight:bold;text-align:center;}
.cont_flow .step p{font-size:0.875rem;}

.cont_flow .step::after {content: "";width: 0;height: 0;border-left: 10px solid transparent;border-right: 10px solid transparent;border-top: 15px solid #f47f90;transform: rotate(-90deg) translateY(-50%);position: absolute;top: 50px;right: -11%;}
.cont_flow .step_05::after {display: none;}

.cont_subsection{margin-bottom: 30px;}
.cont_subsection .wrapper{}

.cont_subsection .area{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;
justify-content: space-between;}
.cont_subsection .box{width:49%;}
.cont_subsection .in_box{position:relative;background-color:#fbf4ee;-webkit-border-radius: 10px; border-radius: 10px;padding:20px 20px 10px;border:2px solid #fbf4ee;height: 100%;}

.cont_subsection h2{font-size:1.125rem;font-weight:bold;margin-bottom:10px;}
.cont_subsection .box:first-child h2{padding-left:38px;}

.cont_subsection table{width:100%;}
.cont_subsection th,
.cont_subsection td{padding:5px 10px;}
.cont_subsection th{color:#947966;width:135px;}
.cont_subsection th > span {font-size:0.875rem;display: block;padding-left: 32px;background: none 0% 50% no-repeat;background-size: auto 16px;font-weight: bold;}
.cont_subsection th > span.icon_01 {background-image: url(../img/icon_s_01.png);}
.cont_subsection th > span.icon_02 {background-image: url(../img/icon_s_02.png);}
.cont_subsection th > span.icon_03 {background-image: url(../img/icon_s_03.png);}
.cont_subsection th > span.icon_04{background-image: url(../img/icon_s_04.png);}
.cont_subsection td span{font-size:0.8125rem;}

.cont_subsection .tea{font-size:0.875rem;margin-top:10px;padding:15px 70px 15px 20px;-webkit-border-radius: 5px; border-radius: 5px;border:1px solid #f5e0d8;background:url(../img/bg_tea.png) 100% 100% no-repeat #faefe9;background-size: 77px auto;}

.cont_subsection .address{}
.cont_subsection .icon{position:absolute;width:96px;height:96px;top:20px;right:40px;}
.cont_subsection .map{margin-top:10px;}
.cont_subsection .map > div{height:150px;}
.cont_subsection .map iframe{width:100%;height:100%;display:block;}

.cont_subsection .root {margin-top: 10px;padding: 5px;font-size: 13px;}
.cont_subsection .root a {color: #df5b70;text-decoration: underline;}


footer{background-color:#fae3de;padding:16px 0 8px;text-align:center;position:relative;}
footer::before,footer::after{width:240px;height:150px;content:"";background:none 50% 50% no-repeat;-webkit-background-size:auto 100%;background-size:auto 100%;position:absolute;bottom:0;}
footer::before{background-image:url(../img/footer_bg_left.png);left:0;background-position:0% 100%;}
footer::after{background-image:url(../img/footer_bg_right.png);right:0;background-position:100% 100%;}

footer .box{position:relative;line-height:1;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;max-width:764px;margin-right:auto;margin-left:auto;font-weight: bold;}
footer .box >div{width:50%;}
footer .box .price{padding-top:5px;position:relative;border-right:2px solid #f3bfbc;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;flex-direction: row-reverse;}

footer .price_sub{position:absolute;top:0;left:0;width:102px;height:102px;background:url(../img/footer_circle.png) 50% 50% no-repeat;-webkit-background-size:contain;background-size:contain;text-indent:150%;overflow:hidden;white-space:nowrap;}
footer .price_main{width:253px;text-align:center;}
footer .price_main .label{font-size:0.875rem;margin-bottom:10px;}
footer .price_main .in_price{color:#df5b70;font-weight:bold;font-style:italic;}
footer .price_main .num{font-size:3.25rem;}
footer .price_main .unit{font-size:1.125rem;}
footer .price_main .tax{font-size0.75rem;}

footer .contact{padding:10px 20px 5px;font-weight:bold;position:relative;}
footer .contact .title{margin-bottom:10px;font-size:0.875rem;}
footer .contact .tel{font-size:2rem;margin-bottom: 5px;}
footer .contact .tel a{display:block;padding-left:42px;background:url(../img/icon_phone.png) 0% 50% no-repeat;-webkit-background-size:31px auto;background-size:31px auto;text-align: left;max-width: 290px;margin: 0 auto;}
footer .contact .line{display: block;content: "";position: absolute;width: 147px;height: 92px;right: -90px;bottom: 24px;z-index:90;}

footer .copy{margin-top:10px;font-size:0.75rem;position:relative;}


@media screen and (min-width:1081px) {
	.main_visual .license{left: 50%;margin-left: 150px;}
}

@media screen and (max-width:1080px) {
	.main_visual .license{right:20px;}
}

@media screen and (min-width:1024px) {
	
	.navigation nav{width:680px;}
	.navigation ul{height:60px;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;align-items: center;}
	.navigation ul li{width:16.374%;}
	.navigation li a{display:block;padding:21px 5px 18px;font-size:0.875rem;text-align:center;font-weight: bold;}
	.navigation .close{display:none;}

	.navigation ul li:nth-child(1){width:16.959%;}
	.navigation ul li:nth-child(6){width:17.543%;}

	.navigation li.contact{margin-right:0;}
	.navigation li.contact a{color:#fff;background-color:#de8281;padding:10px 5px 8px}

	.menu_button{display:none;}
	.cont_fee .box .label br{display:none;}
	.cont_fee .memo br{display:none;}
}

@media screen and (max-width:1023px) {
	header{margin-bottom:0;padding-top:70px;}

	.navigation{height:70px;}
	.navigation .wrapper{padding:10px 20px;}
	.navigation h1{width:150px;height:50px;}
	
	.navigation nav {display: flex;overflow:hidden;position: fixed;z-index: 200;width: 100%;height:0;opacity:0;background: rgba(242,238,229,.95);top: 0;left: 0;align-items: center;justify-content: center;-webkit-transition: all 0.4s ease-in-out;transition: all 0.4s ease-in-out;}
	.navigation nav.on{height: 100vh;opacity:1;flex-direction: column;}
	.navigation nav ul {padding: 30px 15px 20px;max-width: 480px;margin: 0 auto;text-align: center;}
	.navigation nav li {padding: 10px 0;font-size: 1.125rem;}
	.navigation nav li br {display: none;}
	.navigation .close{display: block;text-align:center;width: 32px;height: 30px;position: absolute;top: 20px;right: 20px;font-size: 28px;line-height: 32px;z-index: 400;background: #333;color: #fff;border-radius: 50%;}
	.navigation nav ul.sns{display: flex;justify-content: space-between;gap: 0 30px;padding-top: 0;padding-bottom: 30px;width: 215px;}
	.navigation nav ul.sns li{width: calc(50% - 15px);}

	.menu_button {width: 32px;height: 30px;position: absolute;top: 20px;right: 20px;}
	.menu_button span,
	.menu_button::after,.menu_button::before{position:absolute;left:0;width:100%;height:2px;display:block;background-color:#421500;}
	.menu_button::after,.menu_button::before{content:"";}
	.menu_button span{top:50%;margin-top:-1px;text-indent:150%;overflow:hidden;white-space:nowrap;}
	.menu_button::after{top:0%;}
	.menu_button::before{bottom:0%;}
	
	.navigation .close:hover,
	.menu_button:hover{cursor:pointer;}
	
	.cont_about .box {display: block;}
	.cont_about .text h2 {margin-right: auto;margin-left: auto;}
	.cont_about .text {width: 100%;text-align: center;}
	.cont_about .image {max-width: 480px;margin: 0 auto;width: 100%;}
	.cont_about .box {padding-bottom: 95px;}
	.cont_about .wrapper {padding-bottom: 20px;}
	
	.cont_fee .after {margin-left: -20px;}
	.cont_fee .box {padding: 20px;}
	.cont_fee .box .price_area {padding-left: 80px;}
	.cont_fee .box .time {left: 20px;}
	.cont_fee .box li {font-size: 0.8125rem;letter-spacing: 0;}
	
	.cont_flow .steps {flex-wrap: wrap;justify-content: center;max-width:840px;margin-right:auto;margin-left:auto;}
	.cont_flow .step {width: 31.33%;margin-right: 3%;}
	.cont_flow .step_04,.cont_flow .step_05 {margin-top: 30px;}
	.cont_flow .step_05{margin-right:0;}
	.cont_flow .step.step_04::after,
	.cont_flow .step.step_05::after {display: block;right: auto;left: -5%;}
	.cont_flow .step .num{left:-15px;width:40px;height:40px;padding:11px 0 9px;}
	.cont_flow .step .image{width:90%;max-width:140px;}
	.cont_flow .step p{margin-right:auto;margin-left:auto;max-width:180px;}
	
	.cont_subsection .area {display: block;}
	.cont_subsection .box {width: 100%;}
	.cont_subsection .in_box {height: auto;max-width: 540px;margin: 0 auto;background: #fff;padding-bottom: 20px;}
	.cont_subsection .box:first-child {margin-bottom: 20px;}
	.cont_subsection .icon{width:80px;height:80px;top:26px;right:20px;}
	.cont_subsection .map {position: relative;}
	
	.cont_subsection .map:before{ padding-top: 56.25%;content:"";display: block; }
	.cont_subsection .map > div{ position: absolute;top: 0;left: 0;width: 100%;height: 100%; }
	
	.cont_subsection .wrapper {background: #fbf4ee;padding-top: 40px;padding-bottom: 40px;}
	.cont_subsection {margin: 0;}
	
	footer .contact .line{right: -15px;bottom: 90px;}
}

@media screen and (min-width:768px) and ( max-width:1023px){
	.cont_flow .step_03{margin-right:0;}
	.cont_flow .step_03::after {display: none;}
}

@media screen and (min-width:768px){
	.sp{display:none;}
	
	a[href^="tel:"] {
	    pointer-events: none;
	}
}

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

	body {font-size: 14px;position:relative;}
	.pc{display:none;}

	.cont_about .wrapper{padding-top:40px;}
	.cont_about .text p br {display: none;}
	.cont_about .text p {text-align: left;}
	.cont_about .image {width: 80%;max-width: 360px;}
	.cont_about .text {max-width: 480px;margin: 0 auto;}
	.cont_about .box {background-size: 210px auto;background-position: 100% 100%;margin: 0 -20px;padding:0 20px 65px;}

	.cont_fee .box {margin-right: 0;width: 100%;}
	.cont_fee .boxes {display: block;}
	.cont_fee .a_box {margin-bottom: 20px;}
	.cont_fee .memo {width: 100%;text-align:left;}
	.cont_fee .memo br{display:none;}
	
	.cont_feature .box {width: 49%;margin-right: 2%;}
	.cont_feature .box_02,.cont_feature .box_04 {margin-right: 0;}
	.cont_feature .box_03,.cont_feature .box_04 {margin-top: 10px;}
	.cont_feature .box p {max-width: 250px;padding-left:10px;}
	.cont_feature .box p br{display:none;}
	.cont_feature .boxes {max-width: 520px;margin: 0 auto;}
	
	.cont_flow .steps{padding:0;max-width:520px;}
	.cont_flow .step {width: 49%;margin-right: 2%;padding:0 20px;}
	.cont_flow .step.step_02::after{display:none;}
	.cont_flow .step_02,
	.cont_flow .step_04{margin-right:0;}
	.cont_flow .step_03{margin-top: 30px;}
	.cont_flow .step.step_03::after {display: block;right: auto;}
	
	.cont_flow .step_03,
	.cont_flow .step_04,
	.cont_flow .step_05{padding:0 10px 0 30px;}
	
	.cont_flow .step.step_03::after,
	.cont_flow .step.step_04::after,
	.cont_flow .step.step_05::after {left:10%;}
	
	.cont_flow .step .image{max-width:120px;}
	.cont_flow .step p{margin-left:-10px;margin-right:-10px;}
	.cont_flow .step p br{display:none;}
	
	.cont_subsection .box:first-child h2 {padding-left: 0;}

	footer {padding: 24px 0 13px;}
	footer::before, footer::after{bottom:38px;}
	footer .box {display: block;}
	footer .box > div {width: 100%;}
	footer .box .price {justify-content: center;flex-direction: row;border: none;padding: 10px 0;height: 100px;}
	footer .price_sub {position: static;width: 90px;height: 90px;margin-top: -10px;}
	footer .price_main {width: 220px;}
	footer .contact_box{display: flex;flex-direction: column-reverse;padding-bottom: 30px;}
	footer .contact .tel_box{margin-top:20px;}
	footer .contact .tel{font-size: 1.7rem;margin-bottom: 5px;}
	footer .contact .tel a {background-size: 26px auto;padding-top: 5px;padding-left: 34px;max-width: 230px;background-position: left;}
	footer .price_main .label {margin-bottom: 5px;text-indent: -48px;}
	footer .copy{margin-top:20px;}
	

	footer .contact .line{position: relative;bottom: auto;right: auto;width: 100%;height: 60px;margin-top: 5px;}
	footer .contact .line a{box-sizing: border-box;display: flex;justify-content: center;align-items: center;max-width: 260px;height: 60px;margin: 0 auto;background: #FFF;border-radius: 5px;border: 2px solid #06C755;padding: 5px 20px;}
	footer .contact .line a img{height: 100%;}

	.sp_toLine{position: fixed;bottom: -60px;left: 0;width: 100%;min-height: 60px;text-align: center;z-index: 100;padding-bottom: 15px;opacity: 0;-webkit-transition: all 0.2s ease-in-out;transition: all 0.2s ease-in-out;}
	.sp_toLine.on{opacity:1;bottom:0;}
}


