@charset "UTF-8";

/* ----------------------------------------------------------------------------------------------------
*  基本情報
* --------------------------------------------------------------------------------------------------*/

html,body{	height:100%;}
html{
	font-size:62.5%;
    overflow-y: scroll;
}

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height: 100%;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-family:"M PLUS 1p","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	text-align: left;
	color:#000;
	font-size: 1.4rem;
	letter-spacing: -0.03em;
}

input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family:"M PLUS 1p","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
}

body a {
	text-decoration:none;
	color:#000;
}
body{
	min-width:1040px;
}

body.confirm,body.thanks{
	background: #fff8d3;
}

img{
	vertical-align: bottom;
	max-width: 100%;
}

*,*:after,*:before{
	box-sizing: border-box;
}

.fade:hover,a:hover img{
	opacity: 0.7;
}
.fade,a img{
	transition: opacity 0.3s ease-out;
}

.webfont,.webfont *{
	transform: rotate(0.001deg);
}
.chrome .webfont,.chrome .webfont *{
	transform: rotate(0.05deg);
}

.wrap{
	width: 1040px;
	margin: 0 auto;
}

.flex{
	display: flex;
}


.btn{
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	position: relative;
	display: block;
	border: 2px solid #005e32;
	background: #005e32;
	text-align: center;
	text-decoration: none;
	transition: 0.3s;
	border-radius: 5px;
	padding: 17px 15px 17px 0;
}
.btn:hover {
	color: #005e32;
	opacity: 1;
}
.btn::before{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}
.btn:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}
.btn::after{
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 1;
	transition: 0.3s;
}
.btn:hover::after{
	border-top-color: #005e32;
	border-right-color: #005e32;
}
.btn span{
	position: relative;
	z-index: 2;
	display: block;
}


.sec_ttl{
	font-size: 4.5rem;
	line-height: 1.22;
	color: #fff;
	font-weight: 800;
	text-align: center;
	background: #005e32;
	padding: 26px 0;
	position: relative;
}
.sec_ttl::before{
	content: '';
	position: absolute;
	bottom: -34px;
	left: 0;
	right: 0;
	width: 41px;
	height: 35px;
	margin: auto;
	background: url(../img/sec_ttl_arrow.png) no-repeat center;
}



/* ------------------------------
    header
------------------------------ */

header{
	height: 82px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	padding: 15px 50px 15px 15px;
	background: #fff;
	z-index: 999;
}
header .flex{
	align-items: center;
	justify-content: space-between;
}
header .right .tel .number{
	color: #ff9000;
	font-weight: 800;
	font-size: 3.32rem;
	padding-left: 40px;
	position: relative;
}
header .right .tel .number::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 34px;
	height: 33px;
	margin-top: -17px;
	background: url(../img/header_tel01.png) no-repeat center;
}
header .right .tel .open{
	font-size: 1.4rem;
	font-weight: 800;
	padding-left: 40px;
	margin-top: 3px;
}
header .right .contact_btn{
	width: 240px;
	margin-left: 20px;
}
header .logo {
    width: 176px;
}


/* ------------------------------
    main
------------------------------ */

main{
	display: block;
	padding-top: 82px;
}


/*---top-----*/

#top{
	background: #005e32;
	padding: 10px 0;
}
#top p{
	font-size: 2.6rem;
	color: #fff;
	font-weight: 800;
	text-align: center;
}
#top p span{
	font-size: 2.3rem;
	color: #005e32;
	background: #fff;
	padding: 0px 20px;
	border-radius: 20px;
	margin-right: 5px;
}


/*---mv-----*/

#mv{
	padding: 50px 0 35px;
	background: url(../img/mv_bg01.jpg) no-repeat center /cover;
}
#mv .wrap{
	padding: 0 37px;
}
#mv h2{
	font-size: 3.5rem;
	line-height: 1.5;
	color: #fff;
	font-weight: 800;
	text-align: center;
}
#mv h2 span{
	display: inline-block;
}
#mv h2 .small{
	font-size: 80%;
}
#mv h2 .big{
	font-size: 5.7rem;
	font-weight: 900;
}
#mv h2 .green{
	font-size: 7rem;
	line-height: 1;
	font-weight: 900;
	padding: 3px 5px;
	border-radius: 5px;
	background: #005e32;
	margin-top: 10px;
}
#mv h2 .green + .green{
	margin-left: 10px;
}
#mv ul{
	margin-top: 15px;
	justify-content: space-between;
}
#mv ul li{
	width: 310px;
	padding: 7px;
	background: #fff;
}
#mv ul li dl{
	height: 100%;
	padding: 20px 10px;
	border: 3px solid #ff9000;
}
#mv ul li dl dt{
	font-size: 3.3rem;
	font-weight: 800;
	text-align: center;
	color: #ff1f1f;
	padding-bottom: 8px;
	position: relative;
}
#mv ul li dl dt::before{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 85%;
	height: 3px;
	background: #ff9000;
}
#mv ul li dl dt.fs28{
	font-size: 2.8rem;
	padding-top: 2px;
	padding-bottom: 13px;
}
#mv ul li dl dt .small{
	font-size: 80%;
}
#mv ul li dl dd{
	font-size: 2.4rem;
	line-height: 1.3;
	font-weight: 800;
	text-align: center;
	padding-top: 8px;
}
#mv ul li dl dd.pt14{
	padding-top: 14px;
}
#mv ul li dl dd .green{
	color: #005e32;
	font-size: 120%;
}
#mv ul li dl dd .small{
	font-size: 80%;
}
#mv .note{
	font-size: 1.6rem;
	color: #fff;
	font-weight: 700;
	text-align: right;
	margin-top: 5px;
}


/*---opt-----*/

