@charset "utf-8";
/*------------------------------------------------------------
トップページ
------------------------------------------------------------*/
#main .mainImg{
margin-bottom:-2px;
background:url(../img/index/main_img02.jpg) no-repeat top center;
background-size:cover;
}
#main .mainImg > img{
width:100%;
}
#main .mainImg .content{
position:relative;
/*padding-bottom:42.5%;*/
padding-bottom:47%;
}
#main .mainImg .btnArea{
position:absolute;
/*right:84px;*/
left:50%;
transform:translateX(-50%);
bottom:0;
display:flex;
align-items:center;
justify-content:center;
}
#main .mainImg .btnArea .banner{
width:480px;
margin:-30px 0 0 30px;
}
#main .mainImg .btnArea .banner a:hover{
opacity:.8;
}
#main .mainImg ul{
display:flex;
}
#main .mainImg ul li{
width:367px;
text-align:right;
position:relative;
margin:0 10px;
}
#main .mainImg ul li:last-child img{
width:352px;
}
#main .mainImg ul li .on{
position:absolute;
top:0;
left:0;
opacity:0;
transition:0.2s;
}
#main .mainImg ul li:last-child .on{
left:auto;
right:0;
}
#main .mainImg li a:hover .on{
opacity:1;
}
#main .mainImg li a{
display:block;
}
#main .mainImg .ttl{
color:#fff;
font-size:3vw;
font-weight:bold;
text-align:center;
width:100%;
position:absolute;
top:0.8vw;
left:52%;
transform:skewX(-5deg) rotate(-3.8deg) translateX(-52%);
font-feature-settings:"palt"1;
}
#main .mainImg p{
width:560px;
position:absolute;
right:-34px;
top:11.5%;
font-size:6.8rem;
font-weight:700;
letter-spacing:-2px;
font-family:"游明朝体","Yu Mincho","YuMincho","Hiragino Mincho Pro","MS PMincho","ＭＳ Ｐ明朝","ヒラギノ明朝 Pro W6",serif;
text-align:center;
transform:skewX(-5deg) rotate(-4deg);
}
/*タイトル見出しの位置調整用*/
@media screen and (max-width:375px){
#main .mainImg p{transform:scale(1) skewX(-5deg) rotate(-4deg); top:0px;}
}
@media screen and (min-width:474px){
#main .mainImg p{transform:scale(1.1) skewX(-5deg) rotate(-4deg); top:100px !important;}
}
@media screen and (min-width:510px){
#main .mainImg p{transform:scale(1.12) skewX(-5deg) rotate(-4deg); top:110px !important; right:100px !important;}
}
@media screen and (min-width:550px){
#main .mainImg p{transform:scale(1.3) skewX(-5deg) rotate(-4deg); top:120px !important;}
}
@media screen and (min-width:600px){
#main .mainImg p{transform:scale(1.4) skewX(-5deg) rotate(-4deg); top:140px !important;}
}
@media screen and (min-width:667px){
#main .mainImg p{transform:scale(1.5) skewX(-5deg) rotate(-4deg); top:160px !important; right:120px !important;}
}
@media screen and (min-width:700px){
#main .mainImg p{transform:scale(1.6) skewX(-5deg) rotate(-4deg); top:180px !important; right:100px !important;}
}
@media screen and (min-width:760px){
#main .mainImg p{transform:scale(1.8) skewX(-5deg) rotate(-4deg); top:190px !important;}
}
@media screen and (min-width:768px){
#main .mainImg p{transform:scale(.65) skewX(-5deg) rotate(-4deg); top:4.8vw !important; right:0px !important;}
#main .mainImg .ttl{font-size:3.2rem;}
}
@media screen and (min-width:950px){
#main .mainImg p{transform:scale(0.65) skewX(-5deg) rotate(-4deg); top:4.8vw !important; right:-30px !important;}
}
@media screen and (min-width:980px){
#main .mainImg .ttl{font-size:3.2rem; top:0.45vw;}
#main .mainImg p{right:-12px !important;}
}
@media screen and (min-width:1100px){
#main .mainImg p{transform:scale(0.71) skewX(-5deg) rotate(-4deg); top:5vw !important;}
}
@media screen and (min-width:1150px){
#main .mainImg p{transform:scale(0.75) skewX(-5deg) rotate(-4deg); top:6vw !important;}
}
@media screen and (min-width:1200px){
#main .mainImg p{transform:scale(0.8) skewX(-5deg) rotate(-4deg); top:7vw !important;}
#main .mainImg .ttl{font-size:3.6rem; top:1vw;}
}
@media screen and (min-width:1250px){
#main .mainImg p{top:8vw !important;}
}
@media screen and (min-width:1300px){
#main .mainImg p{top:9vw !important;}
#main .mainImg .ttl{top:1.2vw}
}
@media screen and (min-width:1350px){
#main .mainImg p{top:10.5vw !important;}
}
@media screen and (min-width:1400px){
#main .mainImg p{transform:scale(1.0) skewX(-5deg) rotate(-4deg); top:11vw !important;}
#main .mainImg .ttl{top:1.5vw}
}
@media screen and (min-width:1500px){
#main .mainImg p{top:11.5vw !important;}
#main .mainImg .ttl{top:1.8vw}
}
@media screen and (min-width:1600px){
#main .mainImg p{top:12vw !important;}
#main .mainImg .ttl{top:2vw}
#main .mainImg ul{bottom:18px;}
}
@media screen and (min-width:1700px){
#main .mainImg p{transform:scale(1.2) skewX(-5deg) rotate(-4deg); top:13vw !important;}
#main .mainImg .ttl{top:2.1vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%); font-size:4rem;}
}
@media screen and (min-width:1800px){
#main .mainImg p{transform:scale(1.3) skewX(-5deg) rotate(-4deg); top:14vw !important;}
#main .mainImg .ttl{top:2.5vw}
}
@media screen and (min-width:1900px){
#main .mainImg p{transform:scale(1.35) skewX(-5deg) rotate(-4deg); top:15vw !important;}
#main .mainImg .ttl{font-size:4.7rem; top:2.3vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%);}
}
@media screen and (min-width:2000px){
#main .mainImg p{transform:scale(1.35) skewX(-5deg) rotate(-4deg); top:16vw !important;}
#main .mainImg .ttl{font-size:4.7rem; top:2.3vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%);}
}
@media screen and (min-width:2200px){
#main .mainImg p{transform:scale(1.35) skewX(-5deg) rotate(-4deg); top:16vw !important;}
#main .mainImg .ttl{font-size:4.7rem; top:2.7vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%);}
}
@media screen and (min-width:2400px){
#main .mainImg p{transform:scale(1.5) skewX(-5deg) rotate(-4deg); top:17.2vw !important;}
#main .mainImg .ttl{font-size:4.7rem; top:2.9vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%);}
}
@media screen and (min-width:2550px){
#main .mainImg p{transform:scale(1.8) skewX(-5deg) rotate(-4deg); top:17.4vw !important;}
#main .mainImg .ttl{font-size:5.2rem; top:3vw; transform:skewX(-5deg) rotate(-3.8deg) translate(-52%);}
}

