@charset "UTF-8";

/* ───────────────────────────────────────────────────────────── Default */

body {
background:#131018;
font-family:"Poppins", "カクミン R", "Kakumin Regular", "A-OTF カクミン Pro R", "YuGothic", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-weight:400;
color:#594c51;
_display:inline;
_zoom:1;
-webkit-text-size-adjust:100%;
position:relative;
}

/* ────────────────────────────────────────────────────────── Common Style */

/*
h1, h2, h3, h4, h5, h6
*/

.heading01 {
font-family:"Poppins", "カクミン M", "Kakumin Medium", "A-OTF カクミン Pro M", "YuGothic", "Yu Gothic", "游ゴシック", sans-serif;
font-size:300%;
font-weight:700;
color:#131018;
text-align:center;
line-height:1.5em;
margin:1.5em 0 1em;
}

.heading01 small {
display:block;
font-size:50%;
line-height:1.75em;
}

.heading02 {
font-family:"Poppins", "カクミン M", "Kakumin Medium", "A-OTF カクミン Pro M", "YuGothic", "Yu Gothic", "游ゴシック", sans-serif;
font-size:300%;
font-weight:700;
color:#fff;
text-align:center;
line-height:1.5em;
margin:2em 0 1.375em;
position:relative;
}

.heading02:nth-child(n+2) {
padding-top:1.75em;
}

.heading02:nth-child(n+2):before, .heading02:nth-child(n+2):after{
content:"";
display:block;
width:50%;
height:4px;
border-top:1px solid #a08a23;
position:absolute;
top:0;
}

.heading02:nth-child(n+2):before {
left:-20px;
}

.heading02:nth-child(n+2):after {
right:-20px;
}

.heading02:nth-child(n+2) span {
display:block;
width:6px;
height:6px;
border:1px solid #a08a23;
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
margin-left:-4px;
position:absolute;
top:-4px;
left:50%;
}

.heading02 small {
display:block;
font-size:50%;
line-height:1.75em;
}

.heading01:nth-child(1), .heading02:nth-child(1) {
margin-top:0;
}

.subheading01 {
font-family:"Poppins", "カクミン M", "Kakumin Medium", "A-OTF カクミン Pro M", "YuGothic", "Yu Gothic", "游ゴシック", sans-serif;
font-size:150%;
font-weight:700;
color:#131018;
line-height:1.5em;
margin:2em 0;
}

.subheading01 em {
font-style:normal;
color:#40245e;
}

.page-link + .heading02 {
margin-top:1.25em;
}

/*
p, img, figure
*/

p {
line-height:1.75em;
margin-top:1em;
}

p.align-center {
text-align:center;
}

p.text-sm {
font-size:125%;
}

p.thumb {
text-align:center;
}

p.thumb img {
display:inline-block;
}

p.thumb span.cap {
display:block;
line-height:1.5em;
margin-top:30px;
}

p.btn-md {
text-align:center;
}

p.btn-md a {
background:#a08a23;
border-radius:25px;
display:inline-block;
width:200px;
height:50px;
color:#fff;
text-decoration:none;
line-height:50px;
}

figure {
text-align:center;
margin:60px 0;
}

figure figcaption {
line-height:1.5em;
margin-top:30px;
}

img {
width:100%;
max-width:100%;
height:auto;
}

img.pic-sm {
width:100%;
max-width:640px;
height:auto;
}

img.pic-md {
width:100%;
max-width:810px;
height:auto;
}

img.pic-lg {
width:100%;
max-width:980px;
height:auto;
}

h2 + *, h3 + *, h4 + *, p:nth-child(1), figure + * {
margin-top:0;
}

/*
a
*/

a {
color:#a08a23;
text-decoration:underline;
-webkit-transition:all 0.25s ease;
-moz-transition:all 0.25s ease;
-o-transition:all 0.25s ease;
transition:all 0.25s ease;
}

a:hover {
text-decoration:none;
opacity:0.75;
}

a.tel {
cursor:default;
text-decoration:none;
}

a.tel:hover {
opacity:1;
}

label.tab-link {
color:#a08a23;
text-decoration:underline;
-webkit-transition:all 0.25s ease;
-moz-transition:all 0.25s ease;
-o-transition:all 0.25s ease;
transition:all 0.25s ease;
cursor:pointer;
}

/*
other
*/

.clearfix {
overflow:hidden;
position:relative;
}

.clr {
clear:both;
}

.hide {
width:0;
height:0;
margin:0;
padding:0;
overflow:hidden;
}

span.br {
display:block;
}

.no_print {
display:none;
}

/*
margin, padding
*/

.mt-60 {
margin-top:3.25em;
}


/* ────────────────────────────────────────────────────────── Common Layout */

/*
header
*/

#header {
width:100%;
max-width:1200px;
margin:0 auto;
}

#hero #header {
max-width:100%;
}

#header img {
width:100%;
height:auto;
}

@media only screen and (min-width:1200px) {

#header {
width:1200px;
height:675px;
}

}

/*
header
*/

input.panel-radios {
display:none;
}

