@charset "UTF-8";
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/* 反転*/
/*----------------------------------------------------
フォント
----------------------------------------------------*/
/* Light/Medium */
/* Regular/Medium */
/* 游明朝体 Regular/Medium */
/* 游明朝体 Demibold */
/* 游明朝体 extrabold */
/*----------------------------------------------------
フォント設定
----------------------------------------------------*/
/*----------------------------------------------------
中央寄せ
----------------------------------------------------*/
/* 上下左右中央寄せ */
/* 上下中央寄せ */
/* 左右中央寄せ */
/*----------------------------------------------------
背景
----------------------------------------------------*/
/*----------------------------------------------------
親要素よりも幅を超えて表示
----------------------------------------------------*/
/*----------------------------------------------------
リストマーカー
----------------------------------------------------*/
/*----------------------------------------------------
擬似要素
----------------------------------------------------*/
/*----------------------------------------------------
テキスト内リンク
//html例：
<p>テキスト<a href="" class="link_text">こちら</a>テキス</p>
----------------------------------------------------*/
/* ホバーで下線が左に消える */
/* ホバーで左から右に線が出る */
/*----------------------------------------------------
ボタン

基本のhtml
<a href="" class="btn">
  <span>私たちについて</span>
</a>
----------------------------------------------------*/
/* 初期：bg塗りあり、枠線塗りあり ⇨ hoverで反転 */
/* 初期：bg塗りなし、枠線塗りあり ⇨ hoverで反転 */
/* ボタン矢印あり 「 ---\ 」*/
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/* 反転*/
/*----------------------------------------------------
フォント
----------------------------------------------------*/
/* Light/Medium */
/* Regular/Medium */
/* 游明朝体 Regular/Medium */
/* 游明朝体 Demibold */
/* 游明朝体 extrabold */
/*----------------------------------------------------
フォント設定
----------------------------------------------------*/
/*----------------------------------------------------
中央寄せ
----------------------------------------------------*/
/* 上下左右中央寄せ */
/* 上下中央寄せ */
/* 左右中央寄せ */
/*----------------------------------------------------
背景
----------------------------------------------------*/
/*----------------------------------------------------
親要素よりも幅を超えて表示
----------------------------------------------------*/
/*----------------------------------------------------
リストマーカー
----------------------------------------------------*/
/*----------------------------------------------------
擬似要素
----------------------------------------------------*/
/*----------------------------------------------------
テキスト内リンク
//html例：
<p>テキスト<a href="" class="link_text">こちら</a>テキス</p>
----------------------------------------------------*/
/* ホバーで下線が左に消える */
/* ホバーで左から右に線が出る */
/*----------------------------------------------------
ボタン

基本のhtml
<a href="" class="btn">
  <span>私たちについて</span>
</a>
----------------------------------------------------*/
/* 初期：bg塗りあり、枠線塗りあり ⇨ hoverで反転 */
/* 初期：bg塗りなし、枠線塗りあり ⇨ hoverで反転 */
/* ボタン矢印あり 「 ---\ 」*/
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/* 反転*/
/*----------------------------------------------------
フォント
----------------------------------------------------*/
/* Light/Medium */
/* Regular/Medium */
/* 游明朝体 Regular/Medium */
/* 游明朝体 Demibold */
/* 游明朝体 extrabold */
/*----------------------------------------------------
フォント設定
----------------------------------------------------*/
/*----------------------------------------------------
中央寄せ
----------------------------------------------------*/
/* 上下左右中央寄せ */
/* 上下中央寄せ */
/* 左右中央寄せ */
/*----------------------------------------------------
背景
----------------------------------------------------*/
/*----------------------------------------------------
親要素よりも幅を超えて表示
----------------------------------------------------*/
/*----------------------------------------------------
リストマーカー
----------------------------------------------------*/
/*----------------------------------------------------
擬似要素
----------------------------------------------------*/
/*----------------------------------------------------
テキスト内リンク
//html例：
<p>テキスト<a href="" class="link_text">こちら</a>テキス</p>
----------------------------------------------------*/
/* ホバーで下線が左に消える */
/* ホバーで左から右に線が出る */
/*----------------------------------------------------
ボタン

基本のhtml
<a href="" class="btn">
  <span>私たちについて</span>
</a>
----------------------------------------------------*/
/* 初期：bg塗りあり、枠線塗りあり ⇨ hoverで反転 */
/* 初期：bg塗りなし、枠線塗りあり ⇨ hoverで反転 */
/* ボタン矢印あり 「 ---\ 」*/
/*----------------------------------------------------
中央から下線 

//・HTML 基本、下記で統一
//<a class="link" href="><span>home</span></a>
----------------------------------------------------*/
/*----------------------------------------------------
footer
----------------------------------------------------*/
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/* 反転*/
/*----------------------------------------------------
フォント
----------------------------------------------------*/
/* Light/Medium */
/* Regular/Medium */
/* 游明朝体 Regular/Medium */
/* 游明朝体 Demibold */
/* 游明朝体 extrabold */
/*----------------------------------------------------
フォント設定
----------------------------------------------------*/
/*----------------------------------------------------
中央寄せ
----------------------------------------------------*/
/* 上下左右中央寄せ */
/* 上下中央寄せ */
/* 左右中央寄せ */
/*----------------------------------------------------
背景
----------------------------------------------------*/
/*----------------------------------------------------
親要素よりも幅を超えて表示
----------------------------------------------------*/
/*----------------------------------------------------
リストマーカー
----------------------------------------------------*/
/*----------------------------------------------------
擬似要素
----------------------------------------------------*/
/*----------------------------------------------------
テキスト内リンク
//html例：
<p>テキスト<a href="" class="link_text">こちら</a>テキス</p>
----------------------------------------------------*/
/* ホバーで下線が左に消える */
/* ホバーで左から右に線が出る */
/*----------------------------------------------------
ボタン

基本のhtml
<a href="" class="btn">
  <span>私たちについて</span>
</a>
----------------------------------------------------*/
/* 初期：bg塗りあり、枠線塗りあり ⇨ hoverで反転 */
/* 初期：bg塗りなし、枠線塗りあり ⇨ hoverで反転 */
/* ボタン矢印あり 「 ---\ 」*/
/*----------------------------------------------------
基本設定
----------------------------------------------------*/
/* 反転*/
/*----------------------------------------------------
フォント
----------------------------------------------------*/
/* Light/Medium */
/* Regular/Medium */
/* 游明朝体 Regular/Medium */
/* 游明朝体 Demibold */
/* 游明朝体 extrabold */
/*----------------------------------------------------
フォント設定
----------------------------------------------------*/
/*----------------------------------------------------
中央寄せ
----------------------------------------------------*/
/* 上下左右中央寄せ */
/* 上下中央寄せ */
/* 左右中央寄せ */
/*----------------------------------------------------
背景
----------------------------------------------------*/
/*----------------------------------------------------
親要素よりも幅を超えて表示
----------------------------------------------------*/
/*----------------------------------------------------
リストマーカー
----------------------------------------------------*/
/*----------------------------------------------------
擬似要素
----------------------------------------------------*/
/*----------------------------------------------------
テキスト内リンク
//html例：
<p>テキスト<a href="" class="link_text">こちら</a>テキス</p>
----------------------------------------------------*/
/* ホバーで下線が左に消える */
/* ホバーで左から右に線が出る */
/*----------------------------------------------------
ボタン

基本のhtml
<a href="" class="btn">
  <span>私たちについて</span>
</a>
----------------------------------------------------*/
/* 初期：bg塗りあり、枠線塗りあり ⇨ hoverで反転 */
/* 初期：bg塗りなし、枠線塗りあり ⇨ hoverで反転 */
/* ボタン矢印あり 「 ---\ 」*/
/*----------------------------------------------------
中央から下線 

//・HTML 基本、下記で統一
//<a class="link" href="><span>home</span></a>
----------------------------------------------------*/
/*----------------------------------------------------
ハンバーガーメニュー 
----------------------------------------------------*/
.openbtn {
  position: fixed;
  z-index: 9999;
  top: 0px;
  right: 0;
  cursor: pointer;
  width: 80px;
  height: 64px;
  background: transparent;
  /* -950 */
  /* -951 */
}
@media all and (max-width: 950px) {
  .openbtn {
    display: fixed;
  }
}
@media all and (min-width: 951px) {
  .openbtn {
    display: none;
  }
}

.openbtn span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 20px;
  height: 2px;
  background-color: #404040;
  width: 40px;
}
.openbtn span:nth-of-type(1) {
  top: 27px;
}
.openbtn span:nth-of-type(2) {
  top: 32px;
}
.openbtn span:nth-of-type(3) {
  top: 37px;
}

.openbtn.active span {
  background-color: #ffffff;
}
.openbtn.active span:nth-of-type(1) {
  top: 25px;
  left: 20px;
  transform: translateY(6px) rotate(-45deg);
}
.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.active span:nth-of-type(3) {
  top: 37px;
  left: 20px;
  transform: translateY(-6px) rotate(45deg);
}

body {
  -webkit-text-size-adjust: 100%;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 15px;
  color: #404040;
  background-color: #ffffff;
  /* 751- */
  padding-top: 0px;
  opacity: 0;
  transition: opacity 1s;
}
@media all and (min-width: 751px) {
  body {
    font-size: 15px;
  }
}
body.loaded {
  opacity: 1;
}
@media all and (min-width: 1050px) {
  body {
    padding-top: 0px;
  }
}

*, *::before, *::after {
  box-sizing: border-box;
}

a {
  color: #BEA45A;
  text-decoration: none;
  word-break: break-all;
}

body.sub #main a {
  color: #C3A44C;
  text-decoration: underline;
  /* 751- */
}
@media all and (min-width: 751px) {
  body.sub #main a:hover {
    text-decoration: none;
  }
}

a img {
  border: none;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

figure {
  margin: 0;
}

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

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
}

ul, li, dl, dt, dd {
  margin: 0;
  padding: 0;
  list-style: none;
}

input, label, select, textarea {
  vertical-align: middle;
}

.indent {
  padding-left: 1em;
  box-sizing: border-box;
}

.bold {
  font-weight: bold;
}

.noMgnT {
  margin-top: 0 !important;
}

.noMgnT_pc {
  /* 751- */
}
@media all and (min-width: 751px) {
  .noMgnT_pc {
    margin-top: 0 !important;
  }
}

.noMgnB {
  margin-bottom: 0 !important;
}

.noPdgT {
  padding-top: 0 !important;
}

.noPdgB {
  padding-bottom: 0 !important;
}

.text {
  margin-top: 1.3em;
}

.underline {
  text-decoration: underline;
}

.align_center {
  text-align: center;
}

.align_left {
  text-align: left;
}

.align_right {
  text-align: right;
}

.red_bold {
  color: #D0121B;
  font-weight: bold;
}

.color_red {
  color: #BF1920;
}

.color_brown {
  color: #674800;
}

.noMgnT {
  margin-top: 0;
}

.noMgnB {
  margin-bottom: 0;
}

.text_attention {
  /* 751- */
}
@media all and (min-width: 751px) {
  .text_attention {
    font-size: 24px;
    letter-spacing: 0em;
    line-height: 1.708;
  }
}

/* -750 */
@media all and (max-width: 751px) {
  .sp_align_center {
    text-align: center;
  }
}
/* SP コピーガード */
#main img {
  pointer-events: none;
  -webkit-touch-callout: none; /* default or none */
  -webkit-user-select: none; /* auto or none */
  -moz-user-select: none;
       user-select: none;
}

#main .controller img,
#main .prev img,
#main .next img {
  pointer-events: auto;
  -webkit-touch-callout: default;
  -webkit-user-select: auto;
  -moz-user-select: auto;
       user-select: auto;
}