#main .mainImg .txt{
display:block;
font-size:2.8rem;
letter-spacing:0;
font-family:YakuHanJP_Noto, 'Noto Sans JP', sans-serif;
}
#main .mainImg .size{
font-size:4.6rem;
vertical-align:5px;
}
#main .mainImg .red{
color:#BC3030;
line-height:1.36;
letter-spacing:-33px;
font-size:12.5rem;
vertical-align:-5px;
}
#main .mainImg .size02{
/*margin-top:-6px;*/
display:block;
font-size:3.4rem;
letter-spacing:-1px;
font-feature-settings:"palt"1; 
}
#main .mainImg .size03{
display:block;
font-family:YakuHanJP_Noto, 'Noto Sans JP', sans-serif;
font-size:1.7rem;
color:#fff;
text-align:left;
}
#main .mainImg .size03 span{
display:inline-block;
background:#333;
padding:5px;
}
#main h2{
margin:0 0 0 77px;
text-align:center;
position:relative;
z-index:5;
}
#main #sec01{
margin-bottom:6px;
position:relative;
}
#main #sec01:before{
width:120%;
height:92.5%;
position:absolute;
top:15%;
left:-10%;
background:#1D1D1D;
transform:rotate(-3.7deg);
content:"";
z-index:-1;
}
#main #sec01 .content > ul.pc{
margin:-21px 0 0 11px;
text-align:center;
transform:rotate(-3.7deg);
}
#main #sec01 .content > ul.pc > li{
margin:-8px 25px 0;
padding:12px;
width:171px;
height:171px;
display:inline-block;
border:4px dotted #5C5B5B;
border-radius:50%;
box-sizing:border-box;
}
#main #sec01 .content > ul.pc > li > span{
color:#fff;
width:100%;
height:100%;
display:table;
font-size:1.8rem;
font-weight:700;
line-height:1.83;
background-color:#272727;
border-radius:50%;
transform:rotate(3.7deg);
}
#main #sec01 .content > ul.pc >  li > span > span{
display:table-cell;
text-align:center;
vertical-align:middle;
}
#main #sec01 .content > ul.pc >  li > span > span span{
display:block;
margin:0 -47px;
}
#main #sec02{
margin-bottom:36px;
}
#main #sec02 .photo{
margin-bottom:-13px;
text-align:center;
}
#main #sec02 .photo img{
max-width:616px;
width:100%;
}
#main #sec02 .imgBox{
padding:6.8% 0 9%;
background:url(../img/index/photo02.jpg) no-repeat top center;
background-size:cover;
}
#main #sec02 h2{
margin-bottom:-109px;
}
#main #sec02 .imgBox .textBox{
width:530px;
float:right;
}
#main #sec02 .imgBox .textBox h3{
margin-bottom:2.8%;
color:#BC3030;
font-size:2.2rem;
font-weight:900;
line-height:1.4;
}
#main #sec02 .imgBox .textBox p{
line-height:2.07;
}
#main #sec02 .imgBox .textBox p > span{
margin-top:3px;
display:block;
font-size:1.2rem;
}
#main #sec02 .imgBox .textBox p > span span{
color:#BC3030;
font-weight:700;
}
#main #sec02 .use{
position:relative;
z-index:1;
background-color:#2F3035;
}
#main #sec02 .use:after{
width:120%;
height:92.5%;
position:absolute;
bottom:-11.8%;
left:-10%;
background:#2F3035;
transform:rotate(-3.7deg);
content:"";
z-index:-1;
}
#main #sec02 .use h3{
margin-bottom:20px;
text-align:center;
}
#main #sec02 .use h3 img{
margin-top:-13px;
}
#main #sec02 .use ul{
max-width:900px;
margin:-28px auto 0;
}
#main #sec02 .use li{
margin-top:28px;
width:440px;
float:left;
position:relative;
text-align:center;
background:url(../img/index/bg07.png) no-repeat center center;
background-size:100% 288px;
}
#main #sec02 .use li:nth-child(2n){
margin:0 0 28px;
float:right;
}
#main #sec02 .use li p{
color:#fff;
font-size:1.8rem;
font-weight:500;
line-height:1.6;
font-family:YakuHanJP_Noto;
}
#main #sec02 .use li .ttl{
margin-bottom:5px;
font-size:2.6rem;
}
#main #sec02 .use li .img{
margin:0 auto 5px;
max-width:290px;
}
#main #sec02 .use li .img img{
width:100%;
}
#main #sec02 .use li .bg{
width:100%;
height:100%;
position:absolute;
left:0;
top:0;
z-index:-1;
}
#main #sec02 .use .note{
clear:both;
color:#fff;
font-size:1.2rem;
text-align:right;
}
#main #sec03 h2{
margin-bottom:-19px;
}
#main #sec03 .gray{
margin-bottom:-42px;
padding:60px 90px 46px;
position:relative;
background-color:#EAEAEA;
} 

#main #sec03 .gray:before{
width:100%;
height:58px;
background:url(../img/index/bg01.png) no-repeat left top;
position:absolute;
left:0;
top:-58px;
content:'';
background-size:100% 58px;
}
#main #sec03 .gray:after{
width:100%;
height:58px;
background:url(../img/index/bg01.png) no-repeat left top;
position:absolute;
left:0;
bottom:-58px;
content:'';
background-size:100% 58px;
transform:rotate(180deg);
}
#main #sec03 .textDl dt{
margin-bottom:13px;
color:#BC3030;
position:relative;
font-size:2.2rem;
font-weight:700;
z-index:1;
}
#main #sec03 .textDl dt img{
position:absolute;
display:block;
left:-10px;
top:-19px;
z-index:-1;
}
#main #sec03 .textDl dd{
margin-bottom:27px;
position:relative;
z-index:1;
}
#main #sec03 .textDl dd:nth-child(2){
margin-bottom:59px;
}
#main #sec03 .textDl dd:last-child{
margin-bottom:0;
}
#main #sec03 .textDl dd p{
line-height:2.05;
}
#main #sec03 .textDl dd p span{
font-weight:700;
}
#main #sec03 .textDl .dtStyle01 img{
left:-32px;
top:-16px;
}
#main #sec03 .textDl .dtStyle02 img{
left:-32px;
top:-13px;
}
#main #sec03 .textDl .imgBox .photo{
margin-top:-12px;
width:351px;
float:right;
}
#main #sec03 .textDl .imgBox .photo img{
width:100%;
}
#main #sec03 .textDl .imgBox .photo p{
margin-top:7px;
font-size:1.2rem;
text-align:right;
}
#main #sec03 .textDl .imgBox .textBox{
width:430px;
float:left;
}
#main #sec03 .textDl dd:last-child .photo{
margin-top:-25px;
}
#main #sec03 .textDl dd:last-child .photo p{
margin-top:23px;
}
#main #sec03 .imgTxt{
margin-bottom:28px;
text-align:center;
position:relative;
z-index:5;
}
#main #sec03 .imgTxt p{
width:31.4%;
position:absolute;
left:21.3%;
top:18%;
font-size:2.2rem;
font-weight:900;
line-height:1.4;
font-family:YakuHanJP_Noto, 'Noto Sans JP', sans-serif;
color:#2F7FA3;
}
#main #sec03 .imgTxt p span{
display:block;
font-size:3.6rem;
}
#main #sec03 .safe{
margin-bottom:59px;
padding:51px 90px 9px;
position:relative;
z-index:6;
background-color:#E9E9DD;
}
#main #sec03 .safe:after{
width:100%;
height:60px;
background:url(../img/index/bg02.png) no-repeat left top;
position:absolute;
left:0;
bottom:-58px;
content:'';
background-size:100% 60px;
}
#main #sec03 .safe h3{
width:100%;
position:absolute;
left:0;
top:-59px;
text-align:center;
}
#main #sec03 .safe h3 img{
width:100%;
}
#main #sec03 .safe .photo{
padding-left:28px;
margin:0 auto 35px;
max-width:649px;
position:relative;
z-index:1;
text-align:center;
}
#main #sec03 .safe p{
line-height:1.6;
}
#main #sec03 .safe .photo p{
margin-top:-48px;
font-size:1.2rem;
text-align:right;
}
#main #sec03 .safe .ttl{
margin-top:16px;
color:#BC3030;
font-size:3.1rem;
font-weight:900;
text-align:center;
}
#main #sec03 .safe .ttl span{
margin-bottom:3px;
display:block;
font-size:2rem;
font-weight:700;
line-height:1;
}
#main #sec04{
padding:81px 0 34px;
position:relative;
z-index:7;
background-color:#F0F0F0;
}
#main #sec04:before{
width:100%;
height:90px;
position:absolute;
left:0;
top:-90px;
background:url(../img/index/bg03.png) no-repeat left top;
background-size:100% 90px;
content:'';
}
#main #sec04:after{
width:100%;
height:90px;
position:absolute;
left:0;
bottom:-90px;
background:url(../img/index/bg03.png) no-repeat left top;
background-size:100% 90px;
content:'';
transform:rotate(180deg);
}
#main #sec04 h2{
margin:0 0 30px;
font-size:4.25rem;
font-weight:700;
font-family:YakuHanJP_Noto, 'Noto Sans JP', sans-serif;
}
#main #sec04 h2 span{
color:#BC3030;
}
#main #sec04 h3{
margin-bottom:15px;
padding:6px 15px;
font-size:2.1rem;
font-weight:700;
color:#7E6549;
background-color:#fff;
font-family:YakuHanJP_Noto, "Noto Sans JP", sans-serif;
}
#main #sec04 p{
margin-bottom:27px;
line-height:2.05;
}
#main #sec04 p span{
color:#BC3030;
font-weight:700;
}
#main #sec04 .imgBox{
margin-bottom:26px;
}
#main #sec04 .imgBox .photoBox{
margin-top:6px;
width:404px;
float:right;
}
#main #sec04 .imgBox .photoBox img{
width:100%;
}
#main #sec04 .imgBox .textBox{
width:546px;
float:left;
}
#main #sec04 .imgBox .textBox p:last-child{
margin-bottom:0;
}
#main #sec04 .img{
margin:-4px 0 9px;
}
#main #sec05{
padding:114px 0 13px;
position:relative;
z-index:8;
color:#fff;
}
#main #sec05 h3{
margin-bottom:35px;
color:#fff;
position:relative;
z-index:2;
font-weight:700;
font-size:3.2rem;
}
#main #sec05 h3 span{
font-size:2.2rem;
}
#main #sec05 .photoUl{
margin-bottom:39px;
}
#main #sec05 .photoUl > li{
margin-bottom:59px;
padding-bottom:52px;
position:relative;
line-height:1.857;
min-height:276px;
box-sizing:border-box;
background-size:100% auto;
}
#main #sec05 .photoUl > li .inner{
width:100%;
height:100%;
position:absolute;
left:0;
top:18px;
background-color:#676777;
}
#main #sec05 .photoUl > li .inner:before{
width:100%;
height:58px;
position:absolute;
left:0;
top:0;
background:url(../img/index/bg04.png) no-repeat left top;
background-size:100% 58px;
content:'';
}
#main #sec05 .photoUl > li .inner:after{
width:100%;
height:58px;
position:absolute;
left:0;
bottom:0;
background:url(../img/index/bg04.png) no-repeat left top;
content:'';
transform:rotate(180deg);
background-size:100% 58px;
}
#main #sec05 .photoUl > li:after{
margin-left:-50px;
width:101px;
height:32px;
position:absolute;
left:50%;
bottom:-46px;
background:url(../img/index/arrow02.png) no-repeat left top;
background-size:100% auto;
content:'';
}
#main #sec05 .photoUl .photoBox{
	overflow:hidden;