.opt{
	padding: 30px 0;
	background: #ff9000;
}
.opt .wrap{
	padding: 0 20px;
}
.opt .white{
	justify-content: space-between;
	padding: 30px;
	background: #fff;
}
.opt .white .left{
	width: 455px;
}
.opt .white .left .offer_ttl{
	font-size: 3.6rem;
	color: #fff;
	text-align: center;
	font-weight: bold;
	background: #ff1f1f;
	padding: 12px;
}
.opt .white .left .off_txt {
	margin-top: 10px;
}
.opt .white .left .off_txt p{
	font-size: 3rem;
	font-weight: bold;
	text-align: center;
}
.opt .white .left .off_txt p .small{
	font-size: 80%;
}
.opt .white .left .off_txt p:first-child::before,
.opt .white .left .off_txt p:first-child::after{
	content: '';
	display: inline-block;
	vertical-align: bottom;
	width: 21px;
	height: 38px;
	margin: 0 5px;
}
.opt .white .left .off_txt p:first-child::before{
	background: url(../img/opt_txt_before.png) no-repeat center;
}
.opt .white .left .off_txt p:first-child::after{
	background: url(../img/opt_txt_after.png) no-repeat center;
}
.opt .white .left .off_txt p.price{
	font-size: 6.4rem;
	color: #ff1f1f;
	margin: 0px 0 10px;
}
.opt .white .left .off_txt p.price .yellow{
	font-size: 2.2rem;
	line-height: 1;
	background: #fffc00;
	border-radius: 3px;
	padding: 9px 9px 7px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
}
.opt .white .left .off_txt p.price .big{
	font-size: 120%;
	vertical-align: bottom;
}
.opt .white .left .off_txt p.price .small{
	font-size: 80%;
	vertical-align: bottom;
}
.opt .white .right{
	width: 450px;
}
.opt .white .right .txt{
	font-size: 1.8rem;
	font-weight: 500;
}
.opt .white .right .tel{
	margin-top: 8px;
}
.opt .white .right .tel .number{
	font-weight: 800;
	font-size: 5.2rem;
	padding-left: 57px;
	position: relative;
}
.opt .white .right .tel .number::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 50px;
	height: 53px;
	margin-top: -25px;
	background: url(../img/opt_tel01.png) no-repeat center;
}
.opt .white .right .tel .open{
	font-size: 1.7rem;
	padding-left: 57px;
	font-weight: 600;
}
.opt .white .right .tel .open span{
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	font-weight: 800;
	background: #ff1f1f;
	padding: 6px 7px;
	display: inline-block;
	margin-right: 5px;
}
.opt .white .right .contact_btn{
	margin-top: 8px;
}
.opt .white .right .contact_btn .btn{
	font-size: 2.4rem;
	padding: 31px 15px 31px 0;
}
.opt .white .right .contact_btn .btn::after{
	margin-top: -7px;
	width: 14px;
	height: 14px;
}
.opt .white .right .end_txt{
	font-size: 1.6rem;
	margin-top: 8px;
	font-weight: 500;
}


/*---primise-----*/

#promise{
	padding: 40px 0;
	background: url(../img/promise_img01.png) no-repeat center #fff8d3;
}
#promise .fukidashi{
	font-size: 2.4rem;
	line-height: 1.29;
	color: #fff;
	font-weight: 800;
	text-align: center;
	background: #005e32;
	position: relative;
	max-width: 400px;
	margin: auto;
	padding: 15px 0;
	border-radius: 5px;
}
#promise .fukidashi::before{
	content: '';
	position: absolute;
	bottom: -15px;
	left: 0;
	right: 0;
	margin: auto;
	width: 45px;
	height: 26px;
	background: url(../img/fukidashi_arrow.png) no-repeat center;
}
#promise .promise_ttl{
	font-size: 3.5rem;
	text-align: center;
	font-weight: 800;
	margin-top: 23px;
}
#promise .promise_ttl span{
	line-height: 1;
}
#promise .promise_ttl .small{
	font-size: 80%;
}
#promise .promise_ttl .big{
	font-size: 120%;
	letter-spacing: -0.2em;
}
#promise .promise_ttl .orange{
	font-size: 7.2rem;
	color: #ff9000;
}
#promise .list{
	margin: 15px auto 0;
	max-width: 700px;
	border: 4px solid #ff9000;
	border-radius: 5px;
	background: #fff;
	padding: 35px 40px;
}
#promise .list li{
	font-size: 2.4rem;
	line-height: 1.37;
	font-weight: 700;
	position: relative;
	padding-left: 32px;
}
#promise .list li + li{
	margin-top: 15px;
}
#promise .list li .num{
	font-size: 2.2rem;
	color: #fff;
	font-weight: 800;
	text-align: center;
	background: #005e32;
	display: block;
	width: 28px;
	line-height: 28px;
	border-radius: 3px;
	position: absolute;
	top: 2px;
	left: 0;
}
#promise .list li .yellow{
	color: #ff1c22;
	background: #fffc00;
}


/*---sec01-----*/

#sec01 .wrap{
	padding: 60px 0 30px;
}
#sec01 .top10{
	text-align: center;
}
#sec01 .top10::before,
#sec01 .top10::after{
	content: '';
	display: inline-block;
	vertical-align: bottom;
	width: 54px;
	height: 77px;
	margin: 0 10px;
}
#sec01 .top10::before{
	background: url(../img/sec01_txt_before.png) no-repeat center;
}
#sec01 .top10::after{
	background: url(../img/sec01_txt_after.png) no-repeat center;
}
#sec01 .top10 p{
	font-size: 3rem;
	line-height: 1.4;
	font-weight: 800;
	text-align: center;
	position: relative;
	display: inline-block;
	padding-right: 90px;
}
#sec01 .top10 p .red{
	font-size: 4.8rem;
	line-height: 1;
	color: #ff1f1f;
}
#sec01 .top10 p .num{
	font-size: 5.27rem;
	text-align: center;
	color: #fffc00;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -40px;
	padding-right: 3px;
	width: 80px;
	line-height: 80px;
	background: #ff1f1f;
}
#sec01 .list_wrap{
	position: relative;
	overflow: hidden;
	border: 5px solid #dddddd;
	padding: 24px 35px;
	margin: 20px auto 0;
	border-radius: 5px;
}
#sec01 .list_wrap .img{
	position: absolute;
	top: 0;
	right: 100px;
}
#sec01 .list li{
	font-size: 2.29rem;
	line-height: 1.37;
	font-weight: 700;
	position: relative;
	padding-left: 38px;
}
#sec01 .list li + li{
	margin-top: 8px;
}
#sec01 .list li .num{
	font-size: 1.8rem;
	color: #fff;
	font-weight: 800;
	text-align: center;
	background: #005e32;
	display: block;
	width: 30px;
	line-height: 30px;
	border-radius: 3px;
	position: absolute;
	top: 2px;
	left: 0;
}
#sec01 .list li .yellow{
	color: #ff1c22;
	background: #fffc00;
}
#sec01 .txt{
	font-size: 3rem;
	line-height: 1.2;
	font-weight: 800;
	text-align: center;
	margin-top: 25px;
}
#sec01 .txt img{
	margin-right: 5px;
	vertical-align: sub;
	width: 240px;
}
#sec01 .txt .red{
	font-size: 4.8rem;
	color: #ff1f1f;
	font-weight: 800;
}
#sec01 .txt .small.black{
	color: #000;
	font-size: 80%;
}
#sec01 .arrow{
	text-align: center;
	margin-top: 10px;
}


