@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
.pc-show { display: none !important; }

html, body, div, span, object, iframe, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video { background: transparent; border: 0; font-size: 100%; margin: 0; outline: 0; padding: 0; vertical-align: baseline; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, menu, nav, section { display: block; }

nav ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ""; content: none; }

a { background: transparent; font-size: 100%; margin: 0; padding: 0; vertical-align: baseline; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #000; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

/* change border colour to suit your needs */
hr { border: 0; border-top: 1px solid #ccc; display: block; height: 1px; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

/*
file name: _base.scss
description: ベーススタイル（タグに直接記述するもの）
*/
*, *:before, *:after { box-sizing: border-box; }

html { font-size: 62.5%; }

body { color: #313131; font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.2rem; line-height: 1.5; }

input { outline: none; }

textarea { outline: none; overflow: auto; resize: none; }

ul, ol { list-style: none; }

img { display: inline-block; max-width: 100%; }

a { color: #313131; text-decoration: none; }

button { -webkit-appearance: none; }

/*
file name: _layout.scss
description: レイアウト系、ユニークなパーツを記述
*/
.header { -webkit-align-items: center; -webkit-box-align: center; -webkit-box-pack: justify; -webkit-justify-content: space-between; align-items: center; background-color: white; display: -webkit-box; display: -webkit-flex; display: flex; justify-content: space-between; padding: 10px; }

.header__title { width: 154px; }

.headerMenu { -webkit-align-items: center; -webkit-box-align: center; align-items: center; display: -webkit-box; display: -webkit-flex; display: flex; padding: 0; }

.headerMenu.is-active .headerMenu__line:first-child { -webkit-transform: rotate(-45deg); -webkit-transform-origin: right; transform: rotate(-45deg); transform-origin: right; width: 23px; }

.headerMenu.is-active .headerMenu__line:nth-child(2) { opacity: 0; }

.headerMenu.is-active .headerMenu__line:last-child { -webkit-transform: rotate(45deg); -webkit-transform-origin: right; transform: rotate(45deg); transform-origin: right; width: 23px; }

.headerMenu__button { display: -webkit-box; display: -webkit-flex; display: flex; }

.headerMenu__wrap { margin-right: 6px; }

.headerMenu__line { -webkit-transition: all .3s ease-out; background-color: #af1e23; display: block; height: 2px; margin-bottom: 6px; transition: all .3s ease-out; width: 25px; }

.headerMenu__line:last-child { margin-bottom: 0; }

.headerMenu__text { color: #af1e23; font-size: 1.4rem; }

.headerMenuBody { border: 1px solid #af1e23; display: none; }

.headerMenuBody > li { border-bottom: 1px solid #af1e23; font-size: 1.2rem; }

.headerMenuBody > li:last-child { border-bottom: none; }

.headerMenuBody > li > a { color: #666666; display: block; font-size: 0.9rem; font-weight: bold; padding: 10px; width: 100%; }

.headerMenuBody > li > a:before { border-color: transparent transparent transparent #961419; border-style: solid; border-width: 5px 0 5px 7.5px; content: ""; display: inline-block; height: 0; margin-right: 5px; width: 0; }

.headerMenuBody > li > p { color: #666666; display: block; font-size: 0.9rem; font-weight: bold; padding: 10px; width: 100%; }

.headerMenuBody > li > p:before { border-color: transparent transparent transparent #961419; border-style: solid; border-width: 5px 0 5px 7.5px; content: ""; display: inline-block; height: 0; margin-right: 5px; width: 0; }

.headerMenuBody > li > div { margin-left: 10px; padding-bottom: 20px; }
.headerMenuBody > li > div p { font-size: 0.9rem; color: #26668A; margin-bottom: 5px; margin-top: 25px; font-weight: bold; }
.headerMenuBody > li > div p:first-child { margin-top: 5px; }

.headerMenuBody > li > div > div { margin-top: 10px; }
.headerMenuBody > li > div > div a { display: inline-block !important; width: 91%; }
.headerMenuBody > li > div > div img { float: left; }
.headerMenuBody > li > div > div p { font-size: 0.8rem; float: left; color: #666666; font-weight: 100; margin-left: 8px; margin-bottom: 0; margin-top: 5px; text-decoration: underline #666666; }

.headerMenuBody > li > div > div:after { clear: both; content: ''; visibility: hidden; height: 0; font-size: 0; display: block; }

.chance3Width { margin-left: 15%; margin-right: 15%; }

.tit_accordion { position: relative; }

.button_open:after { content: ""; background-image: url(../img/open.png); background-repeat: no-repeat; background-size: 100%; width: 21px; margin: -11px; position: absolute; top: 50%; right: 21px; display: inline-block; padding-bottom: 21px; }

.close:after { content: ""; background-image: url(../img/close.png); background-repeat: no-repeat; background-size: 100%; width: 21px; margin: -11px; position: absolute; top: 50%; right: 21px; display: inline-block; padding-bottom: 21px; }

.content01 { max-width: 640px; overflow: hidden; /*間隔*/ /*拡大速度*/ /* ヘッダーコンテンツ */ }
.content01 ol { overflow: hidden; }
.content01 #header_content { max-width: 640px; margin: 0 auto 80px; padding: 0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; overflow: hidden; }
.content01 #header_content .item { float: left; width: 25%; max-height: 320px; overflow: hidden; position: relative; opacity: 0; }
.content01 #header_content .item.active { -webkit-transform: translateY(50px); transform: translateY(50px); -webkit-animation: moveUp 0.65s ease forwards 0.5s; animation: moveUp 0.65s ease forwards 0.5s; }
@-webkit-keyframes moveUp { 100% { -webkit-transform: translateY(0); opacity: 1; } }
@keyframes moveUp { 100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; } }
.content01 #header_content img { display: block; width: 100%; height: auto; }
.content01 #header_content .desc { display: block; width: 100%; padding: 0 30px; color: #fff; line-height: 200%; font-size: 15px; text-decoration: none; z-index: 3; text-align: left; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
.content01 #header_content .catch { display: block; width: 100%; padding: 0; color: #fff; line-height: 100%; font-size: 3.5vw !important; text-decoration: none; z-index: 20 !important; text-align: center; position: absolute; bottom: 5%; font-weight: 200; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; text-shadow: 2px 2px 2px #24201a; }
.content01 #header_content { width: 100%; margin: 0; padding: 0 !important; }
.content01 .mobile_header_fix #header_content { margin: 55px 0 30px !important; }
.content01 #header_content .item { float: left; width: 50%; height: 400px !important; }
.content01 #header_content img { width: 100% !important; }
.content01 #header_content .image:before { width: 100%; height: 400px !important; }
.content01 #header_content .catch { width: 100%; padding: 0 20px; bottom: auto; bottom: 5% !important; }
.content01 #header_content .desc { width: 100%; padding: 0 20px; font-size: 13px !important; }
@media screen and (max-width: 415px) { .content01 #header_content .over-hide { display: none; }
  .content01 #header_content .item { max-height: 200px !important; }
  .content01 #header_content .catch { padding: 0 15px; bottom: auto; bottom: 23px; line-height: 100%; bottom: 5% !important; font-size: 13px !important; }
  .content01 #header_content .desc { padding: 0 15px; font-size: 11px !important; }
  .content01 .slide1 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; background-image: url(../img/slide01.jpg); background-position: center; background-size: 100% auto; }
  .content01 .slide2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; background-image: url(../img/slide02.jpg); background-position: center; background-size: 100% auto; }
  .content01 .slide3 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; background-image: url(../img/slide03.jpg); background-position: center; background-size: 100% auto; }
  .content01 .slide4 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; background-image: url(../img/slide04.jpg); background-position: center; background-size: 100% auto; } }
.content01 .top-shadow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 15; background-image: url(../img/top_shadow2.png); background-position: center; background-size: 100% auto; }
.content01 .red-icon1:before { content: ""; display: inline-block; background-image: url(../img/large_btn1.png); background-size: 100% auto; vertical-align: middle; margin-right: 5px; width: 5.5vw; height: 5.5vw; }
.content01 .red-icon2:before { content: ""; display: inline-block; background-image: url(../img/large_btn12.png); background-size: 100% auto; vertical-align: middle; margin-right: 5px; width: 5.5vw; height: 5.5vw; }
.content01 .red-icon3:before { content: ""; display: inline-block; background-image: url(../img/large_btn3.png); background-size: 100% auto; vertical-align: middle; margin-right: 5px; width: 5.5vw; height: 5.5vw; }
.content01 .red-icon4:before { content: ""; display: inline-block; background-image: url(../img/large_btn1.png); background-size: 100% auto; vertical-align: middle; margin-right: 5px; width: 5.5vw; height: 5.5vw; }

.content02 { text-align: center; margin-top: 20px; padding: 10px 10px; padding-bottom: 10px; overflow: hidden; }
.content02 .content02-img { position: relative; }
.content02 .content02-img p { text-align: center; position: absolute; bottom: 5%; left: 0; right: 0; margin: auto; font-size: 90%; color: white; text-shadow: 2px 2px 2px #24201a; }
.content02 .content02-title { font-size: 180% !important; color: #26668A; margin-bottom: 20px; letter-spacing: 0.2rem; }
.content02 p { line-height: 150%; margin-bottom: 20px; font-size: 90%; text-align: left; letter-spacing: 0.1rem; }
.content02 img { max-width: 100%; height: auto; }

.sp-large { max-width: 640px; padding-left: 1%; padding-right: 1.2%; position: relative; text-align: center; }
.sp-large a { display: inline-block; }
.sp-large img { width: 100%; height: auto; }
.sp-large img:hover { opacity: 0.9; }
.sp-large .middle-shadow { display: block; background-image: url(../img/middle_shadow.png); background-size: 100% auto; position: absolute; top: 0; left: 0; z-index: 15; width: 100%; height: auto; }
.sp-large p { width: 50px; position: absolute; bottom: 10%; left: 0; right: 0; margin: auto; color: white; font-size: 14px; z-index: 20; text-shadow: 2px 2px 2px #24201a; }

.content03 { max-width: 640px; }
.content03 ul { padding-left: 1%; }
.content03 ul li { float: left; max-width: 49%; overflow: hidden; margin-right: 0.8%; margin-bottom: 3px; position: relative; background-image: url(../img/shadow.png); z-index: 2; }
.content03 ul li a { background: red; line-height: 100% !important; }
.content03 ul li a .img { width: 100%; height: auto; -moz-transition: -moz-transform 0.5s linear; -webkit-transition: -webkit-transform 0.5s linear; -o-transition: -o-transform 0.5s linear; -ms-transition: -ms-transform 0.5s linear; transition: transform 0.5s linear; vertical-align: top !important; }
.content03 ul li a:hover .img { -webkit-transform: scale(1.1); -moz-transform: scale(1.1); -o-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); }
.content03 ul li a .img-above { background-image: url(../img/shadow.png); background-size: 100% auto; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 9; }
.content03 ul li .up-left { position: absolute; top: 0; left: 0; width: 12.8%; height: auto; margin: 0 !important; }
.content03 ul li p { text-align: center; width: 90%; position: absolute; bottom: 5%; left: 0; right: 0; margin: auto; color: white; font-size: 13px; text-shadow: 2px 2px 2px #24201a; z-index: 20; }
.content03 ul li:nth-child(2n+1) { clear: both; }

.content04 { margin-top: 175px; }

.content04 .content04-imgbox { width: 25%; margin-right: 8%; float: left; }
.content04 .content04-imgbox img { max-width: 100%; }

.content04 .content04-index .index-li p { font-size: 75% !important; }
.content04 .content04-index .index-li .list-title { color: #26668A; margin-bottom: 20px; }
.content04 .content04-index .index-li ul li { display: flex; margin-bottom: 7px; }
.content04 .content04-index .index-li ul li img { margin-right: 4%; }
.content04 .content04-index .index-li:nth-child(1) { width: 100%; }
.content04 .content04-index .index-li:nth-child(2) { width: 100%; }
.content04 .content04-index .index-li:nth-child(3) { width: 100%; }
.content04 .content04-index .index-li:nth-child(4) { width: 100%; }

.sp-footer { text-align: center; padding: 0 5px; max-width: 640px; padding-bottom: 10px; margin-top: 20px; padding-top: 20px; border-top: 1px solid #999999; overflow: hidden; background-color: #F7F7F7; }
.sp-footer img { max-width: 40%; height: auto; }
.sp-footer .only-text { color: #666666 !important; font-size: 14px; margin-bottom: 5px; margin-top: 5px; line-height: 140%; }

.footer { background-color: #000000; padding-top: 15px; padding-bottom: 15px; }
.footer .footer-inner { margin-right: auto; margin-left: auto; }
.footer .footer-inner p { text-align: center; color: white; font-size: 12px; }


/*=======================================
告知
=========================================*/
.l-notice {position: fixed;right: 0;bottom: 0;box-shadow: 0 0 10px rgba(0,0,0,.65);z-index: 999;line-height: 100%;}
.l-notice img {vertical-align: top;max-width: 100%;height: auto;}