/* mfp保存禁止 */
.mfp-figure figure {
  position: relative;
}

.mfp-figure figure::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  content: "";
  background: url(../images/dam.png) no-repeat;
  background-size: 100% 100%;
}

.attention_bar {
  background-color: #BA4800;
  font-size: 22px;
  letter-spacing: 0.04em;
  line-height: 1.6667;
  color: #ffffff;
  text-align: center;
  padding: 15px 0;
  margin-bottom: 34px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .attention_bar {
    margin-bottom: 80px;
  }
}
.attention_bar.first {
  margin-bottom: 0;
}
.attention_bar p {
  margin: 0;
}

/*----------------------------------------------------
gnav
----------------------------------------------------*/
/*----------------------------------------------------
hoverタイプ 
----------------------------------------------------*/
.link {
  text-decoration: none;
  position: relative;
  /* スクロールでkvを超えた際に追加されるクラス*/
}
.link span {
  position: relative;
}
.link span:after {
  transition: all 0.3s;
  content: "";
  position: absolute;
  height: 2px;
  width: 80%;
  background-color: #404040;
  bottom: -10px;
  left: 0%;
  transform: scale(0, 1);
}
.link span.current {
  position: relative;
}
.link span.current:after {
  transition: all 0.3s;
  content: "";
  position: absolute;
  height: 2px;
  width: 100%;
  background-color: #404040;
  bottom: -10px;
  left: 0%;
  transform: scale(1, 1);
}
.link.change span:after {
  background-color: #000000;
}

/* 751- */
@media all and (min-width: 751px) {
  .link:hover {
    transition: all 0.3s;
  }
  .link:hover span:after {
    width: 100%;
    transform: scale(1, 1);
  }
  li.current .link span:after {
    width: 100%;
    transform: scale(1, 1);
  }
}
/*----------------------------------------------------
PC用ナビゲーション表示
----------------------------------------------------*/
#menu .wait a {
  cursor: default;
}
#menu .wait a span {
  opacity: 0.36;
}

.fullwindow {
  position: relative;
  transition: all 0.5s;
}

.gNavWrap {
  position: fixed;
  top: 0;
  padding: 0 20px;
  z-index: 999;
  background-color: #ffffff;
  width: 100%;
  height: 64px;
  transition: all 0.5s;
  /* 751- */
}
.gNavWrap.active {
  z-index: 9999;
}
@media all and (min-width: 751px) {
  .gNavWrap {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.12);
  }
}
@media all and (min-width: 1050px) {
  .gNavWrap {
    height: 88px;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.12);
  }
}

.gNavLogo {
  flex: 1 1 auto;
  position: relative;
  top: 10px;
  /* -951 */
}
.gNavLogo a {
  display: inline-block;
  width: 44%;
  max-width: 146px;
}
.gNavLogo img {
  width: 100%;
}
@media all and (min-width: 951px) {
  .gNavLogo {
    top: -2px;
  }
  .gNavLogo a {
    width: 190px;
    max-width: none;
  }
}
@media all and (min-width: 1230px) {
  .gNavLogo a {
    width: 272px;
  }
}

.ticketBnr {
  /* -950 */
  /* -951 */
}
@media all and (max-width: 950px) {
  .ticketBnr {
    position: absolute;
    top: 50%;
    right: 80px;
    width: 50px;
    height: 29px;
    margin-top: -14px;
  }
  .ticketBnr a {
    display: block;
    padding: 10px 0;
    line-height: 0;
  }
  .ticketBnr img {
    width: 50px;
    height: 9px;
  }
  .ticketBnr img.inHead {
    display: block;
  }
  .ticketBnr img.inSide {
    display: none;
  }
}
@media all and (min-width: 951px) {
  .ticketBnr {
    position: absolute;
    top: 130px;
    right: -20px;
    width: 90px;
    height: 268px;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.16);
    transition: all 0.2s;
  }
  .ticketBnr:hover {
    margin-right: 20px;
  }
  .ticketBnr a {
    display: block;
    line-height: 0;
  }
  .ticketBnr img {
    width: 90px;
    height: 268px;
  }
  .ticketBnr img.inHead {
    display: none;
  }
  .ticketBnr img.inSide {
    display: block;
  }
}

/* -950 */
@media all and (max-width: 950px) {
  #gNavOpen {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.96);
  }
  #gNavOpen .gNavList {
    padding-top: 80px;
    text-align: center;
    /* -350 */
  }
}
@media all and (max-width: 950px) and (max-width: 375px) {
  #gNavOpen .gNavList {
    padding-top: 40px;
  }
}
@media all and (max-width: 950px) {
  #gNavOpen .gNavList > li > a {
    display: block;
    padding: 20px 0px;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.2;
    /* -350 */
  }
}
@media all and (max-width: 950px) and (max-width: 375px) {
  #gNavOpen .gNavList > li > a {
    padding: 18px 0px;
  }
}
@media all and (max-width: 950px) {
  #gNavOpen .gNavList > li.current > a {
    color: #C3A44C;
  }
}
/* -951 */
@media all and (min-width: 951px) {
  .gNav {
    display: block;
    display: flex;
    align-items: center;
    margin: 0 auto;
    z-index: 10;
    width: 100%;
    height: 100%;
  }
  .gNav .gNavList {
    display: flex;
    justify-content: end;
  }
  .gNav .gNavList > li.home {
    display: none;
  }
  .gNav .gNavList > li > a {
    display: inline-block;
    padding: 20px 8px;
    color: #404040;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
    letter-spacing: 0.03em;
  }
}
@media all and (min-width: 951px) and (min-width: 1050px) {
  .gNav .gNavList > li > a {
    padding: 20px 12px;
  }
}
@media all and (min-width: 951px) and (min-width: 1230px) {
  .gNav .gNavList > li > a {
    font-size: 16px;
    padding: 30px 18px;
  }
}
.sns {
  display: flex;
  justify-content: center;
  margin-top: 4px;
  /* 751- */
  /* -950 */
}
.sns li a {
  display: block;
  width: 38px;
  height: 100%;
}
.sns li a.twitter {
  background: url(../images/common/icon/twitter.png) no-repeat center center;
  background-size: 21px auto;
}
.sns li a.instagram {
  background: url(../images/common/icon/instagram.png) no-repeat center center;
  background-size: 18px auto;
}
.sns li a.facebook {
  background: url(../images/common/icon/facebook.png) no-repeat center center;
  background-size: 18px auto;
}
@media all and (min-width: 751px) {
  .sns li a {
    transition: all 0.3s;
  }
  .sns li a:hover {
    opacity: 0.5;
  }
}
@media all and (max-width: 950px) {
  .sns {
    margin-top: 20px;
    /* -350 */
  }
}
@media all and (max-width: 950px) and (max-width: 375px) {
  .sns {
    margin-top: 10px;
  }
}
@media all and (max-width: 950px) {
  .sns li a {
    height: 38px;
  }
  .sns li a.twitter {
    background-image: url(../images/common/icon/twitter_sp.svg);
    background-size: 18px auto;
  }
  .sns li a.instagram {
    background-image: url(../images/common/icon/instagram_sp.svg);
    background-size: 15px auto;
  }
  .sns li a.facebook {
    background-image: url(../images/common/icon/facebook_sp.svg);
    background-size: 16px auto;
  }
}

@media all and (min-width: 1366px) {
  .gNav {
    margin: 0 auto;
  }
  .gNavWrap {
    padding: 0 40px;
  }
  .sns {
    margin-left: 30px;
  }
}
/*----------------------------------------------------
footer
----------------------------------------------------*/
#footer {
  padding: 30px 0 0;
  background: #ffffff;
  /* 751- */
}
#footer .logo50th {
  width: 79px;
  margin: 0 auto;
}
#footer .logo {
  width: 85%;
  margin: 32px auto 0;
}
#footer .social {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}
#footer .social li {
  width: 50px;
  height: 50px;
}
#footer .social li a {
  display: block;
  width: 100%;
  height: 100%;
  opacity: 0.6;
}
#footer .social li a.twitter {
  background: url(../images/common/icon/twitter.png) no-repeat center center;
  background-size: 21px auto;
}
#footer .social li a.instagram {
  background: url(../images/common/icon/instagram.png) no-repeat center center;
  background-size: 18px auto;
}
#footer .social li a.facebook {
  background: url(../images/common/icon/facebook.png) no-repeat center center;
  background-size: 18px auto;
}
#footer .fMenu {
  margin-top: 20px;
  letter-spacing: -0.4em;
  text-align: center;
}
#footer .fMenu li {
  position: relative;
  display: inline-block;
  letter-spacing: normal;
}
#footer .fMenu li::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 1px;
  height: 0.8em;
  margin-top: -0.3em;
  background: #000000;
}
#footer .fMenu li a {
  display: block;
  color: #000000;
  font-size: 14px;
  line-height: 1.02;
  font-weight: bold;
  letter-spacing: 0.15em;
}
#footer .fMenu li:first-child {
  padding-right: 1em;
}
#footer .fMenu li:first-child::before {
  display: none;
}
#footer .fMenu li:last-child {
  padding-left: 1em;
}
#footer .fMenu li.wait a {
  cursor: default;
  opacity: 0.4;
}
#footer .cooperat {
  margin-top: 46px;
  text-align: left;
  color: #787878;
  font-size: 12px;
  line-height: 1.5;
}
#footer .cooperat span {
  display: block;
  margin: 8px 0 0;
}
#footer .cooperat a {
  color: #787878;
  text-decoration: underline;
}
#footer .copyright {
  margin-top: 30px;
  padding: 20px 0;
  background: #404040;
  text-align: center;
  color: #ffffff;
  font-size: 11px;
  line-height: 1.545;
  letter-spacing: 0.05em;
}
@media all and (min-width: 751px) {
  #footer {
    padding: 50px 0 0;
  }
  #footer .logo50th {
    width: 122px;
  }
  #footer .logo {
    width: 100%;
    max-width: 530px;
    margin-top: 50px;
  }
  #footer .column {
    margin-top: 46px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  #footer .social {
    margin-top: 0;
  }
  #footer .social li {
    width: 50px;
    height: 50px;
  }
  #footer .social li a {
    transition: all 0.2s;
  }
  #footer .social li a.twitter {
    background-size: 26px auto;
  }
  #footer .social li a.instagram {
    background-size: 22px auto;
  }
  #footer .social li a.facebook {
    background-size: 22px auto;
  }
  #footer .social li a:hover {
    opacity: 1;
  }
  #footer .fMenu {
    margin: 16px 0 0 0px;
  }
  #footer .fMenu li a {
    font-size: 18px;
    position: relative;
  }
  #footer .fMenu li a::after {
    position: absolute;
    bottom: 0;
    right: 50%;
    left: 50%;
    content: "";
    display: block;
    width: 0;
    height: 1px;
    background: #000000;
    margin-bottom: -6px;
    transition: all 0.3s;
  }
  #footer .fMenu li a:hover::after {
    right: 0;
    left: 0;
    width: 100%;
  }
  #footer .cooperat {
    margin-top: 30px;
    text-align: center;
    font-size: 15px;
    line-height: 2.4;
  }
  #footer .cooperat span {
    display: inline-block;
    margin: 0 24px;
  }
  #footer .cooperat a {
    color: #787878;
    text-decoration: underline;
  }
  #footer .copyright {
    margin: 60px 0 0;
    padding: 26px 0;
  }
}

/*----------------------------------------------------
色
----------------------------------------------------*/
.tab_blue {
  background-color: #5B7BC1;
  color: #FFFFFF;
}