margin-top:-88px;
width:406px;
max-height:15em;
float:right;
box-shadow:20px 20px 0 rgba(0,0,0,0.15);
}
#main #sec05 .photoUl .photoBox img{
width:100%;
}
#main #sec05 .photoUl .textBox{
width:425px;
float:left;
}
#main #sec05 .photoUl .textBox p{
margin-bottom:7px;
}
#main #sec05 .photoUl .textBox p:last-child{
margin-bottom:0;
}
#main #sec05 .photoUl .imgBox{
padding:0 80px 0 54px;
position:relative;
z-index:2;
}
#main #sec05 .photoUl .innerUl{
margin-left:14px;
}
#main #sec05 .photoUl .innerUl li{
padding-left:1em;
text-indent:-2em;
}
#main #sec05 .photoUl .note{
font-size:1.2rem;
line-height:1.86;
}
#main #sec05 .photoUl > li:last-child::after,
#main #sec05 .photoUl > li:nth-last-child(2)::after{
display:none;
}
#main #sec05 .photoUl > li:last-child{
margin-bottom:0;
}
#main #sec05 .photoUl > li:last-child .inner{
background-color:#919191;
}
#main .sec06{
padding:62px 0 5px;
position:relative;
background-color:#F0F0F0;
}
#main .sec06::before{
width:100%;
height:90px;
background:url(../img/index/bg03.png) no-repeat left top;
position:absolute;
left:0;
top:-90px;
content:'';
background-size:100% 90px;
}
#main .sec06::after{
width:100%;
height:90px;
background:url(../img/index/bg03.png) no-repeat left top;
position:absolute;
left:0;
bottom:-90px;
content:'';
background-size:100% 90px;
transform:rotate(180deg);
}
#main .sec06 .headLine{
margin-bottom:26px;
color:#333;
}
#main .sec06 .photoUl{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
margin:0;
}
#main .sec06 .photoUl::after{
content:none;
display:none;
}
#main .sec06 .photoUl li{
margin:0 0 1.5em;
width:calc(33.3333% - 1em);
/*float:left;*/
}
#main .sec06 .photoUl li:nth-child(3n){
margin-right:0;
}
#main .sec06 .photoUl .top{
text-align: center;
padding:1.5em 0;
background-color:#fff;
}
#main .sec06 .photoUl .top img{
width:35%;
min-height:12.55em;
margin:0 auto;
}
#main .sec06 .photoUl p{
width:100%;
display:table;
text-align:center;
font-size:1.85rem;
padding-top:0.75em;
line-height:1.3;
}
#main .sec06 .photoUl p span{
display:table-cell;
text-align:center;
vertical-align:middle;
}
#main .sec06 .photoUl p .note{
margin:8px 0 0;
display:block;
font-size:1.2rem;
}
#main .sec06 .photoUl .bottom dl{
padding:0.5em 1em;
font-size:1.8rem;
line-height:1.6;
background-color:#F9F7EB;
}
#main .sec06 .photoUl .bottom + .bottom{
	border-top:0.15em solid #fff;
}
#main .sec06 .photoUl .bottom dl + dl{
	padding-top:0;
	margin-top:-0.5em;
}
#main .sec06 .photoUl dl dt{
width:90px;
float:left;
}
#main .sec06 .photoUl dl dd{
padding:0 0 0 90px;
font-weight:700;
letter-spacing:-0.02em;
}
#main .sec06 .photoUl dl dd .p_off{
	display: inline-block;
    color: #fff;
    font-weight: bold;
    border-radius: 0.25em;
    padding: 0.1em 0.5em;
    margin-right: 0.75em;
    background: #da5757;
}
#main .sec06 .note{
margin-bottom:60px;
font-size:1.2rem;
font-family:YakuHanJP_Noto;
text-align:right;
}
#main .sec06 .such{
padding-bottom:28px;
margin-bottom:25px;
background-color:#fff;
}
#main .sec06 .such h4{
margin-bottom:19px;
padding:5px 5px 7px;
color:#fff;
font-size:2.6rem;
font-weight:500;
text-align:center;
background-color:#BC3030;
}
#main .sec06 .such ul{
margin:0 1.5em;
}
#main .sec06 .such li{
width:calc(25% - 1px);
border-left:1px dashed #ccc;
}
#main .sec06 .such li:first-child{
border-left:none;
}
#main .sec06 .such li p{
line-height:1.6;
}
#main .sec06 .such li p span{
font-weight:700;
color:#BC3030;
}
#main .sec06 .such li .ttl{
text-align:center;
padding:0 17px 9px;
position:relative;
font-size:135%;
font-weight:700;
text-indent:-1em;
}
#main .sec06 .such li .ttl:before{
color:#BC3030;
content:'■';
}
#main .sec06 .such li .textBox{
font-size:100%;
text-align:center;
}
#main .sec06 .such li .textBox strong{
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
font-size:115%;
margin-bottom:0.5em;
}
#main .sec06 .such + .note{
margin-bottom:44px;
}
#main .sec06 .btn{
margin-bottom:-137px;
}
#main #sec07{
padding:159px 0 166px;
}
#main #sec07 .headLine{
margin-bottom:26px;
}
#main #sec07 .youtube{
max-width:680px;
margin:40px auto;
}
#main #sec07 .youtube .inner{
width:100%;
padding-top:56.25%;
position:relative;
}
#main #sec07 .youtube iframe{
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}
#main #sec07 dl{
margin-bottom:40px;
}
#main #sec07 dt{
padding:23px 10px 23px 90px;
font-size:2.2rem;
font-weight:700;
position:relative;
background-color:#DEDBDB;
}
#main #sec07 dt:before{
width:47px;
height:47px;
position:absolute;
left:23px;
top:1px;
font-weight:700;
font-size:4.7rem;
content:'Q';
}
#main #sec07 dd{
min-height:74px;
padding:13px 23px 17px;
margin-bottom:10px;
line-height:1.6;
box-sizing:border-box;
background-color:#fff;
}
#main #sec07 .ttl{
margin-bottom:31px;
padding-bottom:17px;
color:#fff;
font-size:2.9rem;
font-weight:700;
text-align:center;
border-bottom:1px solid #777;
}
#main #sec07 .policy{
margin:0 auto;
padding-right:30px;
max-width:800px;
height:170px;
overflow-y:scroll;
box-sizing:border-box;
}
#main #sec07 .policy p{
font-size:1.2rem;
line-height:1.86;
color:#fff;
}
#main #sec07 .policy p span{
display:block;
font-weight:700;
}
#main #sec08{
padding-bottom:46px;
position:relative;
background-color:#5A5A67;
}
#main #sec08::before{
width:100%;
height:90px;
background:url(../img/index/bg06.png) no-repeat left top;
position:absolute;
left:0;
top:-90px;
content:'';
background-size:100% 90px;
}
#main #sec08 h2{
margin-bottom:60px;
}
#main #sec08 h2 img{
margin-top:-107px;
}
#main #sec08 h3{
font-size:4.2rem;
font-weight:bold;
color:#fff;
margin-bottom:60px;
text-align:center;
}
#main #sec08 h4	{
font-size:2.7rem;
font-weight:bold;
color:#fff;
margin-bottom:20px;
}
#main #sec08 .flex{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
align-items:flex-start;
}
#main #sec08 .flex .box{
width:calc(50% - 30px);
margin-bottom:60px;
}
#main #sec08 .flex .box100{
width:100%;
padding:0 20%;
}
#main #sec08 .flex .box100 span{
color:#5ba0d9;
}
/*
#main #sec08 .box{
display:flex;
margin-bottom:25px;
padding-bottom:25px;
border-bottom:1px solid #777;
}
#main #sec08 .box:last-of-type{
border-bottom:none;
margin-bottom:0;
padding-bottom:0;
}
*/

