@charset "utf-8";
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html{
scroll-behavior: smooth;
}

body{
font-family:'Zen Kaku Gothic New', sans-serif;
background: #ffda2a;
}

ul li, ol li{
line-height: 1.5;
}

.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}

a {
	color: #000000;
	text-decoration:underline;
	transition: all 0.3s ease-in-out 0s;
}

a:hover {
	color: #666666;
	text-decoration:none;
}

a:hover img{
opacity: 0.7
}

img{
max-width: 100%;
}


.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10000;
}

.flex {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-wrap:wrap;
}

.flex_wrap_left {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:wrap;
	-webkit-justify-content: flex-start;
	justify-content:flex-start
}

.flex_wrap_center {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:wrap;
	-webkit-justify-content: center;
	justify-content: center;
}

.flex_wrap_end {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap:wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.clearer {
	clear: both;
}

.center{
text-align: center;
}

.sp{
display: none;
}


/********************************
header
********************************/
.header{
max-width: 1440px;
margin: 50px auto;
}

.header .header_l, .header .header_r{
width: 50%;
}

.header .header_l p{
margin: 0 20px;
font-size:16px;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
font-weight:900;
}

.header .header_r{
padding: 20px 20px 0;
}

.content{
position: relative;
background: #FFFFFF;
width: 1440px;
max-width: 90%;
margin: 0 auto 70px;
border-radius: 40px;
padding: 30px 50px;}

.catch{
font-size:72px;
font-weight:900;
color: #000000;
line-height: 1.5;
margin-bottom: 50px;
text-align: center;
font-family:'Zen Kaku Gothic New', sans-serif;
}

.catch span{
color: #ea5514;
}

.item{
width: 60%;
}

.detail{
width: 38%;
}

.ttl{
background: #ea5514;
margin-bottom: 20px;
padding:10px 20px;
border-radius: 20px;
color: #FFFFFF;
font-size:32px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
}

h3{
font-weight:bold;
font-size:24px;
margin-bottom: 10px;
}

ol{
list-style: decimal;
margin: 0 0 0 25px;
}


ol li{
font-size:20px;
line-height: 1.5;
margin-bottom: 5px;
}

ol li::marker {
  font-weight:900;
  color: #ea5514;
  font-size:22px;
}

.price{
margin-bottom: 30px;
text-align: center;
font-size:64px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
}

.price sup{
font-size:20px;
}

.price p{
border-top: 1px solid #000000;
margin: 10px 0 0;
padding-top: 10px;
font-size:36px;
font-weight: normal;
}

.price p span{
font-size:28px;
}

.btn {
margin: 10px auto 20px;
width: 100%;
max-width: 320px;
text-align: center;
font-size:24px;
}

.btn a{
display: block;
background: linear-gradient(180deg, #e42c0d 0%, #8b2c22 100%);
color: #FFFFFF;
font-family:'Zen Kaku Gothic New', sans-serif;
font-weight: 900;
line-height: 1.5;
text-decoration: none;
padding: 10px 0;
box-shadow: 5px 5px 10px 0 #ddd;
}

.btn a:hover{
transform: translateY(3px);
box-shadow: 0 0 0 #ddd;
}

.ttl2{
background: #ea5514;
margin: 40px 0 20px;
padding:10px 20px;
border-radius: 20px;
color: #FFFFFF;
font-size:32px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
max-width: calc(100% - 200px);
}

.sonae{
position: relative;
}

.sonae p{
font-size:18px;
line-height: 1.5;
margin: 0 200px 10px 20px;
}

.chara{
position: absolute;
bottom:-50px;
right: 0;
}

.ttl3{
background: #ea5514;
margin-bottom: 40px;
padding:10px 20px;
border-radius: 20px;
color: #FFFFFF;
font-size:32px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
}

.set .col1{
width: 40%;
}

.set .col2{
width: 28%;
}

.set .col3{
width: 30%;
padding: 0 0 0 20px;
}

.caution{
font-size:14px;
line-height: 1.4;
}

.ttl4{
max-width: 1440px;
margin: 0 auto;
text-align: center;
}

.step{
max-width: 1440px;
margin: 0 auto 70px;
}

.step .item2{
width: 400px;
padding: 40px 0 0;
}

.step ul{
width:calc(100% - 440px);
}

.step ul li{
width: 32%;
}

.detail2{
width: calc(100% - 750px);
position: relative;
}

.roll{
width:750px;
padding: 0 25px;
}

.ttl4{
text-align: left;
margin-bottom: 40px;
position: relative;
}

.ttl4 img{
width: 62%;
}

.ttl4 p{
color: #000000;
font-size:16px;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.5;
position: absolute;
top:5px;
right: 0;
width: 35%;
}

.ttl5{
margin-bottom: 20px;
font-size:32px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.8;
}

.ttl5 span{
background: #ffda2a;
margin-left: -15px;
padding:5px 20px;
border-radius: 20px;
font-size:48px;
}

.detail2 p{
font-size: 20px;
line-height: 1.5;
}

.ttl6{
margin-bottom: 20px;
font-size:32px;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
line-height: 1.8;
text-align: center;
}

.voice li{
font-size:18px;
line-height: 1.5;
margin-bottom: 10px;
margin-left: 1em;
text-indent: -1em;
}

.voice li:before{
content: "● ";
color:#ea5514
}

.faq dt{
font-size:18px;
line-height: 1.5;
margin-bottom: 10px;
margin-left: 1em;
text-indent: -1em;
font-weight:900;
font-family:'Zen Kaku Gothic New', sans-serif;
}

.faq dd{
font-size:18px;
line-height: 1.5;
margin-bottom: 10px;
margin-left: 1em;padding-bottom: 10px;
text-indent: -1em;
font-family:'Zen Kaku Gothic New', sans-serif;
border-bottom: 2px solid #F5F5F5;
}

.faq dd:last-child{
border-bottom: none;
}

.faq dt:before{
content: "Ｑ";
color:#16499d;
font-size:24px;
}

.faq dd:before{
content: "Ａ";
color:#ea5514;
font-weight:900;
font-size:24px;
}

footer{
border-top: 5px solid #000000;
padding: 30px 0 20px;
}

footer .cnt{
max-width: 1440px;
width:90%;
margin: 0 auto;
}

footer .cnt .note{
width: 65%;
}

footer .cnt ul li{
font-size:14px;
line-height: 1.5;
margin-bottom: 5px;
margin-left: 1em;
text-indent: -1em;
}

footer .cnt ul li:before{
content: "●";
}

footer .cnt .note p{
margin-top: 20px;
line-height: 1.5;
font-size:14px;
}

footer .cnt .address{
width: 31%;
}

footer .cnt .address p{
margin-top: 10px;
line-height: 1.5;
font-size:16px;
}

/* トップへ戻るボタン */
#page_top {
z-index: 99;
width: 60px;
height: 60px;
position: fixed;
right: 20px;
bottom: 20px;
background: #FFFFFF;
}


/* Font Awesome */
#page_top::before {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
content: '\f106';
font-size: 20px;
color: #000000;
position: absolute;
top: 50%;
left: 50%;
translate: -50% -50%;
}