.tab_gold {
  background-color: #BEA45A;
  color: #FFFFFF;
}

.tab_purple {
  background-color: #AF93A4;
  color: #FFFFFF;
}

.tab_orange {
  background-color: #CE805F;
  color: #FFFFFF;
}

.tab_black {
  background-color: #404040;
  color: #FFFFFF;
}

.tab_wait {
  background-color: #ffffff;
  color: #BABABA;
}

/*----------------------------------------------------
背景カラー 線
----------------------------------------------------*/
.bg_white {
  background-color: #FFFFFF;
}

.box_shadow {
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1);
}

/*----------------------------------------------------
改行
----------------------------------------------------*/
.nowrap {
  white-space: nowrap;
}

.brsp {
  display: block;
  /* 751- */
}
@media all and (min-width: 751px) {
  .brsp {
    display: none;
  }
}

.brpc {
  display: none;
  /* 751- */
}
@media all and (min-width: 751px) {
  .brpc {
    display: block;
  }
}

/*----------------------------------------------------
jsで「ふわっと」を表現するクラス
----------------------------------------------------*/
.boxOpacity {
  opacity: 0;
}

/* 下からフワッと出てくる */
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/*----------------------------------------------------
表示 非表示
----------------------------------------------------*/
.disp_non {
  display: none;
}

.hide {
  display: none;
}

.forSP {
  /* -750 */
  /* 751- */
}
@media all and (max-width: 751px) {
  .forSP {
    display: block;
  }
}
@media all and (min-width: 751px) {
  .forSP {
    display: none;
  }
}

.forPC {
  /* -750 */
  /* 751- */
}
@media all and (max-width: 751px) {
  .forPC {
    display: none;
  }
}
@media all and (min-width: 751px) {
  .forPC {
    display: block;
  }
}

/*----------------------------------------------------
inner
----------------------------------------------------*/
.inner,
.innerSP {
  margin: 0 auto;
  padding: 0 20px;
}

/* 751- */
@media all and (min-width: 751px) {
  .inner {
    padding: 0 40px;
  }
  .innerSP {
    padding: 0;
  }
}
/* 1297- */
@media all and (min-width: 1297px) {
  .inner {
    padding: 0;
    width: 1200px;
  }
}
.inner_temp {
  padding: 0 20px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .inner_temp {
    padding: 0 40px;
    margin: 0 auto;
    max-width: 1080px;
  }
}

/*----------------------------------------------------
imgHov
----------------------------------------------------*/
/* 751- */
@media all and (min-width: 751px) {
  .imgHov .image {
    cursor: pointer;
    overflow: hidden;
  }
  .imgHov .image img,
  .imgHov .image picture {
    transition: all 0.5s ease-out;
  }
  .imgHov:hover .image img,
  .imgHov:hover .image picture {
    transform: scale(1.06);
  }
}
/*----------------------------------------------------
btnMore
----------------------------------------------------*/
.btnMore {
  text-align: center;
  /* 751- */
}
.btnMore a {
  position: relative;
  display: inline-block;
  width: 160px;
  height: 32px;
  background: #404040;
  line-height: 32px;
  text-align: center;
  color: #ffffff;
  font-size: 13px;
  vertical-align: top;
  border-radius: 100vh;
}
.btnMore a::after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 100vh;
  background: #C3A44C;
  margin-top: -2px;
}
@media all and (min-width: 751px) {
  .btnMore {
    text-align: right;
  }
  .btnMore a {
    width: 218px;
    height: 50px;
    line-height: 50px;
    font-size: 16px;
    border: solid 2px #404040;
    box-sizing: border-box;
    transition: all 0.3s;
  }
  .btnMore a::after {
    right: 20px;
    width: 6px;
    height: 6px;
    margin-top: -2px;
    transition: all 0.3s;
  }
  .btnMore a:hover {
    color: #404040;
    background: #ffffff;
  }
  .btnMore a:hover::after {
    right: 10px;
  }
}

/*----------------------------------------------------
commonTitle
----------------------------------------------------*/
.commonTitle {
  text-align: center;
  position: relative;
  width: 100%;
  height: 51px;
  margin: 0 auto;
  font-size: 24px;
  line-height: 26px;
  letter-spacing: 0.05em;
  font-weight: bold;
  background-size: 100% 100%;
  /* 751- */
}
@media all and (min-width: 751px) {
  .commonTitle {
    text-align: left;
    width: 100%;
    height: auto;
    padding: 26px 0 0 0;
    background-size: 50px 5px;
    font-size: 40px;
    line-height: 1.2;
  }
}

/* -750 */
@media all and (max-width: 751px) {
  #movie .commonTitle {
    width: 219px;
  }
  #topics .commonTitle {
    width: 227px;
  }
}
/* 751- */
@media all and (min-width: 751px) {
  #movie .commonTitle {
    text-align: center;
    background-position: center top;
  }
}
/*----------------------------------------------------
go_top
----------------------------------------------------*/
#go_top {
  display: none;
  position: relative;
  position: fixed;
  transition: all 0.3s;
  bottom: -200px;
  right: 60px;
  z-index: 10;
  text-align: center;
  transform: rotate(90deg);
  transform-origin: 100% 100%;
  transition: all 0.3s;
  /* 751- */
}
#go_top a {
  position: relative;
  display: inline-block;
  color: #404040;
  font-size: 14px;
  text-decoration: none;
  line-height: 30px;
  padding-left: 65px;
}
#go_top a span {
  position: relative;
  z-index: 2;
}
#go_top a::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 50px;
  height: 2px;
  background: #C3A44C;
  z-index: 2;
  transition: all 0.3s;
}
#go_top a:hover::before {
  margin-left: -20px;
}
#go_top a::after {
  position: absolute;
  top: -10px;
  left: 15px;
  content: "";
  display: block;
  width: calc(100% + 5px);
  height: calc(100% + 20px);
  background: rgba(255, 255, 255, 0.7);
  z-index: 0;
}
@media all and (min-width: 751px) {
  #go_top {
    display: block;
  }
}

body.scroll #go_top {
  bottom: 120px;
}

/*----------------------------------------------------
boxBorder
----------------------------------------------------*/
.boxBorder {
  border: 1px solid #BEA45A;
  padding: 35px 25px;
  margin: 0;
  /* 751- */
  /* 751- */
}
@media all and (min-width: 751px) {
  .boxBorder {
    padding: 55px 70px;
    margin: 0;
  }
}
.boxBorder .title {
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: 0.15em;
}
.boxBorder .centerTitle {
  margin-top: 10px;
  text-align: center;
  font-size: 20px;
  line-height: 26px;
  font-weight: bold;
  letter-spacing: 0.15em;
}
.boxBorder .centerTitle span {
  position: relative;
  display: inline-block;
  padding: 0 54px;
}
.boxBorder .centerTitle span::before, .boxBorder .centerTitle span::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
  width: 38px;
  height: 25px;
}
.boxBorder .centerTitle span::before {
  left: 0;
  background-image: url(../images/common/boxttl_left.svg);
}
.boxBorder .centerTitle span::after {
  right: 0;
  background-image: url(../images/common/boxttl_right.svg);
}
.boxBorder .lead {
  margin: 30px 0 0;
  font-size: 14px;
  line-height: 2;
  font-weight: bold;
  letter-spacing: 0.03em;
}
.boxBorder .text {
  margin: 1.6em 0 0;
  font-size: 14px;
  line-height: 1.857;
  letter-spacing: 0.03em;
}
.boxBorder .text.mgn {
  margin-top: 2.2em;
}
.boxBorder div.text {
  margin: 0;
}
.boxBorder div.text p {
  margin-top: 2em;
}
@media all and (min-width: 751px) {
  .boxBorder .title {
    font-size: 20px;
  }
  .boxBorder .centerTitle {
    margin-top: 10px;
    font-size: 18px;
  }
  .boxBorder .centerTitle span {
    padding: 0 70px;
  }
  .boxBorder .centerTitle span::before, .boxBorder .centerTitle span::after {
    width: 50px;
    height: 34px;
  }
  .boxBorder .lead {
    margin-top: 48px;
    font-size: 16px;
  }
  .boxBorder .text {
    margin: 2.1em 0 0;
    font-size: 16px;
    letter-spacing: 0.05em;
  }
  .boxBorder .text.mgn {
    margin-top: 3em;
  }
}

.contactArea .boxBorder {
  margin: 30px 0 6px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .contactArea .boxBorder {
    margin: 60px 0 20px;
  }
}

/*----------------------------------------------------
セクション
----------------------------------------------------*/
.section {
  margin: 0 0 80px;
  overflow: hidden;
  /* 751- */
  /* 751- */
}
@media all and (min-width: 751px) {
  .section {
    margin: 0 0 100px;
  }
}
.section.addPdgT {
  padding-top: 55px;
}
.section.addPdgB {
  padding-bottom: 55px;
}
@media all and (min-width: 751px) {
  .section.addPdgT {
    padding-top: 70px;
  }
  .section.addPdgB {
    padding-bottom: 90px;
  }
}

.article {
  margin-top: 75px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .article {
    margin-top: 80px;
  }
}

/*----------------------------------------------------
subColumn
----------------------------------------------------*/
#subColumn {
  position: relative;
}
@media screen and (max-width: 1440px) {
  #subColumn #subAnchor {
    padding: 0 20px;
    margin-bottom: 80px;
    /* 751- */
  }
  #subColumn #subAnchor ul {
    margin: 0 auto;
    border-top: solid 1px #D9D9D9;
  }
  #subColumn #subAnchor li {
    border-bottom: solid 1px #D9D9D9;
  }
  #subColumn #subAnchor li a {
    position: relative;
    display: block;
    padding: 0.9em 2em;
    color: #404040;
    font-size: 13px;
    line-height: 1.2;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-align: center;
    text-decoration: none;
  }
  #subColumn #subAnchor li a br {
    display: none;
  }
  #subColumn #subAnchor li a::after {
    position: absolute;
    top: 50%;
    right: 6px;
    display: block;
    content: "";
    margin-top: -2px;
    width: 5px;
    height: 5px;
    border-right: 1px solid #404040;
    border-bottom: 1px solid #404040;
    transform: rotate(45deg);
  }
}
@media screen and (max-width: 1440px) and (min-width: 751px) {
  #subColumn #subAnchor {
    padding: 0 40px;
  }
  #subColumn #subAnchor ul {
    max-width: 1000px;
  }
}
@media screen and (min-width: 1441px) {
  #subColumn #subAnchor {
    position: absolute;
    top: 0;
    left: 0;
  }
  #subColumn #subAnchor.stay {
    position: fixed;
    margin-top: 120px;
  }
  #subColumn #subAnchor li a {
    display: block;
    margin-left: -20px;
    margin-bottom: 7px;
    font-size: 14px;
    width: 180px;
    padding: 10px 15px 10px 35px;
    background: #ffffff;
    color: #404040;
    font-size: 13px;
    line-height: 1.2;
    text-decoration: none;
    transition: all 0.3s;
  }
  #subColumn #subAnchor li a:hover {
    margin-left: 0px;
    color: #ffffff;
    background: #000000;
  }
  #subColumn #subAnchor li.current a {
    width: 167px;
    color: #ffffff;
    background: #000000;
  }
}

/*----------------------------------------------------
セクションタイトル
----------------------------------------------------*/
.secTtl {
  position: relative;
  font-size: 20px;
  line-height: 1.1;
  letter-spacing: 0.15em;
  font-weight: bold;
  padding-left: 1.1em;
  min-height: 24px;
  /* 751- */
}
.secTtl::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 12px;
  height: 24px;
  margin-top: -12px;
  background: url(../images/common/toon_kigou.svg) no-repeat 0 0;
  background-size: auto 100%;
}
@media all and (min-width: 751px) {
  .secTtl {
    font-size: 18px;
    min-height: 32px;
    padding-top: 2px;
  }
  .secTtl::before {
    margin-top: -16px;
  }
}