#main #sec08 .box .map{
/*width:485px;*/
width:100%;
margin-bottom:10px;
}
#main #sec08 .box .map iframe{
width:100%;
height:196px;
margin-bottom:10px;
}
#main #sec08 .box .map .map_link{
font-size:1.2rem;
text-align:center;
}
#main #sec08 .box .map .map_link a{
color:#fff;
transition:.2s;
}
#main #sec08 .box .map .map_link a:before{
display:inline-block;
content:"";
background:url("../img/index/map_icon.svg") no-repeat center/contain;
width:18px;
height:24px;
margin-right:8px;
vertical-align:middle;
}
#main #sec08 .box .map .map_link a:hover{
color:#aaa;
}
#main #sec08 .box dl{
font-size:1.4rem;
color:#fff;
line-height:1.6;
}
#main #sec08 .box dl dt{
font-weight:bold;
}
#main #sec08 .box dl dd{
margin-bottom:7px;
}
#main #sec08 .box dl dd:last-child{
margin-bottom:0;
}
#main #sec08 .box dl dd .sml{
display:inline-block;
font-size:1.15rem;
margin-bottom:5px;
}
#main #sec08 .box dl dd .ttl{
display:inline-block;
margin-top:10px;
}
#main #sec08 .box dl dd i{
margin-right:5px;
font-size:1.1rem;
vertical-align:1px;
}
#main .contact{
/*padding-bottom:46px;*/
padding-bottom:100px;
position:relative;
background-color:#5A5A67;
}
#main .contact h2{
margin-bottom:33px;
}
#main .contact h2 img{
margin-top:-107px;
}
/*
#main .contact::before{
width:100%;
height:90px;
background:url(../img/index/bg06.png) no-repeat left top;
position:absolute;
left:0;
top:-90px;
content:'';
background-size:100% 90px;
}
*/

#main .contact:after{
width:100%;
height:90px;
background:url(../img/index/bg06.png) no-repeat left top;
position:absolute;
left:0;
bottom:-90px;
content:'';
background-size:100% 90px;
transform:rotate(180deg);
}
#main .contact .photo img{
width:100%;
}
#main .contact .inner{
padding-bottom:43px;
background-color:#F0F0F0;
}
.lower #main .contact .inner{
padding-bottom:0;
}
#main .contact h3{
padding:19px 5px;
color:#fff;
font-size:1.8rem;
font-weight:700;
text-align:center;
background-color:#ACABA9;
}
#main .contact h3 span{
margin-top:5px;
font-weight:normal;
display:block;
font-size:1.6rem;
color:#BC3030;
}
#main .contact table{
width:100%;
font-size:1.6rem;
line-height:1.6;
border-collapse:collapse;
}
#main .contact table th,
#main .contact table td{
/*
padding:9px 0;
*/
text-align:left;
vertical-align:top;
line-height:1;
}
#main .contact table .wid01{
width:21%;
}
#main .contact table .wid02{
width:34%;
}
#main .contact table .wid03{
width:11%;
}
#main .contact table .wid04{
width:34%;
}
#main .contact table th{
padding:1em;
text-align:right;
font-weight:normal;
}
#main .contact table th p{
padding-right:1em;
position:relative;
line-height:1;
}
#main .contact table th p span{
display:block;
color:#BC3030;
font-size:1.2rem;
line-height:1;
position:absolute;
right:0;
top:50%;
transform:translateY(-50%);
}
#main .contact input:not([type="radio"]),
#main .contact textarea{
padding:1em;
width:100%;
font-size:1.35rem;
line-height:1;
appearance:none;
-moz-appearance:none;
-ms-appearance:none;
-webkit-appearance:none;
border-radius:0;
border:none;
box-sizing:border-box;
background-color:#fff;
}
input[type="radio" i]{
margin:0 3px 0 0;
}

