﻿

/* clearfix */

.clear {
    clear:both; height:0; line-height:0;}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
} 
.clearfix:before {
  content: "";
  display: block;
  clear: both;
} 
.clearfix {
  display: block;
}
/* Hides from IE-mac \*/  
* html .clearfix { height: 1%; }  
.clearfix { display: block; }  
/* End hide from IE-mac */ 
.m_over:hover{opacity:0.75;}


/*--margin--*/
@media print {
	body{font-size:80%;}
}

/*---------------------ベース--------------------------------------*/

.disp_pc{display:block !important;}
.disp_sp{display:none !important;}
.disp_in_pc{display:inline-block;}
.disp_in_sp{display:none;}
.ta-center { text-align: center; }
.ta-left { text-align: left; }
img{ max-width:100%; vertical-align: bottom;}
html {font-size: 62.5%;}
body { font-size: 1.6em; font-weight: 500; width: 100%; overflow-x: hidden;}
.none{ display:none;}
.bold{ font-weight:bold;}
.center{text-align:center;}
.fc-red { color:#d60b17; }



/* -----------------------------------------------------
 * PCデザイン
 * -------------------------------------------------- */

/*header*/
header { position: relative; width: 100%; height: 60px; padding: 0 10px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15); z-index:100; }
header .header_inner { max-width: 1140px; margin:0 auto; }
header ul { display: flex; justify-content: flex-start; align-items: center; padding: 15px 0; }
header li.logo { margin-right:59px; }
header li.logo img { height:30px; width:auto; }
header li.to_HP { margin-right:49px; }
header li a { position: relative; padding-left: 18px; font-size:1.4rem; font-weight:500; }
header li a:before { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; left:0; top:50%; margin-top:-4px; }
header li.to_HP a:before { border-color: transparent transparent transparent #000; }
header li.saving a:before { border-color: transparent transparent transparent #d60b17; }

/*mv*/
.mv { width: 100%; padding:0 10px; background:#fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.mv .mv_inner { width: 100%; max-width: 1140px; margin: 0 auto;  }
.mv .breadcrumbs { display:inline-flex; justify-content:flex-start; align-items:center; margin-top:9px; }
.mv .breadcrumbs li { margin-left:9px; font-size:1.1rem; font-weight: 500; color: #777777; }
.mv .breadcrumbs a { font-size:1.1rem; font-weight: 500; color: #777777; }
.mv .breadcrumbs li:after { content:"\03e"; padding-left: 13px; }
.mv .breadcrumbs li:last-child:after { display:none; }
.mv .mv_area { margin-top: 31px; padding-bottom: 109px; background:url("../image/bg_mv_pc.png") no-repeat right top; background-size: 44.8% auto; }
.mv .mv_area h1 { padding-top:34px; }
.mv .mv_area h1 img { width:574px; }
.mv .mv_area p { margin-top: 69px; font-size: 1.8rem; font-weight:500; line-height:2.1; }
.mv .mv_area .flexBox { margin-top:69px; width: 620px; display:flex; justify-content: space-between; align-items:flex-end; }
.mv .mv_area .flexBox span { width:26px; height:26px; margin-bottom:19px; }
.mv .mv_area dd { height:65px; width:auto; }
.mv .mv_area dt { margin-bottom: 17px; font-size: 1.7rem; font-weight:500; }
.mv .mv_area img { height:100%; }
.mv .mv_area .text { margin-top: 6px; font-size:1.7rem; font-weight:500;line-height:2; }
.mv .mv_area .text em { font-size:2.1rem; }

/*cont01*/
.cont01{ width: 100%; padding:0 10px 127px; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont01 .co_inner { max-width: 1140px; margin: 0 auto; padding: 105px 0 0; text-align:center; }
.cont01 h3 { display: inline-block; padding-left: 68px; font-size:2.8rem; text-align: center; background: url("../image/ico01.png") left center no-repeat; background-size:59px 29px; }
.cont01 .bnr { margin: 25px auto 0; display:inline-block; }
.cont01 ul { margin-top:79px; display:flex; justify-content:space-evenly; align-items: center; border:solid 2px #000; border-radius:999999px; box-shadow:0 5px 5px rgba(214, 11, 23, 0.1); }
.cont01 li { line-height:78px; }
.cont01 li a { font-size:2rem; font-weight:500; }
.cont01 li a:before { padding-right: 20px; content:"\025bc"; font-size:0.8rem; vertical-align:bottom; }
.cont01 li a:hover{ color:#d60b17; text-decoration:none; }
@media screen and (max-width: 1160px) {
  .cont01 li a { font-size: 1.724vw; }
  .cont01 li a:before { padding-right: 1.724vw;}
}

/*cont02*/
.cont02 { width: 100%; padding:0 10px 120px; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont02 .co_inner { max-width: 1140px; margin: 0 auto; padding: 93px 0 0; text-align: center;}
.cont02 .flexBox { display:flex; justify-content:center; align-items:stretch; max-width:1101px; margin:63px auto 0; }
.cont02 .flexBox dl { width:33.33%; padding: 30px 4.72% 8px; border-right:solid 2px #000; }
.cont02 .flexBox dl:last-of-type { border-right:none; }
.cont02 dl dt { display:flex; justify-content:flex-start; align-items:center; padding-bottom:135px }
.cont02 dl dt span { font-size: 2rem; font-weight:500; line-height:1.4; }
.cont02 dl dt span em { font-size: 3rem; font-weight:900; }
.cont02 dl dt .num { margin-right: 5%; font-size: 8.5rem; font-weight:bold; line-height: 1; font-family:Arial, sans-serif; }
.cont02 dl:nth-of-type(1) dt { background: url("../image/ico04.png") center bottom 32px no-repeat; background-size:63px 74px; }
.cont02 dl:nth-of-type(2) dt { background: url("../image/ico05.png") center bottom 37px no-repeat; background-size:67px 67px; }
.cont02 dl:nth-of-type(3) dt { background: url("../image/ico06.png") center bottom 36px no-repeat; background-size:72px 69px; }
.cont02 dl dd { font-size:2rem; font-weight:500; line-height:1.5; }
.cont02 figure { margin-top:95px; text-align:center; }
.cont02 figcaption { font-size:4rem; font-weight: bold; text-align:center; }
.cont02 figure img { margin-top:24px; }
.cont02 cite { display: block; margin: 7px auto 0; width: 87.28%; max-width: 995px; font-size:1.6rem; text-align:left; }
@media screen and (max-width: 1160px) { 
  .cont02 cite { width:100%; }
}

/*cont03*/
.cont03 { width: 100%; padding:0 10px 130px; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont03 .co_inner { max-width: 1140px; margin: 0 auto; padding: 87px 0 0; text-align: center; }
.cont03 h2 span { margin-left:-13px; }
.cont03 dl { margin:48px auto 0; max-width:993px; }
.cont03 dl:nth-of-type(1) { background: url("../image/bg_cont03_01.png") right 36.858% center no-repeat; background-size: 118px 137px; }
.cont03 dl:nth-of-type(2) { background: url("../image/bg_cont03_02.png") right 36.858% top 42px no-repeat; background-size: 112px 112px; }
.cont03 dl:nth-of-type(3) { background: url("../image/bg_cont03_03.png") right 36.858% center no-repeat; background-size: 121px 117px; }
.cont03 dt { margin-bottom: 27px; display:flex; justify-content:flex-start; align-items:center; }
.cont03 dt span { font-size:2.4rem; font-weight:500; line-height:1; vertical-align: middle; }
.cont03 dt em { font-size:3rem; font-weight:bold; vertical-align:text-top; }
.cont03 dt .num { margin-right: 20px; width: 27px; font-size: 3em; font-weight: bold; font-family:Arial, sans-serif; }
.cont03 dd.txt { max-width: 940px; padding: 0 20px; margin: 0 auto; font-size: 2rem; font-weight:500; line-height:1.6; }

/*link_msg*/
.link_msg { width: 100%; padding:0 10px 130px; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.link_msg .co_inner { max-width: 1140px; margin: 0 auto; padding: 87px 0 0; text-align: center; }
.link_msg dl { margin:48px auto 0; max-width:993px; }
.link_msg dd.txt { max-width: 940px; padding: 0 20px; margin: 0 auto; font-size: 1.6rem; font-weight:500; line-height:1.5; color: #666;}


/*cont04*/
.cont04 { width: 100%; padding:0 10px 120px; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont04 .co_inner { max-width: 1140px; margin: 0 auto; padding: 93px 0 0; text-align: center;}
.cont04 .accordion { margin-top: 60px; background-color:#fff; border: solid 2px #000; border-radius:41px; box-shadow: 0 5px 5px rgba(214, 11, 23, 0.1); }
.cont04 .accordion .flexBox { width: 87.1%; margin: 0 auto; display: flex; justify-content: flex-start; align-items: flex-start; }
.cont04 .accordion .flexBox span:first-of-type { white-space:nowrap; }
.cont04 .accordion dt { min-height: 82px; display: flex; flex-direction: column; justify-content: center; font-size: 2.4rem; font-weight: bold; background: url("../image/ico_plus.png") right 30px center no-repeat; cursor: pointer; }
.cont04 .accordion dt.active { background: url("../image/ico_minus.png") right 30px center no-repeat; }
.cont04 .accordion dd { display:none; }
.cont04 .accordion dd div { padding: 23px 0 21px; font-size: 2rem; font-weight: 500; line-height: 1.6; border-top:solid 1px #000; }
.cont04 .accordion dd li { text-indent:-1em; margin-left:1em; }
.cont04 .accordion dd small { font-size:1.6rem; }

/*cont05*/
.cont05 { width: 100%; padding:0 10px 130px; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont05 .co_inner { max-width: 1140px; margin: 0 auto; padding: 87px 0 0; text-align: center; }
.cont05 h2 span { margin-left: -1em; }
.cont05 h2:after { right:-1.3em; }
.cont05 figure { margin-top: 34px; text-align:center; }
.cont05 .flexBox { width:100%; margin-top: 65px; padding:0  2.72% 0 6.4%; display:flex; justify-content:flex-start; align-items: flex-end; }
.cont05 .flexBox p { font-size:2.2rem; font-weight:500; line-height:1.8; } 
.cont05 .flexBox figure { display: contents; margin-top: 0; width:25%; }
.cont05 .flexBox p em { font-size: 2.6rem; font-weight:bold; }
.cont05 .flexBox02 { margin-top: 80px; width:100%; display:flex; justify-content:space-between; align-items: stretch; }
.cont05 .flexBox02 .leftBox,
.cont05 .flexBox02 .rightBox { width: 47.5877%; padding: 45px 6.14% 23px; background-color:#fffef1; border:solid 2px #000; border-radius:40px; }
.cont05 .flexBox02 p { font-size:1.8rem; font-weight:500; line-height:2.22; text-align:center; }
.cont05 .flexBox02 p em { text-decoration:underline; }
.cont05 .flexBox02 h3 { text-align:center; }
.cont05 .flexBox02 h3 img { max-height: 90px; }
.cont05 .flexBox02 a { position: relative; margin-top: 8px; display:block; font-size:2.2rem; font-weight:bold; color:#d60b17; text-align:center; line-height:57px; background-color:#fff; border: solid 4px #d60b17; }
.cont05 .flexBox02 a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #d60b17; right:6.75%; top:50%; margin-top:-4px; }
.cont05 .flexBox02 span { margin-top: 15px; display: block; font-size:1.4rem; font-weight: 500; line-height:1.857; text-indent:-1em; margin-left:1em; }
.cont05 .recommend { margin-top: 72px; font-size:2.2rem; font-weight:500; text-align:center; }
.cont05 .recommend em { font-size:2.6rem; font-weight:bold; }
.cont05 .btn01 { margin-top:40px; }

/*cont06*/
.cont06 .at_comment_s					{ text-indent:-1em; padding:0 0 0 1em; font-size:85%; line-height:1.3em; margin:10px 0 0 0;}


.cont06 { width: 100%; padding:0 10px 130px; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont06 .co_inner { max-width: 993px; margin: 0 auto; padding: 93px 0 0; text-align: center;}
.cont06 h2 span { margin-left:-0.6em; }
.cont06 h2:after { bottom:0.4em; right:-1.2em; }
.cont06-1 p { margin-top: 60px; font-size:2.4rem; font-weight:500; }
.cont06-1 p em { font-size:2.8rem; font-weight: bold; }
.cont06-1 ul { margin-top:22px; }
.cont06-1 li { margin-top: 8px; font-size:2.4rem; font-weight:500; line-height:2; }
.cont06-1 li a { position: relative; font-weight:bold; text-decoration:underline; }
.cont06-1 li a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #000; top:50%; right: -20px; margin-top:-4px; }
.cont06-1 li a:hover { text-decoration:none; }
.cont06-2 { margin-top:71px; }
.cont06-2 h3,
.cont06-3 h3 { font-size:3rem; }
.cont06-2 p { font-size:2.4rem; font-weight:500; } 
.cont06-2 p em { font-weight: bold; }
.cont06-2 dl { margin-top: 37px; background-color:#fff; }
.cont06-2 dt { display:flex; justify-content:center; align-items: center; height: 100px; background-color:#d60b17; border-radius:34px 34px 0 0; }
.cont06-2 dt span { font-size: 3rem; font-weight:bold; color:#fff; }
.cont06-2 dt img { width:80px; height:80px; }
.cont06-2 dd { display: flex; justify-content: space-evenly; align-items: flex-end; padding: 23px 0 40px; border: solid 2px #d60b17; border-top: none; border-radius:0 0 34px 34px; }
.cont06-2 dd ul { display: flex; justify-content: space-between; align-items: flex-end; width:32.93%; }
.cont06-2 dd li { display: grid; width: 56%; font-size:1.8rem; font-weight:500; }
.cont06-2 dd li.qr { display: block; width:35.168%; }
.cont06-2 dd li img { width:100%; margin-top:15px; }
.cont06-3 { margin-top:92px; }
.cont06-3 ol { margin-top:22px; padding: 34px 2.67% 70px; display: flex; justify-content: center; align-items: stretch; border: solid 2px #d60b17; border-radius:34px; background-color:#fff; }
.cont06-3 ol li { position: relative; width:33.33%; display:flex; flex-direction:column; align-items:center; }
.cont06-3 ol li em { font-size: 2.2rem; text-align:center; }
.cont06-3 ol li img { margin-top: 38px; width:fit-content; }
.cont06-3 ol li dl { position:relative; margin-top:53px; }
.cont06-3 ol li dt { font-size:2.2rem; font-weight:bold; }
.cont06-3 ol li dd { font-size:1.8rem; font-weight:500; line-height:1.78; }
.cont06-3 ol li dd.notice { position:absolute; left: 0; bottom:-1.7em; white-space:nowrap; }
.cont06-3 ol li strong { margin-top: 24px; font-size:2.8rem; font-weight:bold; }
.cont06-3 ol li:after { position:absolute; content:""; display:inline-block; width:35px; height:35px; background:url("../image/ico_arrow_right.png") left center no-repeat; background-size:contain; left:calc(100% + 17px ); top:125px; }
.cont06-3 ol li:last-child:after { display:none; }
.cont06-4 { margin-top:74px; }
.cont06-4 h3 { font-size: 2.2rem; text-align:center; }
.cont06-4 h3 em { font-size:2.6rem; font-weight:bold; }
.cont06-4 ul { margin-top:22px; padding: 5px 2.67% 38px; display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap; border: solid 2px #d60b17; border-radius:34px; background-color:#fff; }
.cont06-4 li { margin: 28px 0 0 1em; width:30%; font-size:2.1rem; text-indent:-1em;  }
.cont06 .text { margin-top: 72px; font-size: 2.2rem; text-align:center; }
.cont06 .text em { font-size:2.6rem; font-weight:bold; }

/*cont07*/
.cont07 { width: 100%; padding:0 10px; }
.cont07 .co_inner { max-width: 993px; margin: 0 auto; padding: 17px 0 44px;} 
.cont07 li { margin-top:30px; }
.cont07 li a { position:relative; font-size:2rem; text-decoration:underline; }
.cont07 li a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #000; top:50%; right: -20px; margin-top:-4px; }

/*h2*/
h2 { position: relative; display:inline-block; font-size:4rem; }
h2 span { display:inline-block; padding-left: 50px; font-size:2.4rem; font-weight:500; background:url("../image/ico02.png") left center no-repeat; background-size: 39px 31px; }
h2:after { position:absolute; content:""; display:inline-block; width:49px; height:53px; background: url("../image/ico03.png") left top no-repeat; background-size: contain; bottom:0.8em; right:-0.5em; }

/*btn01*/
.btn01 { position: relative; margin: 78px auto 0; display:inline-block; width: 392px; font-size:2.2rem; font-weight: bold; color:#d60b17; text-align:center; line-height: 72px; background-color:#fff; border: solid 4px #d60b17; }
.btn01:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #d60b17; right:27px; top:50%; margin-top:-4px; }
.btn01 .slash { position: relative; padding: 0 15px; font-size:1.4rem; }
.btn01 .slash:before { position:absolute; content:""; width:12px; height:2px; background-color:#d60b17;transform:rotate(45deg); left:0; top:50%; }
.btn01 .slash:after { position:absolute; content:""; width:12px; height:2px; background-color:#d60b17;transform:rotate(-45deg); right:0; top:50%; }
.cont06 .btn01 { height: 72px; line-height:0.7; display:flex; flex-direction:column; justify-content:center; align-items: center; background: #fff url("../image/ico12.png") 26px center no-repeat; background-size:51px 48px; }

/*footer*/
footer { width: 100%; padding-bottom:120px; }
footer p { font-size: 1.2rem; text-align: center; line-height: 50px; background-color:#636c83; }
footer small { color: #fff; }
footer .pagetop { position:fixed; display: block; width:auto; height:55px; bottom:50px; right:10px; z-index:999; }

/******** rs-fixedBtn ********/
.rs-fixedBtn {
    position: fixed;
    width:100%;
    margin: 0 auto;
    padding:23px 0;
    text-align: center;
    background:#f7f7f7;
    bottom:0;
    z-index: 500;
}
.rs-fixedBtn a { display:inline-block; width:430px; height:74px; text-indent: -999999px; background: url("../image/img_fixedBtn_on.png") left top no-repeat; background-size:contain; }
.rs-fixedBtn a:hover { background: url("../image/img_fixedBtn_off.png") left top no-repeat; background-size:contain; }


/* -----------------------------------------------------
 * SPデザイン
 * -------------------------------------------------- */

@media screen and (max-width: 767px) {
.disp_pc{display:none !important;}
.disp_sp{display:block !important;}
.disp_in_pc{display:none !important;}
.disp_in_sp{display:inline-block !important;}
.br2{display:block; text-align:center;}
body{min-width: 100%}

.pc { display: none; }

/*header*/
header { position: relative; display: flex; flex-direction: column; justify-content: center; width: 100%; height: 10.8vw; padding: 0; }
header .header_inner { width: 92%; max-width: 92%; margin:0 auto; }
header ul { display: flex; justify-content: space-between; align-items: center; padding: 0; }
header li.logo { margin-right:0; }
header li.logo img { height:5.2vw; }
header li.to_HP { margin-right:0; }
header li a { position: relative; padding-left: 18px; font-size:2.4vw; }

/*mv*/
.mv { width: 100%; padding:0; background:#fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.mv .mv_inner { width: 92%; max-width: 92%; margin: 0 auto;  }
.mv .breadcrumbs { display:inline-flex; justify-content:flex-start; align-items:center; margin-top:9px; }
.mv .breadcrumbs li { margin-left:9px; font-size:1.4rem; font-weight: 500; color: #777777; }
.mv .breadcrumbs a { font-size:1.1rem; font-weight: 500; color: #777777; }
.mv .breadcrumbs li:after { content:"\03e"; padding-left: 13px; }
.mv .breadcrumbs li:last-child:after { display:none; }
.mv .mv_area { margin-top: 6.4vw; padding-bottom: 14.8vw; background: none; }
.mv .mv_area h1 { padding-top:0; }
.mv .mv_area h1 img { width:85.46vw; }
.mv .mv_area p { margin-top: 0; padding-top: 64.8vw; font-size: 3.12vw; line-height:1.7; background:  url("../image/bg_mv_sp.png") center top 8vw no-repeat; background-size: 59.06vw auto; }
.mv .mv_area .flexBox { margin-top:6.8vw; width: 100%; display:flex; justify-content: space-between; align-items:flex-end; }
.mv .mv_area .flexBox span { width:auto; height:4.66vw; margin-bottom:3.33vw; }
.mv .mv_area dd { height:11.33vw; width:auto; }
.mv .mv_area dt { margin-bottom: 2vw; font-size: 2.93vw; }
.mv .mv_area img { vertical-align:inherit; }
.mv .mv_area .text { margin-top: 2vw; padding-top: 0; font-size:2.93vw; line-height:1.43; background:none; }
.mv .mv_area .text em { font-size:3.64vw; font-weight:bold; }

/*cont01*/
.cont01{ width: 100%; padding:0 0 14.4vw; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont01 .co_inner { width: 92%; max-width: 92%; margin: 0 auto; padding: 8.4vw 0 0; text-align:center; }
.cont01 h3 { display: inline-block; padding-left: 11.73vw; font-size:4.84vw; text-align: center; background: url("../image/ico011.png") left center no-repeat; background-size:10.13vw auto; }
.cont01 .bnr { margin: 4.66vw auto 0; display:inline-block; }
.cont01 ul { margin:10.66vw 4vw 0; display:flex; justify-content:space-between; align-items: center; flex-wrap: wrap; border:none; border-radius:0; box-shadow:none; }
.cont01 li { margin-top: 6.53vw; width: 48%; line-height:10.4vw; border:solid 2px #000; border-radius:999999px; box-shadow:0 5px 5px rgba(214, 11, 23, 0.1); }
.cont01 li:first-of-type { margin-top: 0; width:100%; padding-left: 0; text-align: center; }
.cont01 li a { position: relative; display: block; font-size:3.46vw; font-weight:500; text-align:center; }
.cont01 li a:before { position: absolute; content:"\025bc"; font-size:1.386vw; vertical-align:bottom; left: 2.53vw; }
.cont01 li a:hover{ color:#000; text-decoration:none; }

/*cont02*/
.cont02 { width: 100%; padding:0 0 13.86vw; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont02 .co_inner { width: 92%; max-width: 92%; margin: 0 auto; padding: 6.4vw 0 0; }
.cont02 .flexBox { display:block; width: 84vw; max-width:84vw; margin:3.06vw auto 0; }
.cont02 .flexBox dl { width:100%; padding: 6.4vw 0 4.53vw; border-right: none; border-bottom:solid 2px #000; }
.cont02 .flexBox dl:last-of-type { border-bottom:none; }
.cont02 dl dt { display:flex; justify-content:flex-start; align-items:center; padding:0 0 0 12vw; margin-bottom:5.46vw }
.cont02 dl dt span { font-size: 3.46vw; font-weight:500; line-height:1.4; }
.cont02 dl dt span em { font-size: 5.2vw; font-weight:900; }
.cont02 dl dt .num { margin-right: 5%; font-size: 12.6vw; font-weight:bold; line-height: 1; font-family:Arial, sans-serif; }
.cont02 dl:nth-of-type(1) dt { background: url("../image/ico04.png") right 12.26vw center no-repeat; background-size:auto 12.8vw; }
.cont02 dl:nth-of-type(2) dt { background: url("../image/ico05.png") right 12vw center no-repeat; background-size:11.73vw 11.73vw; }
.cont02 dl:nth-of-type(3) dt { background: url("../image/ico06.png") right 11.6vw center no-repeat; background-size:12.4vw 12vw; }
.cont02 dl dd { font-size:3.46vw; line-height:1.5; }
.cont02 figure { margin-top:10.4vw; text-align:center; }
.cont02 figcaption { font-size:6.93vw; font-weight: bold; text-align:center; }
.cont02 figure img { margin-top: 0; max-width:995px; height:76vh; }
.cont02 figure span { display: block; margin-top:4vw; overflow-x:scroll; }
.cont02 cite { display: block; margin: 2.13vw 0 0 1em; width: 100%; max-width: 100%; font-size:2.77vw; text-align:left; }

/*cont03*/
.cont03 { width: 100%; padding:0 0 14.4vw; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont03 .co_inner { width: 92%; max-width: 92%; margin: 0 auto; padding: 6.13vw 0 0; text-align: center; }
.cont03 h2 span { margin-left:-1em; }
.cont03 dl { margin:14.53vw auto 0; max-width:100%; }
.cont03 dl:nth-of-type(1) { background: url("../image/bg_cont03_01.png") right top no-repeat; background-size: 20.4vw auto; }
.cont03 dl:nth-of-type(2) { background: url("../image/bg_cont03_02.png") right top no-repeat; background-size: 19.2vw 19.2vw; }
.cont03 dl:nth-of-type(3) { background: url("../image/bg_cont03_03.png") right top no-repeat; background-size: 20.8vw auto; }
.cont03 dt { margin-bottom: 3.33vw; display:flex; justify-content:flex-start; align-items:center; }
.cont03 dt span { font-size:4.16vw; line-height:1.2; vertical-align: middle; }
.cont03 dt em { font-size:5.2vw; font-weight:bold; vertical-align:text-top; }
.cont03 dt .num { margin-right: 3.46vw; width: auto; font-size: 3em; font-weight: bold; }
.cont03 dd.txt { max-width: 100%; padding: 0; margin: 0 auto; font-size: 3.46vw; line-height:1.6; }
.cont03 dd.img { height: 73vh; overflow-x:scroll; }
.cont03 dd.img img { max-width:1020px; height:100%; }

/*cont04*/
.cont04 { width: 100%; padding:0 0 14.4vw; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont04 .co_inner { width: 84%; max-width: 84%; margin: 0 auto; padding: 17.2vw 0 0; text-align: center;}
.cont04 .accordion { margin-top: 8vw; background-color:#fff; border: solid 2px #000; border-radius:5.2vw; }
.cont04 .accordion .flexBox { width: 76vw; margin: 0 auto; display: flex; justify-content: flex-start; align-items: flex-start; }
.cont04 .accordion dt .flexBox { width:70.8vw; margin:0 5.2vw 0 4vw; padding: 2.8vw 0 2.66vw; }
.cont04 .accordion .flexBox span:first-of-type { white-space:nowrap; }
.cont04 .accordion dt { min-height: none; display: flex; flex-direction: column; justify-content: center; font-size: 4.16vw; font-weight: bold; background: url("../image/ico_plus1.png") right 1.86vw center no-repeat; background-size: 4.53vw 4.66vw; cursor: pointer; }
.cont04 .accordion dt.active { background: url("../image/ico_minus1.png") right 1.86vw center no-repeat; background-size: 4.53vw 4.66vw; }
.cont04 .accordion dd { display:none; }
.cont04 .accordion dd div { padding: 2.8vw 0 4.8vw; font-size: 3.46vw; line-height: 1.6; border-top:solid 1px #000; }
.cont04 .accordion dd li { text-indent:-1em; margin-left:1em; }
.cont04 .accordion dd small { display: block; font-size:3.46vw; text-indent:-1em; margin-left:1em; }

/*cont05*/
.cont05 { width: 100%; padding:0 0 14.4vw; background:#fff url("../image/bg_white_pc.png") left bottom repeat-x; }
.cont05 .co_inner { width: 92%; max-width: 92%; margin: 0 auto; padding: 8.66vw 0 0; text-align: center; }
.cont05 h2 span { margin-left: -1em; }
.cont05 h2:after { right:-1.3em; }
.cont05 figure { margin-top: 34px; text-align:center; }
.cont05 .flexBox { width:100%; margin-top: 9.33vw; padding: 0; display:block; }
.cont05 .flexBox p { font-size:3.813vw; line-height:1.8; } 
.cont05 .flexBox figure { display: block; margin: 0 auto; width:49.46vw; }
.cont05 .flexBox figure img { width:100% }
.cont05 .flexBox p em { font-size: 4.5vw; font-weight:bold; }
.cont05 .flexBox02 { margin-top: 0; width:100%; display:block; }
.cont05 .flexBox02 .leftBox,
.cont05 .flexBox02 .rightBox { width: 84vw; margin: 0 auto 10.4vw; padding: 2.8vw 6.14% 5.06vw; background-color:#fffef1; border:solid 2px #000; border-radius:40px; }
.cont05 .flexBox02 p { font-size:3.12vw; font-weight:500; line-height:2.22; text-align:center; }
.cont05 .flexBox02 p em { text-decoration:underline; }
.cont05 .flexBox02 h3 { max-height: none; height: 15.6vw; text-align:center; }
.cont05 .flexBox02 h3 img { max-height: 15.6vw; height:15.6vw; }
.cont05 .flexBox02 a { position: relative; margin-top: 8px; display:block; font-size:3.813vw; font-weight:bold; color:#d60b17; text-align:center; line-height:10.26vw; background-color:#fff; border: solid 4px #d60b17; }
.cont05 .flexBox02 a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #d60b17; right:4.8vw; top:50%; margin-top:-4px; }
.cont05 .flexBox02 span { margin-top: 15px; display: block; font-size:2.4vw; font-weight: 500; line-height:1.857; text-indent:-1em; margin-left:1em; }
.cont05 .recommend { margin-top: 72px; font-size:3.813vw; text-align:center; }
.cont05 .recommend em { font-size:4.5vw; font-weight:bold; }
.cont05 .btn01 { margin-top:6.93vw; }

/*cont06*/
.cont06 { width: 100%; padding:0 0 14.4vw; background: #fffef1 url("../image/bg_yellow_pc.png") left bottom repeat-x; }
.cont06 .co_inner { width: 92%; max-width: 92%; margin: 0 auto; padding: 8.4vw 0 0; text-align: center;}
.cont06 h2 span { margin-left:-0.6em; }
.cont06 h2:after { bottom:0.4em; right:-1.2em; }
.cont06-1 p { margin-top: 11.06vw; font-size:4.16vw; }
.cont06-1 p em { font-size:4.85vw; font-weight: bold; }
.cont06-1 ul { margin-top:3.2vw; }
.cont06-1 li { margin: 5.6vw 0 0 1em; font-size:4.16vw; line-height:1.3; text-indent:-1em; }
.cont06-1 li:first-child { margin-top:3.2vw; }
.cont06-1 li a { position: relative; font-weight:bold; text-decoration:underline; }
.cont06-1 li a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #000; top:50%; right: -4.4vw; margin-top:-4px; }
.cont06-1 li a:hover { text-decoration:none; }
.cont06-2 { margin:10.26vw auto 0; width:84vw; }
.cont06-2 h3,
.cont06-3 h3 { font-size:5.2vw; }
.cont06-2 p { font-size:4.16vw; } 
.cont06-2 p em { font-weight: bold; }
.cont06-2 dl { margin-top: 10.4vw; background-color:#fff; }
.cont06-2 dt { display:flex; justify-content:center; align-items: center; height: 17.6vw; background-color:#d60b17; border-radius:4.53vw 4.53vw 0 0; }
.cont06-2 dt span { font-size: 5.2vw; font-weight:bold; color:#fff; text-align:center; }
.cont06-2 dt img { width:13.86vw; height:13.86vw; }
.cont06-2 dd { display: block; padding: 6.13vw 0 7.6vw; border: solid 2px #d60b17; border-top: none; border-radius:0 0 4.53vw 4.53vw; }
.cont06-2 dd ul { display: block; margin-top: 9.33vw; width:100%; }
.cont06-2 dd li { display: block; width: 100%; font-size:4.056vw; font-weight:500; text-align:center; }
.cont06-2 dd li img { margin-top:2vw; width:40.8vw; height:auto }
.cont06-2 dd li.qr { display:none; }
.cont06-3 { margin:9.2vw auto 0; width:84vw; }
.cont06-3 ol { margin-top:3.73vw; padding: 6.4vw 4vw; display: block; border: solid 2px #d60b17; border-radius:4.53vw; background-color:#fff; }
.cont06-3 ol li { position: relative; margin-top: 15.2vw; width:100%; display:flex; flex-direction:column; align-items:center; }
.cont06-3 ol li em { font-size: 3.813vw; text-align:center; line-height:1.63 }
.cont06-3 ol li img { margin-top: 6vw; width:fit-content; }
.cont06-3 ol li dl { position:relative; width: 100%; margin-top:4vw; }
.cont06-3 ol li dt { font-size:3.813vw; font-weight:bold; }
.cont06-3 ol li dd { font-size:3.12vw; line-height:1.78; }
.cont06-3 ol li dd.notice { position:relative; left: 0; bottom:0; white-space: normal; text-indent:-1em; margin-left:1em; }
.cont06-3 ol li strong { margin-top: 4vw; font-size:4.85vw; font-weight:bold; }
.cont06-3 ol li:after { position:absolute; content:""; display:inline-block; width:6vw; height:6vw; background:url("../image/ico_arrow_bottom.png") left center no-repeat; background-size:contain; left:50%; top:calc(100% + 5.33vw ); transform:translateX(-50%); }
.cont06-3 ol li:last-child:after { display:none; }
.cont06-4 { margin:9.6vw auto 0; width:84vw; }
.cont06-4 h3 { font-size: 4.957vw; text-align:center; }
.cont06-4 h3 em { font-size:5.86vw; font-weight:bold; }
.cont06-4 ul { margin-top:4.13vw; padding: 6.4vw 0; display: block; border: solid 2px #d60b17; border-radius:4.53vw; background-color:#fff; }
.cont06-4 li { margin: 0 0 0 1em; padding-left: 10.8vw; width:100%; font-size:4.957vw; text-indent:-1em;  }
.cont06-4 li.center { text-align:left !important; }
.cont06 .text { margin-top: 8.53vw; font-size: 4.957vw; text-align:center; line-height:1.6; }
.cont06 .text em { font-size:5.86vw; font-weight:bold; }

/*cont07*/
.cont07 { width: 100%; padding:0; }
.cont07 .co_inner { width: 84%; max-width: 84%; margin: 0 auto; padding: 3.46vw 0 8vw;} 
.cont07 li { margin-top:5.33vw; }
.cont07 li a { position:relative; font-size:3.46vw; text-decoration:underline; }
.cont07 li a:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #000; top:50%; right: -4vw; margin-top:-4px; }

/*h2*/
h2 { position: relative; display:inline-block; font-size:6.93vw; text-align:center; }
h2 span { display:inline-block; padding-left: 9.06vw; font-size:4.16vw; background:url("../image/ico021.png") left center no-repeat; background-size: auto 5.2vw; }
h2:after { position:absolute; content:""; display:inline-block; width:8.53vw; height:9.2vw; background: url("../image/ico031.png") left top no-repeat; background-size: contain; bottom:0.8em; right:-0.5em; }

/*btn01*/
.btn01 { position: relative; margin: 7.73vw auto 0; display:inline-block; width: 84vw; font-size:3.813vw; font-weight: bold; color:#d60b17; text-align:center; line-height: 12.8vw; background-color:#fff; border: solid 4px #d60b17; }
.btn01:after { position: absolute; content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:4px 0 4px 8px; border-color: transparent transparent transparent #d60b17; right:3.6vw; top:50%; margin-top:-4px; }
.btn01 .slash { position: relative; padding: 0 4vw; font-size:3.2vw; }
.btn01 .slash:before { position:absolute; content:""; width:2.66vw; height:2px; background-color:#d60b17;transform:rotate(45deg); left:0; top:50%; }
.btn01 .slash:after { position:absolute; content:""; width:2.66vw; height:2px; background-color:#d60b17;transform:rotate(-45deg); right:0; top:50%; }
.cont06 .btn01 { margin-top: 5.6vw; height: 18.13vw; font-size: 4.957vw; line-height:0.7; display:flex; flex-direction:column; justify-content:center; align-items: center; background: #fff url("../image/ico12.png") 3.33vw center no-repeat; background-size: 11.33vw 10.93vw; }

/*footer*/
footer { width: 100%; padding-bottom:20.66vw; }
footer p { font-size: 2.08vw; text-align: center; line-height: 7.6vw; background-color:#636c83; }
footer small { color: #fff; }
footer .pagetop { position:fixed; display: block; width:9.6vw; height:auto; bottom:22.33vw; right:10px; z-index:999; }

/******** rs-fixedBtn ********/
.rs-fixedBtn {
    position: fixed;
    width:100%;
    margin: 0 auto;
    padding:4vw 0;
    text-align: center;
    background:#f7f7f7;
    bottom:0;
    z-index: 500;
}
.rs-fixedBtn a { display:inline-block; width:74.26vw; height:12.66vw; text-indent: -999999px; background: url("../image/img_fixedBtn_on.png") left top no-repeat; background-size:contain; }
.rs-fixedBtn a:hover { background: url("../image/img_fixedBtn_on.png") left top no-repeat; background-size:contain; }

}


