@charset "UTF-8";
@import url(base.css);
/***************************************************************************
*
* COMMON STYLE
*
***************************************************************************/
@font-face { font-family: 'Futura Std'; src: url("../fonts/FuturaStd-CondensedExtraBd.eot"); src: url("../fonts/FuturaStd-CondensedExtraBd.eot?#iefix") format("embedded-opentype"), url("../fonts/FuturaStd-CondensedExtraBd.woff2") format("woff2"), url("../fonts/FuturaStd-CondensedExtraBd.woff") format("woff"), url("../fonts/FuturaStd-CondensedExtraBd.ttf") format("truetype"), url("../fonts/FuturaStd-CondensedExtraBd.svg#FuturaStd-CondensedExtraBd") format("svg"); font-weight: bold; font-style: normal; font-display: swap; }

.futura { font-family: 'Futura Std'; }

.bold { font-weight: bold; }

.underline { text-decoration: underline; }

.txtL { text-align: left; }

.txtR { text-align: left; }

.txtC { text-align: center; }

.txtS { font-size: 13px; }

.hira { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.gothic { font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; }

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

body { position: relative; font-size: 16px; line-height: 1.5; color: #fff; background: url(../images/common/background-body-02.png) no-repeat top -1px left/126px, url(../images/common/background-body.jpg) no-repeat top center/100%, #000; }

body.fixed { overflow: hidden; }

.inner { width: 1080px; padding: 0 30px; margin: 0 auto; }

.error { display: block; font-size: 12px; color: red; }

.lds-dual-ring { display: none; width: 80px; height: 80px; margin: 0 auto 40px; }

.lds-dual-ring:after { content: " "; display: block; width: 64px; height: 64px; margin: 0; border-radius: 50%; border: 6px solid #fff; border-color: #fff transparent #fff transparent; animation: lds-dual-ring 1.2s linear infinite; }

@keyframes lds-dual-ring { 0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); } }

/*HEADER*/
#header { position: fixed; left: 0; top: 0; right: 0; transition: all 250ms linear; z-index: 9999; }

#header.show { background: rgba(0, 0, 0, 0.4); }

#header .menu { text-align: center; padding: 0 30px; }

#header .menu .mainMenu { text-align: center; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; justify-content: center; }

#header .menu .mainMenu > li > a { line-height: 1; font-weight: 500; color: #000000; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; justify-content: center; height: 80px; position: relative; padding: 0px 25px; }

#header .menu .mainMenu > li > a .en { font-size: 30px; font-family: 'Futura Std'; font-style: italic; color: #fff; margin-top: -20px; }

#header .menu .mainMenu > li > a .ja { font-size: 12px; position: absolute; left: 50%; bottom: 10px; transform: translate(-50%, -50%); width: 100%; color: #fff; letter-spacing: 0.1em; }

#header .menu .mainMenu > li > a:hover { opacity: 0.7; transition: 0.3s; }

#header .menu .mainMenu > li .sub-menu { visibility: hidden; opacity: 0; z-index: 1; background: rgba(255, 255, 255, 0.9); padding: 20px 10px 0; text-align: center; box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2); position: absolute; top: 90px; left: 50%; transform: translateX(-50%); width: 190px; transition: all .2s ease; }

#header .menu .mainMenu > li .sub-menu::before { content: ""; width: 0; height: 0; border-style: solid; border-width: 0 5px 10px 5px; border-color: transparent transparent #ffffff transparent; opacity: .9; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); }

#header .menu .mainMenu > li .sub-menu li { line-height: 1; margin: 0; padding: 5px 0; }

#header .menu .mainMenu > li .sub-menu li::after { content: ""; border-bottom: solid 1px #fff; display: inline-block; width: 100%; }

#header .menu .mainMenu > li .sub-menu li:last-child::after { border-style: none; }

#header .menu .mainMenu > li .sub-menu li:last-child { padding: 5px 0 0; }

#header .menu .mainMenu > li .sub-menu li a { font-size: 16px; font-weight: bold; color: #777; }

#header .menu .mainMenu > li .sub-menu li a:hover { opacity: 0.7; transition: 0.3s; }

#header .menu .mainMenu > li .sub-menu li .txtS { display: inline-block; line-height: 1.2; font-size: 11px; font-weight: normal; color: #666; margin-top: 5px; }

#header .menu .mainMenu li.menu-item-has-children { position: relative; }

#header .menu .mainMenu li.menu-item-has-children:hover { cursor: pointer; transition: all .2s ease; }

#header .menu .mainMenu li.menu-item-has-children:hover .sub-menu { visibility: visible; opacity: 1; }

#header .menu .mainMenu li.current-menu-item a .en { visibility: hidden; }

#header .menu .mainMenu li.current-menu-item a .ja { visibility: visible; }

#header .menu .mainMenu li.disable a { pointer-events: none; color: rgba(0, 0, 0, 0.08); }

#header .menu .mainMenu li.disable a .en { position: relative; }

#header .menu .mainMenu li.disable a .en:after { content: ""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 102%; height: 2px; border-top: 2px solid rgba(0, 0, 0, 0.08); }

/*HEADER*/
#content { width: 100%; }

.btnCommon { text-align: center; }

.btnCommon a { display: inline-block; position: relative; min-width: 490px; font-size: 18px; color: #000; font-weight: bold; background: url(../images/common/btn-common-background.png) no-repeat center center/cover; padding: 10px 0 5px; }

.btnCommon a:after { content: '\f0da'; position: absolute; top: 52%; right: 9px; transform: translateY(-50%); font-size: 21px; font-family: "Font Awesome 5 Free"; font-weight: 900; }

/*#FOOTER*/
#footer { padding: 49px 0; }

#footer .wrapCol { display: flex; justify-content: space-between; align-items: flex-end; align-content: flex-end; }

#footer .wrapCol .colLink { position: relative; width: 366px; text-align: center; margin-left: 52px; margin-bottom: -2px; }

#footer .wrapCol .colLink .titleLink { position: absolute; top: -69px; right: -35px; }

#footer .wrapCol .colLink .footerBanner { margin-bottom: 28px; }

#footer .wrapCol .colLink .footerBanner li { margin-bottom: 20px; }

#footer .wrapCol .colLink .copyright { font-size: 10px; color: #fff; text-align: center; letter-spacing: -0.2px; }

#footer .wrapCol .colTwitter { position: relative; width: 520px; border: 6px solid #333333; }

#footer .wrapCol .colTwitter .timeLine { margin-bottom: 3px; }

#footer .wrapCol .colTwitter .timeLine .scroll { height: 445px; overflow-y: auto; }

#footer .wrapCol .colTwitter #twitter_update_list a:link, #footer .wrapCol .colTwitter #twitter_update_list a:visited, #footer .wrapCol .colTwitter #twitter_update_list a:hover, #footer .wrapCol .colTwitter #twitter_update_list a:active, #footer .wrapCol .colTwitter #twitter_update_list a:focus { color: #00ffb4; }

#footer .wrapCol .colTwitter .titleTw { position: absolute; top: -16px; left: -87.2%; }

#footer .wrapCol .colTwitter blockquote.twitter-tweet { padding: 10px 5px 10px 0 !important; }

#footer .wrapCol .colTwitter blockquote.twitter-tweet:hover { background: #00ffb4; }

/*#FOOTER*/
.sp { display: none; }

@media (min-width: 769px) { body:before { content: ''; position: absolute; top: 0; left: 85px; width: 1px; height: 100%; border-left: 1px solid #909090; } }

@media (max-width: 1300px) and (min-width: 769px) { body { background: url(../images/common/background-body-02.png) no-repeat top left/7vw, url(../images/common/background-body.jpg) no-repeat top center/100%, #000; }
  body:before { left: 4.5vw; } }

@media (max-width: 1220px) and (min-width: 769px) { body { background: url(../images/common/background-body-02.png) no-repeat top left/5vw, url(../images/common/background-body.jpg) no-repeat top center/100%, #000; }
  body:before { left: 3.5vw; }
  #header .menu .mainMenu { justify-content: space-around; padding: 0; }
  #header .menu .mainMenu > li > a .en { font-size: 23px; }
  #header .menu .mainMenu > li > a .ja { bottom: 5px; } }

@media (max-width: 1160px) and (min-width: 769px) { body { background: url(../images/common/background-body.jpg) no-repeat top center/100%, #000; }
  body:before { content: none; } }

@media (max-width: 1097px) and (min-width: 769px) { .inner { width: 100%; }
  #header .menu .mainMenu li a { padding: 0 3vw; }
  #footer .wrapCol { flex-direction: column-reverse; }
  #footer .wrapCol .colLink { width: 100%; margin-left: 0; margin-bottom: 0; }
  #footer .wrapCol .colLink .titleLink { display: none; }
  #footer .wrapCol .colLink .footerBanner li { display: inline-block; vertical-align: middle; margin: 0 10px; }
  #footer .wrapCol .colTwitter { width: 100%; margin-bottom: 30px; } }

@media (max-width: 768px) { .pc { display: none; }
  .sp { display: block; }
  .inner { width: 100%; padding: 0 calc(5% + 1px); }
  body { font-size: 14px; background: url(../images/common/background-body.jpg) no-repeat top center/100%, #000; }
  .txtS { font-size: 12px; }
  .lds-dual-ring { width: 40px; height: 40px; margin: 0 auto 20px; }
  .lds-dual-ring:after { width: 32px; height: 32px; }
  .hambuger { float: right; width: 41px; height: 28px; z-index: 9991; background: transparent; display: flex; justify-content: center; flex-direction: column; text-align: center; margin-top: 14px; }
  .hambuger span { display: block; height: 5px; width: 100%; background: #fff; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; transition: .25s ease-in-out; }
  .hambuger span:nth-child(1) { margin-bottom: 4.5px; }
  .hambuger span:nth-child(2) { opacity: 1; }
  .hambuger span:nth-child(3) { margin-top: 4.5px; }
  #header { background: url(../images/common/background-header.png) no-repeat top center/375px, #000; min-height: 60px; }
  #header:before { display: block; }
  #header:before { content: ''; position: absolute; top: 20px; left: 0; width: 100%; border-top: 1px solid #2b2b2b; display: none; }
  #header .menu .mainMenu { display: none; position: absolute; width: 100%; height: calc(100vh - 60px); top: 60px; left: 0; background: rgba(0, 0, 0, 0.8); flex-direction: column; justify-content: flex-start; align-items: flex-start; margin-left: 0; padding: 0 8% 0; overflow-y: auto; }
  #header .menu .mainMenu > li + li { margin-top: -2px; }
  #header .menu .mainMenu > li > a { width: 100%; padding: 20px 0; height: auto; justify-content: flex-start; /*align-items: flex-start;*/ }
  #header .menu .mainMenu > li > a .en { margin-top: 0; }
  #header .menu .mainMenu > li > a .ja { position: static; transform: none; width: auto; /*bottom: 0; padding: 0;*/ text-align: left; font-size: 14px; font-weight: bold; margin-left: 10px; letter-spacing: normal; }
  #header .menu .mainMenu > li .sub-menu { visibility: visible; opacity: 1; z-index: 0; background: none; padding: 0; box-shadow: none; position: static; top: auto; left: auto; transform: translate(0); width: 100%; text-align: left; margin-top: -20px; }
  #header .menu .mainMenu > li .sub-menu::before { content: none; }
  #header .menu .mainMenu > li .sub-menu li { padding: 10px 0 10px 10px; }
  #header .menu .mainMenu > li .sub-menu li::after { content: none; }
  #header .menu .mainMenu > li .sub-menu li a { font-size: 16px; color: #fff; font-weight: bold; }
  #header .menu .mainMenu > li .sub-menu li a::before { content: "-"; }
  #header .menu .mainMenu > li .sub-menu li:last-child { padding: 10px 0 20px 10px; }
  #header .menu .mainMenu > li .sub-menu li .txtS { color: #aaa; margin-left: 10px; }
  #header .menu .mainMenu li.menu-item-has-children { height: auto; }
  #header .menu .mainMenu li.menu-item-has-children > a:hover { opacity: 1; }
  .btnCommon a { min-width: 100%; padding: 5px 0 3px; }
  .btnCommon a:after { top: 49.5%; }
  #footer { padding: 20px 0; }
  #footer .wrapCol { flex-direction: column-reverse; }
  #footer .wrapCol .colLink { width: 100%; margin: 0; }
  #footer .wrapCol .colLink .footerBanner { margin-bottom: 11px; display: flex; justify-content: space-between; padding: 0 4%; }
  #footer .wrapCol .colLink .footerBanner li { width: 48.3%; margin-bottom: 0; }
  #footer .wrapCol .colLink .copyright { font-size: 9px; letter-spacing: 0; }
  #footer .wrapCol .colTwitter { width: 100%; margin-bottom: 30px; border-width: 3px; }
  #footer .wrapCol .colTwitter .titleTw { top: -90px; left: calc(-5% - 6px); max-width: 205.5px; }
  #footer .wrapCol .colTwitter .timeLine .scroll { height: 281px; -webkit-overflow-scrolling: touch; overflow: auto; } }

/*IE FIX*/
/*IP5*/
@media (max-width: 320px) { #header { background: url(../images/common/background-header.png) no-repeat top center/320px, #000; }
  #header .menu .mainMenu > li > a { padding: 12px 0; }
  #header .menu .mainMenu > li > a .en { font-size: 22px; }
  #header .menu .mainMenu > li .sub-menu { margin-top: -10px; }
  #header .menu .mainMenu > li .sub-menu li { padding: 6px 0 6px 10px; }
  #header .menu .mainMenu > li .sub-menu li a { font-size: 13px; }
  #header .menu .mainMenu > li .sub-menu li:last-child { padding: 5px 0 10px 10px; } }