/* タイトル下にカラー帽 
.secTtl.pattern2 {  
  h2 {  
    margin-top: 0;
    @include setFont( $sz:22px , $ls:0.15em , $lh:1.272 );
    text-align: center;
    span {
      position: relative;
      @include yuMincho_ed;
      &::before {
        @include setLine( $ht:4px , $wh:140px , $bc:none );
        @include grade_yoko;
        @include CENTERxYoko;
        bottom: -16px;
      }      
    }  
  } 
  @include mediaPC {
    h2 {  
      @include setFont( $sz:34px , $ls:0.15em , $lh:1 );  
      span {
        position: relative;
        @include yuMincho_ed;
        &::before {
          @include setLine( $ht:4px , $wh:300px , $bc:none );
          @include grade_yoko;
          @include CENTERxYoko;
          bottom: -30px;
        }      
      }
    }
  } 
}
*/
/*----------------------------------------------------
下層ヘッダー
----------------------------------------------------*/
.page_head {
  margin-bottom: 50px;
  position: relative;
  /* 751- */
}
.page_head source, .page_head img {
  height: 140px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit: cover;";
}
@media all and (min-width: 751px) {
  .page_head {
    margin-bottom: 75px;
  }
  .page_head source, .page_head img {
    height: 280px;
  }
}

.page_head_title {
  position: absolute;
  top: calc(50% - 24px);
  left: 0;
  width: 100%;
  /* 751- */
}
.page_head_title span {
  display: block;
  text-align: center;
}
.page_head_title span.wt {
  display: inline-block;
  line-height: 1.1;
  background: #ffffff;
  padding: 0 0.6em 0.1em;
}
.page_head_title .jp {
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: 0.15em;
}
.page_head_title .en {
  margin-top: 0.9em;
  font-size: 16px;
  line-height: 1.1;
  letter-spacing: 0.05em;
  font-weight: normal;
  font-style: italic;
}
@media all and (min-width: 751px) {
  .page_head_title {
    top: calc(50% - 46px);
  }
  .page_head_title .jp {
    font-size: 44px;
  }
  .page_head_title .en {
    margin-top: 0.7em;
    font-size: 28px;
  }
}

/*----------------------------------------------------
box
----------------------------------------------------*/
.box {
  padding: 30px 3.3333%;
}

@media screen and (min-width: 751px) {
  .box {
    padding: 50px 40px;
  }
}
@media screen and (min-width: 1201px) {
  .box {
    padding: 60px 50px;
  }
}
/*columnの中の場合*/
.cols .box {
  padding: 30px 3.3333%;
}

/*----------------------------------------------------
カラム
----------------------------------------------------*/
.is_mgn_btm {
  margin-bottom: 20px;
}

.cols {
  margin-top: 50px;
  /* 751- */
  /* -750 */
  /* 751- */
}
@media all and (min-width: 751px) {
  .cols {
    margin-top: 70px;
  }
}
.cols.no_margin {
  margin: 0;
}
.cols.is_wrap {
  flex-wrap: wrap;
}
.cols.is_min_mgn .col {
  margin-top: 20px;
}
@media all and (max-width: 751px) {
  .cols.sp_w170, .cols.sp_w180, .cols.sp_w190, .cols.sp_w200, .cols.sp_w210, .cols.sp_w220, .cols.sp_w280, .cols.sp_w290, .cols.sp_w300, .cols.sp_w450, .cols.sp_w460, .cols.sp_w480, .cols.sp_w485 {
    display: flex;
    justify-content: space-between;
  }
  .cols.sp_w170 .col {
    width: 17%;
  }
  .cols.sp_w180 .col {
    width: 18%;
  }
  .cols.sp_w190 .col {
    width: 19%;
  }
  .cols.sp_w200 .col {
    width: 20%;
  }
  .cols.sp_w210 .col {
    width: 21%;
  }
  .cols.sp_w220 .col {
    width: 22%;
  }
  .cols.sp_w280 .col {
    width: 28%;
  }
  .cols.sp_w290 .col {
    width: 29%;
  }
  .cols.sp_w300 .col {
    width: 30%;
  }
  .cols.sp_w450 .col {
    width: 45%;
  }
  .cols.sp_w460 .col {
    width: 46%;
  }
  .cols.sp_w480 .col {
    width: 48%;
  }
  .cols.sp_w485 .col {
    width: 48.5%;
  }
}
@media all and (min-width: 751px) {
  .cols {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .cols.is_min_mgn .col {
    margin-top: 40px;
  }
  .cols.pc_w210 .col {
    width: 21%;
  }
  .cols.pc_w210 .col::before {
    width: 21%;
  }
  .cols.pc_w210 .col::after {
    width: 21%;
  }
  .cols.pc_w220 .col {
    width: 22%;
  }
  .cols.pc_w220 .col::before {
    width: 22%;
  }
  .cols.pc_w220 .col::after {
    width: 22%;
  }
  .cols.pc_w230 .col {
    width: 23%;
  }
  .cols.pc_w230 .col::before {
    width: 23%;
  }
  .cols.pc_w230 .col::after {
    width: 23%;
  }
  .cols.pc_w240 .col {
    width: 24%;
  }
  .cols.pc_w240 .col::before {
    width: 24%;
  }
  .cols.pc_w240 .col::after {
    width: 24%;
  }
  .cols.pc_w250 .col {
    width: 25%;
  }
  .cols.pc_w250 .col::before {
    width: 25%;
  }
  .cols.pc_w250 .col::after {
    width: 25%;
  }
  .cols.pc_w260 .col {
    width: 26%;
  }
  .cols.pc_w260 .col::before {
    width: 26%;
  }
  .cols.pc_w260 .col::after {
    width: 26%;
  }
  .cols.pc_w270 .col {
    width: 27%;
  }
  .cols.pc_w270 .col::before {
    width: 27%;
  }
  .cols.pc_w270 .col::after {
    width: 27%;
  }
  .cols.pc_w280 .col {
    width: 28%;
  }
  .cols.pc_w280 .col::before {
    width: 28%;
  }
  .cols.pc_w280 .col::after {
    width: 28%;
  }
  .cols.pc_w290 .col {
    width: 29%;
  }
  .cols.pc_w290 .col::before {
    width: 29%;
  }
  .cols.pc_w290 .col::after {
    width: 29%;
  }
  .cols.pc_w300 .col {
    width: 30%;
  }
  .cols.pc_w300 .col::before {
    width: 30%;
  }
  .cols.pc_w300 .col::after {
    width: 30%;
  }
  .cols.pc_w310 .col {
    width: 31%;
  }
  .cols.pc_w310 .col::before {
    width: 31%;
  }
  .cols.pc_w310 .col::after {
    width: 31%;
  }
  .cols.pc_w320 .col {
    width: 32%;
  }
  .cols.pc_w320 .col::before {
    width: 32%;
  }
  .cols.pc_w320 .col::after {
    width: 32%;
  }
  .cols.pc_w450 .col {
    width: 45%;
  }
  .cols.pc_w460 .col {
    width: 46%;
  }
  .cols.pc_w470 .col {
    width: 47%;
  }
  .cols.pc_w480 .col {
    width: 48%;
  }
  .cols.pc_w490 .col {
    width: 49%;
  }
}

/*レイアウト調整*/
.article {
  /*------塗り上下ボーダータイトル------*/
  /* 751- */
}
.article .spflex {
  display: flex;
}
.article .spflex .col {
  width: 48%;
}
.article .line {
  position: relative;
}
.article .line::before {
  content: "";
  position: absolute;
  height: 2px;
  width: 62%;
  background-color: #73C0B4;
  top: 0;
}
.article .line::after {
  bottom: 0;
  right: 0;
  content: "";
  position: absolute;
  height: 2px;
  width: 62%;
  background-color: #73C0B4;
}
.article .line.green::before, .article .line.green::after {
  background-color: #73C0B4;
}
.article .line.red::before, .article .line.red::after {
  background-color: #FF8282;
}
.article .line.blue::before, .article .line.blue::after {
  background-color: #5B9AC1;
}
.article .line.beige::before, .article .line.beige::after {
  background-color: #9D8E62;
}
.article .line.gray::before, .article .line.gray::after {
  background-color: #707070;
}
.article .half_title {
  padding: 10px 0;
}
.article .article_inner {
  margin: 20px 0 0;
}
.article .big_bg_title {
  position: relative;
  padding: 15px 0;
  margin: 30px 0;
  min-height: 70px;
  box-sizing: border-box;
  text-align: center;
}
.article .big_bg_title.w92 {
  width: 92.85714%;
  margin: 30px auto 40px;
}
.article .big_bg_title span {
  position: relative;
  display: block;
  padding: 0 3.3333%;
  font-weight: 600;
  font-size: 17px;
  color: #fff;
}
.article .big_bg_title::before, .article .big_bg_title::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  height: 1px;
  width: 100%;
  background-size: 8px 8px;
}
.article .big_bg_title::before {
  top: -5px;
}
.article .big_bg_title::after {
  bottom: -5px;
}
.article .big_bg_title.green {
  background-color: #73C0B4;
}
.article .big_bg_title.green::before, .article .big_bg_title.green::after {
  background-color: #73C0B4;
}
.article .big_bg_title.red {
  background-color: #FF8282;
}
.article .big_bg_title.red::before, .article .big_bg_title.red::after {
  background-color: #FF8282;
}
.article .big_bg_title.blue {
  background-color: #5B9AC1;
}
.article .big_bg_title.blue::before, .article .big_bg_title.blue::after {
  background-color: #5B9AC1;
}
.article .big_bg_title.beige {
  background-color: #9D8E62;
}
.article .big_bg_title.beige::before, .article .big_bg_title.beige::after {
  background-color: #9D8E62;
}
.article .big_bg_title.gray {
  background-color: #707070;
}
.article .big_bg_title.gray::before, .article .big_bg_title.gray::after {
  background-color: #707070;
}
@media all and (min-width: 751px) {
  .article .big_bg_title span {
    font-size: 30px;
  }
  .article .big_bg_title::before {
    top: -6px;
  }
  .article .big_bg_title::after {
    bottom: -6px;
  }
  .article .line::before {
    top: 0;
    width: 62%;
    height: 3px;
  }
  .article .line::after {
    bottom: 0;
    right: 0;
    width: 62%;
    height: 3px;
  }
  .article .half_title {
    min-height: 80px;
    position: relative;
  }
  .article .half_title .center {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    position: relative;
    top: 50%;
  }
  .article h2 {
    text-align: left;
    padding: 29px 0;
    font-size: 30px;
    letter-spacing: 0em;
    line-height: 1.333;
  }
  .article .min_title {
    font-size: 24px;
    letter-spacing: 0em;
    line-height: 1.3333;
  }
  .article .cols.is_pc_reverse {
    flex-direction: row-reverse;
  }
  .article .article_inner {
    margin: 25px 0 0;
    padding: 0;
  }
  .article .article_inner.no_pc_mgn {
    margin: 0;
  }
}

/*----------------------------------------------------
動画埋め込み
----------------------------------------------------*/
.movie_frame.umekomi {
  position: relative;
  width: 100%;
}

.movie_frame.umekomi::before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}