ul#tabs-list {
text-align:center;
}

label.panel-label {
background-color:#a08a23;
-webkit-user-select:none;
-moz-user-select:none;
-ms-user-select:none;
user-select:none;
display:block;
width:100%;
color:rgba(255,255,255,0.5);
cursor:pointer;
-webkit-transition-property:background-color, color;
transition-property:background-color, color;
-webkit-transition-duration:200ms;
transition-duration:200ms;
}

label.panel-label:hover {
background-color:#271839;
color:rgba(255,255,255,1);
}

#panels {
background-color:#271839;
padding-bottom:100px;
position:relative;
}

#panels:after {
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 100' fill='rgb(19,16,24)' fill-opacity='1'%3E%3Cpolygon points='0,100 100,100 0,0'%3E%3C/polygon%3E%3C/svg%3E");
background-position:center center;
background-repeat:no-repeat;
background-size:100% 100%;
content:"";
height:100px;
left:0;
position:absolute;
right:0;
width:100%;
z-index:5;
bottom:0;
}

#panels .container {
width:95%;
max-width:1140px;
margin:0 auto;
padding:0 2.5%;
}

#panels section .main {
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
max-height:0;
opacity:0;
-webkit-transition:opacity 600ms;
transition:opacity 600ms;
overflow-y:hidden;
}

#panel-1-ctrl:checked ~ #panels #panel-1 .main {
max-height:initial;
opacity:1;
padding:60px 0 100px;
}

#panel-2-ctrl:checked ~ #panels #panel-2 .main {
max-height:initial;
opacity:1;
padding:60px 80px 100px;
}

#panel-3-ctrl:checked ~ #panels #panel-3 .main {
max-height:initial;
opacity:1;
padding:60px 80px 100px;
}

#panel-4-ctrl:checked ~ #panels #panel-4 .main {
max-height:initial;
opacity:1;
padding:60px 80px 100px;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {

#panel-1-ctrl:checked ~ #panels #panel-1 .main {
max-height:none;
}

#panel-2-ctrl:checked ~ #panels #panel-2 .main {
max-height:none;
}

#panel-3-ctrl:checked ~ #panels #panel-3 .main {
max-height:none;
}

#panel-4-ctrl:checked ~ #panels #panel-4 .main {
max-height:none;
}

}
 
@media all and (max-width:1199px) {

#nav-ctrl:checked ~ #tabs-list #li-for-panel-1 {
max-height:48px;
opacity:1;
}

#li-for-panel-1 .br {
display:inline;
}

#nav-ctrl:checked ~ #tabs-list #li-for-panel-2 {
max-height:48px;
opacity:1;
}

#nav-ctrl:checked ~ #tabs-list #li-for-panel-3 {
max-height:48px;
opacity:1;
}

#nav-ctrl:checked ~ #tabs-list #li-for-panel-4 {
max-height:48px;
opacity:1;
}

#nav-ctrl:checked ~ #tabs-list #li-for-panel-5 {
max-height:48px;
opacity:1;
}

#open-nav-label {
cursor:pointer;
display:block;
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
}

#nav-ctrl:checked ~ #tabs-list #open-nav-label {
display:none;
}

#close-nav-label {
background-color:#40245e;
cursor:pointer;
display:block;
max-height:0;
color:#fff;
-webkit-transition:max-height 200ms;
transition:max-height 200ms;
text-transform:uppercase;
letter-spacing:1px;
overflow-y:hidden;
padding:0;
}

#nav-ctrl:checked ~ #tabs-list #close-nav-label {
max-height:48px;
opacity:1;
padding:1em;
}

ul#tabs-list {
border-bottom:1px solid #40245e;
position:relative;
}

#tabs-list label.panel-label {
padding:0.75em 0;
}

#tabs-list #li-for-panel-1, #tabs-list #li-for-panel-2, 
#tabs-list #li-for-panel-3, #tabs-list #li-for-panel-4 {
max-height:0;
line-height:1.5em;
overflow-y:hidden;
-webkit-transition:max-height 200ms;
transition:max-height 200ms;
}

#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 {
max-height:48px;
opacity:1;
}

#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1 label.panel-label, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2 label.panel-label, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3 label.panel-label, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 label.panel-label {
background-color:#271839;
color:#fff;
}

#panels section header {
display:block;
}

}

@media all and (min-width:1200px) {

#panels section .main {
width:1140px;
}

ul#tabs-list {
width:1140px;
text-align:center;
margin:-64px auto 0;
padding:0 30px;
}

ul#tabs-list li {
display:inline-block;
width:285px;
height:64px;
vertical-align:bottom;
text-align:center;
line-height:1.5em;
}

label.panel-label {
background:#a08a23;
border-radius:15px 15px 0 0;
display:table-cell;
width:inherit;
height:64px;
vertical-align:middle;
position:relative;
}

ul#tabs-list li label.panel-label:before, ul#tabs-list li label.panel-label:after {
display:block;
content:"";
width:30px;
height:15px;
position:absolute;
}

ul#tabs-list li label.panel-label:before {
left:-15px;
bottom:0;
}