/*---sec02-----*/

#sec02{
	background: #fff8d3;
}
#sec02 .wrap{
	padding: 56px 0 50px;
}
#sec02 .list{
	justify-content: space-between;
}
#sec02 .list > li{
	width: 325px;
	border-radius: 5px;
	padding: 20px;
}
#sec02 .list > li.orange{
	background: #ff9000;
}
#sec02 .list > li.d-orange{
	background: #ff5a00;
}
#sec02 .list > li.green{
	background: #04a700;
}
#sec02 .list > li dl dt{
	font-size: 2.8rem;
	color: #fff;
	font-weight: 800;
	line-height: 1.07;
	padding-left: 90px;
	position: relative;
	padding-bottom: 13px;
	border-bottom: 3px solid #fff;
}
#sec02 .list > li dl dt span{
	font-size: 2.4rem;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	background: #fff;
	display: block;
	width: 80px;
	margin-top: -33px;
	padding: 14px 5px;
	border-radius: 3px;
}
#sec02 .list > li.orange dl dt span{
	color: #ff9000;
}
#sec02 .list > li.d-orange dl dt span{
	color: #ff5a00;
}
#sec02 .list > li.green dl dt span{
	color: #04a700;
}
#sec02 .list > li ul{
	margin-top: 14px;
}
#sec02 .list > li ul li{
	font-size: 1.8rem;
	line-height: 1.2;
	color: #fff;
	font-weight: 800;
	padding-left: 1em;
	text-indent: -1em;
}
#sec02 .list > li ul li + li{
	margin-top: 5px;
}
#sec02 .reason_box{
	margin-top: 30px;
}
#sec02 .reason_box .reason_num{
	text-align: center;
	font-weight: 800;
	font-size: 5.9rem;
	color: #fff;
	line-height: 0.9;
	padding-top: 16px;
	background: url(../img/sec02_bg01.png) no-repeat center top;
}
#sec02 .reason_box .reason_num .small{
	font-size: 2.1rem;
	letter-spacing: 0;
	line-height: 1;
	display: block;
}
#sec02 .reason_box .box_inner{
	border-radius: 5px;
	background: #fff;
	overflow: hidden;
}
#sec02 .reason_box h3{
	color: #fff;
	font-size: 4.8rem;
	text-align: center;
	font-weight: 800;
	background: #ff9000;
	padding: 25px 0;
}
#sec02 .reason_box .point{
	justify-content: space-between;
	align-items: center;
}
#sec02 .reason_box .point2{
	flex-direction: row-reverse;
}
#sec02 .reason_box .point .txt_area{
	padding: 0 50px 0 40px;
	width: 520px;
}
#sec02 .reason_box .point .txt_area dl dt{
	font-size: 3rem;
	font-weight: 800;
	line-height: 1.33;
	position: relative;
	padding-left: 100px;
}
#sec02 .reason_box .point .txt_area dl dt .color{
	color: #ff9000;
}
#sec02 .reason_box .point .txt_area dl dt .num{
	font-size: 4.2rem;
	text-align: center;
	line-height: 1;
	color: #fff;
	width: 90px;
	height: 90px;
	background: #ff9000;
	border-radius: 50%;
	position: absolute;
	top: -10px;
	left: 0;
	padding-top: 19px;
}
#sec02 .reason_box .point .txt_area dl dt .num::before{
	content: '';
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: 19px;
	height: 19px;
	background: url(../img/sec02_before01.png) no-repeat center;
}
#sec02 .reason_box .point .txt_area dl dt .num .small{
	font-size: 1.59rem;
	display: block;
}
#sec02 .reason_box .point .txt_area dl dd{
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.56;
	margin-left: 100px;
	margin-top: 10px;
	padding: 10px 15px 0 0;
	border-top: 3px dashed #683b00;
}
#sec02 .reason_box2 .reason_num{
	background: url(../img/sec02_bg02.png) no-repeat center top;
}
#sec02 .reason_box2 .point .txt_area dl dt .color{
	color: #ff5a00;
}
#sec02 .reason_box2 h3{
	background: #ff5a00;
}
#sec02 .reason_box2 .point .txt_area dl dt .num{
	background: #ff5a00;
}
#sec02 .reason_box2 .point .txt_area dl dt .num::before{
	background: url(../img/sec02_before02.png) no-repeat center;
}
#sec02 .reason_box3 .reason_num{
	background: url(../img/sec02_bg03.png) no-repeat center top;
}
#sec02 .reason_box3 .point .txt_area dl dt .color{
	color: #04a700;
}
#sec02 .reason_box3 h3{
	background: #04a700;
}
#sec02 .reason_box3 .point .txt_area dl dt .num{
	background: #04a700;
}
#sec02 .reason_box3 .point .txt_area dl dt .num::before{
	background: url(../img/sec02_before03.png) no-repeat center;
}
#sec02 .reason_box3 .ls{
	letter-spacing: -15px;
}
#sec02 .txt{
	font-size: 3rem;
	text-align: center;
	font-weight: 800;
	line-height: 1.4;
	margin-top: 35px;
}
#sec02 .txt .red{
	font-size: 120%;
	color: #ff1f1f;
	background: -webkit-linear-gradient(transparent 70%, #fffc00 70%);
	background: -o-linear-gradient(transparent 70%, #fffc00 70%);
	background: linear-gradient(transparent 70%, #fffc00 70%);
}


/*---sec03-----*/

#sec03 .sec_ttl span{
	font-size: 2.7rem;
	text-align: center;
	color: #005e32;
	background: #fff;
	border-radius: 30px;
	padding: 5px 30px;
	display: inline-block;
	margin: 0 0 5px;
}
#sec03 .wrap{
	padding: 80px 0 50px;
}
#sec03 .list{
	justify-content: space-between;
	flex-wrap: wrap;
}
#sec03 .list li{
	border-radius: 8px;
	border: 4px solid #dddddd;
	position: relative;
	width: 502px;
}
#sec03 .list li:nth-child(n+3){
	margin-top: 40px;
}
#sec03 .list li .num{
	font-size: 4rem;
	color: #fff;
	text-align: center;
	font-weight: 700;
	background: #ff9000;
	position: absolute;
	top: -10px;
	left: 20px;
	width: 79px;
	padding: 18px 0 10px;
}
#sec03 .list li .num::before{
	content: '';
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 79px;
	height: 22px;
	background: url(../img/sec03_before01.png) no-repeat center;
}
#sec03 .list li .img{
	border-radius: 3px 3px 0 0;
	overflow: hidden;
}
#sec03 .list li dl{
	padding: 15px;
}
#sec03 .list li dl dt{
	color: #ff9000;
	font-size: 3rem;
	font-weight: 800;
}
#sec03 .list li dl dd{
	font-size: 1.6rem;
	line-height: 1.62;
	margin-top: 10px;
}
#sec03 .txt{
	font-size: 3rem;
	text-align: center;
	font-weight: 800;
	line-height: 1.4;
	margin-top: 35px;
}
#sec03 .txt .small{
	font-size: 90%;
}
#sec03 .txt .red{
	font-size: 120%;
	color: #ff1f1f;
	background: -webkit-linear-gradient(transparent 70%, #fffc00 70%);
	background: -o-linear-gradient(transparent 70%, #fffc00 70%);
	background: linear-gradient(transparent 70%, #fffc00 70%);
}


/*---sec04-----*/

#sec04{
	background: #fff8d3;
}
#sec04 .wrap{
	padding: 55px 0 50px;
}
#sec04 .voice_wrap{
	background: #fff;
	padding: 0 40px;
}
#sec04 .voice{
	justify-content: space-between;
	padding: 30px 0;
}
#sec04 .voice + .voice{
	border-top: 3px dashed #683b00;
}
#sec04 .voice .img{
	position: relative;
}
#sec04 .voice .img .num{
	font-size: 6rem;
	font-weight: 800;
	line-height: 1;
	color: #ff9000;
	display: block;
	position: absolute;
	top: -13px;
	left: 0;
}
#sec04 .voice dl{
	max-width: 690px;
}
#sec04 .voice dl dt{
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 800;
	color: #ff9000;
}
#sec04 .voice dl dd{
	font-size: 1.6rem;
	line-height: 1.62;
	margin-top: 10px;
}
#sec04 .voice2 .img .num,
#sec04 .voice4 .img .num{
	color: #005e32;
	left: auto;
	right: 0;
}
#sec04 .voice2,
#sec04 .voice4{
	flex-direction: row-reverse;
}
#sec04 .voice2 dl dt,
#sec04 .voice4 dl dt{
	color: #005e32;
}
#sec04 .txt{
	font-size: 3rem;
	text-align: center;
	font-weight: 800;
	line-height: 1.4;
	margin-top: 35px;
}
#sec04 .txt .small{
	font-size: 90%;
}
#sec04 .txt .red{
	font-size: 120%;
	color: #ff1f1f;
	background: -webkit-linear-gradient(transparent 70%, #fffc00 70%);
	background: -o-linear-gradient(transparent 70%, #fffc00 70%);
	background: linear-gradient(transparent 70%, #fffc00 70%);
}


/*---sec05-----*/

#sec05{
	overflow: hidden;
}
#sec05 .wrap{
	padding: 55px 0 50px;
}
#sec05 .border_box{
	border: 4px solid #dddddd;
	border-radius: 8px;
	padding: 30px;
	position: relative;
	background: url(../img/sec05_bg01.jpg) repeat top left;
}
#sec05 .border_box p{
	font-size: 1.8rem;
	text-align: center;
	font-weight: 700;
	line-height: 1.56;
}
#sec05 .border_box p + p{
	margin-top: 20px;
}
#sec05 .border_box p .orange{
	font-weight: 800;
	color: #ff9000;
}
#sec05 .border_box p.end_txt{
	color: #ff1f1f;
	font-size: 2.4rem;
	font-weight: 800;
	line-height: 1.42;
}
#sec05 .border_box .img{
	position: absolute;
	left: -50px;
	bottom: 50px;
}
#sec05 .border_box .img2{
	position: absolute;
	right: -100px;
	bottom: 50px;
}