.movie_frame.umekomi iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*----------------------------------------------------
hvr-line
----------------------------------------------------*/
@media screen and (min-width: 1201px) {
  .hvr-line {
    position: relative;
    display: inline-block;
  }
  .hvr-line::before {
    content: "";
    display: block;
    width: 0;
    height: 1px;
    position: absolute;
    bottom: -5px;
    left: 0;
    background: #fff;
    transition: all 0.3s;
  }
  .hvr-line:hover::before {
    width: 100%;
  }
}
/*----------------------------------------------------
下層共通・ホームに戻る
----------------------------------------------------*/
.box_gohome {
  padding: 40px 0;
  text-align: center;
}

#go_home {
  display: inline-block;
  width: 200px;
  position: relative;
}
#go_home a {
  display: block;
  background: #000000;
  width: 100%;
  color: #fff;
  line-height: 50px;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
#go_home .border {
  position: absolute;
  background: none;
  transition: all 0.5s ease-in-out;
}

#go_home > .border:nth-of-type(1) {
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-top: 1px solid #ffffff;
}

#go_home > .border:nth-of-type(2) {
  top: 0;
  right: 0;
  width: 10px;
  height: 0;
  border-right: 1px solid #ffffff;
}

#go_home > .border:nth-of-type(3) {
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-bottom: 1px solid #ffffff;
}

#go_home > .border:nth-of-type(4) {
  bottom: 0;
  left: 0;
  width: 0;
  height: 0;
  border-left: 1px solid #ffffff;
}

@media screen and (min-width: 751px) {
  .box_gohome {
    padding: 80px 0;
  }
  #go_home {
    width: 400px;
  }
  #go_home a {
    line-height: 70px;
    font-size: 16px;
  }
}
@media screen and (min-width: 1201px) {
  #go_home:hover .border:nth-of-type(1) {
    width: 100%;
  }
  #go_home:hover .border:nth-of-type(2) {
    height: 70px;
  }
  #go_home:hover .border:nth-of-type(3) {
    width: 100%;
  }
  #go_home:hover .border:nth-of-type(4) {
    height: 70px;
  }
}
/*----------------------------------------------------
共通・タブコンテンツ
----------------------------------------------------*/
#tabMenu {
  /* -- 余白や左右反転などの微調整  -- */
  /* タブタイトルの上下、余白の調整 */
  /* 画像とテキストを左右反転 */
}
#tabMenu .tab_box {
  margin-top: 75px;
}
#tabMenu .tab_box.is_2 .tab_buttons li {
  width: 49.5%;
}
#tabMenu .tab_box.is_3 .tab_buttons li {
  width: 32.83333%;
}
#tabMenu .tab_box.is_4 .tab_buttons li {
  width: 24.5%;
}
#tabMenu .tab_box.is_5 .tab_buttons li {
  width: 19.5%;
}
#tabMenu .tab_box.is_2 .tab_buttons li span, #tabMenu .tab_box.is_3 .tab_buttons li span {
  padding: 10px 15px;
}
#tabMenu .tab_buttons {
  display: flex;
  justify-content: space-between;
  background: #fff;
  font-size: 14px;
  letter-spacing: 0em;
  line-height: 1.6667;
  font-family: YuGothic, "游ゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: bold;
  /* 751- */
}
#tabMenu .tab_buttons li {
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  border-bottom: 0;
  transition: 0.3s;
  /* 準備中*/
}
#tabMenu .tab_buttons li span {
  display: inline-block;
  padding: 10px 5px;
  box-sizing: border-box;
  transition: 0.3s;
}
#tabMenu .tab_buttons li.is_wait {
  opacity: 0.5;
  position: relative;
}
#tabMenu .tab_buttons li.is_wait::after {
  content: "準備中";
  display: block;
  position: absolute;
  background: #ffffff;
  color: #BABABA;
  text-align: center;
  font-size: 11px;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  line-height: 75px;
}
#tabMenu .tab_buttons li:nth-of-type(1) {
  background-color: #5B7BC1;
  color: #FFFFFF;
}
#tabMenu .tab_buttons li:nth-of-type(2) {
  background-color: #BEA45A;
  color: #FFFFFF;
}
#tabMenu .tab_buttons li:nth-of-type(3) {
  background-color: #AF93A4;
  color: #FFFFFF;
}
#tabMenu .tab_buttons li:nth-of-type(4) {
  background-color: #CE805F;
  color: #FFFFFF;
}
#tabMenu .tab_buttons li:nth-of-type(5) {
  background-color: #404040;
  color: #FFFFFF;
}
#tabMenu .tab_buttons li.is_active {
  position: relative;
  text-align: center;
  /* 擬似要素 三角 */
}
#tabMenu .tab_buttons li.is_active span {
  color: #FFFFFF !important;
}
#tabMenu .tab_buttons li.is_active::before {
  content: "";
  position: absolute;
  border: 25px solid transparent;
  left: 50%;
  top: calc(100% - 15px);
  transform: translateX(-50%);
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .tab_buttons li.is_active::before {
    top: calc(100% - 15px);
  }
}
#tabMenu .tab_buttons li.is_active:nth-of-type(1)::before {
  border-top: 25px solid #5B7BC1;
}
#tabMenu .tab_buttons li.is_active:nth-of-type(2)::before {
  border-top: 25px solid #BEA45A;
}
#tabMenu .tab_buttons li.is_active:nth-of-type(3)::before {
  border-top: 25px solid #AF93A4;
}
#tabMenu .tab_buttons li.is_active:nth-of-type(4)::before {
  border-top: 25px solid #CE805F;
}
#tabMenu .tab_buttons li.is_active:nth-of-type(5)::before {
  border-top: 25px solid #404040;
}
@media all and (min-width: 751px) {
  #tabMenu .tab_buttons {
    font-size: 18px;
    letter-spacing: 0em;
    line-height: 1.555;
  }
  #tabMenu .tab_buttons li:not(.is_active):not(.is_wait)::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 0;
    height: 5px;
    transition: 0.3s;
  }
  #tabMenu .tab_buttons li:not(.is_wait):nth-of-type(1)::after {
    background: rgba(255, 255, 255, 0.4);
  }
  #tabMenu .tab_buttons li:not(.is_wait):nth-of-type(2)::after {
    background: rgba(255, 255, 255, 0.4);
  }
  #tabMenu .tab_buttons li:not(.is_wait):nth-of-type(3)::after {
    background: rgba(255, 255, 255, 0.4);
  }
  #tabMenu .tab_buttons li:not(.is_wait):nth-of-type(4)::after {
    background: rgba(255, 255, 255, 0.4);
  }
  #tabMenu .tab_buttons li:not(.is_wait):nth-of-type(5)::after {
    background: rgba(255, 255, 255, 0.4);
  }
  #tabMenu .tab_buttons li:not(.is_wait):hover {
    cursor: pointer;
  }
  #tabMenu .tab_buttons li:not(.is_wait):hover::after {
    width: 100%;
  }
  #tabMenu .tab_buttons li:not(.is_wait):hover span {
    opacity: 1;
  }
  #tabMenu .tab_buttons li.is_wait::after {
    line-height: 80px;
    font-size: 20px;
  }
}
#tabMenu .tab_contents {
  margin-top: 17px;
  border: 1px solid #000;
  /* -750 */
  /* 751- */
}
#tabMenu .tab_contents li {
  display: none;
}
#tabMenu .tab_contents li.is_active {
  display: block;
}
@media all and (max-width: 751px) {
  #tabMenu .tab_contents .cols {
    margin-top: 0;
  }
  #tabMenu .tab_contents .cols .col:nth-child(2) {
    margin-top: 25px;
  }
  #tabMenu .tab_contents .cols.is_pc3 .col:nth-child(n+2) {
    margin-top: 25px;
  }
  #tabMenu .tab_contents .cols.is_sp2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #tabMenu .tab_contents .cols.is_sp2 .col {
    width: 45%;
  }
  #tabMenu .tab_contents .cols.is_sp2 .col:nth-child(2) {
    margin-top: 0;
  }
  #tabMenu .tab_contents .cols.is_sp2 .col:nth-child(n+3) {
    margin-top: 25px;
  }
}
@media all and (min-width: 751px) {
  #tabMenu .tab_contents .cols {
    margin-top: 0;
    display: flex;
    justify-content: space-between;
  }
  #tabMenu .tab_contents .cols .col {
    width: 48%;
  }
  #tabMenu .tab_contents .cols.is_pc3, #tabMenu .tab_contents .cols.is_pc4 {
    flex-wrap: wrap;
  }
  #tabMenu .tab_contents .cols.is_pc3 .col {
    width: 30%;
  }
  #tabMenu .tab_contents .cols.is_pc3::after {
    content: "";
    display: inline-block;
    width: 30%;
  }
  #tabMenu .tab_contents .cols.is_pc4 .col {
    width: 22%;
  }
  #tabMenu .tab_contents .cols.is_pc3::before {
    content: "";
    display: inline-block;
    width: 20%;
    order: 1;
  }
  #tabMenu .tab_contents .cols.is_pc3::after {
    content: "";
    display: inline-block;
    width: 20%;
  }
}
#tabMenu .tab_content {
  padding: 25px 3.3333%;
  box-sizing: border-box;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .tab_content {
    padding: 50px 50px;
  }
}
#tabMenu .tab_title {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.78;
  text-align: left;
  margin-top: 0px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .tab_title {
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.538;
  }
}
#tabMenu .tab_text {
  font-size: 14px;
  letter-spacing: 0.03em;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .tab_text {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 1.875;
  }
}
#tabMenu .caption {
  color: #404040;
  font-size: 12px;
  letter-spacing: 0em;
  line-height: 1.272;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .caption {
    font-size: 14px;
    letter-spacing: 0em;
    line-height: 1.23;
  }
}
#tabMenu .caption.left {
  text-align: left;
}
#tabMenu .caption.PCleft {
  text-align: center;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .caption.PCleft {
    text-align: left;
  }
}
#tabMenu .caption.right {
  text-align: right;
}
#tabMenu .caption.PCright {
  text-align: center;
  /* 751- */
}
@media all and (min-width: 751px) {
  #tabMenu .caption.PCright {
    text-align: right;
  }
}
#tabMenu .tab_box {
  /* 751- */
}
#tabMenu .cols.is_pc_reverse {
  flex-direction: row-reverse;
}

/*----------------------------------------------------
sub_tabs
----------------------------------------------------*/
.sub_tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  /* 751- */
}
.sub_tabs .sub_col {
  margin-bottom: 10px;
  padding: 0.6em;
  width: 48%;
  text-align: center;
  color: #ffffff;
  font-size: 14px;
  line-height: 1.3;
  font-weight: bold;
  opacity: 0.7;
}
.sub_tabs .sub_col.current {
  opacity: 1;
}
.sub_tabs .sub_col:nth-child(1), .sub_tabs .sub_col:nth-child(4n+1) {
  background: #5B7BC1;
}
.sub_tabs .sub_col:nth-child(2), .sub_tabs .sub_col:nth-child(4n+2) {
  background: #BEA45A;
}
.sub_tabs .sub_col:nth-child(3), .sub_tabs .sub_col:nth-child(4n+3) {
  background: #AF93A4;
}
.sub_tabs .sub_col:nth-child(4), .sub_tabs .sub_col:nth-child(4n+4) {
  background: #CE805F;
}
@media all and (min-width: 751px) {
  .sub_tabs::after {
    content: "";
    display: block;
    width: 24%;
  }
  .sub_tabs::before {
    content: "";
    display: block;
    width: 24%;
    order: 1;
  }
  .sub_tabs .sub_col {
    width: 24%;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.3s;
  }
  .sub_tabs .sub_col:hover {
    opacity: 1;
  }
  .sub_tabs .sub_col.current {
    cursor: default;
    opacity: 1;
  }
}