#main .contact .radioUl{
display:flex;
flex-wrap:wrap;
align-items:center;
padding-top:7px;
}
#main .contact .radioUl li{
margin-right:20px;
}
#main .contact .radioUl li label{
display:flex;
align-items:center;
}
#main .contact select{
padding:1em;
width:100%;
font-size:1.35rem;
line-height:1;
border-radius:0;
border:none;
box-sizing:border-box;
background-color:#fff;
}
#main .contact table textarea{
padding:1em;
height:123px;
font-size:1.35rem;
line-height:1.5;
}
#main .contact .submit{
display:flex;
margin:5em auto 0;
max-width:550px;
text-align:center;
display:flex;
flex-direction:row-reverse;
gap:2em;
}
#main .contact .submit li{
width:100%;
/*
margin-bottom:15px;
*/
}
@media screen and (min-width:768px){
#main .contact .submit .btnConfirm{
width:75%;
margin:0 auto;
}
}
#main .contact .submit li input{
padding:0.75em 0;
width:100%;
height:auto;
line-height:inherit;
color:#fff;
font-size:2.75rem;
font-weight:700;
text-align:center;
cursor:pointer;
letter-spacing:0.1em;
margin:0 auto;
background-image:url(../img/index/arrow03.png);
background-position:right 25px center;
background-repeat:no-repeat;
background-color:#E8A204;
background-size:16px auto;
transition:.2s;
}
#main .contact .submit li input#edit{
background-image:url(../img/index/arrow03_left.png);
background-position:left 25px center;
}
#main .contact .submit li input:hover{
background-color:#E86D04;
}
.errorMsg{
margin:20px auto;
max-width:750px;
color:#f00;
}
/*
#main .contact .confirmTable{
margin-top:20px;
}
*/
#main .contact .confirmTable th,
#main .contact .confirmTable td{
padding:1em;
line-height:1.25;
background-color:#fff;
}
#main .contact .confirmTable th{
text-align:center;
}
/*
#main .lowersbox{
margin-top:100px;
}
*/
#main .lowersbox .content{
background:#f0f0f0;
text-align:center;
padding:80px 0;
}
#main .lowersbox .content h2{
margin:0 0 2.5em;
font-size:175%;
}
#main .lowersbox .content .text{
font-size:1.25em;
line-height:2;
margin-bottom:3.25em;
}
#main .lowersbox .content .pLink a{
padding-right:23px;
line-height:1.4;
display:inline-block;
font-size:1.8rem;
font-weight:700;
background:url(../img/index/arrow01.png) no-repeat right 6px center;
background-size:7px auto;
border-bottom:1px solid #333;
}
#pTop{
display:inline-block;
position:fixed;
right:18px;
bottom:60px;
z-index:10;
}
#pTop a{
padding:10px 15px;
color:#fff;
background:rgba(90,90,103,0.8);
}
#fixFooter{
display:none;
}
@media all and (max-width:767px){
#main .lowersbox .content{
padding:3.5em 2em;
}
#main .lowersbox .content h2{
margin-bottom:1.5em;
}
#main .lowersbox .content .text{
font-size:1.45em;
text-align:left;
margin-bottom:1.5em;
}
#main .contact .radioUl{
padding:0;
}
}
@media all and (-ms-high-contrast:none){
#main #sec04 h3{
padding:7px 15px 5px;
}
#main .sec06 .such li .ttl::before{
top:5px;
}
}
@media all and (min-width:1401px){
#main #sec02 .imgBox{
padding:10% 0 12%;
}
}
@media all and (max-width:767px){
#main .mainImg{
background-image:url(../img/index/sp_mainimg02.jpg);
/*margin-bottom:13px;*/
margin-bottom:15px;
}
.lower	#main .mainImg{
margin-bottom:0;
}
#main .mainImg .content{
/*padding-bottom:56%;*/
padding-bottom:63%;
}
.lower	#main .mainImg .content{
padding-bottom:56%;
}
#main .mainImg .btnArea{
padding:0 19px 0 18px;
width:100%;
right:0;
bottom:-15px;
/*bottom:-20px;*/
box-sizing:border-box;
flex-direction:column-reverse;
}
.lower	#main .mainImg .btnArea{
right:0;
bottom:inherit;
top:100%;
margin-top:15px;
}
#main .mainImg .btnArea .banner{
width:auto;
max-width:360px;
margin:0 auto 10px;
text-align:center;
}
#main .mainImg .btnArea .banner img{
margin:0 auto;
}
#main .mainImg .ttl{
font-size:4.3vw;
top:1.6vw;
transform:skewX(-5deg) rotate(-3.8deg) translateX(-52%);	
}
#main .mainImg p{
max-width:240px;
width:auto;
right:5%;
/*top:12.1%;*/
top:17vw;
letter-spacing:-1.5px;
font-size:2.6rem;
}
#main .mainImg .red{
font-size:5rem;
letter-spacing:-11px;
}
#main .mainImg .txt{
font-size:1.2rem;
margin:0 auto;
max-width:177px;
text-align:left;
}
#main .mainImg .txt span{
display:block;
text-align:right;
}
#main .mainImg p img{
width:100%;
}
#main .mainImg .size{
font-size:1.8rem;
vertical-align:2px;
}
#main .mainImg .size02{
margin-top:-3px;
font-size:1.4rem;
letter-spacing:-.3px;
}
/*iOSの誤差を調整（なぜかPCプレビューと一致していない。。。）*/
_::-webkit-full-page-media, _:future, :root #main .mainImg .size02{
margin-top:-3px !important;
font-size:1.3rem !important;
letter-spacing:-.3px !important;
}
#main .mainImg .size03{
font-size:0.7rem;
}
#main .mainImg ul{
max-width:391px;
margin:0 auto;
}
#main .mainImg ul li{
width:49.3%;
float:left;
}
#main .mainImg ul li:last-child{
/*margin-top:-5px;*/
margin-top:-1px;
width:47.5%;
float:right;
}
#main h2{
margin:0 0 10px;
}
#main h2 img{
margin-left:16px;
width:80%;
}
#main #sec01 .content > ul{
margin:-23px auto 0;
transform:none;
}
#main #sec01 .content > ul > li{
text-align:center;
}
#main #sec01 .content > ul > li li{
margin:0 7px -10px;
padding:6px;
width:99px;
height:99px;
display:inline-block;
border:2px dotted #5C5B5B;
border-radius:50%;
vertical-align:top;
box-sizing:border-box;
}
#main #sec01 .content > ul > li li > span{
color:#fff;
width:100%;
height:100%;
display:table;
font-size:0.9rem;
line-height:1.55;
transform:none;
font-weight:700;
background-color:#272727;
border-radius:50%;
}
#main #sec01 .content > ul > li li > span > span{
display:table-cell;
text-align:center;
vertical-align:middle;
}
#main #sec01 .content > ul > li li > span > span span{
display:block;
margin:0 -10px;
}
#main #sec01::before{
top:24px;
height:99%;
}
#main #sec01{
margin-bottom:8px;
}
#main #sec02 .photo{
margin-bottom:-3px;
}
#main #sec02 .photo img{
width:73%;
}
#main #sec02 .imgBox{
margin-bottom:24px;
padding:9.5% 5.3% 2.1%;
position:relative;
background:url(../img/index/sp_photo03.jpg) no-repeat left top #fff;
background-size:100% auto;
}
#main #sec02 .imgBox:before{
width:100%;
height:24px;
position:absolute;
left:0;
bottom:-24px;
background:url(../img/index/sp_bg01.jpg) no-repeat left top;
background-size:100% 24px;
content:'';
z-index:2;
}
#main #sec02 h2{
margin-bottom:-9%;
}
#main #sec02 .imgBox .textBox{
width:auto;
float:none;
}
#main #sec02 .imgBox .textBox h3{
margin-bottom:14%;
font-size:1.3rem;
line-height:1.77;
}
#main #sec02 .imgBox .textBox h3 span{
display:block;
width:66%;
float:right;
}
#main #sec02 .imgBox .textBox p{
line-height:1.8;
}
#main #sec02 .imgBox .textBox p > span{
margin-top:2px;
font-size:1rem;
}
#main #sec02 .use h3 img{
margin-top:2px;
width:90%;
}
#main #sec02 .use h3{
margin-bottom:4px;
}
#main #sec02 .use ul{
margin:0 48px 8px;
}
#main #sec02 .use li{
margin:0 0 11px !important;
width:auto;
float:none !important;
background-size:100% 98.3%;
}
#main #sec02 .use li p{
line-height:1.63;
font-size:1.1rem;
}
#main #sec02 .use li .ttl{
margin-bottom:6px;
font-size:1.5rem;	
}
#main #sec02 .use li .img{
margin-bottom:0;
}
#main #sec02 .use li .img img{
width:66%;
}
#main #sec02 .use .note{
padding:0 21px;
font-size:1rem;
}
#main #sec02 .use li:last-child{
margin-bottom:0 !important;
}
#main #sec02{
margin-bottom:11px;
}
#main #sec03 .content{
padding:0 18px;
}
#main #sec02 .use::after{
height:28.5%;
bottom:-2.7%;
transform:rotate(-4.6deg);
}
#main #sec03 .gray{
margin-bottom:-28px;
padding:28px 28px 38px;
}
#main #sec03 .gray::before{
height:20px;
background-image:url(../img/index/sp_bg02.png);
background-size:100% 20px;
top:-20px;
}
#main #sec03 .gray::after{
height:20px;
background-image:url(../img/index/sp_bg02.png);
background-size:100% 20px;
bottom:-20px;
}
#main #sec03 h2{
margin:0 -18px -10px;
}
#main #sec03 .textDl dt{
margin-bottom:4px;
font-size:1.6rem;
}
#main #sec03 .textDl dd p{
line-height:1.8;
}
#main #sec03 .textDl dt img{
left:6px;
top:-16px;
}
#main #sec03 .textDl dd:nth-child(2){
margin-bottom:48px;
}
#main #sec03 .textDl .imgBox .textBox{
margin-bottom:6px;
width:auto;
float:none;
}
#main #sec03 .textDl .imgBox .photo{
margin:0 -4px;
width:auto;
float:none;
}
#main #sec03 .textDl .imgBox .photo img{
margin-left:-10px;
}	
#main #sec03 .textDl .dtStyle01 img{
left:-16px;
top:-2px;
}
#main #sec03 .textDl .imgBox .photo p{
margin-top:2px;
font-size:1rem;
}
#main #sec03 .textDl dd{
margin-bottom:23px;
}
#main #sec03 .textDl .dtStyle02 img{
left:-16px;
top:-6px;
}
#main #sec03 .textDl dd:last-child .photo{
margin:10px 16px 0 -24px;
}
#main #sec03 .textDl dd:last-child .photo img{
margin-left:0;
}
#main #sec03 .textDl dd:last-child .photo p{
margin-top:6px;
}
#main #sec03 .imgTxt{
margin:0 2px 11px;
}
#main #sec03 .imgTxt img{
width:100%;
}
#main #sec03 .imgTxt p{
width:55%;
top:21%;
left:0;
font-size:1.2rem;
}
#main #sec03 .imgTxt p span{
margin-bottom:3px;
font-size:2rem;
}
#main #sec03 .safe h3{
top:-6.5%;
}
#main #sec03 .safe .photo{
margin:0 -15px 6px;
padding-left:0;
}
#main #sec03 .safe{
margin-bottom:23px;
padding:6.8% 28px 18px;
}
#main #sec03 .safe .photo p{
margin:-1px 16px 0;
font-size:1rem;
line-height:1.6;
}
#main #sec03 .safe p{
line-height:1.8;
}
#main #sec03 .safe .ttl{
margin-top:9px;
line-height:1.29;
font-size:2rem;
}
#main #sec03 .safe .ttl span{
margin-bottom:8px;
font-size:1.4rem;
}
#main #sec03 .safe::after{
height:21px;
bottom:-21px;
background-image:url(../img/index/sp_bg03.png);
background-size:100% 21px;
}
#main #sec04 {
padding:31px 18px 28px;
}
#main #sec04::before{
height:25px;
top:-24px;
background-size:100% 25px;
}
#main #sec04 h2{
margin:0 0 17px;
font-size:2.4rem;
line-height:1.4;
}
#main #sec04 h3{
margin-bottom:9px;
padding:7px 9px 10px;
font-size:1.6rem;
line-height:1.425;
}
#main #sec04 p{
line-height:1.8;
}
#main #sec04 .imgBox .textBox{
width:auto;
float:none;
}
#main #sec04 .imgBox .photoBox{
margin-top:7px;
width:auto;
float:none;
}
#main #sec04 .img{
margin:15px 0 12px;
}
#main #sec04::after{
height:25px;
bottom:-25px;
background-size:100% 25px;
}
#main #sec05{
padding:38px 18px 13px;
}
#main #sec05 .photoUl .imgBox{
padding:0 28px;
}
#main #sec05 .photoUl .photoBox{
margin:0 0 18px;
width:auto;
float:none;
box-shadow:15px 15px 0 rgba(0,0,0,0.15);
}
#main #sec05 .photoUl .textBox{
width:auto;
float:none;
}
#main #sec05 .photoUl > li{
margin-bottom:66px;
min-height:inherit;
padding-bottom:0;
}
#main #sec05 .photoUl > li .inner{
top:22%;
height:88%;
}
#main #sec05 .photoUl > li .inner::before{
height:20px;
background-size:100% 20px;
}
#main #sec05 .photoUl > li .inner::after{
bottom:-1px;
height:20px;
background-size:100% 20px;
}
#main #sec05 .photoUl .innerUl{
margin-left:9px;
}
#main #sec05 h3{
margin-bottom:8px;
font-size:1.8rem;
}
#main #sec05 .photoUl > li::after{
bottom:-70px;
}
#main #sec05 h3 span{
font-size:0.8rem;
}
#main #sec05 .photoUl .textBox p{
margin-bottom:2px;
letter-spacing:-0.5px;
}
#main #sec05 .photoUl .note{
font-size:1rem;
line-height:1.8;
}
#main #sec05 .photoUl{
margin-bottom:11%;
}
#main #sec05 .photoUl > li:last-child{
margin:0;
}
#main #sec05 .btn{
margin-bottom:-38px;
}
#main .sec06::before{
height:25px;
top:-25px;
background-size:100% 25px;
}
#main .sec06::after{
height:25px;
bottom:-25px;
background-size:100% 25px;
}
#main .sec06{
padding:30px 18px 5px;
}
#main .sec06 .headLine{
margin-bottom:17px;
}
#main .sec06 .photoUl{
margin:-10px 0 7px;
}
#main .sec06 .photoUl li{
margin:10px 0 0;
width:48.5%;
}
#main .sec06 .photoUl li:nth-child(2n){
float:right;
background-color:#f9f7eb;
}
#main .sec06 .photoUl .top{
padding:8px 0 7px;
}
#main .sec06 .photoUl .top img{
	min-height:10em;
}
#main .sec06 .photoUl p{
margin-top:2px;
font-size:1rem;
line-height:1.2;
}
#main .sec06 .photoUl dl{
height: auto !important;
display: flex;
line-height:1.4;
}
#main .sec06 .photoUl dl dt{
width:auto;
min-width:5em;
float:none;
font-size:1.2rem;
}
#main .sec06 .photoUl dl dd{
width:auto;
padding:0;
font-size:1.3rem;
letter-spacing:-0.03em;
}
#main .sec06 .photoUl p .note{
font-size:1rem;
margin:0;
}
#main .sec06 .photoUl dl dd .p_off{
margin:0;
}
#main .sec06 .note{
margin-bottom:23px;
font-size:1rem;
}
#main .sec06 .such h4{
margin-bottom:9px;
padding:5px 5px 6px;
font-size:1.6rem;
}
#main .sec06 .such li p{
line-height:1.8;
}
#main .sec06 .such li .ttl{
padding:0 13px 2px;
font-size:150%;
}
#main .sec06 .such li .ttl::before{
width:10px;
height:10px;
left:1px;
top:8px;
}
#main .sec06 .such li .textBox{
	font-size:110%;
}
#main .sec06 .such ul{
margin:1.5em !important;
}
#main .sec06 .such li{
width:auto !important;
float:none;
margin:1em 0 0 !important;
padding:1.5em;
border:1px solid #ccc !important;
}
#main .sec06 .such{
padding-bottom:1px;
margin-bottom:1em;
}
#main .sec06 .such + .note{
margin-bottom:12px;
}
#main .sec06 .btn{
margin-bottom:-60px;
}
#main #sec07{
padding:64px 18px 72px;
}
#main #sec07 .headLine{
margin-bottom:11px;
}
#main #sec07 dt{
padding:12px 10px 12px 37px;
font-size:1.6rem;
}
#main #sec07 dd{
padding:8px 28px 10px;
font-size:1.1rem;
line-height:1.8;
}
#main #sec07 dt::before{
height:27px;
width:27px;
font-size:2.7rem;
left:7px;
top:3px;
}
#main #sec07 .ttl{
margin-bottom:12px;
padding-bottom:7px;
font-size:1.7rem;
}
#main #sec07 dl{
margin-bottom:13px;
}
#main #sec07 .policy{
padding-right:0;
max-width:84%;
height:128px;
}
#main #sec07 .policy p{
font-size:1rem;
line-height:1.74;
}
#main #sec08{
padding:0 18px 30px;
}
#main #sec08::before{
height:25px;
top:-25px;
background-size:100% 25px;
}
#main #sec08 h2{
margin:0 -18px 20px;
}
#main #sec08 h2 img{
margin-top:-11%;
}
#main #sec08 h3{
font-size:1.8rem;
margin-bottom:20px;
}
#main #sec08 h4{
font-size:1.5rem;
margin-bottom:2px;
padding:10px;
background:#41414B;
cursor:pointer;
position:relative;
}
#main #sec08 h4:before, #main #sec08 h4:after{
content:"";
background:#fff;
position:absolute;
transform:translateY(-50%);
transition:.2s;
}
#main #sec08 h4:before{
width:10px;
height:2px;
top:50%;
right:10px;
}
#main #sec08 h4:after{
width:2px;
height:10px;
top:50%;
right:14px;
}
#main #sec08 h4.active:before, #main #sec08 h4.active:after{
transform:translateY(-50%) rotate(90deg);
}
#main #sec08 h4.active:before{
opacity:0;
/*
visivility:visivle;
*/
}
#main #sec08 .flex{
display:block;
}
#main #sec08 .flex .box{
width:100%;
margin-bottom:0;
}
#main #sec08 .flex .box100{
padding:0;
}
#main #sec08 .toggle{
display:none;
padding:20px 0;
}
#main #sec08 .box .map{
width:100%;
margin-bottom:10px;
}
#main #sec08 .box .map iframe{
height:40vw;
margin-bottom:10px;
}
#main #sec08 .box .map .map_link{
font-size:1.2rem;
}
#main #sec08 .box .map .map_link a:before{
width:14px;
height:20px;
margin-right:5px;
}
#main #sec08 .box dl{
font-size:1.2rem;
margin-left:0;
}
#main #sec08 .box dl dd{
margin-bottom:10px;
}
#main #sec08 .box dl dd i{
font-size:1rem;
margin-right:4px;
vertical-align:0;
}
#main #sec08 .box dl dd .sml{
font-size:1.1rem;
}
#main .contact::before{
height:25px;
top:-25px;
background-size:100% 25px;
}
#main .contact{
/*padding:0 18px 36px;*/
padding:0 18px 50px;
}
/*	
#main .contact h2{
margin:0 -18px 15px;
}
#main .contact h2 img{
margin-top:-11%;
}
*/
#main .contact .photo{
text-align:center;
}
#main .contact::after{
height:25px;
bottom:-25px;
background-size:100% 25px;
}
#main .contact h3{
padding:6px 18px 8px;
font-size:1.4rem;
line-height:1.48;
}
#main .contact h3 span{
font-size:1rem;
}
#main .contact table{
line-height:1.3;
font-size:1.2rem;
}
#main .contact table th, #main .contact table td{
padding:0;
}
#main .contact table .wid01{
width:14%;
}
#main .contact table .wid03{
width:18%;
}
#main .contact table th{
padding:1em;
}
#main .contact table textarea{
height:102px;
}
#main .contact table .fText02{
width:100%;
}
#main .contact select{
width:100%;
}
#main .contact .thStyle03{
padding:3px 7px 3px 0;
}
#main .contact .borderBox{
padding:1.5em;
margin:0;
}
.lower #main .contact .borderBox{
padding:0;
}
#main .contact .submit{
margin-top:3.25em;
}
#main .contact .submit li input{
max-width:235px;
height:auto;
font-size:1.75rem;
padding:0.5em 0;
padding-right:0.5em;
background-size:8px auto;
background-position:right 10px center;
}
#main .contact .submit li input#edit{
padding-left:0.5em;
padding-right:0;
background-position:left 10px center;
}
#main .contact .inner{
padding-bottom:20px;
}
.lower #main .contact .inner{
padding-bottom:0;
}
#main .contact table .thStyle02,
#main .contact table .tdStyle02{
/*
width:100% !important;
float:left !important;
*/
text-align:left;
}
.errorMsg{
margin:10px 29px;
}
#main .contact table .thStyle02{
padding:5px 0 4px;
}
/*
#main .contact table .thStyle02 p{
margin-right:-120px;
}
#main .contact table .tdStyle02 .touch{
margin-right:-614%;
}
*/
#fixFooter{
display:block;
width:100%;
height:30px;
background:#F0F0F0;
position:fixed;
left:0;
bottom:0;
z-index:999;
transform:translateY(100px);
opacity:0;
transition:.3s;
}
#fixFooter:before{
width:100%;
height:25px;
position:absolute;
left:0;
top:-25px;
background:url(../img/index/bg03.png) no-repeat left top;
background-size:100% 25px;
content:'';
}
.scroll #fixFooter{
transform:translateY(0);
opacity:1;
}
#fixFooter .btn{
margin-top:-60px;
}
#pTop{
bottom:110px;
}
}
@media all and (max-width:374px){
.lower	#main .mainImg .content{
padding-bottom:63%;
}
}
@media all and (min-width:380px) and (max-width:767px){
#main #sec03 .safe h3{
top:-12%;
}
}
@media all and (min-width:445px) and (max-width:767px){
#main #sec02 .imgBox{
padding-top:17%;
}
#main #sec02 .imgBox .textBox h3{
margin-bottom:18%;
}
#main #sec02 .use::after{
bottom:-6.7%;
}
#main #sec03 .textDl dt img{
height:100px;
width:auto;
}
#main #sec05 .photoUl{
margin-bottom:20px;
}
#main #sec05 .photoUl > li .inner{
top:17%;
}
#main #sec03 .imgTxt p{
top:27%;
}
}
@media all and (min-width:580px) and (max-width:767px){
#main .mainImg p{
right:16%;
top:21.1%;
}
#main .contact h2 img{
margin-top:-9%;
}
}
@media all and (max-width:374px){
#main .contact .submit li input{
font-size:1.35rem;
line-height:1.75;
}
#main #sec01 .content > ul > li li{
margin:0 2px -10px;
}
#main #sec02 .imgBox .textBox h3 span{
width:80%;
}
#main #sec03 .imgTxt p{
top:16%;
}
#main #sec03 .safe .ttl span{
font-size:1.2rem;
}
#main #sec03 .safe .ttl{
font-size:1.6rem;
}
#main .sec06 .photoUl p{
letter-spacing:-0.5px;
}
#main .contact table{
font-size:1rem;
}
#main .contact input, #main .contact textarea{
font-size:1rem;
}
}