/*---form-----*/

#form{
	background: #fff8d3;
}
#form .wrap{
	padding: 55px 40px 50px;
}
#form .flex{
	justify-content: space-between;
}
#form form dl{
	width: 465px;
}
#form form dl dt,
#form form dl dd{
	font-size: 1.7rem;
	font-weight: 800;
}
#form form dl dt{
	position: relative;
	padding-left: 10px;
}
#form form dl dt::before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
	height: 20px;
	width: 4px;
	background: #005e32;
	border-radius: 5px;
}
#form form dl dt .must{
	color: #ff1f1f;
}
#form form dl dd + dt{
	margin-top: 15px;
}
#form form dl dd{
	font-weight: 600;
	font-size: 1.4rem;
	margin-top: 15px;
	line-height: 1.4;
	word-break: break-all;
}
#form form dl dd input[type="text"],
#form form dl dd textarea{
	background: #fff;
	height: 45px;
	width: 100%;
	font-size: 1.6rem;
	padding: 5px 5px;
	border: 1px solid #fff;
}
#form form dl dd textarea{
	height: 319px;
	resize: none;
}
#form form .btn{
	font-weight: 900;
	font-size: 2.4rem;
	margin: 35px auto 0;
	width: 456px;
	cursor: pointer;
}
.ie11 #form form .btn{
	padding: 29px 0;
}
#form .about{
	padding: 0 15px;
}
#form .about_wrap{
	background: #fff;
	padding: 30px 40px;
	border-radius: 8px;
	margin-top: 45px;
}
#form .about .ttl{
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
	color: #005e32;
}
#form .about .ttl span{
	border-bottom: 2px solid #005e32;
}
#form .about .addr{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.56;
	margin-top: 15px;
}
#form .about dl dt{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.56;
	margin-top: 15px;
}
#form .about dl dd{
	font-size: 1.8rem;
	line-height: 1.56;
	font-weight: 500;
}

.confirm #form .flex{
	display: block;
	max-width: 465px;
	margin: auto;
}
.confirm #form form dl + dl{
	margin-top: 15px;
}
.thanks #form p{
	display: block;
	max-width: 465px;
	margin: auto;
}
.thanks #form .end{
	font-size: 3rem;
	font-weight: 800;
	text-align: center;
	margin-top: 50px;
}
.thanks #form .txt{
	font-size: 1.6rem;
	font-weight: 600;
	text-align: center;
	margin-top: 30px;
}
.thanks #form .top_btn{
	margin-top: 30px;
}


/* ------------------------------
    footer
------------------------------ */