.subtab_contents .sub_list {
  display: none;
}
.subtab_contents .sub_list:first-child {
  display: block;
}

/*----------------------------------------------------
キャプション、テキスト、中間タイトル
----------------------------------------------------*/
.caption {
  margin-top: 1em;
  font-size: 12px;
}

.mid_title {
  margin: 15px 0;
  font-size: 15px;
  font-weight: 600;
}
.mid_title + .text {
  margin-top: 0;
}

.text + .image {
  margin-top: 20px;
}
.text + .image.noMgnT {
  margin-top: 0;
}

/* 751- */
@media all and (min-width: 751px) {
  .caption {
    margin-top: 1em;
    font-size: 14px;
    text-align: center;
  }
  .mid_title {
    margin: 30px 0;
    font-size: 20px;
  }
  .tab_contents .cols .col {
    margin-top: 0px;
  }
}
/*----------------------------------------------------
共通・ボタン
----------------------------------------------------*/
#btns {
  padding-bottom: 30px;
}
#btns .col {
  margin-top: 30px;
}

.btn_grad {
  position: relative;
  margin: 0 auto;
  min-height: 50px;
  color: #D0121B;
  background: initial;
  border: 1px solid #D0121B;
  display: block;
  text-align: left;
  font-family: "游明朝", "YuMincho", serif;
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0em;
  line-height: 1.72;
  /* 751- */
  /* 1297- */
}
.btn_grad span {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 20px;
}
.btn_grad::before, .btn_grad::after {
  content: "";
  display: block;
  position: absolute;
  background: #D0121B;
  height: 1px;
  z-index: 1;
  transition: all 0.3s;
}
.btn_grad::before, .btn_grad::after {
  right: -15px;
}
.btn_grad::before {
  width: 42px;
  top: 50%;
}
.btn_grad::after {
  width: 10px;
  top: calc(50% - 2px);
  transform: rotate(30deg);
}
.btn_grad.wide {
  width: 90%;
  /* -750 */
}
@media all and (max-width: 751px) {
  .btn_grad.wide {
    font-size: 13px;
    letter-spacing: 0em;
    line-height: 1.72;
  }
}
.btn_grad.red_dark {
  color: #BF5353;
  border: 1px solid #BF5353;
}
.btn_grad.red_dark::before, .btn_grad.red_dark::after {
  background: #BF5353;
}
.btn_grad.red {
  color: #FF8282;
  border: 1px solid #FF8282;
}
.btn_grad.red::before, .btn_grad.red::after {
  background: #FF8282;
}
.btn_grad.green {
  color: #73C0B4;
  border: 1px solid #73C0B4;
}
.btn_grad.green::before, .btn_grad.green::after {
  background: #73C0B4;
}
.btn_grad.blue {
  color: #5B9AC1;
  border: 1px solid #5B9AC1;
}
.btn_grad.blue::before, .btn_grad.blue::after {
  background: #5B9AC1;
}
.btn_grad.beige {
  color: #9D8E62;
  border: 1px solid #9D8E62;
}
.btn_grad.beige::before, .btn_grad.beige::after {
  background: #9D8E62;
}
.btn_grad.black {
  color: #000000;
  border: 1px solid #000000;
}
.btn_grad.black::before, .btn_grad.black::after {
  background: #000000;
}
.btn_grad.arrow_under {
  min-height: 80px;
}
.btn_grad.arrow_under span {
  padding: 5px 5px 15px;
  left: 0px;
}
.btn_grad.arrow_under::before {
  right: -10px;
  top: 88%;
}
.btn_grad.arrow_under::after {
  right: -10px;
  top: calc(92% - 5px);
}
.btn_grad.arrow_under.font_sp_under10px {
  display: block;
  font-size: 10px;
  transform: scale(0.8);
  transform-origin: 0 0;
}
@media all and (min-width: 751px) {
  .btn_grad {
    text-align: left;
    padding: 10px 70px 10px 30px;
    height: 90px;
    font-size: 20px;
    letter-spacing: 0em;
    line-height: 1.5;
    transition: all 0.5s;
  }
  .btn_grad .is_pc_center {
    justify-content: center;
  }
  .btn_grad::before, .btn_grad::after {
    right: -30px;
    height: 2px;
  }
  .btn_grad::before {
    width: 97px;
    top: 72%;
  }
  .btn_grad::after {
    width: 19px;
    top: calc(72% - 5px);
    transform: rotate(30deg);
  }
  .btn_grad:hover {
    color: #ffffff;
  }
  .btn_grad:hover::before, .btn_grad:hover::after {
    right: -50px;
  }
  .btn_grad.arrow_under {
    min-height: 110px;
  }
  .btn_grad.arrow_under span {
    padding: 15px 5px 15px;
    left: 0px;
  }
  .btn_grad.arrow_under::before {
    right: -20px;
    top: 88%;
  }
  .btn_grad.arrow_under::after {
    right: -20px;
    top: calc(88% - 5px);
  }
  .btn_grad.arrow_under:hover::before, .btn_grad.arrow_under:hover::after {
    right: -30px;
  }
  .btn_grad.arrow_under.font_sp_under10px {
    font-size: 16px;
    transform: scale(1);
  }
  .btn_grad.arrow_under.font_sp_under10px span {
    padding: 0px 5px 15px;
  }
  .btn_grad.red_dark:hover {
    background: #BF5353;
  }
  .btn_grad.red:hover {
    background: #FF8282;
  }
  .btn_grad.green:hover {
    background: #73C0B4;
  }
  .btn_grad.blue:hover {
    background: #5B9AC1;
  }
  .btn_grad.beige:hover {
    background: #9D8E62;
  }
  .btn_grad.black:hover {
    background: #000000;
  }
}
@media all and (min-width: 1297px) {
  .btn_grad {
    text-align: left;
  }
  .btn_grad::before, .btn_grad::after {
    right: -30px;
    height: 2px;
  }
  .btn_grad::before {
    top: 50%;
  }
  .btn_grad::after {
    top: calc(50% - 5px);
    transform: rotate(30deg);
  }
}

.btn_radius {
  margin-top: 20px;
  display: block;
  text-align: center;
  color: #ffffff;
  text-decoration: none !important;
  /* 751- */
}
.btn_radius.left {
  text-align: left;
}
.btn_radius.center {
  text-align: center;
}
.btn_radius.right {
  text-align: right;
}
.btn_radius span {
  display: inline-block;
  border-radius: 100vh;
  padding: 17px 20px;
  text-align: center;
  box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.13);
  color: #ffffff;
  font-size: 14px;
  line-height: 1.2;
}
.btn_radius.long span {
  display: block;
}
.btn_radius.black span {
  background: #404040;
}
.btn_radius.blue span {
  background: #5B7BC1;
}
.btn_radius.gold span {
  background: #BEA45A;
}
.btn_radius.purple span {
  background: #AF93A4;
}
@media all and (min-width: 751px) {
  .btn_radius {
    margin-top: 30px;
  }
  .btn_radius span {
    font-size: 16px;
    letter-spacing: 0.05em;
    transition: all 0.3s;
  }
  .btn_radius:hover span {
    opacity: 0.8;
  }
}

/*----------------------------------------------------
開催概要
----------------------------------------------------*/
#about .data_contents {
  /* 751- */
  /* 1297- */
}
#about .data_contents .data_list {
  margin-top: 30px;
}
#about .data_contents .data_list li {
  border-bottom: 1px solid #D9D9D9;
  position: relative;
  padding: 22px 0;
}
#about .data_contents .data_list li:first-child {
  border-top: 1px solid #D9D9D9;
}
#about .data_contents .data_list li h3, #about .data_contents .data_list li p {
  font-size: 14px;
  line-height: 1.857;
  margin: 0;
}
#about .data_contents .data_list li h3 {
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-bottom: 0.5em;
}
#about .data_contents .data_list li p {
  letter-spacing: 0.03em;
}
@media all and (min-width: 751px) {
  #about .data_contents {
    margin-top: 40px;
  }
  #about .data_contents .data_list li {
    padding: 20px 0;
  }
  #about .data_contents .data_list li h3, #about .data_contents .data_list li p {
    font-size: 16px;
  }
  #about .data_contents .data_list li p {
    letter-spacing: 0.05em;
  }
}
@media all and (min-width: 1297px) {
  #about .data_contents .data_list li {
    display: flex;
    padding: 0;
  }
  #about .data_contents .data_list li h3 {
    width: 204px;
    padding: 26px 0px;
    margin-bottom: 0;
  }
  #about .data_contents .data_list li p {
    margin-top: 0;
    flex: 1;
    padding: 26px 0px;
  }
}
#about .contactArea {
  margin: 30px 0 6px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #about .contactArea {
    margin: 60px 0 20px;
  }
}

/*----------------------------------------------------
観覧料
----------------------------------------------------*/
#fee .secTtl {
  margin-bottom: 35px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #fee .secTtl {
    margin-bottom: 30px;
  }
}
#fee .tableBox {
  /* -750 */
  /* 751- */
}
@media all and (max-width: 751px) {
  #fee .tableBox tr th:first-child, #fee .tableBox tr td:first-child {
    text-align: left;
    padding-left: 10px;
  }
}
#fee .tableBox table {
  width: 100%;
}
#fee .tableBox td, #fee .tableBox th {
  padding: 8px 20px;
  text-align: center;
}
#fee .tableBox thead th {
  color: #2F2F2F;
  font-weight: normal;
  border-bottom: 1px solid #404040;
  font-size: 14px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #fee .tableBox thead th {
    font-size: 16px;
    border-bottom: 2px dotted #404040;
  }
}
#fee .tableBox tbody td {
  padding: 35px 0 31px;
}
#fee .tableBox tbody td, #fee .tableBox tbody th {
  font-weight: bold;
}
#fee .tableBox tbody tr {
  border-bottom: 1px solid #D9D9D9;
  vertical-align: middle;
}
#fee .tableBox tbody tr:last-child {
  border-bottom: 1px solid #404040;
  /* 751- */
}
@media all and (min-width: 751px) {
  #fee .tableBox tbody tr:last-child {
    border-bottom: 2px dotted #404040;
  }
}
#fee .tableBox tbody td:nth-of-type(2),
#fee .tableBox tbody td:nth-of-type(3) {
  border-left: 1px solid #D9D9D9;
}
#fee .tableBox tbody .jpy {
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.2;
  /* 751- */
}
#fee .tableBox tbody .jpy span {
  font-size: 13px;
}
@media all and (min-width: 751px) {
  #fee .tableBox tbody .jpy {
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1.2;
  }
  #fee .tableBox tbody .jpy span {
    font-size: 18px;
  }
}
#fee .tableBox tbody .itemName {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.428;
  /* 751- */
}
@media all and (min-width: 751px) {
  #fee .tableBox tbody .itemName {
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1.2;
  }
}
#fee .tableBox .attention {
  margin: 18px auto 0;
  font-size: 11px;
  letter-spacing: 0.05em;
  line-height: 1.818;
  /* 751- */
}
@media all and (min-width: 751px) {
  #fee .tableBox .attention {
    max-width: 100%;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 1.818;
  }
}
@media all and (min-width: 751px) {
  #fee .tableBox tr th, #fee .tableBox tr td {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
  #fee .tableBox tr th:first-child, #fee .tableBox tr td:first-child {
    width: 33%;
  }
  #fee .tableBox tr th:nth-of-type(2), #fee .tableBox tr td:nth-of-type(2) {
    width: 33%;
  }
  #fee .tableBox tr th:nth-of-type(3), #fee .tableBox tr td:nth-of-type(3) {
    width: 33%;
  }
}

