@charset "UTF-8";

*,:after,:before{margin:0;padding:0;-o-box-sizing:border-box;-ms-box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-font-smoothing: antialiased;}
article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}
audio,canvas,video{display:inline-block}
a{outline:0}
audio:not([controls]){display:none;height:0}
[hidden]{display:none}
html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}
body{margin:0}
a{text-decoration: none;}
a:active,a:hover{outline:0}
h1{font-size:2em}
abbr[title]{border-bottom:1px dotted}
dfn{font-style:italic}
mark{background:#ff0;color:#000}
code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}
pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
img{border:0}
svg:not(:root){overflow:hidden}
figure{margin:0}
fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
legend{border:0;padding:0}
button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
button,input{line-height:normal}
button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}
button[disabled],html input[disabled]{cursor:default}
button { border:none; background: none; outline:0 }
button:focus { outline: none; }
input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}
input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}
textarea{overflow:auto;vertical-align:top}
table{border-collapse:collapse;border-spacing:0}
ul,li { list-style:none; }
* { -moz-box-sizing:border-box; box-sizing:border-box; margin:0; padding:0; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; -webkit-tap-highlight-color:transparent; }
.cf:after,.cf:before,.clear{content:" ";display:table}
.cf:after,.clear{clear:both}
.cf{*zoom:1}
.table { position: relative; display: table; width: 100%; height: 100%; }
.table-cell { position: relative; display: table-cell; vertical-align: middle; }
.va-top { vertical-align: top }
.va-bottom { vertical-align: bottom }
.ta-center { text-align: center; }
.ta-right { text-align: right; }
.media-holder{position:relative;width:100%;height:0;padding:0 0 100%;overflow:hidden; }
.media-holder.h16 {padding:0 0 16.66%;}
.media-holder.h30 {padding:0 0 30%;}
.media-holder.h33 {padding:0 0 33%;}
.media-holder.h50 {padding:0 0 50%;}
.media-holder.h56 {padding:0 0 56%;}
.media-holder.h62 {padding:0 0 62%;}
.media-holder.h67 {padding:0 0 67%;}
.media-holder img,.media-holder iframe,.media-holder video {position:absolute;top:0px;left:0px;width:100%;height:100%;overflow:hidden}

.tr { word-break: break-all; display: flex; width: 100%; }
.td { width: 50%; flex: 1; box-sizing: border-box; padding:120px 0; }
@media (max-width: 800px){
	.td { padding:70px 0; }
}
@media (max-width:600px) {
	.tr { display: block; }
	.td { width: 100%; padding:50px 0; }
}