/*---
キャンペーン
---*/
#main .sec06 .such ul{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
@media screen and (max-width:767px){
#main .sec06 .such ul{
display:block;
}
}

#campaign{
background:#3C3C3F;
padding-bottom:40px;
}
#campaign .box{
margin:-10px 18px 10px;
}
#campaign .mark{
width:240px;
margin:0 auto 10px;
position:relative;
top:7px;
}
@media screen and (max-width:767px){
#campaign .mark{
top:0;
}
}

#campaign .title{
color:#FFF100;
font-size:28px;
font-weight:700;
text-align:center;
margin-bottom:14px;
line-height:1.4em;
}
#campaign .title .t2{
font-size:32px;
margin-top:2px;
}
#campaign .text{
color:#fff;
font-size:17px;
margin-bottom:30px;
line-height:1.6em;
}
#campaign .c_link a{
display:block;
color:#fff;
font-size:23px;
font-weight:700;
padding:10px 0 15px;
background:#BC3030;
text-align:center;
position:relative;
}
#campaign .c_link a:before{
content:"";
width:10px;
height:10px;
border-right:3px solid #fff;
border-bottom:3px solid #fff;
position:absolute;
right:20px;
top:50%;
transform:translateY(-50%) rotate(-45deg);
}
#campaign .c_link a:hover{
background:#D31B1B;
}
@media screen and (min-width:768px){
#campaign{
padding:90px 0;
}
#campaign embed{
vertical-align:bottom;
}
#campaign .sp{
display:none;
}
#campaign .box{
display:flex;
justify-content:space-between;
align-items:center;
max-width:980px;
margin:0 auto;
}
#campaign .box .contents{
width:calc(100% - 270px);
}
#campaign .mark{
margin:0;
}
#campaign .title{
text-align:left;
font-size:32px;
margin-bottom:20px;
}
#campaign .c_link{
width:440px;
font-weight:700;
}
#campaign .c_link a{
padding:20px 0 26px;
transition:.2s;
}
}
#gFooter{
position:relative;
background:#41414B;
}
#gFooter:before{
width:100%;
height:90px;
background:url(../img/index/bg08.png) no-repeat left top;
position:absolute;
left:0;
top:-90px;
content:'';
background-size:100% 90px;
}
#gFooter .sns{
display:flex;
justify-content:center;
margin-bottom:40px;
transform:skewY(-4deg);
}
#gFooter .sns li{
margin:0 10px;
transform:skewY(4deg);
}
#gFooter .sns li a{
display:block;
transition:.2s;
}
#gFooter .sns li a:hover img{
opacity:0 !important;
transition:.2s;
}
#gFooter .sns li:first-child{
background:url("../img/index/pc_btn_mb_men_on.svg") no-repeat center/cover;
}
#gFooter .sns li:last-child{
background:url("../img/index/pc_btn_mb_hair_on.svg") no-repeat center/cover;
}
#gFooter p{
text-align:center;
}
#gFooter .transaction{
text-align:center;
margin:1em 0 1.5em;
}
#gFooter .transaction,
#gFooter .transaction a{
color:#fff;
}
@media screen and (max-width:767px){
#gFooter:before{
height:26px;
top:-26px;
background-size:100% 26px;
}
#gFooter .sns{
margin-bottom:20px;
}
#gFooter .sns li:first-child{
background-image:url("../img/index/sp_btn_mb_men_on.svg");
}
#gFooter .sns li:last-child{
background-image:url("../img/index/sp_btn_mb_hair_on.svg");
}
}