/*----------------------------------------------------
見どころ
----------------------------------------------------*/
#highlight .secTtl {
  margin-bottom: 35px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #highlight .secTtl {
    margin-bottom: 45px;
  }
}
#highlight .lt_item {
  position: relative;
  margin-bottom: 90px;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: auto 45px;
  /* 751- */
  /* 1297- */
}
#highlight .lt_item:last-child {
  margin-bottom: 0px;
}
#highlight .lt_item.green {
  background-image: url(../images/common/point_g_sp.png);
}
#highlight .lt_item.green .lt_title {
  color: #08695A;
}
#highlight .lt_item.blue {
  background-image: url(../images/common/point_b_sp.png);
}
#highlight .lt_item.blue .lt_title {
  color: #1A2389;
}
#highlight .lt_item.red {
  background-image: url(../images/common/point_r_sp.png);
}
#highlight .lt_item.red .lt_title {
  color: #6A0C25;
}
#highlight .lt_item.gray {
  background-image: url(../images/common/point_gr_sp.png);
}
#highlight .lt_item.gray .lt_title {
  color: #101010;
}
#highlight .lt_item .lead {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
  font-weight: bold;
}
#highlight .lt_item .text {
  margin-top: 1em;
  font-size: 14px;
  line-height: 1.857;
  letter-spacing: 0.05em;
}
@media all and (min-width: 751px) {
  #highlight .lt_item {
    background-size: auto 60px;
  }
  #highlight .lt_item.green {
    background-image: url(../images/common/point_g_pc.png);
  }
  #highlight .lt_item.blue {
    background-image: url(../images/common/point_b_pc.png);
  }
  #highlight .lt_item.red {
    background-image: url(../images/common/point_r_pc.png);
  }
  #highlight .lt_item.gray {
    background-image: url(../images/common/point_gr_pc.png);
  }
  #highlight .lt_item .lead {
    font-size: 18px;
  }
  #highlight .lt_item .text {
    font-size: 15px;
  }
}
@media all and (min-width: 1297px) {
  #highlight .lt_item {
    margin-bottom: 110px;
    padding-left: 280px;
    background-size: auto 71px;
  }
  #highlight .lt_item .lead {
    font-size: 20px;
  }
  #highlight .lt_item .text {
    margin-top: 1.3em;
    font-size: 16px;
  }
}
#highlight .lt_title {
  font-size: 14px;
  letter-spacing: 0.05em;
  font-weight: bold;
  line-height: 45px;
  margin-left: 1em;
  /* 751- */
  /* 1297- */
}
@media all and (min-width: 751px) {
  #highlight .lt_title {
    font-size: 16px;
    line-height: 60px;
    margin-left: 1.5em;
  }
}
@media all and (min-width: 1297px) {
  #highlight .lt_title {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 20px;
    line-height: 68px;
    margin-left: 2em;
  }
}

/*----------------------------------------------------
ユーミンからのメッセージ
----------------------------------------------------*/
#fromYuming {
  /* -750 */
  /* 751- */
}
#fromYuming .column {
  position: relative;
  padding-top: 50px;
}
#fromYuming .text {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.03em;
}
#fromYuming .text p {
  margin: 2em 0 0;
}
@media all and (max-width: 751px) {
  #fromYuming .secTtl {
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media all and (min-width: 751px) {
  #fromYuming .column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: 0;
  }
  #fromYuming .image {
    width: 46.4%;
  }
  #fromYuming .text {
    width: 50%;
    font-size: 16px;
  }
}

/*----------------------------------------------------
作品
----------------------------------------------------*/
#works #tabMenu .tab_contents {
  border: none;
}
#works #tabMenu .tab_box {
  margin-top: 0;
}
#works .inner_temp {
  overflow: hidden;
}
#works .secTtl {
  margin-bottom: 40px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .secTtl {
    margin-bottom: 85px;
  }
}
#works .name {
  /* -750 */
  /* 751- */
}
#works .name .en {
  font-family: "游明朝", "YuMincho", serif;
  font-weight: 500;
  color: #529569;
}
#works .name .jp {
  font-family: "游明朝", "YuMincho", serif;
  font-weight: 600;
}
@media all and (max-width: 751px) {
  #works .name {
    margin-bottom: 20px;
    text-align: center;
  }
  #works .name .en {
    font-size: 14px;
    letter-spacing: 0.3em;
    line-height: 1.714;
    margin-bottom: 15px;
  }
  #works .name .jp {
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}
@media all and (min-width: 751px) {
  #works .name .en {
    font-size: 18px;
    letter-spacing: 0.2em;
    line-height: 1.714;
    margin-bottom: 15px;
  }
  #works .name .jp {
    font-size: 30px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
  #works .name .jp .year {
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
}
#works .lt {
  margin-bottom: 50px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .lt {
    margin-bottom: 120px;
  }
}
#works .lt > li {
  margin-bottom: 60px;
  /* 751- */
}
#works .lt > li:last-child {
  margin-bottom: 0px;
}
@media all and (min-width: 751px) {
  #works .lt > li {
    margin-bottom: 89px;
  }
}
#works .imageArea {
  /* -750 */
  /* 751- */
}
@media all and (max-width: 751px) {
  #works .imageArea {
    max-width: 253px;
    margin: 0 auto;
  }
}
@media all and (min-width: 751px) {
  #works .imageArea {
    width: 25%;
  }
}
#works .person_block {
  margin-bottom: 60px;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .person_block {
    margin-bottom: 50px;
    display: flex;
    justify-content: space-between;
  }
}
#works .person_text {
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .person_text {
    width: 67.8%;
  }
}
#works .person_text .explain {
  margin-top: 43px;
  color: #2F2F2F;
  font-size: 14px;
  letter-spacing: 0.03em;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .person_text .explain {
    margin-top: 35px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 2;
  }
}
#works .image_caption {
  text-align: center;
  margin-top: 11px;
  font-size: 11px;
  letter-spacing: 0em;
  line-height: 1.636;
  color: #797979;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .image_caption {
    font-size: 11px;
    letter-spacing: 0em;
    line-height: 1.636;
  }
}
#works .folkwang_img {
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .folkwang_img img {
    width: calc(100% + 100px);
    margin: 0 -50px;
  }
}
#works .foot_caption {
  margin-top: 10px;
  text-align: right;
  color: #717171;
  font-family: "游明朝", "YuMincho", serif;
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 0em;
  line-height: 1;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .foot_caption {
    font-size: 15px;
    letter-spacing: 0em;
    line-height: 1.333;
  }
}
#works .foot_kojiro {
  /* 751- */
}
#works .foot_kojiro .musium_frank {
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .foot_kojiro .musium_frank {
    margin-bottom: 28px;
  }
}
#works .foot_kojiro .musium_anri {
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .foot_kojiro .musium_anri {
    max-width: 271px;
    margin: 0 auto;
  }
}
#works .foot_kojiro .foot_caption {
  color: #2F2F2F;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0em;
  line-height: 1.545;
  font-family: YuGothic, "游ゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: normal;
}
#works .foot_kojiro .foot_caption .year {
  color: #797979;
}
@media all and (min-width: 751px) {
  #works .foot_kojiro {
    display: flex;
    justify-content: space-between;
  }
  #works .foot_kojiro .foot_caption {
    text-align: left;
    font-size: 18px;
    letter-spacing: 0em;
    line-height: 1.333;
  }
  #works .foot_kojiro .foot_caption .year {
    font-size: 14px;
    letter-spacing: 0em;
    line-height: 1.714;
  }
  #works .foot_kojiro .musium_frank {
    margin-right: 12px;
  }
}
#works .article {
  margin-top: 50px;
  /* 751- */
}
#works .article:first-child {
  margin-top: 0;
}
#works .article:first-child .cols:first-child {
  margin-top: 0;
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .article:first-child .cols:first-child .col:first-child {
    margin-top: 0;
  }
}
@media all and (min-width: 751px) {
  #works .article {
    margin-top: 70px;
  }
  #works .article .cols .col {
    margin-top: 0;
  }
}
#works .article .cols.is_min_mgn .col:last-child {
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .article .cols.is_min_mgn .col:last-child {
    margin-top: 20px;
  }
}
#works .col {
  /* -750 */
}
@media all and (max-width: 751px) {
  #works .col {
    margin-top: 50px;
  }
}
#works .col .min_title {
  margin: 0;
  font-size: 17px;
  letter-spacing: 0.15em;
  line-height: 1.6;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .col .min_title {
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.5;
  }
}
#works .col p {
  margin: 15px 0 0;
  font-size: 14px;
  letter-spacing: 0.03em;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  #works .col p {
    margin-top: 5px;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 1.875;
  }
}

/*----------------------------------------------------
タイトル
----------------------------------------------------*/
.blockTitle {
  font-size: 20px;
  line-height: 1.35;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
  /* 751- */
  /* 751- */
  /* -750 */
  /* 両サイドに矢印 */
}
@media all and (min-width: 751px) {
  .blockTitle {
    margin-bottom: 40px;
  }
}
@media all and (min-width: 751px) {
  .blockTitle {
    font-size: 34px;
  }
  .blockTitle.pc_large {
    font-size: 40px;
  }
}
.blockTitle.center {
  text-align: center;
}
.blockTitle.left {
  text-align: left;
}
.blockTitle.right {
  text-align: right;
}
@media all and (max-width: 751px) {
  .blockTitle.sp_center {
    text-align: center;
  }
  .blockTitle.sp_left {
    text-align: left;
  }
  .blockTitle.sp_right {
    text-align: right;
  }
}
.blockTitle.arrow {
  /* -750 */
  margin-bottom: 40px;
  /* 751- */
  /* 751- */
}
@media all and (max-width: 751px) {
  .blockTitle.arrow {
    font-size: 18px;
  }
}
@media all and (min-width: 751px) {
  .blockTitle.arrow {
    margin-bottom: 60px;
  }
}
.blockTitle.arrow span {
  display: inline-block;
  padding: 0 30px;
  position: relative;
}
.blockTitle.arrow span::before, .blockTitle.arrow span::after {
  position: absolute;
  top: 50%;
  content: "";
  display: block;
  width: 1.6em;
  height: 1.6em;
  margin-top: -0.8em;
}
.blockTitle.arrow span::before {
  left: 0;
  border-top: 4px double #C3A44C;
  border-left: 4px double #C3A44C;
  transform: rotate(-45deg);
}
.blockTitle.arrow span::after {
  right: 0;
  border-top: 4px double #C3A44C;
  border-right: 4px double #C3A44C;
  transform: rotate(45deg);
}
@media all and (min-width: 751px) {
  .blockTitle.arrow span {
    padding: 0 100px;
  }
  .blockTitle.arrow span::before, .blockTitle.arrow span::after {
    width: 1em;
    height: 1em;
    margin-top: -0.5em;
  }
  .blockTitle.arrow span::before {
    border-top: 8px double #C3A44C;
    border-left: 8px double #C3A44C;
  }
  .blockTitle.arrow span::after {
    border-top: 8px double #C3A44C;
    border-right: 8px double #C3A44C;
  }
}

