

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/*明朝
font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho",Georgia, serif;
*/
html,
body {margin: 0px;margin-bottom: 0px;margin-right: auto;margin-left: auto;font-size: 16px;
font-family: Noto Sans Japanese,Noto Sans JP,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", arial, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
line-height: 26px;-webkit-font-smoothing: antialiased;letter-spacing: 1px; background: #FFF;}
article,aside,details,figcaption,figure,footer,header,hgroup,
menu,nav,section {display: block;margin: 0px;padding: 0px;}
p,td,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4 {margin: 0px;padding: 0px;list-style: none;}
img {border: 0px; font-size: 0; line-height: 0;vertical-align:bottom; max-width: 100%;transition: 0.5s;height: inherit;}

a,img {transition: 0.5s;text-decoration: none;}
a:hover img {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.wmain{width: 1200px; margin: 0 auto; overflow: hidden;}
.left{float: left}
.right{float: right;}
.pc{display: inline-block;}
.sp{display: none;}
.center{text-align: center;}
h2{text-align: center;font-size: 40px;line-height: 1.4em;color: #444444;}
h2.after {position: relative;margin: 0 0 15px;padding: 0 0 15px;}
h2.after:after {position: relative;content: "";height: 7px;width: 112px;bottom: -10px;display: block;text-align: center;background: #ff7e00;margin: 0 auto;}

/*header
*********************/
.header{overflow: hidden;margin: 0 auto 1px;-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);}
.header .wmain{padding: 5px 0 10px;}
.header .hti {padding: 5px 0 3px;border-top: 4px solid #FF7E00;}
.header .hti h1{ width: 1200px;margin: 0 auto;  font-weight: normal; font-size: 14px;}
.header .logo{margin: 15px 0 0;}
.header .head-cta{overflow: hidden; position: relative;}
.header ul{text-align: right; overflow: hidden;}
.header .head-cta ul li{display: inline-block;*zoom: 1;*display: inline; vertical-align: top; margin: 0 2px;}

/*fv
*********************/
.fv{overflow: hidden;background: url(../img/fv-bg.jpg) center 0 no-repeat;background-size: cover;border-bottom: 8px solid #FF7E00;}

/*corona
*********************/
.corona {text-align: center;padding: 30px 0;background: #f5f5f5;}
.corona img{margin: 20px auto 0;}
.corona .img img{border: 4px solid #fff;}

/*reason
*********************/
.reason{overflow: hidden;background: url(../img/reason-ar.png) center 0 no-repeat;padding: 60px 0 40px;}
.reason h2{font-size: 48px;font-weight: 900;color: #ff7e00;line-height: 1.2em;}
.reason h2 span{font-size: 30px;}
.reason h2.after:after {background: #eeeeee;}
.reason ul{text-align: center;margin: 30px 0 0;overflow: hidden;}
.reason ul li{display: inline-block;*zoom: 1;*display: inline; vertical-align: top; margin: 0 7px;width: 18%;}
.reason ul li .ti{text-align: center;margin: 5px 0;font-size: 18px;line-height: 1.4em;font-weight: bold;background: #ff7e00;color: #fff;border-radius: 4px;padding: 10px 0;}
.reason ul li p{text-align: left;}

/*nayami
*********************/
.nayami{overflow: hidden;background: url(../img/nayami-bg.png);}
.nayami .bg{background: url(../img/nayami-bg1.png) 0 0 repeat-x;padding: 40px 0;}
.nayami .ctn{overflow: hidden;margin: 30px auto 0;width: 85%;padding: 30px 30px 0;background: #fff;border:1px solid #e55050;}
.nayami .ctn .img{float: left;width: 22%;}
.nayami .ctn ul{float: right;width: 73%;margin: 15px 0 0;}
.nayami .ctn ul li{background: url(../img/nayami-ch.png) 0 5px no-repeat;padding: 5px 0 5px 40px;font-weight: bold;font-size: 24px;line-height: 1.4em;margin: 0 0 5px;}
.nayami .ctn ul li span{color: #e55050;}

/*cta
*********************/
.cta{overflow: hidden;background: url(../img/cta-bg.png) center 0 no-repeat;background-size: cover;border-bottom: 6px solid #FF7E00;border-top: 6px solid #FF7E00;}
.cta .wmain{padding: 10px 0 0;background: url(../img/cta-ar.png) center 0 no-repeat;}
.cta .ctn{width: 100%;margin: 0 auto;padding:15px 0;}
.cta ul{text-align: center;overflow: hidden;margin: 10px 0 0;}
.cta li{display: inline-block;*zoom: 1;*display: inline; vertical-align: top; margin: 0 2px;}

/*compare
*********************/
.compare{padding: 40px 0;overflow: hidden;background: url(../img/compare-bg.png);}
.compare .tbl{margin: 30px 0 0;}

/*price
*********************/
table , td, th {border-collapse: collapse;}
.price{overflow: hidden;padding: 40px 0;background: url(../img/price-bg.png);}
.price .ctn{width: 83%;margin: 30px auto 0;}
.price h2 small{font-size: 50%;}
.price table{background: #fff;text-align: left;border: 1px solid #1fb4c9;width: 100%;margin: 0 0 15px;}
.price table th,.price table td{font-weight: 900;padding: 10px 35px;}
.price table th{font-size: 36px;line-height: 1.4em;color: #fff;background: #1fb4c9;border-bottom: 1px solid #fff;width: 40%;}
.price table td{font-size: 60px;line-height: 1.4em;color: #f97b00;border-bottom: 1px solid #1fb4c9;text-align: right;}
.price table td small{font-size: 70%;}
.price p{font-size: 22px;font-weight: bold;color: #444;vertical-align: middle;}
.price p img{margin: 0 0 0 15px;vertical-align: middle;}

/*voice
*********************/
.voice{overflow: hidden;background: url(../img/compare-bg.png);padding: 40px 0;}
.voice ul{margin: 30px 0 0;text-align: center;overflow: hidden;}
.voice li{display: inline-block;*zoom: 1;*display: inline; vertical-align: top; margin: 0 15px;width: 27%;}
.voice li .ti{text-align: center;margin: 10px 0;font-size: 20px;line-height: 1.4em; font-weight: bold;color: #ff7e00;}
.voice li p{text-align: left;}

/*flow
*********************/
.flow{overflow: hidden;padding: 40px 0;}
.flow ul{text-align: center;margin: 30px 0 0;overflow: hidden;}
.flow li{display: inline-block;*zoom: 1;*display: inline; vertical-align: top; margin: 0 40px;width: 193px;position: relative;}
.flow li:after{position: absolute;content: "";top: 45px;right: -55px;width: 28px;height: 51px;background: url(../img/flow-ar.png) center no-repeat;background-size: contain;}
.flow li:last-child:after{display: none;}
.flow li .ti{text-align: center; color: #fff;font-weight: bold;background: #ff7e00;font-size: 18px;line-height: 1.4em;margin: 0 0 5px;padding: 10px 0;}
.flow li  p{text-align: left;}

/*qa
*********************/
.qa{overflow: hidden;padding: 40px 0;background: url(../img/qa-bg.png);}
.qa ul{width: 75%;margin: 30px auto 0;}
.qa ul li{overflow: hidden;margin: 0 0 15px;}
.qa ul li .q{background: url(../img/qa-ar.png) right 15px center no-repeat #8b8b8b;padding: 2px 5px;cursor: pointer;}
.qa ul li .q p{background: url(../img/qa-q.png) 5px 6px no-repeat;padding: 12px 0 12px 50px;font-size: 17px;color: #fff;}
.qa ul li .a{padding: 10px 15px;display: none;background: #fff;}
.qa ul li .a p{background: url(../img/qa-a.png) 0 8px no-repeat;padding: 12px 0 12px 40px;font-size: 16px;line-height: 1.6em;}
.qa ul li .a.open{display: block;}
.qa ul li .active{background: url(../img/qa-ar.png) right 15px center no-repeat #ff6800;}

/*wrn
*********************/
.wrn{overflow: hidden;padding: 40px 0;background: #eee;}
.wrn .ctn{margin: 0 auto;width: 85%;background: #fff;border: 1px solid #ff8a2b;}
.wrn h2{padding: 15px 0;background: #ff8a2b;color: #fff;font-size: 24px;}
.wrn .txt{padding: 30px;line-height:2em;}

/*contact
*********************/
.contact{padding: 40px 0;}
.contact h2{color: #333;}
.contact .sub{color: #ff6c00; text-align: center; font-size: 16px; line-height: 1.4em; margin: 10px 0;font-weight: bold;}
.contact .mailform {padding: 10px; color: #222; width: 65%; margin: 10px auto 0;}
.contact table {text-align: left;width: 100%;border-collapse: collapse;border-spacing: 0; margin: 0 0 20px}
.contact table th, .contact table td {padding: 15px 0; vertical-align: middle;}
.contact table th {font-weight: normal;font-size: 16px;text-align: left;width: 35%;position: relative;}
.contact table td {width: 75%; padding: 10px 30px;}
.contact .form-text, .contact .form-textarea {width: 100%;height: 45px;border: 1px solid #D6D6D6; background: #fff;
padding: 3px;box-sizing: border-box;-webkit-appearance: none;border-radius: 4px;font-size: 14px;}
.contact .form-textarea {height: 120px;}
input[type="submit"], input[type="button"] {cursor: pointer;}
.contact table th:before {content: '';position: absolute;right: 15px;top: 0;
bottom: 0;margin: auto 0;width: 35px;height: 22px; background-size: cover;}
.contact table th.hissu:before {background: url(../img/contact-hissu.png) no-repeat;}
.contact table th.nini:before {background: url(../img/contact-nini.png) no-repeat;}

.contact input[type=radio]{display: inline-block;margin-right: 6px;}
.contact label span{position: relative;display: inline-block;
margin-right: 20px;font-size: 16px;line-height: 30px;cursor: pointer;}
.contact input[type=radio]{display: none;margin: 0;}
.contact label span{padding: 0 0 0 24px;}
.contact label span::before{content: "";
position: absolute;top: 50%;left: 0;-moz-box-sizing: border-box;box-sizing: border-box;
display: block;width: 18px;height: 18px;margin-top: -9px;background: #FFF;}
.contact label span::before {border: 1px solid #999;border-radius: 30px;}
.contact input[type=radio]:checked + span::after,
.contact input[type=radio]:checked + input[type=hidden] + span::after{
content: "";position: absolute;top: 50%;-moz-box-sizing: border-box;
box-sizing: border-box;display: block;left: 5px;width: 8px;
height: 8px;margin-top: -4px;background: #ff2900;border-radius: 8px;}
.contact input[type=radio]:checked + span{color:#ff2900; font-weight: bold;}
.contact input[type=radio]:checked  + span::before {border: 1px solid #ff2900;}

.confirm table th,.confirm table td {border-bottom: 1px dotted #CCC;}
.form-btn-conf {background: url(../img/contact-confirm.png) center no-repeat; background-size: contain;}
.form-btn-back {background: url(../img/contact-back.png) center no-repeat; background-size: contain;}
.form-btn-send {background: url(../img/contact-send.png) center no-repeat; background-size: contain;}
.form-btn {width: 290px;height: 50px;text-align: center;line-height: 50px;border: none;
border-radius: 5px;-webkit-appearance: none;text-indent: -999px;overflow: hidden;}
.form-btn:hover{opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";transition: 0.5s;}
.mail-btn{display: flex;gap:10px;justify-content:center;flex-wrap: wrap;margin: 0 auto;}
.mail-btn li { *display: inline; *zoom: 1; vertical-align: top;overflow: hidden;}

.contact .footer p{font-weight:normal;}
.contact .footer p span{font-weight:bold;}
.copyright{text-align: center; padding: 15px; font-size:12px;}

.contact .cfm {background: #FFF;padding: 10px 10px;text-align: center;font-size: 16px;
line-height: 2em; margin: 0; color: #333;}
.contact .thx {padding: 50px;text-align: center;font-size: 16px;
line-height: 2em; margin: 0; color: #000;}
.contact .thx p{ color: #222;font-weight:normal;}
.contact .btn-tosite {background-color: #555;border: none;color: white;padding: 10px 25px;
text-align: center;text-decoration: none;display: inline-block;font-size: 14px;margin: 50px 2px 0;
cursor: pointer;border-radius: 4px;font-weight: bold;}
.contact .s{font-size: 11px; color: #999;}

#formWrap{text-align: center;}
.formwrap{padding: 20px; margin: 20px 0;}
.error,.error_messe{color: red;}
.bold{font-size: 16px; font-weight: bold;}

#contact .footer p{font-weight:normal;}
#contact .footer p span{font-weight:bold;}
.copyright{text-align: center; padding: 15px; font-size:12px;}

#contact .thx {background: #FFF;padding: 50px;text-align: center;font-size: 16px;
line-height: 2em; margin: 0; color: #000;}
#contact .thx p{ color: #222;font-weight:normal;}
#contact .btn-tosite {background-color: #555;border: none;color: white;padding: 10px 25px;
text-align: center;text-decoration: none;display: inline-block;font-size: 14px;margin: 50px 2px 0;
cursor: pointer;border-radius: 4px;font-weight: bold;}

#contact.confirm p{color: #222; font-weight: normal; font-size: 16px;}
#contact.confirm .error,#contact.confirm .error_messe{color: red;}
#formWrap{text-align: center;}
.formwrap{padding: 20px; margin: 20px 0;}
.cln{border-top: 1px solid #eee; }

.terms-block {margin-bottom: 30px;padding: 15px;background: #eee;}
.terms-block p {margin-bottom: 0;margin: 0 0 10px;}
.terms-block p.center strong{font-weight: bold;font-size: 17px;border: none;}
.terms-block p strong{font-weight: bold;border-bottom: 1px dotted #ddd; display: block;margin: 0 0 5px;padding: 0 0 5px;}
.terms-block .terms-inner {height: 180px;margin-top: 10px;margin-bottom: 15px;padding: 15px;overflow-y: scroll;line-height: 1.7;font-size: 12px;background: #fff;border: 1px solid #ccc;}
.terms-block ol + p {margin-top: 25px;padding-top: 25px;border-top: 1px solid #ddd;}
.input-block p {margin-bottom: 0;line-height: 1.5;}
.terms-block .acceptance {text-align: center;font-size: 20px;}

/*footer
*********************/
.footer{padding: 40px 0 0; background: #f3f3f3; text-align:center;}
.footer h2{font-size:18px; line-height:1.8em; position: relative; margin: 0 0 15px; padding: 0 0 15px;font-weight: normal;color: #000;}
.footer h2:after {position: absolute;content: "";height: 1px;background: #ddd;width: 100px;bottom: 0;left: 0;right: 0;margin: 0 auto;}
.privacy_lnk{margin-bottom: 10px;}
.privacy_lnk a{color: #000 !important;}
.privacy_lnk a[target="_blank"]:after {font-family: "Font Awesome 5 Free"; font-weight: 600; font-size: .8rem; content: "\f35d"; margin: 0 0 0 5px; color: #000;}
.copyright{padding: 14px 0;text-align: center; font-size: 12px; background: #ff7e00; margin: 40px 0 0;color: #fff;}
.gotop{position: fixed; bottom: 0; right: 0; z-index:2;}
.footer a{color: #fff;}
.footer a:hover{color: #bacaf0;}
.reflection {
    height      :100%;
    width       :30px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #fff;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 3s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 3s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 3s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 3s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 3s ease-in-out infinite;
}
 
@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*****************************************************************
max-width 1215
******************************************************************/
@media screen and (max-width: 1215px) {
.wmain,.header .hti h1{width: 98%;}
.header .logo{width: 30%;}
.header .head-cta{width: 65%;}
.header .head-cta ul li{width: 40%;}
.header .head-cta ul li.puchi{width: 14%;}
.nayami .ctn{width: 90%;}
.nayami .txt li p{font-size: 23px;}
.price li{margin: 0 0 3px;width:45%;}
.price li .ti{font-size: 14px;}
.cta .ctn{background-size: 300px;}
.cta ul li{width: 48%;}
.desc .ti small{display: block;}
.flow li{width: 19%;margin: 0 20px;}
.flow li:after{right: -37px;}
}
/*****************************************************************
max-width 888
******************************************************************/
@media screen and (max-width: 888px) {
.fv{background-size: cover;}
.cta h2{margin: 0;padding: 0 150px 0 0;}
.cta .wmain{background-size: 200px;}
.nayami .txt li p {font-size: 16px;}
.reason ul li{width: 26%;margin: 0 8px 16px;}
.cta .ctn{background-size: 230px;}
.cta .ctn {width: 95%;}
.price .ctn {width: 90%;}
.voice ul,.flow ul{width: 90%;margin: 0 auto;}
.voice li{width: 100%;overflow: hidden;margin: 0 0 25px;}
.voice li .img,.flow li .img{float: left;width: 30%;}
.voice li .txt,.flow li .txt{float: right;width: 65%;}
.voice li .ti,.flow li .ti{text-align: left;margin: 0 0 10px;}
.flow li .ti{padding: 10px;}
.flow li:after{top: inherit;right: 0;bottom: -15px;left: 0;margin: 0 auto;-webkit-transform: rotate(90deg);transform: rotate(90deg);height: 65px;}
.flow li{width: 100%;overflow: hidden;margin: 0 0 25px;padding: 0 0 25px;}
.contact .mailform,.qa ul{width: 95%;}
}
/*****************************************************************
max-width 590
******************************************************************/
@media screen and (max-width: 590px) {
h2{font-size: 30px;letter-spacing: 0;}
.sp{display: block;}
.pc{display: none;}
.fv{background: none;text-align: center;}
.fv .wmain{width: 100%;}
.header .hti h1{font-size: 11px;text-align: center;line-height: 1.4em;}
.header .logo{width: 100%;overflow: hidden;text-align: center;margin: 0;}
.header .logo img{width: 100px;}
.header .head-cta{width: 100%;position: fixed;bottom: 0;left: 0;background: #fcffb5;padding: 5px 0;border-top: 1px solid #ddd;z-index: 9;}
.header .head-cta ul li{width: 48%;}
.header .head-cta ul{text-align: center;}
.header .head-cta ul li.puchi{display: none;}
.nayami .ctn{padding: 10px;}
.nayami .ctn .img{float: none;width: 50%;margin: 0 auto;}
.nayami .ctn ul{float: none;width: 100%;}
.nayami .ctn ul li{font-size: 16px;}
.reason h2 span {font-size: 20px;}
.reason h2 {font-size: 36px;}
.reason ul li{width: 100%;overflow: hidden;margin: 0 0 30px;}
.reason ul li .img{float: left;width: 30%;}
.reason ul li .txt{float: right;width: 65%;}
.reason ul li .ti{text-align: left;margin: 0 0 10px;padding:10px;}
.cta .ctn{width: 100%;background: none;}
.cta h2{padding: 0;}
.cta ul{margin: 0;}
.cta ul li{width: 95%;margin: 0 0 3px;}
.cta ul li.puchi{display: none;}
.gnav {width: 100%;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;}
.gnav:before{content: "右へスクロールしてください→";padding:5px;width: 100%;display: block;color: red;}
.gnav .tbl,.gnav table{width: 630px;margin: 0;}
.price p{text-align: center;}
.price p img{margin: 10px 0 0;}
.price .ctn {width: 95%;}
.price table th {font-size: 20px;}
.price table td {font-size: 20px;}
.voice li .img{width: 15%;}
.voice li .txt{width: 80%;}
.flow{padding: 20px 0 0;}
.qa ul li .q p{font-size: 14px;padding:12px 30px 12px 50px; }
.qa ul li .a p{font-size: 14px;}
.contact table th,.contact table td{width: 100%;overflow: hidden;display: block;padding: 0;}
.contact table th{padding: 5px 0;background: #f5f5f5;}
.contact table td{margin: 0 0 10px;padding: 0 0 10px;border-bottom: 1px dotted #ddd;}
.footer h2{font-size: 16px!important;}
.copyright{margin: 20px 0 55px;}
.gotop{bottom: 58px;width: 38px;}
p.confirm{margin: 0 0 30px;}
.mail-btn li{display: block;margin: 0 0 3px;}
.flow li:after{height: 42px;bottom: -10px;width: 20px;}
.contact table.formTable-confirm{width: 95%;margin: 0 auto 20px;}
.wrn .txt{padding: 10px;}
.wrn .ctn {width: 95%;}
}

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

.off_banner {
	max-width: 862px;
	margin: 0 auto;
	margin-top: 20px;
	margin-bottom: 20px;
	padding: 0px 10px;
	box-sizing: border-box;
}

.price .off_banner .img {

    min-height:inherit;

}

p.price_cap {
	color: #1fb4c9;
	font-size: 110%;
	margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
	p.price_cap {
	color: #1fb4c9;
	font-size: 90%;
	margin-bottom: 15px;
		text-align: left;
}
}