/*---
20200924追記
---*/
#priceinfo .maintenance{
font-size:1.6rem;
font-weight:600;
color:#fff;
background:#BC3030;
text-align:center;
margin-bottom:10px;
padding:5px 10px 6px;
}
#priceinfo .maintenance span{
font-size:1rem;
font-weight:400;
}
@media screen and (min-width:768px){
#priceinfo .maintenance{
font-size:2.6rem;
font-weight:500;
margin-bottom:20px;
}
#priceinfo .maintenance span{
font-size:1.2rem;
}
}

/***
yahoo用
***/
@media screen and (max-width:767px){
.yahoo_lp #main .mainImg{
margin-bottom:13px;
}
.yahoo_lp #main .mainImg .btnArea{
bottom:-20px;
}
}

/* 221111修正 */
.datingUl{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
width:100%;
}
.datingUl li{
width:calc(30% - 3px);
}
.datingUl li:first-child{
width:calc(40% - 3px);
}
.preferred_block .datingUl li,
.preferred_block .datingUl li:first-child{
width:calc(27.5% - 3px);
}
.preferred_block .datingUl li:last-child{
width:calc(45% - 3px);
}
.preferred_block .perferred .item{
display:flex;
align-items:center;
position:relative;
margin:0.5em 0;
}
.preferred_block .perferred .item .must{
color:#BC3030;
display:inline-block;
font-size:1.2rem;
vertical-align:middle;
margin-left:0.5em;
}
#main .contact .borderBox table,
#main .contact .borderBox table tbody,
#main .contact .borderBox table tr,
#main .contact .confirmTable,
#main .contact .confirmTable tbody,
#main .contact .confirmTable tr{
display:block;
width:100%;
}
#main .contact .borderBox table tr,
#main .contact .confirmTable tr{
margin-bottom:15px;
}
#main .contact .borderBox table tr:last-child{
margin-bottom:0;
}
#main .contact .borderBox table th,
#main .contact .borderBox table td,
#main .contact .confirmTable th,
#main .contact .confirmTable td{
display:block;
font-size:95%;
}
#main .contact .borderBox table th,
#main .contact .confirmTable th{
text-align:left;
font-size:100%;
font-weight:bold;
background:rgba(232, 162, 4, 0.35);
}
#main .contact .confirmTable th{
margin-bottom:-1px;
}
#main .contact .borderBox .name_block,
#main .contact .borderBox .kana_block{
width:49.75%;
float:left;
}
#main .contact .borderBox .name_block.name_b02,
#main .contact .borderBox .kana_block.kana_b02{
float:right;
}
#main .contact .borderBox .birthday_block{
clear:both;
}
@media screen and (min-width:768px){
#main .contact .borderBox{
max-width:750px;
padding-top:2em;
margin:2em auto;
margin-top:0;
}
.lower #main .contact .borderBox{
padding-top:1em;
}
.birthday_block .datingUl li,
.birthday_block .datingUl li:first-child,
.preferred_block .datingUl li,
.preferred_block .datingUl li:first-child,
.preferred_block .datingUl li:last-child{
width:calc(33.3333% - 3px);
}
}
@media screen and (max-width:767px){
#main .contact .borderBox .name_block,
#main .contact .borderBox .kana_block{
width:49%;
}
#main .contact .borderBox table th,
#main .contact .borderBox table td,
#main .contact .confirmTable th,
#main .contact .confirmTable td{
font-size:110%;
}
#main .contact .borderBox table th,
#main .contact .confirmTable th{
font-size:125%;
}
.preferred_block .perferred .item .must{
font-size:0.9rem;
}
}