footer{
	background: #005e32;
	padding: 15px 0;
	position: relative;

	bottom: 0;
	left: 0;
	width: 100%;
}
footer .pagetop{
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	display: block;
}
.confirm footer .pagetop,
.thanks footer .pagetop{
	display: none!important;
}
footer .copy{
	font-size: 1.3rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
}


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

	.sp{
		display: none!important;
	}

}


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

	.pc{
		display: none!important;
	}

	body{
		min-width: inherit;
	}

	.wrap{
		width: 96%;
	}

	.btn{
		font-size: 0.9rem;
		width: 100px;
		padding: 6px 10px 6px 0;
	}
	.btn::after{
		right: 8px;
		width: 6px;
		height: 6px;
		margin-top: -3px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}


	/* ------------------------------
	    header
	------------------------------ */

	header{
		height: 40px;
		padding: 5px 0;
	}
	header .flex{
		justify-content: space-between;
	}
	header .logo{
		width: 95px;
	}
	header .right .number{
		width: 100px;
	}
	header .right .number .btn{
		background: #ff8d00;
		border-color: #ff8d00;
	}
	header .right .number .btn span::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		margin-right: 3px;
		width: 12px;
		height: 12px;
		background: url(../img/header_tel01_sp.png) no-repeat center;
		background-size: 100%;
	}
	header .right .contact_btn{
		width: 100px;
		margin-left: 5px;
	}
	header .right .contact_btn .btn span::before{
		content: '';
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
		margin-top: -2px;
		width: 12px;
		height: 10px;
		background: url(../img/header_contact01_sp.png) no-repeat center;
		background-size: 100%;
	}


	/* ------------------------------
	    main
	------------------------------ */

	main{
		padding-top: 40px;
	}

	.sec_ttl{
		font-size: 6.5vw;
	}
	.sec_ttl::before{
		background-size: 100%;
		width: 8vw;
		height: auto;
		padding-top: 6.5vw;
		bottom: -6.2vw;
	}


	/*---top--------*/

	#top{
		padding: 2.5% 0 2%;
	}
	#top p{
		font-size: 5vw;
		text-align: left;
		line-height: 1.5;
	}
	#top p span{
		font-size: 4.8vw;
		border-radius: 3px;
		line-height: 1;
		padding: 3px;
		display: inline-block;
	}


	/*---mv--------*/

	#mv{
		padding: 5% 0;
		background: url(../img/mv_bg01_sp.jpg) no-repeat center /cover;
	}
	#mv .wrap{
		padding: 0;
	}
	#mv h2{
		font-size: 6.8vw;
		line-height: 1.3;
	}
	#mv h2 .green{
		font-size: 12vw;
	}
	#mv h2 .green + .green{
		margin-top: 2%;
	}
	#mv h2 .big{
		font-size: 8vw;
		margin-top: 2%;
	}
	#mv ul{
		display: block;
		margin-top: 2%;
	}
	#mv ul li{
		width: 100%;
		padding: 1%;
	}
	#mv ul li + li{
		margin-top: 1.5%;
	}
	#mv ul li dl{
		padding: 3% 2.5%;
		display: flex;
		align-items: center;
		border-width: 2px;
	}
	#mv ul li dl dt,
	#mv ul li dl dt.fs28{
		font-size: 4vw;
		line-height: 1.2;
		border-bottom: 0;
		text-align: left;
		padding-bottom: 0;
		padding-right: 2.5%;
	}
	#mv ul li dl dt::before{
		width: 2px;
		height: 90%;
		top: 0;
		right: 0;
		left: auto;
		bottom: 0;
	}
	#mv ul li dl dd,
	#mv ul li dl dd.pt14{
		font-size: 3.5vw;
		line-height: 1.2;
		text-align: left;
		padding-top: 0;
		padding-left: 2.5%;
	}
	#mv .note{
		font-size: 3vw;
		margin-top: 2%;
	}


	/*---opt--------*/

	.opt{
		padding: 5% 0;
	}
	.opt .wrap{
		padding: 0 2%;
	}
	.opt .white{
		display: block;
		padding: 4%;
	}
	.opt .white .left{
		width: 100%;
	}
	.opt .white .right{
		width: 100%;
	}
	.opt .white .left .offer_ttl{
		font-size: 6vw;
		padding: 3%;
	}
	.opt .white .left .off_txt{
		margin-top: 4%;
	}
	.opt .white .left .off_txt p{
		font-size: 5.5vw;
	}
	.opt .white .left .off_txt p:first-child::before,
	.opt .white .left .off_txt p:first-child::after{
		width: 4.5%;
		height: 0;
		padding-top: 8%;
		margin: 0 5px;
		background-size: 100%;
	}
	.opt .white .left .off_txt p.price .yellow{
		font-size: 4.8vw;
		padding: 2%;
		margin-right: 1.2%;
	}
	.opt .white .left .off_txt p.price{
		font-size: 12vw;
		margin-top: 1%;
	}
	.opt .white .right .txt{
		font-size: 4vw;
		line-height: 1.5;
		margin-top: 3%;
		padding-top: 3%;
		background: url(../img/opt_bg01.png) no-repeat center top;
		background-size: 100%;
	}
	.opt .white .right .tel a{
		padding: 2% 4%;
		align-items: center;
		position: relative;
	}
	.opt .white .right .tel a::after{
		content: '';
		position: absolute;
		top: 50%;
		right: 20px;
		width: 10px;
		height: 10px;
		margin-top: -5px;
		border-top: 3px solid #fff;
		border-right: 3px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		z-index: 1;
		transition: 0.3s;
		margin-top: -5px;
		right: 4%;
		width: 10px;
		height: 10px;
		border-width: 3px;
	}
	.opt .white .right .tel{
		border-radius: 3px;
		background: #f09536;
	}
	.opt .white .right .tel .yellow{
		font-size: 4vw;
		color: #ea3c31;
		text-align: center;
		font-weight: 800;
		line-height: 1.1;
		border-radius: 5px;
		background: #fffb54;
		display: inline-block;
		padding: 2%;
	}
	.opt .white .right .tel .yellow .small{
		font-size: 3.3vw;
	}
	.opt .white .right .tel p{
		text-align: left;
		padding-left: 11vw;
		position: relative;
		padding-top: 1vw;
	}
	.opt .white .right .tel p::before{
		content: '';
		position: absolute;
		top: 50%;
		left: 2vw;
		width: 7vw;
		height: 0;
		padding-top: 9vw;
		margin-top: -4.5vw;
		background: url(../img/opt_tel01_sp.png) no-repeat center;
		background-size: 100%;
	}
	.opt .white .right .tel p span{
		color: #fff;
	}
	.opt .white .right .tel .num{
		font-size: 6vw;
		font-weight: 800;
	}
	.opt .white .right .tel .open{
		padding-left: 0;
		font-size: 3vw;
		font-weight: 500;
	}
	.opt .white .right .contact_btn{
		margin-top: 3%;
	}
	.opt .white .right .contact_btn .btn{
		padding: 6.5% 2%;
		width: 100%;
		font-size: 4.5vw;
	}
	.opt .white .right .contact_btn .btn::after{
		margin-top: -5px;
		right: 4%;
		width: 10px;
		height: 10px;
		border-width: 3px;
	}
	.opt .white .right .end_txt{
		font-size: 4vw;
		margin-top: 5%;
	}


	/*---promise--------*/

	#promise{
		padding: 7% 0;
		background: #fff8d3;
	}
	#promise .fukidashi{
		font-size: 4.5vw;
		padding: 4% 0;
		max-width: 80%;
	}
	#promise .promise_ttl{
		font-size: 7vw;
	}
	#promise .promise_ttl .orange{
		font-size: 13vw;
	}
	#promise .list{
		margin: 4% auto 0;
		max-width: 100%;
		padding: 7% 4%;
		border-width: 3px;
	}
	#promise .list li{
		font-size: 5vw;
		padding-left: 10vw;
	}
	#promise .list li + li{
		margin-top: 5%;
	}
	#promise .list li .num{
		font-size: 4.5vw;
		width: 8vw;
		height: 8vw;
		line-height: 8.2vw;
	}


	/*---sec01--------*/

	#sec01 .wrap{
		padding: 12% 0 7%;
	}
	#sec01 .top10 p{
		font-size: 4.4vw;
		padding-right: 13.5vw;
	}
	#sec01 .top10 p .red{
		font-size: 6.3vw;
	}
	#sec01 .top10 p .num{
		font-size: 6vw;
		width: 12vw;
		height: 12vw;
		margin-top: -6vw;
		line-height: 12vw;
	}
	#sec01 .top10::before,
	#sec01 .top10::after{
		width: 5.5vw;
		height: auto;
		padding-top: 12vw;
		margin: 0 1vw;
		background-size: 100%;
	}
	#sec01 .list_wrap .img{
		display: none;
	}
	#sec01 .list_wrap{
		border-width: 3px;
		padding: 7% 4%;
	}
	#sec01 .list li .num {
	    font-size: 4.5vw;
	    width: 8vw;
	    height: 8vw;
	    line-height: 8.2vw;
	    top: 0;
	}
	#sec01 .list li {
	    font-size: 5vw;
	    padding-left: 10vw;
	}
	#sec01 .list li + li{
		margin-top: 5%;
	}
	#sec01 .txt{
		font-size: 5.1vw;
		line-height: 1.6;
		margin-top: 5%;
	}
	#sec01 .txt img{
		width: 30vw;
		margin-right: 1vw;
	}
	#sec01 .txt .red{
		font-size: 6.5vw;
	}
	#sec01 .arrow{
		width: 60%;
		margin: 3% auto 0;
	}



	/*---sec02--------*/

	#sec02 .wrap{
		padding: 12% 0 7%;
	}
	#sec02 .list{
		display: block;
	}
	#sec02 .list > li{
		padding: 7% 4%;
		width: 90%;
		margin: auto;
	}
	#sec02 .list > li + li{
		margin-top: 5%;
	}
	#sec02 .list > li dl dt span{
		font-size: 6vw;
		width: 28%;
		padding: 4% 2%;
		margin-top: -10%;
	}
	#sec02 .list > li dl dt{
		font-size: 7vw;
		padding-left: 30%;
	}
	#sec02 .list > li ul li{
		font-size: 5vw;
	}
	#sec02 .list > li ul li + li{
		margin-top: 3%;
	}
	#sec02 .reason_box{
		margin-top: 8%;
	}
	#sec02 .reason_box .reason_num .small{
		font-size: 4vw;
	}
	#sec02 .reason_box .reason_num{
		font-size: 10vw;
		background-size: 45%;
		padding-top: 5%;
	}
	#sec02 .reason_box h3{
		font-size: 5.8vw;
		padding: 5.2% 0 5%;
	}
	#sec02 .reason_box .point{
		display: block;
	}
	#sec02 .reason_box .point .txt_area{
		width: 100%;
		padding: 5% 3%;
	}
	#sec02 .reason_box .point .txt_area dl dt{
		font-size: 6vw;
		padding-left: 23vw;
	}
	#sec02 .reason_box .point .txt_area dl dt .num {
	    font-size: 5.8vw;
	    width: 20vw;
	    height: 20vw;
	    top: 0;
	    left: 0;
	    padding-top: 6vw;
	}
	#sec02 .reason_box .point .txt_area dl dt .num .small{
		font-size: 4vw;
		margin-bottom: 1%;
	}
	#sec02 .reason_box .point .txt_area dl dd{
		font-size: 4.2vw;
		margin-left: 23vw;
		padding: 2% 0 0;
		margin-top: 2%;
	}
	#sec02 .reason_box3 .ls{
		letter-spacing: -10px;
	}
	#sec02 .txt{
		text-align: left;
		font-size: 5vw;
		margin-top: 7%;
	}


	/*---sec03--------*/

	#sec03 .sec_ttl span{
		font-size: 5vw;
		padding: 1% 12%;
	}
	#sec03 .wrap{
		padding: 12% 0 7%;
	}
	#sec03 .list{
		display: block;
	}
	#sec03 .list li{
		border-width: 2px;
		width: 100%;
	}
	#sec03 .list li + li,
	#sec03 .list li:nth-child(n+3){
		margin-top: 6%;
	}
	#sec03 .list li .img{
		border-radius: 5px 5px 0 0;
	}
	#sec03 .list li .img img{
		width: 100%;
	}
	#sec03 .list li .num{
		font-size: 8vw;
		width: 17vw;
		padding: 4% 0 5%;
		left: 4%;
	}
	#sec03 .list li .num::before{
		width: 100%;
		height: auto;
		padding-top: 26%;
		background-size: 100%;
		bottom: -26%;
	}
	#sec03 .list li dl{
		padding: 5% 3%;
	}
	#sec03 .list li dl dt{
		font-size: 7.5vw;
		line-height: 1.2;
	}
	#sec03 .list li dl dd{
		font-size: 4.2vw;
		margin-top: 3%;
	}
	#sec03 .txt{
		text-align: left;
		font-size: 5vw;
		margin-top: 7%;
	}


	/*---sec04--------*/

	#sec04 .wrap{
		padding: 12% 0 7%;
	}
	#sec04 .voice_wrap{
		padding: 0 5%;
	}
	#sec04 .voice{
		padding: 10% 0;
	}
	#sec04 .voice .img .num{
		font-size: 15vw;
	}
	#sec04 .voice{
		display: block;
	}
	#sec04 .voice .img{
		width: 50%;
		margin: auto;
	}
	#sec04 .voice dl dt{
		font-size: 4.6vw;
		margin-top: 3%;
	}
	#sec04 .voice dl dd{
		font-size: 4.2vw;
		margin-top: 3%;
	}
	#sec04 .txt{
		text-align: left;
		font-size: 4.9vw;
		margin-top: 7%;
	}


	/*---sec05--------*/

	#sec05 .wrap{
		padding: 12% 0 7%;
	}
	#sec05 .border_box{
		border-width: 2px;
		padding: 5% 3%;
	}
	#sec05 .border_box p{
		font-size: 4.4vw;
		text-align: left;
	}
	#sec05 .border_box p.end_txt{
		font-size: 5.2vw;
	}
	#sec05 .border_box  .sp_img{
		display: flex;
		width: 80%;
		margin: 3% auto 0;
		justify-content: space-between;
	}
	#sec05 .border_box .img{
		position: static;
		width: 50%;
		display: inline-block;
	}
	#sec05 .border_box .img2{
		position: static;
		width: 50%;
		display: inline-block;
	}
	#sec05 .border_box p + p{
		margin-top: 4%;
	}


	/*---form--------*/

	#form .wrap{
		padding: 12% 0 7%;
	}
	#form .flex{
		display: block;
	}
	#form form dl{
		width: 100%;
	}
	#form form dl dt{
		font-size: 5.2vw;
	}
	#form form dl dd{
		font-size: 4.8vw;
	}
	#form form dl dd{
		margin-top: 3%;
	}
	#form form dl dd + dt{
		margin-top: 5%;
	}
	#form form dl + dl{
		margin-top: 5%;
	}
	#form form dl dd input[type="text"]{
		height: 35px;
	}
	#form form dl dd textarea {
		height: 150px;
		resize: vertical;
	}
	#form form .btn{
		font-size: 6vw;
		width: 100%;
		margin: 8% auto 0;
		padding: 4% 2%;
	}
	#form form .btn::after {
		margin-top: -5px;
		right: 4%;
		width: 10px;
		height: 10px;
		border-width: 3px;
	}
	#form .about{
		padding: 0;
	}
	#form .about_wrap{
		padding: 7% 4%;
		margin-top: 10%;
	}
	#form .about .ttl{
		font-size: 5.4vw;
		margin-bottom: 8%;
	}
	#form .about .addr{
		font-size: 4.2vw;
		margin-top: 3%;
	}
	#form .about dl dt{
		font-size: 4.2vw;
		margin-top: 3%;
	}
	#form .about dl dd{
		font-size: 4.2vw;
	}