/* 追従 */
.sticky{
height: 100px;
background: #000000;
padding:10px 0 0;
text-align: center;
position: sticky;
position: -webkit-sticky;
bottom:0;
}

.sticky h3{
font-size:18px;
color: #FFFFFF;
margin-bottom: 10px;
}

.sticky ul{
width: 90%;
max-width: 768px;
margin: 0 auto;
}

.sticky ul li{
width: 48%;
}

.sticky ul li a{
text-decoration: none;
display: block;
height: 100%;
border-radius: 10px;
padding: 10px 10px;
background: #ffda2a;
font-size:16px;
font-weight: 900;
font-family:'Zen Kaku Gothic New', sans-serif;
}

.sticky ul li a:hover{
background: #fca210 !important;
color: #000000;
}

.sticky ul li:first-child a{
background:#ea5514;
color: #FFFFFF;
}

/********************************
レスポンシブ
********************************/

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

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

/********************************
header
********************************/
.header{
max-width: 90%;
}

.content{
width: 90%;
}

ol li{
font-size:16px;
}

.price{
margin-bottom: 20px;
font-size:50px;
}

.price p{
font-size:28px;
}

.chara {
right: -20px;
}

.ttl4{
max-width: 90%;
}

.step{
max-width: 90%;
}

.step .item2{
width: 31%;
padding: 0;
}

.step ul{
width:67%;
}

.detail2{
width: 50%;
}

.roll{
width:50%;
}

.ttl4 img{
width: 55%;
}

.ttl4 p{
width: 42%;
}

.detail2 p{
font-size: 18px;
}

footer{
border-top: 5px solid #000000;
padding: 30px 0;
}

footer .cnt{
max-width: 90%;
}
	
	}

