/*====================================

	----------------------------------
  		Structure
  	----------------------------------

  	0. General
  	1. Header
  	2. Main
  	3. Footer

  	----------------------------------
  		Change Log
  	----------------------------------

	-2017/9/7	 Fixed all

====================================*/

/*====================================

	0. General

====================================*/
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');

.noto { font-family: 'Noto Sans Japanese', sans-serif; }
.mincho { font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }

html { font-size: 62.5%; }
body { position: relative; color: #202020; font-size: 1.0rem; font-family: 'Noto Sans Japanese'; line-height: 1.5; }

img { vertical-align: bottom; }
a { color: #202020; text-decoration: none; cursor: pointer; }
a:hover { text-decoration: none; opacity: 0.8; }
ul, ol { list-style: none; }



/*================== PC CSS ==================*/
@media screen and (min-width: 769px){
div.inner { position: relative; display: block; overflow: hidden; margin: 0 auto; width: 1000px; zoom: 1; }
.pcOnly { display: block; }
.spOnly { display: none !important; }
#page-top { position: fixed; right: 20px; bottom: 20px; z-index: 100; padding-bottom: 20px; }
#page-top a { display: block; width: 98px; height: 89px; background: url(/img/icon_pagetop.png) no-repeat 0 0; text-indent:-9999px; }
body { background: url(../img/bg_page.png) no-repeat 50% 0; }
/*====================================

	1. Header

====================================*/
header { margin-bottom: 40px; height: 520px; background: url(../img/bg_main_img.png) no-repeat 50% 0; }
header div.inner { height: inherit; }
header h1 { position: absolute; top: 107px; left: 13px; }
header p { position: absolute; top: 272px; left: 10px; letter-spacing: 0.05em; font-weight: bold; font-size: 2.2rem; line-height: 1.45; }
header li:nth-child(1) { position: absolute; bottom: 3px; left: 3px; }
header li:nth-child(2) { position: absolute; bottom: 3px; left: 670px; }
header li a { position: relative; display: block; border: 3px solid #fff; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); color: #ffffff; }
header li:nth-child(1) a { padding: 28px 170px 28px 225px; border-radius: 15px; background: -webkit-linear-gradient(top, #0655a6 0%,#002a5e 100%); background: linear-gradient(to bottom, #0655a6 0%,#002a5e 100%); font-size: 1.8rem; }
header li:nth-child(1) a:before { position: absolute; top: 50%; left: 170px; margin-top: -15px; width: 30px; height: 30px; background: url(../img/icon_arrow_white.png) no-repeat 0 0 / 30px auto; content: ""; }
header li:nth-child(1) a span { font-size: 3rem; }
header li:nth-child(2) a { padding: 13px 38px 13px 90px; border-radius: 10px; background: -webkit-linear-gradient(top, #15793b 0%,#053d27 100%); background: linear-gradient(to bottom, #15793b 0%,#053d27 100%); font-size: 1.8rem; }
header li:nth-child(2) a:before { position: absolute; top: 50%; left: 58px; margin-top: -10px; width: 22px; height: 22px; background: url(../img/icon_arrow_white.png) no-repeat 0 0 / 22px auto; content: ""; }
header li:nth-child(2) a span { font-size: 2.4rem; }
/*====================================

	2. Main

====================================*/
.taC { text-align: center; }
section.point { margin: 0 auto 47px; width: 1000px; }
section.point ol { display:-webkit-box; display:-moz-box; display:-ms-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:-ms-flex; display:flex; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; margin-bottom: 55px; }
section.point ol li { width: 300px; }
section.point ol li dt { margin: 15px 0 20px 100px; font-weight: bold; font-size: 2rem; }
section.point ol li dd.img { float: left; width: 100px; }
section.point ol li dd.img img { width: 100%; height: auto; }
section.point ol li dd.txt { margin-left: 123px; font-size: 1.6rem; }
section.point ol li dd.txt span { display: block; margin-top: 3px; font-size: 1.2rem; line-height: 1.4; }
section.point ol li:nth-child(1) { background: url(../img/point_list01.png) no-repeat 10px 0 / auto 69px; }
section.point ol li:nth-child(2) { margin: 0 23px; padding: 0 28px; width: 351px; border-right: 1px solid #333333; border-left: 1px solid #333333; background: url(../img/point_list02.png) no-repeat 38px 0 / auto 69px; }
section.point ol li:nth-child(3) { background: url(../img/point_list03.png) no-repeat 10px 0 / auto 69px; }
section.point p { font-size: 2.6rem; font-weight: bold; margin-bottom: 25px; }
section.point p span { font-size: 1.4rem; font-weight: normal; display: inline-block; margin-left: 20px; }
section.point ul { display: block; overflow: hidden; }
section.point ul li { width: 130px; margin-right: 15px; float: left; text-align: center; font-size: 1.4rem; font-weight: bold; line-height: 1.2; }
section.point ul li:nth-child(1) { border-top: 2px solid #6ab5b5; }
section.point ul li:nth-child(2) { border-top: 2px solid #2284b3; }
section.point ul li:nth-child(3) { border-top: 2px solid #2284b3; }
section.point ul li:nth-child(4) { border-top: 2px solid #57a8dd; }
section.point ul li:nth-child(5) { border-top: 2px solid #57a8dd; }
section.point ul li:nth-child(6) { border-top: 2px solid #9c7a41; }
section.point ul li:nth-child(7) { border-top: 2px solid #6ab5b5; margin-right: 0; }

section.flowBlock { margin: 0 auto 47px; width: 1000px; }
section.flowBlock p { font-size: 2.6rem; font-weight: bold; margin-bottom: 25px; padding-bottom: 5px; border-bottom: 1px solid #414141; }

div.shopBtn { padding: 45px; background: -webkit-linear-gradient(left, #c8c8c8 0%,#f0f0f0 50%,#c8c8c8 100%); background: linear-gradient(to right, #c8c8c8 0%,#f0f0f0 50%,#c8c8c8 100%); }
div.shopBtn p { font-size: 2rem; color: #D30000; font-weight: bold; text-decoration: underline; margin: 0 0 15px !important; }
div.shopBtn dl { font-size: 1.4rem; margin: 0 0 15px !important; }
div.shopBtn dt { font-weight: bold; }
div.shopBtn dd ol { list-style: decimal; margin-left: 2em; }
div.shopBtn ul { display: block; overflow: hidden; }
div.shopBtn ul li:nth-child(1) { float: left; width: 700px; }
div.shopBtn ul li:nth-child(1) a { position: relative; display: block; padding: 20px 0 20px 38px; border: 3px solid #fff; border-radius: 10px; background: -webkit-linear-gradient(top, #c60000 0%,#7e0505 100%); background: linear-gradient(to bottom, #c60000 0%,#7e0505 100%); box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); color: #ffffff; text-align: center; font-size: 2.8rem; }
div.shopBtn ul li:nth-child(1) a:before { position: absolute; top: 50%; left: 155px; margin-top: -19px; width: 38px; height: 38px; background: url(../img/icon_member.png) no-repeat 0 0 / 38px auto; content: ""; }
div.shopBtn ul li:nth-child(2) { float: right; width: 280px; padding-top: 12px; }
div.shopBtn ul li:nth-child(2) a { position: relative; display: block; padding: 15px 0 15px 45px; border-top: 1px solid #666666; border-bottom: 1px solid #666666; font-size: 2rem; }
div.shopBtn ul li:nth-child(2) a:before { position: absolute; top: 50%; left: 10px; margin-top: -13px; width: 26px; height: 26px; background: url(../img/icon_arrow_gray.png) no-repeat 0 0 / 26px auto; content: ""; }
section.toB div.shopBtn,
section.toC div.shopBtn { width: 1000px; margin: 0 auto; }
section.toB div.shopBtn div.inner,
section.toC div.shopBtn div.inner { background: none; padding: 0; width: auto; }
section.toB div.shopBtn ul li:nth-child(1) { float: none; margin: 0 auto; text-align: center; }
section.toC div.shopBtn ul li:nth-child(1) { float: none; margin: 0 auto; text-align: center; }




section.toB { padding: 100px 0 70px; background: -webkit-linear-gradient(left, #00295d 0%,#0656a7 50%,#00295d 100%); background: linear-gradient(to right, #00295d 0%,#0656a7 50%,#00295d 100%); }
section.toB .inner { overflow: visible; padding: 0 35px 10px; background: #f4f4f4; }
section.toB h2 { display: inline-block; margin: 0 auto 40px; margin-top: -50px; padding: 30px 0; width: 520px; height: 100px; background: url(../img/bg_title_tob.png) no-repeat; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1); color: #00295d; font-size: 2.4rem; line-height: 1; }
section.toB h2 span { font-size: 3.6rem; }
section.toB h3 { margin-bottom: 15px; color: #002b61; font-size: 3rem; line-height: 1.6; }
section.toB h3 span { background: linear-gradient(transparent 60%, #b4ebff 60%); }
section.toB h3 em { color: #c70000; font-style: normal; }
section.toB p { font-size: 2rem; line-height: 1.6; }
section.toB .block1 { margin-bottom: 40px; height: 655px; border-bottom: 1px solid #bbbbbb; background: url(../img/tob_img01.png) no-repeat; }
section.toB .block1 h3,
section.toB .block1 p { margin-left: 480px; }
section.toB .block2 { position: relative; margin-bottom: 30px; border-bottom: 1px solid #bbbbbb; }
section.toB .block2 h3,
section.toB .block2 p,
section.toB .block2 ul { margin-bottom: 25px; margin-left: 335px; }
section.toB .block2 .bn { position: absolute; top: 0; left: 0; }
section.toB .block2 .bn dt { margin-bottom: 20px; }
section.toB .block2 .bn dd { padding-top: 80px; background: url(../img/tob_img03.png) no-repeat 50% 0; color: #002b61; text-align: center; font-weight: bold; font-size: 2.2rem; }
section.toB .block2 .bn dd span { background: linear-gradient(transparent 70%, #fff100 70%); }
section.toB .block2 ul { display:-webkit-box; display:-moz-box; display:-ms-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:-ms-flex; display:flex; margin-bottom: 25px; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; }
section.toB .block2 li { display: flex; margin-left: 25px; width: 160px; height: 160px; border: 1px solid #034389; border-radius: 50%; background: #ffffff; color: #002b61; text-align: center; font-weight: bold; font-size: 2rem; align-items: center; justify-content: center; }
section.toB .block2 table { margin-bottom: 40px; width: 100%; border-collapse: collapse; border-top: 1px solid #aaaaaa; border-left: 1px solid #aaaaaa; border-right: 1px solid #aaaaaa; }
section.toB .block2 th,
section.toB .block2 td { padding: 10px 30px; border-bottom: 1px solid #aaaaaa; text-align: left; font-weight: normal; font-size: 1.6rem; }
section.toB .block2 th { width: 300px; background: #dddddd; }
section.toB .block3 { margin-bottom: 50px; }
section.toB .block4 { border-bottom: 1px solid #bbbbbb; margin-bottom: 40px; padding-bottom: 40px; }
section.toC { padding: 100px 0 70px; background: -webkit-linear-gradient(left, #053e27 0%,#157a3b 50%,#053e27 100%); background: linear-gradient(to right, #053e27 0%,#157a3b 50%,#053e27 100%); }
section.toC .inner { overflow: visible; padding: 0 35px 10px; background: #f4f4f4 url(../img/toc_img01.png) no-repeat 35px 100px; }
section.toC h2 { display: inline-block; margin: 0 auto 40px; margin-top: -50px; padding: 30px 0; width: 520px; height: 100px; background: url(../img/bg_title_toc.png) no-repeat; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1); color: #043a26; font-size: 2.4rem; line-height: 1; }
section.toC h2 span { font-size: 3.6rem; }
section.toC h3 { margin-bottom: 15px; color: #043a26; font-size: 3rem; line-height: 1.6; }
section.toC h3 span { background: linear-gradient(transparent 60%, #baf4d0 60%); }
section.toC p { font-size: 2rem; line-height: 1.6; }
section.toC h3,
section.toC p,
section.toC dl { margin-bottom: 25px; margin-left: 480px; }
section.detailBlock { padding: 50px 0; }
section.detailBlock .inner { padding: 30px 150px; width: 840px; background: #f0f0f0; text-align: center; }
section.detailBlock h2 { margin-bottom: 25px; font-size: 2.6rem; }
section.detailBlock p { margin-bottom: 25px; font-size: 1.6rem; }
section.detailBlock a { position: relative; display: block; padding: 15px 0 15px 26px; border-top: 1px solid #666666; border-bottom: 1px solid #666666; font-size: 2rem; }
section.detailBlock a:before { position: absolute; top: 50%; left: 150px; margin-top: -13px; width: 26px; height: 26px; background: url(../img/icon_arrow_gray.png) no-repeat 0 0 / 26px auto; content: ""; }
dl.notice { margin-top: 15px; }
dl.notice dt { font-size: 1.6rem; }
dl.notice dd { font-size: 1.4rem; }
dl.notice dd.dot { position: relative; padding-left: 1em; }
dl.notice dd.dot:before { position: absolute; content: "・"; top: 0; left: 0; }
/*====================================

	3. Footer

====================================*/
footer { padding-bottom: 30px; }
footer address { margin-bottom: 25px; padding: 20px 0; background: #333333; color: #ffffff; text-align: center; font-weight: bold; font-style: normal; line-height: 1; }
footer dl { vertical-align: middle; }
footer dt { display: inline-block; vertical-align: middle; font-size: 2.8rem; }
footer dd { display: inline-block; margin-left: 13px; vertical-align: middle; font-size: 1.6rem; }
footer dd img { vertical-align: middle; width: 244px; height: auto; }
footer dd:last-child { position: relative; padding-left: 25px; }
footer dd:before { position: absolute; top: 50%; left: 0; margin-top: -12px; width: 14px; height: 24px; background: url(../img/bg_slash.png) no-repeat; content: ""; }
footer p { text-align: center; font-size: 1.6rem; }
footer p span { font-size: 1.4rem; }
}






/*================== SP CSS ==================*/
@media screen and (max-width: 768px){
div.inner { position: relative; display: block; overflow: hidden; margin: 0 auto; width: 100%; zoom: 1; }
.pcOnly { display: none; }
.spOnly { display: block; }
#page-top { position: fixed; right: 20px; bottom: 20px; z-index: 100; padding-bottom: 20px; }
#page-top a { display: block; width: 98px; height: 89px; background: url(/img/icon_pagetop.png) no-repeat 0 0; text-indent:-9999px; }
body { background: url(../img/sp_bg_page.png) repeat-y 50% 0; }
/*====================================

	1. Header

====================================*/
header { padding: 9.3vw 4.6vw 0; background: url(../img/sp_bg_main_img.png) no-repeat 50% 0 / 100% auto; }
header h1 { margin-bottom: 4.6vw; }
header h1 img { width: 100%; height: auto; }
header p { margin-bottom: 4.6vw; font-weight: bold; font-size: 1.6rem; }
header ul { border-bottom: 1px solid #212526; }
header li { margin-bottom: 4vw; }
header li a { position: relative; display: block; border: 3px solid #fff; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); color: #ffffff; text-align: center; }
header li:nth-child(1) a { padding: 4vw 0 4vw 7.8vw; border-radius: 10px; background: -webkit-linear-gradient(top, #0655a6 0%,#002a5e 100%); background: linear-gradient(to bottom, #0655a6 0%,#002a5e 100%); font-size: 1.6rem; }
header li:nth-child(1) a:before { position: absolute; top: 50%; left: 7.8vw; margin-top: -2.5vw; width: 5vw; height: 5vw; background: url(../img/icon_arrow_white.png) no-repeat 0 0 / 5vw auto; content: ""; }
header li:nth-child(1) a span { font-size: 2.2rem; }
header li:nth-child(2) { margin: 0 auto 4vw; width: 60vw; }
header li:nth-child(2) a { padding: 2vw 0 2vw 5.7vw; border-radius: 10px; background: -webkit-linear-gradient(top, #15793b 0%,#053d27 100%); background: linear-gradient(to bottom, #15793b 0%,#053d27 100%); font-size: 1.2rem; }
header li:nth-child(2) a:before { position: absolute; top: 50%; left: 5.7vw; margin-top: -2vw; width: 4vw; height: 4vw; background: url(../img/icon_arrow_white.png) no-repeat 0 0 / 4vw auto; content: ""; }
header li:nth-child(2) a span { font-size: 1.8rem; }
/*====================================

	2. Main

====================================*/
section.point { margin: 0 4.6vw 6vw; }
section.point ol { margin-bottom: 5vw; }
section.point ol li { display: block; overflow: hidden; padding: 3vw 0; border-bottom: 1px solid #212526; zoom: 1; }
section.point ol li dt { margin: 0 0 3vw 19vw; font-weight: bold; font-size: 2rem; line-height: 1.3; }
section.point ol li:nth-child(2) dt { margin-top: 4vw 0 2vw 19vw; min-height: 2em;}
section.point ol li dd.img { float: left; width: 16vw; }
section.point ol li dd.img img { width: 100%; height: auto; }
section.point ol li dd.txt { margin-left: 19vw; font-size: 1.4rem; }
section.point ol li dd.txt span { display: block; margin-top: 3px; font-size: 1.2rem; line-height: 1.4; }
section.point ol li:nth-child(1) { background: url(../img/point_list01.png) no-repeat 0 3vw / 16vw auto; }
section.point ol li:nth-child(2) { background: url(../img/point_list02.png) no-repeat 0 3vw / 16vw auto; }
section.point ol li:nth-child(3) { background: url(../img/point_list03.png) no-repeat 0 3vw / 16vw auto; }
section.point p { font-size: 2rem; font-weight: bold; margin-bottom: 25px; }
section.point p span { font-size: 1.4rem; font-weight: normal; display: block; }
section.point ul { display: block; overflow: hidden; }
section.point ul li { width: 21vw; margin-right: 2vw; margin-bottom: 5vw; float: left; text-align: center; font-size: 1rem; font-weight: bold; }
section.point ul li img { width: 100%; height: auto; }
section.point ul li:nth-child(1) { border-top: 2px solid #6ab5b5; }
section.point ul li:nth-child(2) { border-top: 2px solid #2284b3; }
section.point ul li:nth-child(3) { border-top: 2px solid #2284b3; }
section.point ul li:nth-child(4) { border-top: 2px solid #57a8dd; margin-right: 0; }
section.point ul li:nth-child(5) { border-top: 2px solid #57a8dd; }
section.point ul li:nth-child(6) { border-top: 2px solid #9c7a41; }
section.point ul li:nth-child(7) { border-top: 2px solid #6ab5b5; }

section.flowBlock { margin: 0 4.6vw 8vw; }
section.flowBlock p { font-size: 2rem; font-weight: bold; margin-bottom: 3vw; border-bottom: 1px solid #333; padding-bottom: 3vw; text-align: center; }
section.flowBlock img { width: 100%; height: auto; }

div.shopBtn { padding: 6vw 4.6vw; border-top: 1px solid #c8c8c8; background: -webkit-linear-gradient(left, #c8c8c8 0%,#f0f0f0 50%,#c8c8c8 100%); background: linear-gradient(to right, #c8c8c8 0%,#f0f0f0 50%,#c8c8c8 100%); }


div.shopBtn p { font-size: 1.6rem; color: #D30000; font-weight: bold; text-decoration: underline; margin: 0 0 1em !important; }
div.shopBtn dl { font-size: 1.4rem; margin: 0 0 1em !important; }
div.shopBtn dt { font-weight: bold; }
div.shopBtn dd ol { list-style: decimal; margin-left: 2em; }
div.shopBtn ul { display: block; overflow: hidden; }
div.shopBtn ul li:nth-child(1) a { position: relative; display: block; padding: 3vw 0 3vw 5.7vw; border: 3px solid #fff; border-radius: 10px; background: -webkit-linear-gradient(top, #c60000 0%,#7e0505 100%); background: linear-gradient(to bottom, #c60000 0%,#7e0505 100%); box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); color: #ffffff; text-align: center; font-size: 2rem; }
div.shopBtn ul li:nth-child(1) a:before { position: absolute; top: 50%; left: 5vw; margin-top: -3.5vw; width: 7vw; height: 7vw; background: url(../img/icon_member.png) no-repeat 0 0 / 7vw auto; content: ""; }
div.shopBtn ul li:nth-child(2) { margin-top: 4vw; }
div.shopBtn ul li:nth-child(2) a { position: relative; display: block; padding: 2vw 0 2vw 5vw; border-top: 1px solid #666666; border-bottom: 1px solid #666666; font-size: 1.8rem; text-align: center; }
div.shopBtn ul li:nth-child(2) a:before { position: absolute; top: 50%; left: 15vw; margin-top: -2vw; width: 5vw; height: 5vw; background: url(../img/icon_arrow_gray.png) no-repeat 0 0 / 5vw auto; content: ""; }
section.toB div.shopBtn div.inner,
section.toC div.shopBtn div.inner { background: none; padding: 0; width: auto; }
section.toB { padding: 14.5vw 4.6vw 6vw; border-top: 1px solid #c8c8c8; border-bottom: 2px solid #002c62; background: -webkit-linear-gradient(left, #00295d 0%,#0656a7 50%,#00295d 100%); background: linear-gradient(to right, #00295d 0%,#0656a7 50%,#00295d 100%); }
section.toB .inner { overflow: visible; padding: 0 4vw 6vw; background: #f4f4f4; }
section.toB h2 { display: inline-block; margin: -7.8vw auto 3vw; padding: 4vw 0 0; width: 80vw; height: 15.6vw; background: url(../img/bg_title_tob.png) no-repeat 0 0 / 80vw auto; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1); color: #00295d; font-size: 1.8rem; line-height: 1; }
section.toB h2 span { font-size: 2.4rem; }
section.toB h3 { margin-bottom: 3vw; color: #002b61; text-align: center; font-size: 2.2rem; line-height: 1.6; }
section.toB h3 span { background: linear-gradient(transparent 60%, #b4ebff 60%); }
section.toB h3 em { color: #c70000; font-style: normal; }
section.toB p { margin-bottom: 1.5em; font-size: 1.8rem; line-height: 1.6; }
section.toB .block1 { padding-bottom: 188vw; background: url(../img/sp_tob_img01.png) no-repeat 50% 100% / 81.5vw auto; }
section.toB .block2 { margin: 5vw 0; padding: 5vw 0; border-top: 1px solid #bbbbbb; border-bottom: 1px solid #bbbbbb; }
section.toB .block2 .bn { margin-bottom: 5vw; text-align: center; }
section.toB .block2 .bn dt { margin-bottom: 3vw; }
section.toB .block2 .bn dt img { width: 47vw; height: auto; }
section.toB .block2 .bn dd { padding-top: 11vw; background: url(../img/tob_img03.png) no-repeat 50% 0 / 11vw auto; color: #002b61; text-align: center; font-weight: bold; font-size: 2rem; }
section.toB .block2 .bn dd span { background: linear-gradient(transparent 70%, #fff100 70%); }
section.toB .block2 ul { display:-webkit-box; display:-moz-box; display:-ms-box; display:-webkit-flexbox; display:-moz-flexbox; display:-ms-flexbox; display:-webkit-flex; display:-moz-flex; display:-ms-flex; display:flex; margin: 0 0 6vw; -webkit-box-lines:multiple; -moz-box-lines:multiple; -webkit-flex-wrap:wrap; -moz-flex-wrap:wrap; -ms-flex-wrap:wrap; flex-wrap:wrap; }
section.toB .block2 li { display: flex; margin-right: 2.4vw; width: 26vw; height: 26vw; border: 1px solid #034389; border-radius: 50%; background: #ffffff; color: #002b61; text-align: center; font-weight: bold; font-size: 1.3rem; align-items: center; justify-content: center; }
section.toB .block2 li:last-child { margin-right: 0; }
section.toB .block2 table { width: 100%; }
section.toB .block2 th,
section.toB .block2 td { display: block; padding: 1.5vw; text-align: left; font-weight: normal; font-size: 1.6rem; }
section.toB .block2 th { background: #dddddd; }
section.toB .block3 { margin-bottom: 3vw; }
section.toB .block4 { margin: 5vw 0 0; padding: 5vw 0 0; border-top: 1px solid #bbbbbb; }
div.memberBtn { margin: 3vw 0; }
div.memberBtn a { position: relative; display: block; padding: 3vw 0 3vw 5.7vw; border: 3px solid #fff; border-radius: 10px; background: -webkit-linear-gradient(top, #c60000 0%,#7e0505 100%); background: linear-gradient(to bottom, #c60000 0%,#7e0505 100%); box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.2); color: #ffffff; text-align: center; font-size: 2rem; }
div.memberBtn a:before { position: absolute; top: 50%; left: 5vw; margin-top: -3.5vw; width: 7vw; height: 7vw; background: url(../img/icon_member.png) no-repeat 0 0 / 7vw auto; content: ""; }
section.toC { padding: 14.5vw 4.6vw 6vw; background: -webkit-linear-gradient(left, #053e27 0%,#157a3b 50%,#053e27 100%); background: linear-gradient(to right, #053e27 0%,#157a3b 50%,#053e27 100%); }
section.toC .inner { overflow: visible; padding: 0 4vw 6vw; background: #f4f4f4; }
section.toC h2 { display: inline-block; margin: -7.8vw auto 3vw; padding: 4vw 0 0; width: 80vw; height: 15.6vw; background: url(../img/bg_title_toc.png) no-repeat 0 0 / 80vw auto; box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1); color: #043a26; font-size: 1.8rem; line-height: 1; }
section.toC h2 span { font-size: 2.4rem; }
section.toC h3 { margin-bottom: 3vw; color: #043a26; text-align: center; font-size: 2.2rem; line-height: 1.6; }
section.toC h3 span { background: linear-gradient(transparent 60%, #baf4d0 60%); }
section.toC p { margin-bottom: 1.5rem; font-size: 2rem; line-height: 1.6; }
section.toC figure { margin-bottom: 5vw; }
section.toC figure img { width: 100%; height: auto; }
section.detailBlock { padding: 5vw; background: #f0f0f0; text-align: center; }
section.detailBlock h2 { margin-bottom: 3vw; font-size: 2.2rem; }
section.detailBlock p { margin-bottom: 3vw; font-size: 1.6rem; }
section.detailBlock a { position: relative; display: block; padding: 2vw 0 2vw 5vw; border-top: 1px solid #666666; border-bottom: 1px solid #666666; font-size: 1.8rem; }
section.detailBlock a:before { position: absolute; top: 50%; left: 15vw; margin-top: -2vw; width: 5vw; height: 5vw; background: url(../img/icon_arrow_gray.png) no-repeat 0 0 / 5vw auto; content: ""; }
dl.notice { margin-top: 3vw; }
dl.notice dt { font-size: 1.6rem; }
dl.notice dd { font-size: 1.4rem; }
dl.notice dd.dot { position: relative; padding-left: 1em; }
dl.notice dd.dot:before { position: absolute; content: "・"; top: 0; left: 0; }
/*====================================

	3. Footer

====================================*/
footer { padding-bottom: 5vw; }
footer address { margin-bottom: 3vw; padding: 4vw 0; background: #333333; color: #ffffff; text-align: center; font-weight: bold; font-style: normal; line-height: 1.3; }
footer dl { }
footer dt { font-size: 2.8rem; margin-bottom: 2vw; }
footer dd img { width: 70%; height: auto; }
footer dd { font-size: 1.6rem; }
footer p { text-align: center; font-size: 1.6rem; }
footer p span { font-size: 1.4rem; }

}