.thanks #form p{
	max-width: 100%;
}
.thanks #form .end{
	font-size: 8vw;
	margin-top: 10%;
}
.thanks #form .txt{
	font-size: 4.2vw;
	text-align: center;
	margin-top: 10%;
}
.thanks #form .top_btn{
	margin-top: 10%;
}
.thanks #form .top_btn .btn{
	width: 100%;
	font-size: 6vw;
	padding: 6% 2%;
}
.thanks #form .top_btn .btn::after {
    margin-top: -5px;
    right: 4%;
    width: 10px;
    height: 10px;
    border-width: 3px;
}


	/* ------------------------------
	    footer
	------------------------------ */

	footer{
		padding: 5% 0;
	}
	footer .pagetop{
		width: 12%;
		bottom: 1.5%;
		right: 2%;
	}
	footer .copy{
		font-size: 3.2vw;
		color:#005e32;
	}
	footer{
		background-color:#FFF;
		padding: 5px 0;
	}
	footer .flex{
		justify-content: space-between;
	}
	footer .logo{
		width: 95px;
	}
	footer .right .number{
		width: 100px;
	}
	footer .right .number .btn{
		background: #ff8d00;
		border-color: #ff8d00;
	}
	footer .right .number .btn span::before{
		content: '';
		display: inline-block;
		vertical-align: top;
		margin-right: 3px;
		width: 12px;
		height: 12px;
		background: url(../img/header_tel01_sp.png) no-repeat center;
		background-size: 100%;
	}
	footer .right .contact_btn{
		width: 100px;
		margin-left: 5px;
	}
	footer .right .contact_btn .btn span::before{
		content: '';
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
		margin-top: -2px;
		width: 12px;
		height: 10px;
		background: url(../img/header_contact01_sp.png) no-repeat center;
		background-size: 100%;
	}


}