@media screen and (max-width: 1250px) {
.catch{
font-size:60px;
margin-bottom: 30px;
}

.ttl{
padding:5px 10px;
border-radius: 10px;
font-size:24px;
}

h3{
font-weight:bold;
font-size:24px;
margin-bottom: 10px;
}

.ttl2{
padding:5px 10px;
border-radius: 10px;
font-size:24px;
}

.sonae p{
font-size:16px;
margin: 0 200px 10px 10px;
}

.ttl3{
margin-bottom: 20px;
padding:5px 20px;
border-radius: 20px;
font-size:24px;
}

.set .col3 .price{
margin-top: 10px;
margin-bottom: 5px;
font-size:36px;
}

.set .col3 .price sup{
font-size:16px;
}

.set .col3 .price p{
padding-top: 5px;
font-size:20px;
}

.set .col3 .price p span{
font-size:14px;
}

.set .col3 .caution{
font-size:12px;
}

.step{
margin: 0 auto 50px;
}

.ttl4 p{
font-size:14px;
top:-5px;
right: 0;
}

.ttl4 p br{
display: none;
}

.ttl5{
font-size:24px;
}

.ttl5 span{
margin-left: -15px;
padding:2px 10px;
border-radius: 10px;
font-size:32px;
}

.detail2 p{
font-size: 16px;
}


	}
	
@media screen and (max-width: 991px) {
.catch{
font-size:48px;
margin-bottom: 20px;
}

.item{
width: 100%;
margin-bottom: 40px;
}

.item img{
margin-left: 0;
}

.detail{
width: 100%;
}

.ttl2 {
margin-top: 20px;
max-width: calc(100% - 170px);
    }

.set .col1{
width: 57%;
}

.set .col2{
width: 40%;
}

.set .col3{
width: 100%;
padding:20px 0 0;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap; /* Safari */
-webkit-justify-content: space-between;
justify-content: space-between;
flex-wrap:wrap;
}

.set .col3 img{
max-width: 48%;
}

.set .col3 .price{
max-width: 48%;
}

.set .col3 .price{
margin-bottom: 20px;
font-size:50px;
}

.set .col3 .price p{
padding-top: 10px;
font-size:28px;
}

.set .col3 .caution{
margin-top: 10px;
}

.ttl4 {
margin-bottom: 20px;
}

.ttl4 img {
width: 100%;
    }
	
.ttl4 p {
margin-top: 20px;
font-size: 14px;
position: relative;
top:0;
width: 100%;
}

.ttl5{
text-align: center;
}

.ttl5 span {
margin-left: 0;
}

.detail2 {
width: 100%;
    }
	
.roll {
width: 100%;
margin-top: 20px;
    }

}

@media screen and (max-width: 764px) {
.content{
margin: 0 auto 50px;
border-radius: 20px;
padding: 20px;
}


footer .cnt .note{
width: 100%;
}

footer .cnt .address{
margin-top: 20px;
width: 100%;
}

	}

@media screen and (max-width: 580px) {
.pc {
display: none;
}

.sp {
display: block;
}

.header {
margin: 10px auto;
}

.header .header_l, .header .header_r {
width: 100%;
}

.header .header_r p{
text-align:left ;
font-size:16px;
line-height: 1.5;
font-family:'Zen Kaku Gothic New', sans-serif;
margin:0 20px 20px;
}

.catch {
font-size: 36px;
}

.set .col1{
width: 100%;
}

.set .col2{
width: 100%;
margin-top: 20px;
}

.set .col3 img{
max-width: 100%;
}

.set .col3 .price {
max-width: 100%;
margin: 20px auto 0;
    }
	
.ttl2 {
max-width: 100%;
text-align: left;
font-size:24px;
    }
	
.sonae{
text-align: center
}	
	
.sonae p{
text-align: left;
font-size:16px;
margin: 0 0 10px;
}

.chara{
position: relative;
right: 0;
bottom:0;
margin: 0 auto -50px;
}
	
.step .item2{
width: 100%;
text-align: center;
margin-bottom: 20px;
}

.step ul{
width:100%;
}

.step ul li{
width: 100%;
margin-bottom: 10px;
text-align: center;
    }
	
.ttl5 {
font-size: 24px;
    }
	
.ttl5 span{
font-size: 28px;
display: block;
    }

/* トップへ戻るボタン */
#page_top {
right: 0;
bottom: 0;
background: #000000;
}

#page_top::before {
color: #FFFFFF;
}


/* 追従 */
.sticky{
height: 60px;
padding:0;
}

.sticky ul{
width: calc(100% - 60px);
margin: 0;
}

.sticky ul li{
width: 50%;
}

.sticky ul li a{
height: 60px;
border-radius: 0;
background:#ec9a1f;
font-size:18px;
font-weight: 900;
padding: 20px 0 0;
color:#FFFFFF;
}
}