#tabs-list #li-for-panel-1 label.panel-label:before {
background:url("../img/common/tab_border.svg") no-repeat center bottom;
}

ul#tabs-list li label.panel-label:after {
right:-15px;
bottom:0;
}

#tabs-list #li-for-panel-4 label.panel-label:after {
background:url("../img/common/tab_border.svg") no-repeat center bottom;
}

#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 {
pointer-events:none;
cursor:default;
}

#tabs-list li:hover label.panel-label:before, #tabs-list li:hover label.panel-label:after,
#tabs-list #li-for-panel-1:hover label.panel-label:before, 
#tabs-list #li-for-panel-4:hover label.panel-label:after, 
#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1 label.panel-label:before, 
#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1 label.panel-label:after, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2 label.panel-label:before, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2 label.panel-label:after, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3 label.panel-label:before, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3 label.panel-label:after, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 label.panel-label:before, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 label.panel-label:after {
background:url("../img/common/tab_border_checked.svg") no-repeat center bottom;
z-index:3;
}

#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1 label.panel-label, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2 label.panel-label, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3 label.panel-label, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 label.panel-label {
background-color:#271839;
color:#fff;
position:relative;
z-index:5;
}

#open-nav-label, #close-nav-label {
display:none;
}

#nav-ctrl {
display:none;
}

}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  

label.panel-label {
background-color:transparent;
background-image:url("../img/common/ie_panel-label.svg");
background-repeat:no-repeat;
background-position:center bottom;
border-radius:0;
transition-property:background-image, color;
transition-duration:200ms;
}

label.panel-label:hover {
background-color:transparent;
background-image:url("../img/common/ie_checked_panel-label.svg");
background-repeat:no-repeat;
background-position:center bottom;
border-radius:0;
}

#panel-1-ctrl:checked ~ #tabs-list #li-for-panel-1 label.panel-label, 
#panel-2-ctrl:checked ~ #tabs-list #li-for-panel-2 label.panel-label, 
#panel-3-ctrl:checked ~ #tabs-list #li-for-panel-3 label.panel-label, 
#panel-4-ctrl:checked ~ #tabs-list #li-for-panel-4 label.panel-label {
background-color:transparent;
background-image:url("../img/common/ie_checked_panel-label.svg");
background-repeat:no-repeat;
background-position:center bottom;
}

}

/*
footer
*/

#footer {
width:95%;
max-width:1140px;
margin:0 auto;
padding:60px 2.5% 100px;
}

#footer #sns-link {
text-align:center;
}

#footer #sns-link li {
display:inline-block;
vertical-align:top;
margin:0 15px;
}

#footer #sns-link li iframe {
vertical-align:bottom;
}

#footer p {
font-size:87.5%;
color:#fff;
text-align:center;
}

/*
pageTop
*/

p#pageTop {
position:fixed;
bottom:0.875em;
right:0.875em;
z-index:99;
}

p#pageTop a {
background:rgba(64,36,94,0.75);
border-radius:24px;
display:block;
width:48px;
height:48px;
text-align:center;
line-height:48px;
}

.fa-chevron-up {
font-size:1.25em;
color:rgba(255,255,255,1);
}


/* ────────────────────────────────────────────────────────── TB */

@media all and (max-width:1199px) {

.heading01 {
font-size:200%;
margin:8% 0 5.25%;
}

.heading02 {
font-size:200%;
margin:8% 0 5.5%;
}

.heading02:nth-child(n+2) {
padding-top:7%;
}

.page-link + .heading02 {
margin-top:6%;
}

.subheading01 {
font-size:125%;
margin:6% 0;
}

p {
font-size:87.5%;
overflow-wrap:break-word;
}

p.text-sm {
font-size:112.5%;
}

p.thumb span.cap {
margin-top:3%;
}

figure {
margin:6% 0;
}

figure figcaption {
margin-top:3%;
}

.mt-60 {
margin-top:6%;
}

#panel-1-ctrl:checked ~ #panels #panel-1 .main {
padding:4.5% 0 7.5%;
}

#panel-2-ctrl:checked ~ #panels #panel-2 .main, 
#panel-3-ctrl:checked ~ #panels #panel-3 .main, 
#panel-4-ctrl:checked ~ #panels #panel-4 .main {
padding:4.5% 6% 7.5%;
}

#footer {
padding:6% 2.5% 10%;
}

}


/* ────────────────────────────────────────────────────────── SP */

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

.heading01 {
margin:1em 0 0.625em;
}

.heading02 {
margin:1.5em 0 1em;
}

.heading02:nth-child(n+2) {
padding-top:1.5em;
}

.page-link + .heading02 {
margin-top:6%;
}

.subheading01 {
margin:1.25em 0;
}

p.thumb span.cap {
margin-top:3%;
}

.mt-60 {
margin-top:2.5em;
}

a.tel {
cursor:pointer;
text-decoration:underline;
}

.sp-br {
display:block;
}

#footer #sns-link li {
margin:0 10px;
}

#footer p {
font-size:75%;
}

}