.squareTitle {
  position: relative;
  margin-bottom: 20px;
  color: #ffffff;
  border: solid 6px #BEBEBE;
  border-width: 0 6px;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.15em;
  padding: 1em 3em;
  text-align: center;
  /* 751- */
}
.squareTitle span {
  position: relative;
  z-index: 2;
}
.squareTitle::before, .squareTitle::after {
  position: absolute;
  top: 0;
  display: block;
  content: "";
}
.squareTitle::before {
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  background-image: linear-gradient(180deg, #BEBEBE 1px, transparent 1px);
  background-size: 100% 15px; /* 行の高さ */
}
.squareTitle::after {
  right: 3px;
  width: 2px;
  height: 100%;
  background: #BEBEBE;
}
.squareTitle.white {
  color: #404040;
}
.squareTitle.black {
  background: #404040;
  border-color: #707070;
}
.squareTitle.black::before {
  background-image: linear-gradient(180deg, #707070 1px, transparent 1px);
}
.squareTitle.black::after {
  background: #707070;
}
.squareTitle.gray {
  background: #787878;
  border-color: #8D8D8D;
}
.squareTitle.gray::before {
  background-image: linear-gradient(180deg, #8D8D8D 1px, transparent 1px);
}
.squareTitle.gray::after {
  background: #8D8D8D;
}
.squareTitle.gray2 {
  color: #404040;
  background: #DEDEDE;
  border-color: #C1C1C1;
}
.squareTitle.gray2::before {
  background-image: linear-gradient(180deg, #C1C1C1 1px, transparent 1px);
}
.squareTitle.gray2::after {
  background: #C1C1C1;
}
.squareTitle.blue {
  background: #5B7BC1;
  border-color: #7693D1;
}
.squareTitle.blue::before {
  background-image: linear-gradient(180deg, #7693D1 1px, transparent 1px);
}
.squareTitle.blue::after {
  background: #7693D1;
}
.squareTitle.gold {
  background: #A88A35;
  border-color: #BEA45A;
}
.squareTitle.gold::before {
  background-image: linear-gradient(180deg, #BEA45A 1px, transparent 1px);
}
.squareTitle.gold::after {
  background: #BEA45A;
}
.squareTitle.purple {
  background: #AF93A4;
  border-color: #C7A9BC;
}
.squareTitle.purple::before {
  background-image: linear-gradient(180deg, #C7A9BC 1px, transparent 1px);
}
.squareTitle.purple::after {
  background: #C7A9BC;
}
@media all and (min-width: 751px) {
  .squareTitle {
    font-size: 24px;
  }
}

/*----------------------------------------------------
アコーディオン
----------------------------------------------------*/
.accordion .accordion_title {
  font-size: 18px;
  line-height: 1.33;
  font-weight: bold;
  letter-spacing: 0.15em;
  text-align: center;
  margin-bottom: 1.6em;
  /* 751- */
}
@media all and (min-width: 751px) {
  .accordion .accordion_title {
    font-size: 34px;
    line-height: 1.2;
  }
}
.accordion .ac_title {
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.75;
  /* 751- */
}
@media all and (min-width: 751px) {
  .accordion .ac_title {
    font-size: 20px;
    letter-spacing: 0.1em;
    line-height: 1.6;
  }
}
.accordion .ac_text {
  margin: 1.3em 0 0;
  font-size: 14px;
  letter-spacing: 0.03em;
  line-height: 2;
  /* 751- */
}
@media all and (min-width: 751px) {
  .accordion .ac_text {
    margin: 2em 0 0;
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 1.75;
  }
}
.accordion .ac_box {
  border: solid 1px #404040;
  border-width: 1px 0;
  margin-top: 10px;
  /* 751- */
}
@media all and (min-width: 751px) {
  .accordion .ac_box {
    margin-top: 15px;
  }
}
.accordion .ac_header {
  padding: 15px 50px 15px 10px;
  display: block;
  position: relative;
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-weight: bold;
  /* 751- */
}
.accordion .ac_header::before, .accordion .ac_header::after {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 1px;
  top: 50%;
  right: 10px;
  transition: all 0.2s;
  background: #404040;
}
.accordion .ac_header::after {
  transform: rotate(90deg);
}
.accordion .ac_header.open {
  background: #EBE2E8;
}
.accordion .ac_header.open::after {
  opacity: 0;
}
@media all and (min-width: 751px) {
  .accordion .ac_header {
    font-size: 20px;
    letter-spacing: 0.15em;
    line-height: 1.5;
    transition: all 0.3s;
    padding: 20px 60px 20px 20px;
    cursor: pointer;
  }
  .accordion .ac_header:hover {
    background: #EBE2E8;
  }
  .accordion .ac_header::before, .accordion .ac_header::after {
    width: 18px;
    right: 20px;
  }
}
.accordion .ac_content {
  display: none;
  padding: 26px 0;
  /* -750 */
  /* 751- */
}
@media all and (max-width: 751px) {
  .accordion .ac_content.has_image .imageArea {
    margin-bottom: 20px;
  }
}
@media all and (min-width: 751px) {
  .accordion .ac_content {
    padding: 60px 60px 80px;
  }
  .accordion .ac_content.has_image {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
  .accordion .ac_content.has_image .imageArea {
    width: 40.2%;
  }
  .accordion .ac_content.has_image .textArea {
    width: 55.355%;
  }
}
.accordion .column {
  /* 751- */
}
.accordion .column .image {
  margin-bottom: 20px;
}
@media all and (min-width: 751px) {
  .accordion .column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .accordion .column .image {
    width: 41.4%;
  }
  .accordion .column .wrap {
    width: 53%;
  }
}

/*----------------------------------------------------
動画
----------------------------------------------------*/
#movieArea {
  /* -750 */
}
#movieArea .caption {
  color: #5C5C5C;
  font-size: 12px;
  letter-spacing: 0em;
  line-height: 1.6;
  /* 751- */
}
@media all and (min-width: 751px) {
  #movieArea .caption {
    font-size: 14px;
    letter-spacing: 0em;
    line-height: 1.6;
  }
}
#movieArea .min_title {
  font-size: 15px;
  letter-spacing: 0em;
  line-height: 1.466;
  font-family: YuGothic, "游ゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: bold;
  /* 751- */
}
@media all and (min-width: 751px) {
  #movieArea .min_title {
    font-size: 20px;
    letter-spacing: 0.03em;
    line-height: 1.466;
    margin: 30px 0 25px;
  }
}
#movieArea .movie_text {
  font-size: 13px;
  letter-spacing: 0em;
  line-height: 1.769;
  /* 751- */
}
@media all and (min-width: 751px) {
  #movieArea .movie_text {
    font-size: 16px;
    letter-spacing: 0.03em;
    line-height: 1.875;
  }
}
@media all and (max-width: 751px) {
  #movieArea .col {
    margin-bottom: 50px;
  }
}

.movie_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie_wrap iframe,
.movie_wrap img {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

#top_topicks .movie_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#top_topicks .movie_wrap iframe,
#top_topicks .movie_wrap img {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/*----------------------------------------------------
共通・バナー
----------------------------------------------------*/
#banner {
  text-align: center;
  margin: 50px 0;
  /* 751- */
}
@media all and (min-width: 751px) {
  #banner {
    margin: 100px 0;
  }
}

.banners {
  margin-top: 30px;
  text-align: center;
  font-size: 0;
  /* 751- */
  /* -750 */
}
.banners .ban {
  text-align: center;
  display: block;
  line-height: 0;
  /* -750 */
}
.banners .ban picture {
  display: block;
  width: 100%;
  padding: 0px 20px;
}
@media all and (max-width: 751px) {
  .banners .ban {
    margin-bottom: 20px;
  }
}
.banners.sp_w190 {
  /* -750 */
}
@media all and (max-width: 751px) {
  .banners.sp_w190 {
    text-align: center;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .banners.sp_w190 .ban {
    text-align: center;
    width: 19%;
  }
}
@media all and (min-width: 751px) {
  .banners {
    text-align: center;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .banners .ban picture {
    transition: all 0.3s;
  }
  .banners.pc_w490 .ban {
    text-align: center;
    width: 49%;
  }
  .banners.pc_w490 .ban + .ban {
    margin-left: 2%;
  }
  .banners.pc_w320 .ban {
    width: 32%;
  }
  .banners.pc_w320 .ban + .ban {
    margin-left: 2%;
  }
  .banners.pc_w190 .ban {
    width: 19%;
  }
  .banners.pc_w190 .ban + .ban {
    margin-left: 1.3%;
  }
  .banners.pc_w240 .ban {
    width: 24%;
  }
  .banners.pc_w240 .ban + .ban {
    margin-left: 1.3%;
  }
  .banners.pc_w195 .ban {
    width: 19.5%;
  }
  .banners.pc_w195 .ban + .ban {
    margin-left: 0.5%;
  }
  .banners.pc_w190 .ban {
    width: 19%;
  }
  .banners.pc_w190 .ban + .ban {
    margin-left: 0.5%;
  }
  .banners.pc_w80 .ban {
    text-align: center;
    width: 8%;
  }
  .banners.pc_w80 .ban + .ban {
    margin-left: 0.5%;
  }
}
@media all and (max-width: 751px) {
  .banners {
    margin-top: 9px;
  }
  .banners .banners .ban + .ban {
    text-align: center;
    margin-top: 30px;
  }
}

/*----------------------------------------------------
トップページへ
----------------------------------------------------*/
#page_top {
  position: relative;
  bottom: 0;
  /* 751- */
}
#page_top a {
  position: relative;
  font-size: 17px;
  font-weight: bold;
  text-decoration: none;
  /* -750 */
}
#page_top a::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border: 10px solid transparent;
  border-left: 10px solid #111111;
  transform: scale(-1, 1);
  top: 6px;
  left: -20px;
}
@media all and (max-width: 751px) {
  #page_top a {
    left: 50%;
    top: -40px;
    transform: translateX(-50%);
  }
}
@media all and (min-width: 751px) {
  #page_top {
    bottom: 0px;
    right: 40px;
  }
  #page_top a {
    transition: all 0.3s;
    position: absolute;
    left: 100%;
    top: -80px;
  }
  #page_top a::before {
    transition: all 0.3s;
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border: 10px solid transparent;
    border-left: 10px solid #111111;
    transform: scale(-1, 1);
    top: 6px;
    left: -20px;
  }
  #page_top a:hover {
    color: #9F9F9F;
  }
  #page_top a:hover::before {
    top: 0px;
    border-top-color: #9F9F9F;
    border-right-color: #9F9F9F;
  }
}

/*----------------------------------------------------
go_ticket
----------------------------------------------------*/
#go_ticket {
  display: none;
}
@media all and (min-width: 951px) {
  #go_ticket {
    position: fixed;
    display: block;
    z-index: 10;
    right: 0px;
    top: 50px;
    height: 232px;
    width: 70px;
    background: url(../images/common/ticket/bg.png);
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
    transition: all 0.3s;
  }
}
@media all and (min-width: 1050px) {
  #go_ticket {
    top: 80px;
  }
}
#go_ticket .ticketsArea {
  transition: all 0.3s;
  position: relative;
  top: 28px;
  left: calc(50% - 10px);
}
#go_ticket a {
  font-size: 14px;
  letter-spacing: 0.2em;
  line-height: 1.1875;
  color: #FFF;
  writing-mode: vertical-rl;
  position: relative;
}
#go_ticket a::after {
  content: "";
  position: absolute;
  background: url("../images/common/ticket/ticket_white.png");
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  height: 14px;
  left: -3px;
  bottom: -28px;
  transition: all 0.3s;
}
#go_ticket:hover {
  background: url(../images/common/ticket/bg_hover.png);
  background-repeat: no-repeat;
  background-size: contain;
  height: 269px;
  width: 70px;
}
#go_ticket:hover .ticketsArea {
  top: 56px;
  left: calc(50% - 12px);
}
#go_ticket:hover a {
  color: #000;
}
#go_ticket:hover a::after {
  content: "";
  position: absolute;
  background: url("../images/common/ticket/ticket_black.png");
  background-repeat: no-repeat;
  background-size: contain;
  width: 30px;
  height: 14px;
  left: -3px;
  bottom: -28px;
  transform: rotate(-45deg);
}/*# sourceMappingURL=common.css.map */