.lower #main .contact{
padding:3.5em;
}
@media screen and (max-width:767px){
.lower #main .contact{
padding:2.5em;
}
}

.borderBox table th .small{
display:inline-block;
font-size:80%;
font-weight:normal;
margin-left:0.05em;
vertical-align:middle;
}
.borderBox table .note{
color:#888;
font-size:1.25rem;
line-height:1.25;
margin-top:5px;
letter-spacing:0.05em;
}
.borderBox table .error_m{
display:block;
color:#BC3030;
font-size:1.25rem;
line-height:1.25;
font-weight:normal;
margin-top:5px;
}
#main .contact select{
cursor:pointer;
}

.fileUl{
padding:1em;
background:#fff;
}
.fileUl li{
margin:1em 0 0;
text-align:center;
}
.fileUl li:first-child{
margin:0;
}
.fileUl li label input[type="file"]{
display:none;
}
.fileUl li.hide{
display:none;
}
.fileUl li .pcText{
display:none;
}
.fileUl li .choice{
background:#d5d5d5;
border:1px solid #ccc;
border-radius:5px;
padding:0.5em;
margin:0 auto;
}
.fileUl li .thumbnail{
display:none;
justify-content:center;
align-items:center;
width:260px;
height:160px;
background:#f4f4f4;
margin:0 auto;
overflow:hidden;
position:relative;
}
.fileUl li .thumbnail img{
width:100%;
height:auto;
/*
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
*/
}
.fileUl li .thumbnail .delete{
width:20px;
height:20px;
background:#fff;
border:1px solid #d8d8d8;
border-radius:3px;
position:absolute;
top:10px;
right:10px;
cursor:pointer;
}
.fileUl li .thumbnail .delete:before,
.fileUl li .thumbnail .delete:after{
content:"";
width:12px;
height:1px;
background:#707070;
position:absolute;
top:50%;
left:50%;
}
.fileUl li .thumbnail .delete:before{
transform:translate(-50%, -50%) rotate(45deg);
}
.fileUl li .thumbnail .delete:after{
transform:translate(-50%, -50%) rotate(-45deg);
}
@media screen and (max-width:767px){
.fileUl li .thumbnail.show{
display:block;
width:100%;
max-width:260px;
height:auto;
}
.fileUl li .thumbnail.show img{
position:static;
transform:translate(0%, 0%);
}
}
@media screen and (min-width:768px){
.fileUl{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
.fileUl:after{
display:block;
content:"";
width:calc(100% / 3 - 5px);
}
.fileUl li{
width:calc(33.3333% - 1em);
min-height:128px;
margin:0;
}
.fileUl li .choice{
max-width:350px;
}
.fileUl li label{
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
width:100%;
height:100%;
background:#f4f4f4;
position:relative;
cursor:pointer;
transition:.2s;
}
.fileUl li label:hover, .fileUl li label.dragover{
background:#e8e8e8;
}
.fileUl li label:before{
content:"";
width:calc(100% - 20px);
height:calc(100% - 20px);
position:absolute;
top:10px;
left:10px;
}
.fileUl li .pcText{
display:block;
}
.fileUl li .pcText .drop{
font-size:1.2rem;
font-weight:600;
color:#acacac;
margin-bottom:10px;
}
.fileUl li .drop .small{
display:block;
font-size:1rem;
margin-top:2px;
}
.fileUl li .choice{
font-size:1.2rem;
padding:0.5em 1.5em;
max-width:initial;
}
.fileUl li .thumbnail{
width:100%;
height:100%;
}
.fileUl li .thumbnail.show{
display:flex;
}
}