body {font-size: 100%;background: #f2f0e6;color:#00194B;font-family:'Noto Sans JP',Arial,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','Meiryo','メイリオ',sans-serif;-webkit-font-smoothing: antialiased;}
.serif { font-family:'Sawarabi Mincho', sans-serif; font-weight: 400 !important; }
.en { font-family:'Play', sans-serif; font-weight: 400 !important; }
section {position: relative;background-color: #f2f0e6;}
h1,h2,h3,h4,h5 { font-weight: 400; }
strong,b,.bold { font-weight: 700; }
a { color:#00194B; }
.inner { position: relative; width: 86%; max-width: 1080px; margin:0 auto; padding:1px 0; }
.mi-inner { position: relative; width: 80%; max-width: 820px; margin:0 auto; }
.space { display: block; height: 50px; }
.space.s { height: 30px; }
.space.ss { height: 20px; }
.bgbk { background-color: #191919; color:#fff; }
.pcOnly { display: none; }
@media (min-width: 768px){
	.spOnly { display: none; }
	.mi-inner { width: 70%; }
	.space { height: 70px; }
	.space.s { height: 40px; }
	.space.ss { height: 30px; }
}
@media (min-width: 960px){
	.pcOnly { display: block; }
}
@media (min-width: 1100px){
	.space { height: 90px; }
	.space.s { height: 50px; }
}

/* loading */
.masksvg { display: block; width: 100%; height: 100%; }
.splash { position: fixed; left: 0; top: 0; z-index: 999; width: 100%; height: 100%; background: #00194B; -webkit-transition: all .7s; transition: all .7s; }
.is_splash_start .splash { display: block; opacity: 0 }
.progress-bar { position: absolute; top: 50%; left: 50%; display: block; width: 100px; height: 140px; margin: -70px 0 0 -50px; background-image: url(../img/logo-mono.svg); background-size:cover; overflow: hidden; z-index: 100; }
.progress-now { position: absolute; height: 100%; width: 0; top: 0; left: 0; background-color:#00194B; background-image: url(../img/logo.svg); background-position: left top; background-size:100px 140px; }
.is_prepend .progress-now { left: auto; right: 0; background-position: right top; }
.is_loaded .splash { display: none }
@media (min-width: 768px){
	.progress-bar { width: 200px; height: 280px; margin: -140px 0 0 -100px; }
	.progress-now { background-size:200px 280px; }
}

.io { opacity: 0; -webkit-transform:translate3d(0,100px,0) scale(0.97); transform:translate3d(0,100px,0) scale(0.97); -webkit-transition: all 2.8s cubic-bezier(.25,.98,.25,.98); transition: all 2.8s cubic-bezier(.25,.98,.25,.98); }
.io.on { opacity: 1; -webkit-transform: translate3d(0,0,0) scale(1); transform: translate3d(0,0,0) scale(1); }
.io-o { opacity: 0; transition: opacity 2s cubic-bezier(.25,.98,.25,.98); }
.io-o.on { opacity: 1; }
.w-o { padding-right: 0.25em; overflow: hidden; display: inline-block !important; }
.w-o:last-child { padding-right: 0; }
.w-o .o { overflow: hidden; display: inline-block !important; }
.w-o .o .c { overflow: hidden; display: inline-block !important; }
.js-words span, .js-char span { display: inline-block; vertical-align: top; }
.js-b-show .o { opacity: 0; transform: translate(0%, 100%); }
.js-w-show .o { opacity: 0; transform: translate(0%, -100%); }

/* Header */

.pageHeader {position: fixed;width: 100%;max-width: 1140px;padding-left: 4px;padding-right: 5px;/* margin-top: 20px; */left: 50%;top: 0;-webkit-box-sizing: border-box;box-sizing: border-box;z-index: 2;transform:translateX(-50%);}
.pageHeader.is-show .pageHeader-inner { visibility: visible; opacity: 1; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }
.pageHeader-inner {height: 60px;background-color: #00194B;overflow: hidden;visibility: hidden;opacity: 0;-webkit-transform: scale(1.1);-ms-transform: scale(1.1);transform: scale(1.1);-webkit-transition: height 0.6s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1);transition: height 0.6s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1);transition: height 0.6s cubic-bezier(0.37, 0.16, 0.12, 1), transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1);transition: height 0.6s cubic-bezier(0.37, 0.16, 0.12, 1), transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1);}
.is-navShow .pageHeader-inner {height: 520px;}
.pageHeader-content { position: relative; }
.pageHeader-content:before, .pageHeader-content:after { content: " "; display: table; }
.pageHeader-content:after { clear: both; }
.pageHeader-logo {position: absolute;width: 40px;height: 60px;padding: 3px 0;background:#00194B;left: 20px;top: 0;line-height: 0;cursor: pointer;/* box-shadow:0 1px 1px 1px rgba(0,0,0,0.2); */}
.is-scrolled .pageHeader-logo { cursor: pointer; pointer-events: auto; }
.pageHeader-logo svg { width: 100%; height: 100%; }
.pageNav { margin-top: 80px; margin-bottom: 50px; pointer-events: none; }
.pageNav.is-show { pointer-events: auto; }
.pageNav-list { position: relative; height: 100%; top: 0; }
.pageNav-list li { position: relative; margin-bottom: 20px; text-align: center; }
.pageNav-list li a {display: block;font-size: .7rem;color:#f2f0e6;}
.pageNav-list li a span {display: block;font-size: 1.2rem;letter-spacing: 1px;}
.pageNav-list li a::after {display: none;content: "";position: absolute;width: 100%;height: 5px;bottom: 0;background-color: #f2f0e6;pointer-events: none;-webkit-transform: translateY(6px);-ms-transform: translateY(6px);transform: translateY(6px);-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: -webkit-transform 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: transform 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: transform 0.6s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);}
.no-touch .pageNav-list li a:hover::after { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
.pageNav-entry { text-align: center; margin-top: 20px; }
.pageNav-entry a {position: relative;display: inline-block;padding:10px 50px 15px;margin-left: auto;margin-right: auto;background-color: #f2f0e6;color: #00194B;box-shadow:0 1px 1px 1px rgba(0,0,0,0.2);font-size: .7rem;font-weight: 500;cursor:pointer;-webkit-transition: all 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: all 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);}
.pageNav-entry.members a { background: #cc9b1c; background: -moz-linear-gradient(top, #cc9b1c 0%, #e0cfa3 100%); background: -webkit-linear-gradient(top, #cc9b1c 0%,#e0cfa3 100%); background: linear-gradient(to bottom, #cc9b1c 0%,#e0cfa3 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc9b1c', endColorstr='#e0cfa3',GradientType=0 ); }
.pageNav-entry a span {display: block;font-size: 1.2rem;letter-spacing: 1px;}
.is-entryClose .pageNav-entry a { padding-left: 60px; line-height: 1.4; }
.is-entryClose .pageNav-entry a::after { content: ""; position: absolute; width: 10px; height: 8px; left: auto; right: 14px; top: 10px; margin-top: 0; background-color: transparent; background-image: url("../img/icon_blank.svg"); background-repeat: no-repeat; opacity: 0.2; -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); }
.is-entryClose .pageNav-entry a span { display: block; position: relative; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); text-align: left; }
.no-touch .pageNav-entry a:hover {background-color: #dad6c5; box-shadow:0 1px 3px 1px rgba(0,0,0,0.5); }
.is-entryClose .pageNav-entry a { background-color: #8d8d8d; pointer-events: none; }
.buttonToggle {background: none;border: 0;-webkit-box-sizing: content-box;box-sizing: content-box;color: inherit;cursor: pointer;display: inline-block;line-height: normal;overflow: visible;padding: 0;text-align: center;text-decoration: none;-moz-user-select: none;-ms-user-select: none;-webkit-user-select: none;display: block;position: absolute;width: 85px;height: 35px;right: 11px;top: 12px;background-color: #f2f0e6;border-radius: 4px;color: #00194B;text-align: left;outline: none;}
button,input { font: inherit; }
button::-moz-focus-inner, button::-moz-focus-inner,
input::-moz-focus-inner,input::-moz-focus-inner { border: 0; padding: 0; }
button { overflow: visible; }
button,html input[type="button"],
input[type="reset"],input[type="submit"] { -webkit-appearance: button; }
.buttonToggle-txt { margin-left: 15px; font-size: 0.7rem; font-weight: normal; }
.is-navShow .buttonToggle-txt-menu { display: none; }
.buttonToggle-txt-close { display: none; }
.is-navShow .buttonToggle-txt-close { display: block; }
.buttonToggle-icon { position: absolute; width: 14px; height: 14px; right: 10px; top: 11px; }
.buttonToggle-line {position: absolute;width: 14px;height: 2px;left: 0;background-color: #00194B;-webkit-transition: -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);transition: -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);transition: transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);transition: transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1), -webkit-transform 0.6s cubic-bezier(0.52, 0.08, 0.18, 1);}
.buttonToggle-line.line-1 { top: 0; -webkit-transform-origin: left center; -ms-transform-origin: left center; transform-origin: left center; }
.is-navShow .buttonToggle-line.line-1 { -webkit-transform: translate(2px, 1px) rotate(45deg); -ms-transform: translate(2px, 1px) rotate(45deg); transform: translate(2px, 1px) rotate(45deg); }
.buttonToggle-line.line-2 { top: 6px; -webkit-transform-origin: center center; -ms-transform-origin: center center; transform-origin: center center; }
.is-navShow .buttonToggle-line.line-2 { -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); }
.buttonToggle-line.line-3 { top: 12px; -webkit-transform-origin: left center; -ms-transform-origin: left center; transform-origin: left center; }
.is-navShow .buttonToggle-line.line-3 { -webkit-transform: translate(2px, -1px) rotate(-45deg); -ms-transform: translate(2px, -1px) rotate(-45deg); transform: translate(2px, -1px) rotate(-45deg); }

@media (min-width: 1024px){
	.pageHeader-inner { height: 80px; }
	.pageHeader-content { height:80px; }
	.pageHeader-logo { width: 60px; height: 80px; padding:7px 5px 3px; }
	.pageNav { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; position: absolute; height: 100%; right: 35px; margin-top: 0; margin-bottom: 0; top: 0; }
	.pageNav-list li { height: 100%; margin-bottom: 0; display: inline-block; overflow: hidden; line-height: 20px; padding:20px 0; }
	.pageNav-list li a {font-size: 0.6rem;}
	.pageNav-list li a span {font-size: 1rem;}
	.pageNav-list li a::after { display: block; }
	.pageNav-list li + li { margin-left: 35px; }
	.pageNav-entry {margin:0;}
	.pageNav-entry a {font-size: .6rem;top: 18px;padding:5px 30px 6px;margin-left: 35px;}
	.pageNav-entry.members a { margin-left:1px; }
	.pageNav-entry a span {font-size: 1rem;}
	.no-touch .pageNav-entry a:hover::before { -webkit-transform: translateX(148px); -ms-transform: translateX(148px); transform: translateX(148px); }
	.buttonToggle { display: none; }
}

/* footer */
@media (min-width: 320px){
	footer { position: relative; width: 100%; display: block; }
	.copyright { display: block; margin:0; padding:0; text-align: center; padding:30px 0 50px; }
	.copyright p { font-size: 12px; line-height: 1;  }
}
@media (min-width: 768px){
	footer .copyright { padding:80px 0 100px; }
}

body { position: fixed; top: 0; left: 0; width: 100%; height: 100%; }
#my-scrollbar { position: fixed; top: 0; right: 0; bottom: 0; left: 0; }
[data-scrollbar],[scrollbar],scrollbar{position:relative;display:block}
[data-scrollbar] .scroll-content,[scrollbar] .scroll-content,scrollbar .scroll-content{width:100%}
[data-scrollbar].sticky .scrollbar-track,[scrollbar].sticky .scrollbar-track,scrollbar.sticky .scrollbar-track{background:rgba(255,255,255,.3)}
[data-scrollbar] .scrollbar-track,[scrollbar] .scrollbar-track,scrollbar .scrollbar-track{position:absolute;z-index:1;-webkit-transition:opacity .5s ease-out,background .5s ease-out;transition:opacity .5s ease,background .5s ease;background:0 0}
[data-scrollbar] .scrollbar-track.show,[data-scrollbar] .scrollbar-track:hover,[scrollbar] .scrollbar-track.show,[scrollbar] .scrollbar-track:hover,scrollbar .scrollbar-track.show,scrollbar .scrollbar-track:hover{opacity:1}
[data-scrollbar] .scrollbar-track:hover,[scrollbar] .scrollbar-track:hover,scrollbar .scrollbar-track:hover{background:rgba(255,255,255,.3)}
[data-scrollbar] .scrollbar-track-x,[scrollbar] .scrollbar-track-x,scrollbar .scrollbar-track-x{bottom:0;left:0;width:100%;height:5px}
[data-scrollbar] .scrollbar-track-y,[scrollbar] .scrollbar-track-y,scrollbar .scrollbar-track-y{top:0;right:0;width:5px;height:100%;background: #00194B;}
[data-scrollbar] .scrollbar-thumb,[scrollbar] .scrollbar-thumb,scrollbar .scrollbar-thumb{position:absolute;top:0;left:0;width:5px;height:5px;background: #f2f0e6;border: 1px solid #00194B;opacity:1;-webkit-transition:opacity 1s cubic-bezier(.215,.61,.355,1) 2s;transition:opacity 1s cubic-bezier(.215,.61,.355,1) 2s;}
.dom-is-loaded [data-scrollbar] .scrollbar-thumb,.dom-is-loaded [scrollbar] .scrollbar-thumb,.dom-is-loaded scrollbar .scrollbar-thumb{opacity:1}
.dom-is-reloaded [data-scrollbar] .scrollbar-thumb,.dom-is-reloaded [scrollbar] .scrollbar-thumb,.dom-is-reloaded scrollbar .scrollbar-thumb{opacity:1}
.dom-is-loading [data-scrollbar] .scrollbar-thumb,.dom-is-loading [scrollbar] .scrollbar-thumb,.dom-is-loading scrollbar .scrollbar-thumb{opacity:1;-webkit-transition-delay:0s;transition-delay:0s}
[data-scrollbar] .overscroll-glow,[scrollbar] .overscroll-glow,scrollbar .overscroll-glow{position:absolute;top:0;left:0;width:100%;height:100%}
@media (min-width: 960px){
	[data-scrollbar] .scrollbar-track-x,[scrollbar] .scrollbar-track-x,scrollbar .scrollbar-track-x{height:10px}
	[data-scrollbar] .scrollbar-track-y,[scrollbar] .scrollbar-track-y,scrollbar .scrollbar-track-y{width:10px;}
	[data-scrollbar] .scrollbar-thumb,[scrollbar] .scrollbar-thumb,scrollbar .scrollbar-thumb{width:10px;height:10px;}
}

@media (min-width: 320px){
	.more-btn { position: relative; display: block; margin:0 auto; }
	.more-btn a { position: relative; display: block; padding:0 25px; width: 100%; text-align: center; border:1px solid #222; background-color: #222; }
	.more-btn span { position: relative; display: block; line-height: 50px; color:#fff; z-index: 2; -webkit-transition:all 350ms cubic-bezier(.666,0,.333,1); transition:all 350ms cubic-bezier(.666,0,.333,1); }
	.more-btn svg { -webkit-transition:all 350ms cubic-bezier(.666,0,.333,1); transition:all 350ms cubic-bezier(.666,0,.333,1); z-index: 3; }
	.hoverbg-btn a { overflow: hidden; }
	.hoverbg-btn a:before,
	.hoverbg-btn a:after { content:""; position: absolute; left:0; top:0; width: 100%; height: 100%; background-color: #fff; -webkit-transition:-webkit-transform 350ms cubic-bezier(.666,0,.333,1); -ms-transition:-ms-transform 350ms cubic-bezier(.666,0,.333,1); transition:transform 350ms cubic-bezier(.666,0,.333,1); -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transform-origin: 100% 0; -ms-transform-origin: 100% 0; transform-origin: 100% 0; }
	.hoverbg-btn a:before { background:#666; -webkit-transition-delay:50ms; transition-delay:50ms; }
	.hoverbg-btn a.active:before,
	.hoverbg-btn a.active:after { -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; }
}
@media (min-width: 768px){
}
@media (min-width: 960px){
	.more-btn a:hover span { color:#fff; }
	.hoverbg-btn a:hover:before,
	.hoverbg-btn a:hover:after { -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); -webkit-transform-origin: 0 0; -ms-transform-origin: 0 0; transform-origin: 0 0; }
	.hoverbg-btn a:hover:before { -webkit-transition-delay:0ms; transition-delay:0ms; }
	.hoverbg-btn a:hover:after { -webkit-transition-delay:50ms; transition-delay:50ms; }
}

.section-title { display: none; }
@media (min-width: 960px){
	.is_loaded .section-title { display: block; }
	.section-title { font-size: 14px; letter-spacing: 1px; }
	.section-title .wh { color:#f2f0e6; }
	.section-title .left { position: fixed; top: 50%; left: 2.5%; display: block; width: 200px; height: 20px; line-height: 20px; overflow: hidden; text-align: center; -webkit-transform: rotate(-90deg) translate(0px, -100px); transform: rotate(-90deg) translate(0px, -100px); z-index: 1000; }
	.section-title .left div { position: absolute; left:0; top:0; width: 100%; height: 100%; }
	.section-title .right { position: fixed; top: 50%; right: 2.5%; display: block; width: 200px; height: 20px; line-height: 20px; overflow: hidden; text-align: center; -webkit-transform: rotate(90deg) translate(0px, -100px); transform: rotate(90deg) translate(0px, -100px); z-index: 1000; }
	.section-title .right div { position: absolute; right:0; top:0; width: 100%; height: 100%; }
	.section-title div .o { opacity: 0; -webkit-transform: translate(0, -50%) skewY(20deg); transform: translate(0, -50%) skewY(20deg); -webkit-transition:all 400ms ease; transition:all 400ms ease; }
	.section-title div.active .o { opacity: 1; -webkit-transform: translate(0, 0) skewY(0deg); transform: translate(0, 0) skewY(0deg); }
}
@media (min-width: 1100px){
	.section-title .left { left: 3.5%; }
	.section-title .right { right: 3.5%; }
}

.sect-btn {position:relative;width: 180px;height:35px;margin:0 auto;overflow:hidden;display:block;}
.sect-btn h4 {position:relative;width: 144px;height:35px;margin:0 auto;font-size: 12px;letter-spacing: 1px;line-height:34px;text-align:center;color:#f2f0e6;text-transform: uppercase;background-color: #00194B;}
.sect-btn:before,.sect-btn:after {content:"";position:absolute;top:50%;left:-1px;width:0;height:0;margin:-22px 0 0;border-top:22px solid transparent;border-bottom:22px solid transparent;border-right: 22px solid #00194B;}
.sect-btn:after {left:auto;right:-1px;width:0;height:0;margin:-22px 0 0;border-top:22px solid transparent;border-bottom:22px solid transparent;border-right:none;border-left: 22px solid #00194B;}
.sect-btn.wh h4 { color:#00194B; background-color: #f2f0e6; }
.sect-btn.wh:before,.sect-btn.wh:after { border-right: 22px solid #f2f0e6;}
.sect-btn.wh:after { border-right:none;border-left: 22px solid #f2f0e6;}


/* Home */
@-webkit-keyframes line-repetition { 0% {-webkit-transform: translateY(-10px);transform: translateY(-10px);opacity: 0;} 60% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;} 100% {-webkit-transform: translateY(3px);transform: translateY(3px);opacity: 0;}}
@keyframes line-repetition { 0% {-webkit-transform: translateY(-10px);transform: translateY(-10px);opacity: 0;} 60% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;} 100% {-webkit-transform: translateY(3px);transform: translateY(3px);opacity: 0;}}
@media (min-width: 320px){
	.waku-border { position: fixed; left:0; top:0; width: calc(100% - 5px); height: 100%; border-style: solid; border-color:#00194B; border-width: 0; border-right: none; z-index: 99; pointer-events: none; -webkit-transition:border 700ms 400ms cubic-bezier(.666,0,.333,1); -ms-transition:border 700ms 400ms cubic-bezier(.666,0,.333,1); transition:border 700ms 400ms cubic-bezier(.666,0,.333,1); }
	.waku-border.show { border-width: 5px; }
	.hero { position: relative; width: 100%; height: 100vh; background-color: #00194B; background-image: url(../img/hero.jpg); background-size: cover; background-position: center; background-repeat: no-repeat; color:#f2f0e6; overflow: hidden; }
	.hero .text { position: absolute; left:5%; top:0; width: 90%; height: 100%; z-index: 20; }
	.hero h1 { position: relative; display: block; font-size: 16px; letter-spacing: 1px; margin: 0 auto 20px; text-align: center; }
	.hero h1 span.char { display: block; }
	.hero h1 span.char .w-o { position: relative; }
	.hero h1 span.char .w-o .o { position: relative; }
	.hero .logo { position: relative; display: block; width: 60%; height: 0; padding-bottom: 40%; margin:0 auto; opacity: 0; transform: scale(1.1); }
	.hero .logo img { position: absolute; left:0; top:0; display: block; width: 100%; }
	.is_loaded .hero .logo { opacity: 1; transform: scale(1); -webkit-transition: all 1s .1s cubic-bezier(0.37, 0.16, 0.12, 1); transition: all 1s .1s cubic-bezier(0.37, 0.16, 0.12, 1); }
	.hero .arrow { position: absolute; display: block; left:50%; bottom:30px; width: 30px; height: 30px; transform: translateX(-50%); }
	.hero .arrow svg { display: block; width: 100%; height: 100%; -webkit-animation-name: line-repetition; animation-name: line-repetition; -webkit-animation-duration: 2.5s; animation-duration: 2.5s; -webkit-animation-timing-function: cubic-bezier(0.37, 0.16, 0.12, 1); animation-timing-function: cubic-bezier(0.37, 0.16, 0.12, 1); -webkit-animation-iteration-count: infinite; animation-iteration-count: infinite; }
}
@media (min-width: 768px){
	.hero .text { left:10%; width: 80%; }
	.hero h1 { font-size: 20px; letter-spacing: 2px; margin: 0 auto 40px; }
	.hero .logo { width: 48%; padding-bottom:32%; }
	.hero .arrow { bottom:40px; width: 40px; height: 40px; }
	.hero .play-mobie { right: -30px; width: 260px; }
	.hero .play-mobie a { padding:15px; }
	.hero .play-mobie span { font-size: 12px; }
	.hero .play-mobie strong { font-size: 16px; }
}
@media (min-width: 960px){
	.waku-border { width: calc(100% - 10px);  }
	.waku-border.show { border-width: 10px; }
	.hero h1 { font-size: 26px; }
	.hero .logo { width: 360px; padding-bottom: 240px; }
}

@media (min-width: 320px){
	.sec-title { position: relative; margin:0; padding:30px 0; text-align: center; }
	.sec-title h3 { font-size: 11px; line-height: 1.4; font-weight: 300; display: block; }
	.sec-title h2 { font-size:19px; letter-spacing: 1px; line-height: 1.4; display: block; }
	.sec-title h2.mb { margin-bottom:20px; }
	.sec-title p { font-size: 11px; letter-spacing: 1px; line-height: 1.8; }
	.sec-title p strong { margin:5px auto 0; font-weight: 700; font-size: 12px; display: inline-block; padding:4px 10px; background: #c69c2c; color:#fff; }
}
@media (min-width: 768px){
	.sec-title h2 { font-size:24px; letter-spacing: 2px; }
	.sec-title h3 { font-size: 14px; }
	.sec-title p { font-size: 13px; }
	.sec-title p strong { font-size: 14px; }
}
@media (min-width: 960px){
	.sec-title { text-align: center; padding:40px 0; }
	.sec-title h2 { font-size:30px; letter-spacing: 3px; }
	.sec-title h3 { font-size: 16px; }
	.sec-title p { font-size: 14px; }
	.sec-title p strong { font-size: 15px; }
}


@media (min-width: 320px){
	.message { position: relative; }
	.message h3 { font-size: 11px; letter-spacing: 1px; line-height: 2; margin-bottom: 20px; color:#0B2F81; }
	.message p { font-size: 13px; line-height: 2; margin-bottom: 20px; }
	.message .img { position: relative; width: 100%; height: 0; padding-bottom: 60%; margin-bottom:20px; }
	.message .img span { position: absolute; left:0; top:0; width: 100%; height: 100%; background-size: cover; background-position: center; }
	.m-t { text-align: center; font-size: 30px; margin-bottom: 20px; opacity: .5; }
}
@media (min-width: 768px){
	.message { padding-left:45%; }
	.message.me2 { padding-left:0%; padding-right:30%; }
	.message p { font-size: 14px; }
	.message .img { position: absolute; left:0; top:0; width: 40%; padding-bottom: 30%; }
	.message.me2 .img { left:auto; right: 0; }
}
@media (min-width: 960px){
	.message { padding-left:50%; }
	.message.me2 { padding-left:0%; padding-right:38%; }
	.message h3 { font-size: 12px; }
	.message p.serif { font-size: 15px; }
	.message .img { width: 45%; padding-bottom: 0; height: 100%; }
	.message.me2 .img { width: 33%; padding-bottom: 22%; }
	.m-t { font-size: 40px; }
}

@media (min-width: 320px){
	.contents { position: relative; width: 100%; padding:0 5%; overflow:hidden; }
	.contents .tit { display: block; text-align: center; padding:20px 0; }
	.contents .tit h4 { font-size: 25px; letter-spacing: 2px; font-weight: 100; }
	.contents .tit svg { display: block; width: 26px; height: 30px; margin: 20px auto 20px; }
	.lay { position: relative; width: 100%; -webkit-perspective: 1000px; perspective: 1000px; -webkit-transform-style: preserve-3d; transform-style: preserve-3d; -webkit-perspective-origin: 50% 50%; perspective-origin: 50% 50%; }
	.lay .img { position: relative; width: 100%; opacity: 0; -webkit-transform: translate3d(-300px, 200px, 300px) rotate3d(1, 1, 0, 45deg); transform: translate3d(-300px, 200px, 300px) rotate3d(1, 1, 0, 45deg); -webkit-transition: opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
	.lay.turn .img { -webkit-transform: translate3d(300px, 200px, 300px) rotate3d(1, -1, 0, 45deg); transform: translate3d(300px, 200px, 300px) rotate3d(1, -1, 0, 45deg); }
	.lay .img span { display: block; width: 100%; height: 0; padding-bottom: 56.25%; background-size:cover; }
	.lay .texts { position: relative; width: 100%; padding:30px 0; opacity: 0; -webkit-transform: translate3d(0px, 200px, 300px); transform: translate3d(0px, 200px, 300px); -webkit-transition: opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); transition: transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), opacity 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19), -webkit-transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
	.lay .texts hr { width: 80px; height: 1px; border:none; background: #ccc; margin-bottom:30px; }
	.lay .texts .num { position: relative; display: block; width: 40px; height: 40px; background: #00194B; color:#fff; font-size: 16px; font-weight: 500; border-radius: 50%; }
	.lay .texts .num span { position: absolute; left:50%; top:50%; -webkit-transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
	.lay .texts h3 { font-size: 18px; margin:15px 0; }
	.lay .texts p { font-size: 13px; line-height: 1.9; }
	.lay .texts p strong { display: inline-block; font-size: 14px; border-bottom:1px solid rgba(255,84,25,0.7); }
	.lay .texts .box { position: absolute; right: 0; top:-50px; width: 140px; height: 140px; background: url(../img/bg-fuki.png); background-size:cover; color:#fff; text-align: center; }
	.lay .texts .box strong { display: block; font-size: 16px; }
	.lay .texts .box span { display: block; font-size: 14px; }
	.lay.on .texts,
	.lay.on .img { opacity: 1; -webkit-transition: opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1); transition: opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1), opacity 1s cubic-bezier(0.37, 0.16, 0.12, 1), -webkit-transform 1.2s cubic-bezier(0.37, 0.16, 0.12, 1); -webkit-transform: translate3d(0px, 0px, 1px) rotate3d(0, 0, 0, 0deg); transform: translate3d(0px, 0px, 1px) rotate3d(0, 0, 0, 0deg); }
}
@media (min-width: 768px){
	.contents .tit { padding:40px 0; }
	.contents .tit h4 { font-size: 36px; }
	.lay { margin-bottom: 60px; }
	.lay .img { width: 50%; float: left; }
	.lay .texts { position: absolute; right: 0; top:0; width: 50%; height: 100%; padding:0 30px; }
	.lay.turn .img { float: right; }
	.lay.turn .texts { right: auto; left:0; }
}
@media (min-width: 960px){
	.contents { padding:0 3.57143%; }
	.contents .tit h4 { font-size: 48px; }
	.lay { margin-bottom: 90px; }
	.lay .texts { width: 40%; right: 5%; }
	.lay.turn .texts { right: auto; left:5%; }
	.lay .texts .num { width: 50px; height: 50px; font-size: 20px; }
	.lay .texts .box { right: -80px; width: 200px; height: 200px; }
	.lay .texts .box strong { font-size: 20px; }
	.lay .texts .box span { font-size: 18px; margin-bottom:5px; }
	.lay .texts h3 { font-size: 28px; margin:20px 0; font-weight: 200; }
	.lay .texts p { font-size: 14px; }
	.lay .texts p strong { font-size: 16px; border-bottom:3px solid rgba(255,84,25,0.7); }
}
@media (min-width: 1440px){
	.lay .texts { width: 30%; right:auto; left:55%; }
	.lay.turn .texts { right: 55%; left:auto; }
	.lay .texts .box { right: -120px; top:-90px; width: 240px; height: 240px; }
}

@media (min-width: 320px){
	.bg-blue { position: relative; background: #0B2F81; color:#f2f0e6; }
	.bg-blue2 { position: relative; background: #0b2358; color:#f2f0e6; }
	.bg-white { position: relative; background: #fff; }
	.app-decl { position: relative; }
	.decl { position: relative; width: 100%; margin-bottom:30px; }
	.decl .img { position: relative; width:100%; }
	.decl .img span { display: block; width: 100%; height: 0; padding-bottom: 50%; background-size:cover; }
	.decl .texts { position: relative; }
	.decl .texts h3 { font-size: 24px; margin: 20px 0 10px; }
	.decl .texts p { font-size: 13px; line-height: 1.7; }
	.member { display: block; margin:0; }
	.member li { display: block; margin:5px 0; }
	.member li span { text-decoration: underline; display: inline-block; font-size: 13px; padding:2px 10px; }
	.member p { font-size: 13px; line-height: 1.8; }
	.members .col { padding-bottom: 10px; }
}
@media (min-width: 768px){
	.decl { min-height: 240px; }
	.decl .img { width: 100%; }
	.decl .texts { position: relative; width: 100%; padding:30px 0 0; }
	.decl .texts h3 { margin-top: 0; }
	.decl .texts p { font-size: 14px; }
	.member { text-align: center; }
	.member li span,
	.member p { font-size: 14px; }
}
@media (min-width: 960px){
	.decl { padding-right: 400px; }
	.decl .img { position: absolute; right: 0; top:0; width: 350px; height: 100%; }
	.decl .img span { padding-bottom: 0; height: 100%; }
	.decl .texts { padding: 20px 0; }
	.decl .texts h3 { font-size: 28px; }
	.member li span,
	.member p { font-size: 15px; }
}
@media (min-width: 1080px){
	.decl { padding-right: 500px; }
	.decl .img { width: 450px; }
	.member li span,
	.member p { font-size: 16px; }
	.members .col { width: 50%; float: left; }
}

@media (min-width: 320px) {
	.base { position: relative; padding:20px; margin:0 auto; background: #dedbce url(../img/bg-sha.gif); box-shadow:0 0 2px #fff; overflow: visible; }
	.base .texts { position: relative; width: 100%; }
	.base .texts .num { position: relative; display: block; text-align: center; font-size: 60px; margin:20px 0; opacity: .5; }
	.base .texts h3 { font-weight: 400; font-size:18px; margin-bottom:20px; text-shadow: 0 1px 1px #fff, 1px 0 1px #fff; }
	.base .texts p { font-size: 13px; line-height: 1.8; text-shadow: 0 1px 1px #fff, 1px 0 1px #fff; }
	.base .texts li { position: relative; padding-left: 20px; font-size: 13px; line-height: 1.8; display: block; margin:10px 0 0; }
	.base .texts li::before { content:"■"; position: absolute; left:0; top:0; }
	.description p { color:#C92F19; font-size: 12px; }
}
@media (min-width: 768px){
	.base { padding:40px; }
	.base .texts { padding:0 0 0 100px; }
	.base .texts .num { position: absolute; left:0; top:-10px; margin:0; }
	.base .texts h3 { font-size: 22px; }
	.base .texts p,
	.base .texts li { font-size: 14px; }
	.base .texts li { display: block; margin:20px 0 0; }
}
@media (min-width: 960px){
	.base .texts h3 { font-size: 28px; }
}

@media (min-width: 320px){
	.bg-wh { background: #fff; }
	.join { margin:0; }
	.join table { width: 100%; background: #f9f8f3; }
	.join th,
	.join td { border:1px solid #a3bbd8; padding:10px; vertical-align: top; font-size: 13px; }
	.join th { width: 80px; }
	.join td li { position: relative; padding-left: 15px; margin-top: 5px; }
	.join td li::before { content:"・"; position: absolute; left:0; top:0; }
	.privilege { padding:20px; }
	.privilege h3 { font-size: 16px; }
	.privilege ul { margin:20px 0; display: block; }
	.privilege li { position: relative; padding-left: 55px; margin: 10px 0; font-size: 13px; }
	.privilege li span { position: absolute; left:-5px; top:0; font-weight: 700; }
	.privilege p { font-size: 11px; }
}
@media (min-width: 768px){
	.join th,
	.join td { padding:20px; font-size: 14px; }
	.join th { width: 120px; }
	.privilege { padding:30px; }
	.privilege h3 { font-size: 20px; }
	.privilege li { padding-left: 60px; font-size: 14px; }
}
@media (min-width: 960px){
	.privilege { padding:40px; }
	.privilege h3 { font-size: 22px; }
	.privilege li { padding-left: 65px; font-size: 15px; }
}

@media (min-width: 320px){
	.btns { position: relative; text-align: center; font-size: 0; }
	.btns-col { position: relative; width: 100%; max-width: 300px; padding:20px 0; margin-top:30px; display: inline-block; background-color: #c69c2c; color:#fff; box-shadow: 0 1px 1px 1px rgba(0,0,0,0.2); -webkit-transition: box-shadow 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: box-shadow 0.6s cubic-bezier(0.37, 0.16, 0.12, 1); }
	.btns-col span { position: relative; display: block; text-align: center; font-size: 16px; font-weight: 700; }
	.btns-col.bg-blue { background: #00194B; color:#f2f0e6; }
}
@media (min-width: 768px){
	.btns-col { width: 300px; margin:0 20px; }
}
@media (min-width: 960px){
	.btns { margin-top:60px; }
	.btns-col { margin:0 30px; }
	.btns-col:hover { box-shadow:0 1px 3px 1px rgba(0,0,0,0.5); }
	.btns-col span { font-size: 18px; letter-spacing: 2px; }
}

.shares { position: relative; display: block; width: 100%; max-width: 450px; margin:0 auto; background: #f3f3f3; -webkit-box-shadow: 0px 4px 10px 2px rgba(0, 0, 0, 0.15); box-shadow: 0px 4px 10px 2px rgba(0, 0, 0, 0.15); border-radius: 10px; padding:10px; }
.shares h4 { text-align: center; font-size: 14px; font-weight: 700; border-bottom: 1px solid #e1e1e1;  padding-bottom: 15px; margin-bottom: 20px; }
.article-share-item { position: relative; width: 33.3333%; padding:0 5px; float: left;text-align: center;cursor: pointer;}
.article-share-item a { position: relative; display: block;}
.article-share-icon { width: 24px;height: 24px; position: absolute; left:3px; top:3px; border-radius: 5px; -moz-transition: background 0.4s;-o-transition: background 0.4s;-webkit-transition: background 0.4s;transition: background 0.4s;}
.article-share-icon img { width: 16px; display: block; margin:4px auto;}
.article-share-text { display: block; font-weight: bold;font-size: 12px;line-height: 30px;color: #fff;background: #444;width: 100%;height: 30px; padding-left: 30px; border-radius: 5px; -moz-transition: background 0.4s;-o-transition: background 0.4s;-webkit-transition: background 0.4s;transition: background 0.4s;}
.article-share-fb .article-share-icon {background: #3b5998;}
.article-share-fb .article-share-text {background: #2e477b;}
.article-share-tw .article-share-icon {background: #00aced;}
.article-share-tw .article-share-text {background: #0096c4;}
.article-share-line .article-share-icon {background: #00C303;}
.article-share-line .article-share-text {background: #0e9610;}
@media all and (min-width: 600px){
	.shares { padding:20px; }
	.shares h4 { font-size: 16px; }
	.article-share-item { padding:0 10px; }
	.article-share-icon { width: 30px;height: 30px; top:5px; left:5px; }
	.article-share-icon img { width: 16px; margin:7px auto;}
	.article-share-text { display: block; font-size: 13px; line-height: 40px; height: 40px; padding-left: 35px; border-radius: 6px; }
	.article-share-fb:hover .article-share-icon {background: #2e477b;}
	.article-share-fb:hover .article-share-text {background: #3b5998;}
	.article-share-tw:hover .article-share-icon {background: #0096c4;}
	.article-share-tw:hover .article-share-text {background: #00aced;}
	.article-share-line:hover .article-share-icon {background: #0e9610;}
	.article-share-line:hover .article-share-text {background: #00C303;}
}

@media (min-width: 320px){
	.large-bnr {position: relative;display: block;max-width: 800px;margin: 0 auto;}
	.large-bnr .img { position: relative; width: 100%; height: 0; padding-bottom: 30%; overflow: hidden; }
	.large-bnr .img span { position: absolute; left:0; top:0; display: block; width: 100%; height: 100%; background-size:cover; background-position: center; -webkit-transition: -webkit-transform .5s cubic-bezier(0.37, 0.16, 0.12, 1); transition: -webkit-transform .5s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform .5s cubic-bezier(0.37, 0.16, 0.12, 1); }
	.large-bnr .img .c { position: absolute; right: 10px; bottom:10px; display: inline-block; background: #e70078; color:#fff; border-radius: 4px; padding:2px 10px 4px; box-shadow: 0 0 1px #fff; font-size: 12px; -webkit-transition: background-color 0.6s cubic-bezier(0.37, 0.16, 0.12, 1);transition: background-color 0.6s cubic-bezier(0.37, 0.16, 0.12, 1); }
	.large-bnr .texts {position: relative;background-color: #fff;color:#ce135f;padding:15px 0;text-align: center;}
	.large-bnr .texts h3 { font-size: 14px; }
	.large-bnr .texts h3 sub {font-size:10px;/* vertical-align:bottom; */}
	.large-bnr .texts .l { width: 120px; height: 47px; margin: 0 auto 20px;}
	.large-bnr .texts .l img { display:block; width:100%;}
}
@media (min-width: 768px){
	.large-bnr .img { position: absolute; right: 0; top:0; width: 60%; padding-bottom: 0; height: 100%; }
	.large-bnr .img .c { font-size: 14px; letter-spacing: 1px; right: 20px; bottom:20px; }
	.large-bnr .texts { height: 180px; width:40%; }
	.large-bnr .texts h3 { font-size: 14px; }
}
@media (min-width: 960px){
	.large-bnr .texts h3 { font-size: 14px; }
	.large-bnr:hover .img span { -webkit-transform: scale(1.07); -ms-transform: scale(1.07); transform: scale(1.07); -webkit-transition: -webkit-transform 1s cubic-bezier(0.37, 0.16, 0.12, 1); transition: -webkit-transform 1s cubic-bezier(0.37, 0.16, 0.12, 1); transition: transform 1s cubic-bezier(0.37, 0.16, 0.12, 1); }
	.large-bnr:hover .img .c { background-color: #ce135f; }
}
@media (min-width: 1200px){
	.large-bnr .texts { height: 200px; }
	.large-bnr .texts h3 { font-size: 16px; }
}
.js-modal-video { cursor: pointer; }
.modal-video { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.9); z-index: 99; overflow: hidden; display: none; }
.modal-video-close-btn { position: absolute; top: 40px; right: 40px; width: 50px; height: 50px; background: #ff5419; border-radius: 50%; cursor: pointer; z-index: 3; }
.modal-video-close-btn-line { display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; width: 20px; height: 2px; background: #fff; }
.modal-video-close-btn-line.line-1 { transform: rotate(45deg); }
.modal-video-close-btn-line.line-2 { transform: rotate(-45deg); }
.modal-video-wrap { position: relative; width: 100%; max-width: 62.5vw; height: 100%; margin: 0 auto; padding: 50px; z-index: 1; }
.modal-video-body { display: flex; justify-content: center; align-items: center; align-content: center; position: relative; width: 100%; height: 100%; }
.modal-video-ratio { position: relative; display: block; width: 100%; padding-top: 56.25%; }
.modal-video-iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.modal-video-loader { position: absolute; top: 50%; left: 50%; margin: -25px 0 0 -25px; width: 50px; height: 50px; background: #F0C1B0; border-radius: 50%; z-index: 0; animation: modal-loader 1.2s cubic-bezier(0.215, 0.610, 0.355, 1.000) 0s infinite forwards; }
@media screen and (max-width:740px) {
	.modal-video-wrap { max-width: 100%; padding:0; }
	.modal-video-close-btn { right: 20px; top:20px; width: 40px; height: 40px; }
}
@keyframes modal-loader {
	0% { transform: scale(0); opacity: 1; }
	100% { transform: scale(1); opacity: 0; }
}