/* ------------------------------
    clearfix
------------------------------ */

.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */

body.confirm footer,
body.thanks footer{
	position:static!important;
}



/* ------------------------------
    css add@2020/01/10
    Today is My Birthday!
    Happy or Die
------------------------------ */
#mv{
	letter-spacing: normal;
	background-repeat:no-repeat;
	background-size: cover;
	background-position: center center;
	font-weight: 900;
  letter-spacing:normal;
max-height:580px;
overflow:hidden;
}

#mv.area{
	padding: 25px 0 30px;
	/*	background-image: url(../dmy/area_pc.png);
background-size:1440px auto;*/
background-image: url(../img/mv-area_pc.jpg);
}

#mv.price{
	padding: 25px 0 30px;
	background-image: url(../img/mv-price_pc.jpg);
}

#mv.cut{
	padding: 25px 0 30px;
	background-image: url(../img/mv-cut_pc.jpg);
}

#mv .keytext{
	font-size: 1.8rem;
	line-height: calc(26/18);
	padding-bottom: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #40210F;
}
#mv .keytext .fukidashi{
    font-weight:600;
    padding: 8px 28px;
    border-radius: 15px;
    color: #fff;
    background-color: #E95513;
    position: relative;
    filter: drop-shadow(2px 2px 3px rgba(0,0,0,.6));
	  transform: translateX(10px);
}
#mv .keytext .fukidashi::before{
	display: block;
	content:'';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 0 8px 26px;
	border-color: transparent transparent transparent #E95513;
	position: absolute;
	top:50%;
	right: -26px;
	transform: translateY(-50%);
}
#mv .keytext .fukidashi span{
	color:#FFF000;
}
#mv .keytext .anser{
	font-size: 2.6rem;
  letter-spacing: .05em;
	margin-left: 38px;
}
#mv .anser strong{
		position: relative;
  	font-weight:900;
    padding-top: .1em;
		background-image: url(../img/dot-S-B.png);
    background-repeat: no-repeat;
    background-size: contain;
		background-position:center top;
}
/*
#mv .anser strong::after{
	content:'・・・';
	position: absolute;
	top: -18px;
	left: 0;
}
*/

#mv .subject{
	font-size: 2.5rem;
	font-weight: 900;
  letter-spacing: initial;
	line-height: calc(36/25);
	text-align: center;
	color: #40210F;
}
#mv .subject strong{
	font-size: 150%;
	font-weight: 900;
	padding:0 40px;
	color: #E95513;
	background-repeat:no-repeat;
	background-size: contain;
	background-position: left center, right center;
	background-image: url(../img/subject-L.png), url(../img/subject-R.png);
}
#mv h2{
	color:#005e32;
	font-size:4.0rem;
	font-weight: 900;
	line-height: 1;
  letter-spacing: initial;
	padding: 8px 0 0;
  display: inline-flex;
  align-items: flex-end;
  justify-content: center;
  width: 100%;
}

#mv h2 > strong{
	color: #fff;
	font-size:6.2rem;
  font-weight:900;
	background-color:#005e32;
	padding: 4px 5px 4px;
}

#mv .caption{
	text-align: center;
	font-size: 3.8rem;
	line-height: calc(54/38);
  letter-spacing: initial;
	font-weight: 900;
	color:#005e32;
}
#mv .caption small{
	font-size: 65%;
}
#mv .caption strong{
	font-weight: 900;
	position: relative;
		background-image: url(../img/dot-L-G.png);
    background-repeat: no-repeat;
    background-size: contain;
		background-position:center top;
}

#mv ul{
	margin: 15px auto 0;
	width: 846px;
}
#mv ul li {
    width: 270px;
}
#mv ul li dl {
    height: 100%;
    padding: 18px 0;
    border: 2px solid #ff9000;
}

#mv ul li dl dt{
	padding: 0 0 15px;
	font-size: 2.2rem;
	font-weight:900;
	color: #E95513;
  letter-spacing: initial;
}

#mv ul li dl dt::before{
    height:2px;
    width: 90%;
}

#mv ul li dl dt::before{
	background-color:#005e32;
}

#mv ul li dl dd{
	padding-top: 12px;
	font-size: 1.6rem;
	line-height: calc(22/16);
	font-weight:900;
	color: #40210F;
  letter-spacing: initial;
}

/* price */
#mv.price .keytext .anser,
#mv.price .subject,
#mv.price .subject strong,
#mv.price h2,
#mv.price .caption
{
	color: #fff;
}
#mv.price .subject strong{
	background-image: url(../img/subject-L_inv.png), url(../img/subject-R_inv.png);
}

#mv.price .anser strong{
		background-image: url(../img/dot-S-W.png);
}

#mv.price .caption strong{
		background-image: url(../img/dot-L-W.png);
}

#mv.cut .subject strong span{
	color: #40210F;
}

@media screen and (max-width: 768px) {
	#mv.area{
		padding: 4.26vw 0 6.66vw;
			background-image: url(../img/mv-area_sp.jpg);
	/*background-image: url(../dmy/area_sp.png);
background-size:375px auto;
background-position:top center;*/
	}
	#mv.price{
		padding: 25px 0 25px;
		background-image: url(../img/mv-price_sp.jpg);
    background-position: center top;
	}
	#mv.cut{
		padding: 25px 0 25px;
		background-image: url(../img/mv-cut_sp.jpg);
	}

	#mv .keytext{
		font-size: 3.25vw;
		line-height: calc(20/14);
		padding-bottom: 6px;
		display: block;
	}
	#mv .keytext .fukidashi{
		display: inline-block;
		padding: 5px 14px;
		border-radius: 7.5px;
		filter: drop-shadow(1px 1px 1.5px rgba(0,0,0,.6));
	}
	#mv .keytext .fukidashi::before{
		border-width: 0 15px 15px 0;
		border-color: transparent #E95513 transparent transparent;
		top:auto;
		right:auto;
		bottom:-14px;
		left: 22px;
		transform: none;
	}
	#mv .keytext .anser{
		font-size: 136%;
		margin-left: 0;
		padding-top: 8px;
		text-align:  center;
	}


	#mv .subject{
		font-size: 4.42vw;
		line-height: calc(34/25);
	}
	#mv .subject strong{
		font-size: 165%;
		padding:0 28px;
	}
	#mv h2{
    font-size: 4.2vw;
    padding: 12px 0 14px;
    letter-spacing: .05em;
	}

	#mv h2 > strong{
		font-size:160%;
		padding: 2px 2px 2px;
	}

	#mv .caption{
		text-align: center;
				font-size: 4.42vw;
	}
	#mv .caption small{
				font-size: 100%;
	}
	#mv .caption strong{
				font-size: 6vw;
	}

	#mv .caption strong::after{
		top: -14px;
	}



	#mv ul{
	  width: 100%;
		margin-top: 26.7vw; 
	}
	#mv ul li {
    width: 100%;
    padding: 1%;
	}
	#mv ul li + li {
	    margin-top: 2%;
	}
	#mv ul li dl {
	    padding: 1.5% 0 1.5% 0.5%;
	}

	#mv ul li dl dt {
	    font-size: 3.6vw;
	    line-height: 1.2;
	    border-bottom: 0;
	    text-align: left;
	    padding-bottom: 0;
	    width: 7.4em;
	}

	#mv ul li dl dt::before {
	    width: 1px;
	    height: 90%;
	    top: 0;
	    right: 0;
	    left: auto;
	    bottom: 0;
	    background: #ff9000;
	}
	#mv ul li dl dd{
		padding-top: 0;
		font-size: 1.15rem;
	}

/*
	#mv.area ul{
		margin-top: 120px; 
	}
*/
	#mv.price h2 > strong{
		background-color: #E85513;
    font-weight:900;
	}


	#mv.price .subject,
	#mv.cut .subject{
		margin: 0 -2%;
	}

	#mv.price .subject strong,
	#mv.cut .subject strong{
		font-size:2.0rem;
		padding: 0px 18px;
	}
	#mv.cut .subject strong{
		letter-spacing: -.01em;
    white-space:nowrap;
	}

}