@charset "UTF-8";
/* reset
----------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

button:focus {
  outline: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type="submit"],
input[type="reset"] {
  cursor: pointer;
}

button,
input,
textarea,
select {
  font-family: inherit;
}

/* base
----------------------------------------------------------*/
html {
  height: 100%;
  font-size: 62.5%;
}

body {
  height: 100%;
  font-family: "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Droid Sans", sans-serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  color: #000;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-font-variant-ligatures: none;
  font-variant-ligatures: none;
}

body.set-win {
  font-weight: 500;
}

img {
  pointer-events: none;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  -ms-interpolation-mode: bicubic;
}

.color-white {
  color: #fff;
}

.color-white a {
  color: #fff;
}

.color-black {
  color: #000;
}

.color-black a {
  color: #000;
}

.color-blue {
  color: #009BE6;
}

.color-blue a {
  color: #009BE6;
}

.color-blue-lt {
  color: #009BE6;
}

.color-blue-lt a {
  color: #009BE6;
}

.color-gray02 {
  color: #d4dde1;
}

.color-gray02 a {
  color: #d4dde1;
}

.color-gray03 {
  color: #58606b;
}

.color-gray03 a {
  color: #58606b;
}

.color-gray04 {
  color: #bababa;
}

.color-gray04 a {
  color: #bababa;
}

.color-gray07 {
  color: #3F4346;
}

.color-gray07 a {
  color: #3F4346;
}

.color-yellow {
  color: #FFEB00;
}

.color-yellow a {
  color: #FFEB00;
}

.bg-black {
  background-color: #000;
}

.bg-gray01 {
  background-color: #f7f8f8;
}

.bg-gray02 {
  background-color: #d4dde1;
}

.bg-gray03 {
  background-color: #58606b;
}

.bg-gray06 {
  background-color: #d4dde1;
}

.bg-blue {
  background-color: #009BE6;
}

.bg-blue02 {
  background-color: #009BE6;
}

.bg-yellow {
  background-color: #FFEB00;
}

.bg-yellow02 {
  background-color: #FFEB00;
}

.bg-white {
  background-color: #fff;
}

.disabled {
  opacity: 0.5 !important;
  cursor: default !important;
  pointer-events: none;
}

.set-hidden-text {
  overflow: hidden;
  position: absolute;
  opacity: 0;
  z-index: -1;
  height: 1px;
  width: 1px;
  font-size: 1px;
}

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

.btn-elm {
  cursor: pointer;
}

.hv-op0,
.hv-op {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.transition {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.lazyload,
.lazyloading {
  height: 1px;
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
}

.fs-i {
  font-style: italic;
}

/* layout */
.of-hid {
  overflow: hidden;
}

.bs-b {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.br-50 {
  border-radius: 50%;
}

.cf:after {
  content: "";
  clear: both;
  display: block;
}

.fl-l {
  float: left;
}

.fl-r {
  float: right;
}

.txt-l {
  text-align: left;
}

.txt-c {
  text-align: center;
}

.txt-r {
  text-align: right;
}

.txt-j {
  text-align: justify;
}

.posi-r {
  position: relative;
}

.table-style {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.table-style.i-block {
  display: inline-table;
}

.table-style.w-auto {
  width: auto;
}

.table-cell {
  display: table-cell;
}

.i-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.block {
  display: block;
}

.bg-style {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.bg-size-contain {
  background-size: contain;
}

.va-top {
  vertical-align: top;
}

.va-mid {
  vertical-align: middle;
}

.va-b {
  vertical-align: bottom;
}

.va-base {
  vertical-align: baseline;
}

.w100 {
  width: 100%;
}

.mw700 {
  max-width: 700px;
}

.m-c {
  margin-left: auto;
  margin-right: auto;
}

img.w100 {
  height: auto;
}

.w-auto {
  width: auto;
}

.pt100 {
  padding-top: 100%;
}

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

.hidden {
  display: none !important;
}

.wb-ba {
  word-break: break-all;
}

.lh-1 {
  line-height: 1;
}

.over-elm {
  position: relative;
  z-index: 9;
}

.posi-full {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.posi-center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.scale-elm,
.ct-scale-elm {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.iframe-wrap {
  overflow: hidden;
  position: relative;
  padding-top: 56.25%;
}

.iframe-wrap video,
.iframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.td-u {
  text-decoration: underline;
}

.hv-line-none.hv-line-none-elm,
.hv-line-none .hv-line-none-elm {
  text-decoration: underline;
}

.hv-line-none:hover.hv-line-none-elm,
.hv-line-none:hover .hv-line-none-elm {
  text-decoration: none;
}

.hv-op100 {
  opacity: 0;
}

.hv-slide-arrow-r .hv-slide-arrow-elm:before,
.hv-slide-arrow-l .hv-slide-arrow-elm:before {
  display: inline-block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.hv-op08 {
  -webkit-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s;
}

@media only screen and (min-width: 768px) {
  .table-style-pc {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .table-style-pc.w-auto {
    width: auto;
  }
  .table-style-i-pc {
    display: inline-table;
    table-layout: fixed;
    width: 100%;
  }
  .table-style-i-pc.w-auto {
    width: auto;
  }
  .table-cell-pc {
    display: table-cell;
  }
  .txt-r-pc {
    text-align: right;
  }
  .sp-mode {
    display: none !important;
  }
  .d-f-pc {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  a:hover,
  button:hover,
  .btn-elm:hover {
    text-decoration: none;
  }
  a:hover.td-u,
  button:hover.td-u,
  .btn-elm:hover.td-u {
    text-decoration: underline;
  }
  a:hover .hv-op,
  button:hover .hv-op,
  .btn-elm:hover .hv-op {
    opacity: 0.7;
  }
  a:hover .hv-op08,
  button:hover .hv-op08,
  .btn-elm:hover .hv-op08 {
    opacity: 0.8;
  }
  a:hover .hv-op0,
  button:hover .hv-op0,
  .btn-elm:hover .hv-op0 {
    opacity: 0;
  }
  a:hover .hv-op100,
  button:hover .hv-op100,
  .btn-elm:hover .hv-op100 {
    opacity: 1;
  }
  a:hover .hv-line,
  button:hover .hv-line,
  .btn-elm:hover .hv-line {
    text-decoration: underline;
  }
  a:hover .hv-gray03,
  button:hover .hv-gray03,
  .btn-elm:hover .hv-gray03 {
    color: #58606b;
  }
  a.hv-op:hover,
  button.hv-op:hover,
  .btn-elm.hv-op:hover {
    opacity: 0.7;
  }
  a.hv-op08:hover,
  button.hv-op08:hover,
  .btn-elm.hv-op08:hover {
    opacity: 0.8;
  }
  .hv-line:hover {
    text-decoration: underline;
  }
  .hv-line02:hover .hv-line-elm {
    text-decoration: underline;
  }
  .hv-bg-white:hover {
    background-color: #fff;
  }
  .hv-black:hover {
    color: #000;
  }
  .hv-yellow:hover {
    color: #FFEB00;
  }
  .hv-blue:hover {
    color: #009BE6;
  }
  .hv-bg-yellow:hover .hv-bg-elm {
    background-color: #FFEB00;
  }
  .hv-bg-gray01:hover {
    background-color: #f7f8f8;
  }
  .hv-bg-gray03:hover {
    background-color: #58606b;
  }
  .hv-slide-arrow-r:hover .hv-slide-arrow-elm:before {
    margin-left: 10px;
  }
  .hv-slide-arrow-l:hover .hv-slide-arrow-elm:before {
    margin-left: -10px;
  }
  .hv-scale-elm:hover .ct-scale-elm {
    -webkit-transform: scale(1.04);
    -ms-transform: scale(1.04);
    transform: scale(1.04);
  }
}

@media only screen and (max-width: 767px) {
  .pc-mode {
    display: none !important;
  }
  .sp-br-none br {
    display: none;
  }
  .fl-l,
  .fl-r {
    float: none;
  }
  .txt-c-sp {
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

/* fit 1280
----------------------------------------------------------*/
/* header
----------------------------------------------------------*/
.global-header {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.global-header.fix {
  position: fixed;
  background: #fff;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}

.global-header.fix.hide {
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0);
}

.global-header.fix.hide.up {
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.global-header.fix.hide.up.no-anime {
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}

.global-header.fix.hide.up.no-anime + .contents .tour-detail-fix-elm.fix {
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}

.global-header.fix.show {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  transition: transform 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.global-header.fix .header-inner {
  overflow: hidden;
  height: 70px;
  background: url(../img/common/bg-line.png) repeat-x left bottom;
  background-size: 1px 4px;
}

.global-header.fix .header-inner:before {
  display: none;
}

.global-header.fix .header-link-list {
  text-align: right;
}

.global-header.fix .header-link-box {
  padding: 0 260px 0 128px;
}

.global-header.fix .header-logo {
  top: 21px;
  left: 20px;
  width: 80px;
  margin: 0;
}

.global-header.fix .header-btn-link-inner {
  padding: 0;
  border-width: 4px;
}

.global-header.fix .header-link-list .main-link {
  min-height: 37px;
}

.global-header.fix .header-link-box-top {
  display: none;
}

.global-header.fix .header-link-list {
  padding: 33px 28px 0 90px;
}

.global-header.fix .sp-menu-btn {
  height: 70px;
}

.header-inner {
  height: 100px;
}

.header-logo {
  position: absolute;
  top: 23px;
  left: 28px;
  z-index: 9;
  margin: 0;
}

.header-link-box {
  padding: 0 260px 0 30px;
}

.header-link-list {
  padding: 27px 26px 0 90px;
  line-height: 1.5;
  font-size: 0;
  text-align: right;
}

.header-link-list .list-elm {
  display: inline-block;
  margin: 0 0 0 37px;
  vertical-align: top;
  font-size: 13px;
  font-size: 1.3rem;
}

.header-link-list .list-elm.on .main-link:before, .header-link-list .list-elm:hover .main-link:before {
  opacity: 1;
}

.header-link-list .list-elm.on .main-link + .megamenu-box, .header-link-list .list-elm:hover .main-link + .megamenu-box {
  opacity: 1;
  pointer-events: auto;
}

.header-link-list .list-elm.on .main-link + .megamenu-box:before, .header-link-list .list-elm:hover .main-link + .megamenu-box:before {
  bottom: 0;
}

.header-link-list .list-elm.on .main-link + .megamenu-box .megamenu-wrap, .header-link-list .list-elm:hover .main-link + .megamenu-box .megamenu-wrap {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
}

.header-link-list .list-elm.on .main-link + .megamenu-box .megamenu-link-list, .header-link-list .list-elm:hover .main-link + .megamenu-box .megamenu-link-list {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  -webkit-transition-delay: .9s;
  -o-transition-delay: .9s;
  transition-delay: .9s;
}

.header-link-list .main-link {
  position: relative;
  min-height: 42px;
  display: inline-block;
  vertical-align: top;
  padding: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.header-link-list .main-link:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 4px;
  width: 0;
  background-color: #000;
  -webkit-transition: width 0.25s ease-out;
  -o-transition: width 0.25s ease-out;
  transition: width 0.25s ease-out;
}

.header-link-list .current .main-link:before {
  width: 100%;
}

.header-link-list .main-link .icon {
  display: inline-block;
  position: relative;
  top: 6px;
  margin: 0 9px 0 0;
  vertical-align: top;
}

.header-link-list .set-menu-icon {
  position: relative;
  padding-right: 17px;
}

.header-link-list .set-menu-icon:before, .header-link-list .set-menu-icon:after {
  content: "\e90e";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -2px;
  -webkit-transform: scale(0.7) translateY(-50%);
  -ms-transform: scale(0.7) translateY(-50%);
  transform: scale(0.7) translateY(-50%);
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 10px;
  line-height: 1;
}

.header-link-list .set-menu-icon:after {
  opacity: 0;
  content: "\e902";
}

.megamenu-box {
  overflow: hidden;
  opacity: 0;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 9998;
  margin: 0 0 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  -webkit-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
  pointer-events: none;
}

.megamenu-box:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 100%;
  background-color: #fff;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  -webkit-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
}

.megamenu-inner {
  position: relative;
  z-index: 9;
  max-width: 1080px;
  margin: 0 auto;
  padding: 57px 25px 45px;
}

.megamenu-wrap {
  overflow: hidden;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all .01s;
  -o-transition: all .01s;
  transition: all .01s;
  -webkit-transition-delay: .9s;
  -o-transition-delay: .9s;
  transition-delay: .9s;
}

.megamenu-wrap.scroll {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.megamenu-link-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  opacity: 0;
  -webkit-transform: translateY(10px);
  -ms-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
  -webkit-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
  line-height: 1.5;
}

.megamenu-link-box {
  display: inline-block;
  width: 23.33333%;
  margin: 0 2.22222% 45px 0;
  vertical-align: top;
}

.megamenu-link-box:nth-child(4n) {
  margin-right: 0;
}

.header-link-box-top {
  min-height: 32px;
}

.header-search {
  margin: 8px 26px 0 0;
}

.header-search-icon {
  height: 24px;
  width: 24px;
}

.header-search-icon .icon {
  margin-top: 1px;
  font-size: 12px;
}

.header-link-list-top {
  margin: 0 3px 0 0;
  padding: 12px 0 0 0;
  line-height: 1.5;
  font-size: 0;
}

.header-link-list-top li {
  display: inline-block;
  margin: 0 24px 0 0;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
}

.header-link-list-top .icon-blank {
  display: inline-block;
  font-size: 10px;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0.7);
  -ms-transform: scale(0.7);
  transform: scale(0.7);
}

.header-lang-link {
  margin: 0 22px 0 0;
  line-height: 1.5;
  font-size: 0;
}

.header-lang-link li {
  display: inline-block;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.header-lang-link li + li:before {
  content: "/";
  display: inline-block;
  margin: 12px 9px 0 7px;
  vertical-align: top;
}

.header-lang-link a {
  position: relative;
  padding: 12px 0 0;
}

.header-lang-link a:before {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background-color: #000;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.header-lang-link .current a {
  color: #000;
}

.header-lang-link .current a:before {
  opacity: 1;
}

.header-btn-link-wrap {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
}

.header-btn-link-inner {
  border-top: 8px solid #FFEB00;
  padding-top: 22px;
}

.header-btn-link {
  position: relative;
  width: 256px;
  padding: 10px 18px 11px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.5;
}

.header-btn-link:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #000;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.header-btn-link .main-text {
  position: relative;
  z-index: 9;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 1.7px;
}

.header-btn-link .sub-text {
  position: relative;
  z-index: 9;
  margin: -1px 0 0 1px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1.1px;
}

.header-btn-link .icon {
  position: absolute;
  top: 14px;
  right: 18px;
  z-index: 9;
  font-size: 15px;
  font-size: 1.5rem;
  -webkit-transition: color 0.25s ease-out;
  -o-transition: color 0.25s ease-out;
  transition: color 0.25s ease-out;
}

.fix .header-join-btn-link-wrap {
  top: 0;
  right: 0;
}

.fix .header-join-btn-link {
  min-height: 70px;
  padding: 22px 50px 8px 15px;
  border-top: 6px solid #FFEB00;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.fix .header-join-btn-link:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 6px;
  z-index: 1;
  background: #009BE6;
  width: 0;
  -webkit-transition: width 0.3s ease-out;
  -o-transition: width 0.3s ease-out;
  transition: width 0.3s ease-out;
}

.fix .header-join-btn-link .main-text {
  margin: 0;
}

.fix .header-join-btn-link .main-text br {
  display: none;
}

.fix .header-join-btn-link .sub-text-wrap {
  display: none;
}

.fix .header-join-btn-link .icon02 {
  display: block;
}

.fix .header-join-btn-link .icon,
.fix .header-join-btn-link .icon02 {
  right: 18px;
  margin: 3px 0 0;
}

.header-join-btn-link-wrap {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
}

.header-join-btn-link {
  min-height: 100px;
  width: 260px;
  padding: 8px 12px 12px;
  line-height: 1.45;
  -webkit-transition: color 0.25s ease-out;
  -o-transition: color 0.25s ease-out;
  transition: color 0.25s ease-out;
}

.header-join-btn-link .main-text {
  position: relative;
  z-index: 9;
  margin: 2px 0 10px 0;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.08px;
}

.header-join-btn-link .main-text br {
  display: none;
}

.header-join-btn-link .sub-text-wrap:before {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  bottom: -1px;
  left: 0;
  z-index: 1;
  background: #009BE6;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.header-join-btn-link .sub-text {
  position: relative;
  z-index: 9;
  margin: -1px 0 0 1px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1.1px;
  -webkit-transition: color 0.25s ease-out;
  -o-transition: color 0.25s ease-out;
  transition: color 0.25s ease-out;
}

.header-join-btn-link .sub-text-box {
  padding: 15px 45px 12px 16px;
}

.header-join-btn-link .icon,
.header-join-btn-link .icon02 {
  position: absolute;
  top: 50%;
  right: 13px;
  z-index: 9;
  margin: 1px 0 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 15px;
  font-size: 1.5rem;
  -webkit-transition: color 0.25s ease-out;
  -o-transition: color 0.25s ease-out;
  transition: color 0.25s ease-out;
}

.header-join-btn-link .icon:before,
.header-join-btn-link .icon02:before {
  display: inline-block;
  -webkit-transition: margin 0.25s ease-out;
  -o-transition: margin 0.25s ease-out;
  transition: margin 0.25s ease-out;
}

.header-join-btn-link .icon02 {
  display: none;
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}

.sp-menu-btn {
  display: none;
}

.sp-menu-btn {
  position: absolute;
  top: 0;
  right: 180px;
  height: 100px;
  width: 78px;
  z-index: 9;
  line-height: 1;
  cursor: pointer;
  background: none;
  border-radius: 0;
  -webkit-appearance: none;
  outline: none;
}

.sp-menu-btn.on .bar01,
.sp-menu-btn.on .bar03 {
  top: 8px;
  opacity: 0;
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
}

.sp-menu-btn.on .bar02 {
  top: 10px;
  -webkit-transform: rotate(-45deg) translateY(-50%) translateX(1px);
  -ms-transform: rotate(-45deg) translateY(-50%) translateX(1px);
  transform: rotate(-45deg) translateY(-50%) translateX(1px);
  -webkit-transition-delay: .15s;
  -o-transition-delay: .15s;
  transition-delay: .15s;
}

.sp-menu-btn.on .bar04 {
  top: 10px;
  -webkit-transform: rotate(45deg) translateY(-50%) translateX(-1px);
  -ms-transform: rotate(45deg) translateY(-50%) translateX(-1px);
  transform: rotate(45deg) translateY(-50%) translateX(-1px);
  -webkit-transition-delay: .15s;
  -o-transition-delay: .15s;
  transition-delay: .15s;
}

.sp-menu-btn .bar-box {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  display: block;
  height: 18px;
  width: 38px;
  margin: 0 auto 0;
  vertical-align: top;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.sp-menu-btn .bar {
  position: absolute;
  top: 0;
  left: 0;
  height: 2px;
  width: 100%;
  background-color: #000;
  vertical-align: top;
  -webkit-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s;
}

.sp-menu-btn .bar02,
.sp-menu-btn .bar04 {
  top: 8px;
}

.sp-menu-btn .bar01,
.sp-menu-btn .bar03 {
  -webkit-transition-delay: .15s;
  -o-transition-delay: .15s;
  transition-delay: .15s;
}

.sp-menu-btn .bar03 {
  top: 16px;
}

.header-table {
  padding: 0;
  margin: 0;
}

.header-table .btn-link {
  height: 70px;
}

.header-table .btn-link-cell {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0;
}

.header-table .btn-link-cell .icon-home:before {
  margin: 0 0 7px;
  font-size: 23px;
  font-size: 2.3rem;
}

.header-table .btn-link-cell .icon-mail:before {
  margin: 0 0 8px;
  font-size: 21px;
  font-size: 2.1rem;
}

.search-form-sp-box .search-form-box {
  margin: 20px 0 35px;
}

.search-form-box {
  width: auto;
  margin: 20px 0 30px;
}

.search-form-box .search-box-text {
  height: 40px;
  padding: 0 50px 0 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

.search-form-box .search-box-btn {
  height: 40px;
  width: 40px;
  font-size: 20px;
  font-size: 2rem;
}

.search-form-box .search-box-btn:before {
  top: 8px;
  left: 9px;
}

.logo-sp {
  position: absolute;
  top: 14px;
  left: 16px;
  z-index: 10;
}

.global-search-box {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 99999;
  padding: 0;
}

.global-search-box-side {
  padding: 0 40px;
}

.global-search-wrap {
  padding: 83px 92px 0 0;
}

.global-search-close {
  position: absolute;
  top: 126px;
  right: 0;
  z-index: 9;
  font-size: 31px;
  font-size: 3.155rem;
}

.global-search-text {
  outline: none;
  height: 110px;
  padding: 0 70px 4px 0;
  border: none;
  line-height: 1;
  font-size: 54px;
  font-size: 5.4rem;
}

.global-search-line {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 4px;
  background-color: #000;
}

.global-search-btn {
  position: absolute;
  top: 50%;
  right: 17px;
  margin: 1px 0 0;
  background: none;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 28px;
  font-size: 2.8rem;
}

.global-nav-sp {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 99990;
  padding: 0;
}

.global-nav-sp .nav-inner {
  position: relative;
  z-index: 9;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  background-color: #d4dde1;
}

.global-nav-sp .nav-box {
  position: relative;
  padding: 81px 25px 45px;
}

.global-nav-sp .nav-box:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 4.8%;
  top: 0;
  background: url(../img/common/bg-menu.svg) no-repeat bottom right;
  background-size: contain;
}

.global-nav-sp .sp-menu-btn {
  right: 0;
  height: 55px;
  width: 59px;
  z-index: 9;
}

.global-nav-sp .sp-menu-btn.on .bar01,
.global-nav-sp .sp-menu-btn.on .bar03 {
  top: 8px;
  opacity: 0;
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
}

.global-nav-sp .sp-menu-btn.on .bar02 {
  top: 10px;
  -webkit-transform: rotate(-45deg) translateY(-50%) translateX(1px);
  -ms-transform: rotate(-45deg) translateY(-50%) translateX(1px);
  transform: rotate(-45deg) translateY(-50%) translateX(1px);
  -webkit-transition-delay: .15s;
  -o-transition-delay: .15s;
  transition-delay: .15s;
}

.global-nav-sp .sp-menu-btn.on .bar04 {
  top: 10px;
  -webkit-transform: rotate(45deg) translateY(-50%) translateX(-1px);
  -ms-transform: rotate(45deg) translateY(-50%) translateX(-1px);
  transform: rotate(45deg) translateY(-50%) translateX(-1px);
  -webkit-transition-delay: .15s;
  -o-transition-delay: .15s;
  transition-delay: .15s;
}

.global-nav-sp .sp-menu-btn .bar-box {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  display: block;
  height: 18px;
  width: 25px;
  margin: 1px auto 0;
  vertical-align: top;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.global-nav-sp .sp-menu-btn .bar {
  position: absolute;
  top: 0;
  left: 0;
  height: 2px;
  width: 100%;
  background-color: #000;
  vertical-align: top;
  -webkit-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s;
}

.header-lang-link-sp {
  position: absolute;
  top: 16px;
  right: 74px;
  line-height: 1.5;
  font-size: 0;
}

.header-lang-link-sp li {
  display: inline-block;
  margin: 0 0 0 19px;
  vertical-align: top;
  font-size: 16px;
  font-size: 1.6rem;
}

.header-lang-link-sp a {
  position: relative;
  padding: 0 0 3px;
}

.header-lang-link-sp a:before {
  content: "";
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background-color: #000;
}

.header-lang-link-sp .current a {
  color: #000;
}

.header-lang-link-sp .current a:before {
  opacity: 1;
}

.sp-toggle-btn.on.set-menu-icon a:after {
  opacity: 1;
}

.sp-toggle-btn.on .over-icon {
  opacity: 0;
  visibility: hidden;
}

.global-nav-list-sp {
  margin: 0 0 11px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.8;
}

.global-nav-list-sp a {
  padding: 0 10px 0 0;
}

.global-nav-list-sp li:first-child {
  padding-right: 60px;
}

.global-nav-list-sp .icon {
  display: inline-block;
  position: relative;
  top: 18px;
  margin: 0 0 0 4px;
  vertical-align: top;
}

.global-nav-list-sp .set-menu-icon a {
  padding-right: 34px;
}

.global-nav-list-sp .set-menu-icon a:after {
  opacity: 0;
  content: "\e902";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 17px;
  line-height: 1;
}

.global-nav-list-sp .over-icon {
  right: -10px;
  z-index: 9;
}

.global-nav-list-sp .over-icon:after {
  content: "\e90e";
  display: block;
  position: absolute;
  top: 50%;
  right: 9px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 11px;
  line-height: 1;
}

.global-nav-sub-list-sp {
  margin: 0 0 33px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.8;
}

.global-nav-sub-list-sp a {
  padding: 0 10px 0 0;
}

.global-nav-sub-list-sp li + li {
  margin-top: 5px;
}

.global-nav-sub-list-sp .header-search-sp {
  padding: 0 27px 0 0;
}

.header-search-sp {
  position: relative;
}

.header-search-icon-sp {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -9px;
  height: 18px;
  width: 18px;
}

.header-search-icon-sp .icon {
  margin-top: 1px;
  font-size: 10px;
  -webkit-transform: scale(0.92) translateX(-50%) translateY(-50%);
  -ms-transform: scale(0.92) translateX(-50%) translateY(-50%);
  transform: scale(0.92) translateX(-50%) translateY(-50%);
}

.sp-toggle-box {
  display: none;
}

.sp-toggle-link-inner {
  margin: 14px 0 17px;
  padding: 0 0 0 26px;
  font-size: 22px;
  font-size: 2.2rem;
}

.sp-toggle-link-inner:before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  bottom: 5px;
  width: 8px;
  background-color: #fff;
}

.sp-toggle-link + .sp-toggle-link {
  margin-top: 8px;
}

.header-btn-link-sp {
  display: block;
  position: relative;
  padding: 30px 0 28px;
  line-height: 1.3;
}

.header-btn-link-sp .main-text {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.1em;
}

.header-btn-link-sp .main-text + .sub-text {
  margin-top: 6px;
}

.header-btn-link-sp .sub-text {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
}

.header-btn-link-sp .icon {
  display: block;
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 16px;
  font-size: 1.6rem;
}

@media only screen and (min-width: 768px) {
  .header-link-list .list-elm:hover .main-link:before {
    width: 100%;
  }
  .header-lang-link a:hover:before {
    opacity: 1;
  }
  .header-btn-link:hover:before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  .header-btn-link:hover .icon {
    color: #FFEB00;
  }
  .header-join-btn-link:hover {
    color: #FFEB00;
  }
  .header-join-btn-link:hover:before {
    width: 100%;
  }
  .header-join-btn-link:hover .sub-text-wrap:before {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  .header-join-btn-link:hover .sub-text,
  .header-join-btn-link:hover .icon {
    color: #FFEB00;
  }
  .header-join-btn-link:hover .icon:before,
  .header-join-btn-link:hover .icon02:before {
    margin-right: -10px;
  }
}

@media only screen and (max-width: 1159px) {
  .header-join-btn-link {
    width: 180px;
  }
  .global-header.fix .header-link-box,
  .header-link-box {
    padding-right: 180px;
  }
  .fix .header-join-btn-link {
    padding-top: 13px;
  }
  .fix .header-join-btn-link .main-text br {
    display: inline;
  }
}

@media only screen and (max-width: 1040px) {
  .header-link-box-top,
  .header-link-list {
    display: none;
  }
  .sp-menu-btn {
    display: block;
  }
  .global-header.fix .header-inner {
    background: none;
  }
}

@media only screen and (max-width: 767px) {
  .sp-menu-btn {
    right: 110px;
    height: 60px;
  }
  .global-header {
    width: 100%;
    background-color: #fff;
  }
  .global-header.fix .header-inner {
    overflow: hidden;
    height: 60px;
  }
  .global-header.fix .header-link-list {
    text-align: right;
  }
  .global-header.fix .header-link-box {
    padding: 26px 247px 10px 128px;
  }
  .global-header.fix .header-logo {
    top: 14px;
    left: 16px;
    width: 72px;
  }
  .global-header.fix .sp-menu-btn {
    right: 105px;
  }
  .global-header.fix .header-btn-link-inner {
    padding: 0;
    border-width: 0;
  }
  .global-header.fix .header-link-list li {
    margin: 0 37px 0 0;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .global-header.fix .sp-menu-btn {
    height: 60px;
  }
  .header-inner {
    height: 60px;
  }
  .header-inner:before {
    display: none;
  }
  .header-logo {
    top: 14px;
    left: 16px;
    width: 72px;
    margin: 0;
  }
  .header-btn-link-inner {
    border-top: none;
    padding-top: 0;
  }
  .header-btn-link {
    width: 100px;
    min-height: 65px;
    padding: 25px 0 22px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.5;
    text-align: center;
  }
  .header-btn-link .main-text {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0;
  }
  .header-btn-link .sub-text {
    display: none;
  }
  .header-btn-link .icon {
    display: block;
    position: absolute;
    top: 7px;
    right: 7px;
    font-size: 10px;
    font-size: 1rem;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top;
  }
  .fix .header-join-btn-link {
    width: 105px;
    min-height: 60px;
    padding: 7px 6px 20px 6px;
    line-height: 1.3;
    border-top: none;
  }
  .fix .header-join-btn-link .main-text {
    margin: 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .fix .header-join-btn-link .main-text br {
    display: none;
  }
  .fix .header-join-btn-link .sub-text-wrap {
    display: none;
  }
  .fix .header-join-btn-link .icon02 {
    display: block;
    top: auto;
    right: 7px;
    bottom: 7px;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .header-join-btn-link {
    min-height: inherit;
    width: 110px;
    padding: 8px;
    line-height: 1.45;
    -webkit-transition: color 0.25s ease-out;
    -o-transition: color 0.25s ease-out;
    transition: color 0.25s ease-out;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .header-join-btn-link .main-text {
    margin: -3px 0 16px -1px;
    font-size: 11px;
    font-size: 1.1rem;
    letter-spacing: 0.05em;
  }
  .header-join-btn-link .main-text br {
    display: block;
  }
  .header-join-btn-link .sub-text-wrap:before {
    display: none;
  }
  .header-join-btn-link .sub-text {
    position: relative;
    z-index: 9;
    margin: -1px 0 0 0;
    font-size: 9px;
    font-size: 0.9rem;
    letter-spacing: 0.7px;
  }
  .header-join-btn-link .sub-text-box {
    padding: 9px 22px 9px 6px;
  }
  .header-join-btn-link .icon,
  .header-join-btn-link .icon02 {
    right: 7px;
    margin: 1px 0 0;
    -webkit-transform: translateY(-50%) scale(0.9);
    -ms-transform: translateY(-50%) scale(0.9);
    transform: translateY(-50%) scale(0.9);
    font-size: 10px;
    font-size: 1rem;
  }
  .global-search-box-side {
    padding: 0 0 0 25px;
  }
  .global-search-wrap {
    padding: 38px 0 0 0;
  }
  .global-search-close {
    top: 19px;
    right: 20px;
    right: 19.6px;
    font-size: 20px;
    font-size: 2rem;
  }
  .global-search-text {
    height: 66px;
    padding: 0 50px 0 0;
    font-size: 20px;
    font-size: 2rem;
  }
  .global-search-btn {
    right: 19px;
    margin: 2px 0 0;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

/* footer
----------------------------------------------------------*/
.global-footer {
  border-top: 1px solid #E3E3E3;
  line-height: 1.7;
}

.global-footer .foot01 {
  padding: 157px 0 97px 25.55556%;
}

.global-footer .logo {
  position: absolute;
  top: 160px;
  left: 0;
}

.global-footer .foot02 {
  padding: 0 0 0 384px;
}

.global-footer .logo-area {
  opacity: 0;
  position: relative;
  height: 110px;
}

.global-footer .logo02 {
  position: absolute;
  top: 50%;
  right: 95px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 3px 256px 0 0;
}

.global-footer .logo03 {
  position: absolute;
  top: 60px;
  right: 11.31841%;
}

.footer-link-box {
  margin: 0 0 60px;
}

.footer-link-box .right-box {
  width: 31.34328%;
  margin: 1px 0 0;
}

.footer-link-box .left-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 68.65672%;
}

.footer-link-box02 {
  min-height: 80px;
  padding: 0 270px 0 0;
}

.footer-sns-link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 160px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.footer-sns-link a {
  display: block;
}

.footer-sns-link .icon {
  display: block;
  width: 2.6rem;
  line-height: 1;
}

.footer-sns-link img {
  height: auto;
  width: 100%;
}

.footer-link-list {
  width: 50%;
  padding: 0 5% 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
}

.footer-link-list li + li {
  margin-top: 19px;
}

.footer-link-sub-list {
  max-width: 380px;
  margin: 0 0 39px;
}

.footer-link-sub-list li {
  display: inline-block;
  margin: 0 0 14px;
  vertical-align: top;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}

.footer-link-sub-list li:after {
  content: "/";
  margin: 0 8px 0 16px;
}

.footer-link-sub-list li:last-child:after {
  display: none;
}

.footer-link-list a[target="_blank"]:after,
.footer-link-sub-list a[target="_blank"]:after {
  content: "";
  display: inline-block;
  height: 9px;
  width: 10px;
  margin: 1px 7px 0 6px;
  background: url(../img/common/icon-blank.png) no-repeat top left;
  background-size: 10px auto;
  vertical-align: top;
}

.copyright {
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 1.24px;
}

.pagetop {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 9;
  line-height: 1;
}

.pagetop a {
  height: 110px;
  width: 352px;
  font-size: 70px;
}

.pagetop a:before {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 9;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  margin: 0;
  -webkit-transition: margin .3s ease-out;
  -o-transition: margin .3s ease-out;
  transition: margin .3s ease-out;
}

.pagetop a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #58606b;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform .3s ease-out;
  transition: -webkit-transform .3s ease-out;
  -o-transition: transform .3s ease-out;
  transition: transform .3s ease-out;
  transition: transform .3s ease-out, -webkit-transform .3s ease-out;
}

.global-q-btn {
  position: fixed;
  bottom: 22px;
  left: 19px;
  z-index: 100;
  -webkit-transition: all 1s cubic-bezier(0.69, 0.01, 0.39, 0.99);
  -o-transition: all 1s cubic-bezier(0.69, 0.01, 0.39, 0.99);
  transition: all 1s cubic-bezier(0.69, 0.01, 0.39, 0.99);
}

.global-q-btn.hide {
  opacity: 0;
  visibility: hidden;
}

.global-q-open .global-q-area {
  visibility: visible;
  width: 250vw;
  height: 250vw;
  margin: 0 0 -125vw -125vw;
}

.global-q-open .global-q-area .global-q-close {
  visibility: visible;
}

.global-q-area {
  visibility: hidden;
  overflow: hidden;
  position: fixed;
  bottom: 46px;
  left: 43px;
  z-index: 99990;
  height: 0;
  width: 0;
  margin: 0;
  border-radius: 50%;
  -webkit-transition: all .35s ease-out;
  -o-transition: all .35s ease-out;
  transition: all .35s ease-out;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.global-q-area-inner {
  position: absolute;
  bottom: 50%;
  left: 50%;
  z-index: 99991;
  height: 100vh;
  width: 100vw;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 -46px -43px;
  background-image: url(../img/common/bg-q.svg);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 88% auto;
}

.global-q-area-inner.type-footer {
  position: relative;
  bottom: auto;
  left: auto;
  margin: 0;
  z-index: 10;
  height: auto;
}

.global-q-area-inner.type-footer .nav-inner {
  overflow: hidden;
  height: auto;
}

.global-q-area-inner .nav-inner {
  position: relative;
  z-index: 9;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
}

.global-q-text {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.1;
}

.global-q-close {
  visibility: hidden;
  position: fixed;
  bottom: 22px;
  left: 19px;
  z-index: 9;
  height: 58px;
  width: 58px;
  font-size: 26px;
  font-size: 2.63rem;
}

.global-q-close .icon-close {
  margin-top: 2px;
}

@media only screen and (min-width: 768px) {
  .pagetop a:hover:before {
    margin-top: -5px;
  }
  .pagetop a:hover:after {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  .footer-link-box02 {
    padding-top: 59px;
    border-top: 2px solid #E0E1E1;
  }
}

@media only screen and (max-width: 767px) {
  .global-footer {
    line-height: 1.7;
  }
  .global-footer .foot01 {
    padding: 246px 25px 73px 23px;
  }
  .global-footer .logo {
    top: 79px;
    left: 24px;
    width: 70px;
  }
  .global-footer .logo img {
    width: 100%;
  }
  .global-footer .foot02 {
    position: relative;
    padding: 0;
  }
  .global-footer .logo-area {
    opacity: 1;
    height: auto;
    background-color: #E3E3E3;
  }
  .global-footer .logo02 {
    display: block;
    position: static;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    margin: 0;
    padding: 26px 25px 23px 23px;
    width: 110px;
  }
  .footer-link-box {
    margin: 0 0 46px;
  }
  .footer-link-box .right-box {
    position: absolute;
    top: 80px;
    left: 51.73333%;
    width: auto;
    margin: 0;
  }
  .footer-link-box .left-box {
    width: auto;
  }
  .footer-link-box02 {
    min-height: inherit;
    padding: 0;
  }
  .footer-sns-link {
    width: 124px;
    max-width: 124px;
    font-size: 10px;
    font-size: 1rem;
  }
  .footer-sns-link .icon {
    width: 2.8rem;
  }
  .footer-sns-link img {
    width: 28px;
  }
  .footer-link-list {
    width: 53%;
    padding: 0 5% 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0;
  }
  .footer-link-list li + li {
    margin-top: 25px;
  }
  .footer-link-list + .footer-link-list {
    width: 47%;
    padding: 0;
  }
  .footer-link-sub-list {
    max-width: inherit;
    margin: 0 0 24px;
  }
  .footer-link-sub-list li {
    margin: 0 0 9px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .footer-link-sub-list li:after {
    margin: 0 8px 0 12px;
  }
  .copyright {
    font-size: 10px;
    font-size: 1rem;
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    letter-spacing: 1.04px;
  }
  .pagetop {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 9;
    width: 62px;
    line-height: 1;
  }
  .pagetop a {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: auto;
    width: auto;
    font-size: 35px;
  }
  .pagetop a:before {
    margin: 0;
  }
  .global-q-open .global-q-area {
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .global-q-btn {
    bottom: 13px;
    left: 11px;
    width: 44px;
  }
  .global-q-area {
    bottom: 35px;
    left: 33px;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .global-q-area-inner {
    margin: 0 0 -35px -33px;
    background-image: url(../img/common/bg-q-sp.svg);
    background-size: 100% auto;
  }
  .global-q-text {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.2;
  }
  .global-q-close {
    bottom: 13px;
    left: 11px;
    height: 44px;
    width: 44px;
    font-size: 19px;
    font-size: 1.95rem;
  }
  .global-q-close .icon-close {
    margin-top: 1px;
  }
}

.fw-mid {
  font-weight: 500;
}

.fw-b {
  font-weight: bold;
}

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

@font-face {
  font-family: 'icon';
  src: url("../fonts/icomoon.woff?6xm8s7") format("woff");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  line-height: 1;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
}

.icon-fb02:before {
  content: "\e916";
}

.icon-line02:before {
  content: "\e917";
}

.icon-tw02:before {
  content: "\e930";
}

.icon-fb:before {
  content: "\e912";
}

.icon-insta:before {
  content: "\e913";
}

.icon-note:before {
  content: "\e914";
}

.icon-tw:before {
  content: "\e915";
}

.icon-arrow-b:before {
  content: "\e911";
}

.icon-next:before {
  content: "\e90f";
}

.icon-prev:before {
  content: "\e910";
}

.icon-menu:before {
  content: "\e90e";
}

.icon-search:before {
  content: "\e90d";
}

.icon-dl:before {
  content: "\e90b";
}

.icon-file:before {
  content: "\e90c";
}

.icon-arrow-l02:before {
  content: "\e908";
}

.icon-arrow-r05:before {
  content: "\e909";
}

.icon-plus:before {
  content: "\e90a";
}

.icon-arrow-l01:before {
  content: "\e907";
}

.icon-blank:before {
  content: "\e906";
}

.icon-arrow-r01:before {
  content: "\e900";
}

.icon-arrow-r02:before {
  content: "\e901";
}

.icon-arrow-r03:before {
  content: "\e902";
}

.icon-arrow-r04:before {
  content: "\e903";
}

.icon-arrow-t01:before {
  content: "\e904";
}

.icon-close:before {
  content: "\e905";
}

/* contents
----------------------------------------------------------*/
.wrapper {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}

.contents {
  margin-top: 100px;
}

.ct-inner {
  max-width: 1024px;
  margin: 0 auto;
}

.ct-inner-344 {
  max-width: 344px;
  margin: 0 auto;
}

.ct-inner-850 {
  max-width: 850px;
  margin: 0 auto;
}

.ct-inner-896 {
  max-width: 896px;
  margin: 0 auto;
}

.ct-inner-980 {
  max-width: 980px;
  margin: 0 auto;
}

.ct-inner-1026 {
  max-width: 1026px;
  margin: 0 auto;
}

.ct-inner-1080 {
  max-width: 1080px;
  margin: 0 auto;
}

.ct-inner-1220 {
  max-width: 1220px;
  margin: 0 auto;
}

.ct-inner-1280 {
  max-width: 1280px;
  margin: 0 auto;
}

.ct-inner-2060 {
  margin: 0 auto;
}

.ct-side-space {
  padding-left: 7.8125%;
  padding-right: 7.8125%;
}

.ct-side-space-lg {
  padding-left: 15%;
  padding-right: 15%;
}

.ct-side-space-lg02 {
  padding-left: 22.1875%;
  padding-right: 22.1875%;
}

@media only screen and (min-width: 768px) {
  .ct-inner-1080,
  .ct-inner-1026 {
    max-width: inherit;
  }
  .single-col2-left .text-set .ct-inner-850 {
    max-width: inherit;
    width: 95%;
  }
  [class^="ct-inner-"], [class*=" ct-inner-"] {
    max-width: inherit !important;
  }
  .modal-message-slider .ct-inner-1026 {
    max-width: 1026px !important;
  }
}

@media only screen and (min-width: 1920px) {
  [class^="ct-inner-"], [class*=" ct-inner-"] {
    max-width: 1920px !important;
  }
  [class^="ct-inner-2060"], [class*=" ct-inner-2060"] {
    max-width: 2060px !important;
  }
}

@media only screen and (max-width: 1000px) {
  .ct-side-space-lg {
    padding-left: 7.8125%;
    padding-right: 7.8125%;
  }
  .ct-side-space-lg02 {
    padding-left: 15%;
    padding-right: 15%;
  }
}

@media only screen and (max-width: 767px) {
  .contents {
    margin-top: 60px;
  }
  .ct-side-space,
  .ct-side-space-sp,
  .ct-side-space-lg,
  .ct-side-space-lg02 {
    padding-left: 6.66667%;
    padding-right: 6.66667%;
  }
  .ct-side-space-sp-0 {
    padding-left: 0;
    padding-right: 0;
  }
  .ct-side-space-sp-62 {
    padding-left: 16.53333%;
    padding-right: 16.53333%;
  }
  .ct-inner-344 {
    max-width: 250px;
  }
}

.ct-icon-blank:after {
  content: "\e906";
  margin: 0 0 0 1.7rem;
  vertical-align: super;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 9px;
  font-size: 0.9rem;
}

.ct-icon-blank-lg:after {
  content: "\e906";
  margin: 0 0 0 0.8rem;
  vertical-align: middle;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 10px;
  font-size: 1rem;
}

.ct-icon-blank02:after {
  content: "";
  display: inline-block;
  height: 7px;
  width: 8px;
  margin: 0.3rem 0 0 0.3rem;
  background: url(../img/common/icon-blank.svg) no-repeat;
  background-size: 8px 7px;
  vertical-align: top;
}

.ct-link-text {
  position: relative;
  display: inline-block;
  min-width: 162px;
  padding: 10px 25px 10px 0;
  border-bottom: 2px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.7px;
  line-height: 1.5;
}

.ct-link-text:before {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.ct-link-text:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  z-index: 4;
  height: 2px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.ct-link-btn {
  position: relative;
  padding: 13px 45px 11px 16px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.8px;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.ct-link-btn.bg-gray03:after {
  background: #000;
}

.ct-link-btn:before {
  position: absolute;
  display: block;
  top: 50%;
  right: 14px;
  z-index: 9;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.ct-link-btn:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #58606b;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.ct-link-btn.type-lg {
  padding: 25px 45px 21px 16px;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.ct-link-btn.type-bd {
  border: 2px solid #000;
  background: none;
  color: #000;
}

.ct-link-btn.type-bd:before {
  color: #58606b;
}

.ct-link-btn.type-bd:after {
  display: none;
}

.ct-link-btn.type-line {
  border-bottom: 2px solid #000;
  background: none;
  color: #000;
}

.ct-link-btn.type-line:before {
  color: #58606b;
}

.ct-link-btn.type-line:after {
  top: auto;
  right: auto;
  bottom: -2px;
  height: 2px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.ct-link-btn.type-line02 {
  padding: 13px 30px 13px 0;
  font-size: 14px;
  font-size: 1.4rem;
}

.ct-link-btn.type-line02:before {
  right: 10px;
  color: #d4dde1;
  font-size: 10px;
}

@media only screen and (min-width: 768px) {
  .ct-link-text:hover:before {
    margin-right: -10px;
  }
  .ct-link-text:hover:after {
    width: 100%;
  }
  .ct-link-btn:hover:before {
    margin-right: -10px;
  }
  .ct-link-btn:hover:after {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  .ct-link-btn:hover.type-bd {
    border-color: #58606b;
    color: #58606b;
  }
  .ct-link-btn:hover.type-bd:before {
    margin-right: 0;
  }
  .ct-link-btn:hover.type-line:before {
    margin-right: 0;
  }
  .ct-link-btn:hover.type-line:after {
    width: 100%;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .ct-link-btn:hover.type-line02:before {
    margin-right: -10px;
    color: #000;
  }
}

@media only screen and (max-width: 767px) {
  .ct-icon-blank:after {
    display: inline-block;
    position: relative;
    top: 0.3rem;
    margin: 0 0 0 0.6rem;
    vertical-align: super;
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    font-size: 1px;
    font-size: 1rem;
  }
  .ct-link-btn {
    padding: 7px 30px 7px 8px;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.5px;
  }
  .ct-link-btn.bg-gray03:after {
    background: #000;
  }
  .ct-link-btn:before {
    right: 10px;
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
    transform: translateY(-50%) scale(0.8);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
  }
  .ct-link-btn.type-lg {
    padding: 14px 40px 12px 15px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .ct-link-btn.type-lg:before {
    right: 14px;
  }
  .ct-link-btn.type-sp-lg {
    padding: 14px 40px 12px 10px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .ct-link-btn.type-sp-lg:before {
    right: 15px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .ct-link-btn.type-bd {
    border: 2px solid #000;
  }
  .ct-link-btn.type-line {
    border-bottom: 2px solid #000;
  }
  .ct-link-btn.type-line:after {
    bottom: -1px;
    height: 1px;
  }
}

.anime-label-line-text {
  display: inline-block;
  position: relative;
  vertical-align: top;
}

.anime-label-line-text.start .anime-label-line-text-wrap:after {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
}

.anime-label-line-text.end .anime-label-line-text-main {
  opacity: 1;
}

.anime-label-line-text.end .anime-label-line-text-wrap:after {
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right;
}

.anime-label-line-text.type-black .anime-label-line-text-wrap:after {
  background-color: #D4DDE2;
}

.anime-label-line-text.type-black02 .anime-label-line-text-wrap:after {
  background-color: #58606b;
}

.anime-label-line-text.type-vertical .anime-label-line-text-wrap:after {
  -webkit-transform: scale(1, 0);
  -ms-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right;
}

.anime-label-line-text.type-vertical.start .anime-label-line-text-wrap:after {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
}

.anime-label-line-text.type-vertical.end .anime-label-line-text-wrap:after {
  -webkit-transform: scale(1, 0);
  -ms-transform: scale(1, 0);
  transform: scale(1, 0);
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right;
}

.anime-label-line-text.type-right .anime-label-line-text-wrap:after {
  -webkit-transform-origin: top right;
  -ms-transform-origin: top right;
  transform-origin: top right;
}

.anime-label-line-text.type-right.end .anime-label-line-text-wrap:after {
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
}

.anime-label-line-text .anime-label-line-text-wrap {
  display: block;
}

.anime-label-line-text .anime-label-line-text-wrap:after {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -1px;
  right: -1px;
  z-index: 9;
  background-color: #fff;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
  -webkit-transition: -webkit-transform 0.5s ease-out;
  transition: -webkit-transform 0.5s ease-out;
  -o-transition: transform 0.5s ease-out;
  transition: transform 0.5s ease-out;
  transition: transform 0.5s ease-out, -webkit-transform 0.5s ease-out;
}

.anime-label-line-text .anime-label-line-text-main {
  display: block;
  opacity: 0;
}

.obj-box-wrap {
  overflow: hidden;
  position: relative;
}

.obj-box-inner {
  overflow: hidden;
  height: 0%;
  -webkit-transition: height 1s ease-out;
  -o-transition: height 1s ease-out;
  transition: height 1s ease-out;
}

.obj-box-inner.start {
  height: 100%;
}

.obj-box-inner.lg-obj {
  -webkit-transition: height 1.5s ease-out;
  -o-transition: height 1.5s ease-out;
  transition: height 1.5s ease-out;
}

/* top
----------------------------------------------------------*/
.top-wrapper .global-header {
  height: 100px;
  background: none;
}

.top-wrapper .global-header.fix {
  height: 70px;
  background-color: #fff;
}

.top-wrapper .header-inner:before {
  display: none;
}

.top-wrapper .header-logo {
  margin: 0;
}

.top-wrapper .contents {
  position: relative;
  z-index: 9;
  margin-top: 100px;
}

.top-wrapper .global-footer {
  background-color: #fff;
}

.load-line-anime {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  background-color: #fff;
}

.fix .btn-load-line-anime {
  top: 0;
}

.btn-load-line-anime {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 10;
}

.top-main-bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  height: 562px;
  height: 100vh;
  width: 100%;
  margin: 0 auto;
}

.top-main-bg-img {
  background-position: bottom right;
}

.top-fix-ttl {
  position: fixed;
  bottom: 29px;
  z-index: 150;
  margin: 0 0 0 5px;
  padding: 0 0 0 25px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.top-fix-ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9;
}

.hv-fix-text-area {
  display: none;
  position: fixed;
  z-index: 148;
  pointer-events: none;
}

.hv-fix-text-area-text {
  max-width: 1100px;
  font-size: 120px;
  font-size: 12rem;
  line-height: 1.2;
}

.top-main-area {
  min-height: 630px;
  min-height: calc(100vh - 60px);
}

.top-main-area-bg-box {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  min-height: 100vh;
  width: 100vw;
}

.top-main-area-bg-box .bg-box {
  background-repeat: no-repeat;
  background-size: 744px auto;
  background-position: left top;
}

.top-main-area-bg-box .bg-box.type-s {
  background-image: url(../img/top/bg-s.svg);
}

.top-main-area-bg-box .bg-box.type-q {
  background-image: url(../img/top/bg-q.svg);
}

.top-main-area-bg-box .bg-box.type-w {
  background-image: url(../img/top/bg-w.svg);
}

.top-main-area-bg-box .bg-box.type-question {
  background-image: url(../img/top/bg-question.svg);
}

@media only screen and (min-width: 768px) {
  .top-main-area-bg-box .bg-box.type-s {
    background-size: 774px 1117px;
  }
  .top-main-area-bg-box .bg-box.type-q {
    background-size: 744px 717px;
  }
  .top-main-area-bg-box .bg-box.type-w {
    background-size: 744px 731px;
  }
  .top-main-area-bg-box .bg-box.type-question {
    background-size: 744px 781px;
  }
}

.top-main-ttl {
  position: absolute;
  top: 0;
  left: 24px;
}

.top-main-scroll-line-box {
  opacity: 0;
  position: absolute;
  bottom: 59px;
  right: 54px;
  z-index: 150;
  height: 152px;
  width: 2px;
}

.top-main-scroll-line {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 100%;
  background: #000;
}

.top-main-pager {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 2px;
  right: 0;
  z-index: 130;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.top-main-pager .pager-elm {
  position: relative;
  height: 50px;
  width: 50px;
  margin: 0 2px 0 0;
  line-height: 1;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.top-main-pager .num {
  z-index: 9;
}

.top-main-pager .icon {
  margin-top: 1px;
  font-size: 10px;
  font-size: 1rem;
}

.top-main-pager .icon:before {
  display: inline-block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #d4dde1;
}

.top-main-pager .top-main-pager-meter {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  background: #FFEB00;
}

.top-main-slider .slide-elm {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.top-main-slider .slide-active {
  z-index: 100;
}

.top-main-slider .slide-next {
  z-index: 110;
}

.top-main-slider .slide-next .top-main-slider-img-box {
  overflow: hidden;
  width: 0;
}

.top-main-slider .top-main-slider-img-box,
.top-main-slider .top-main-slider-img {
  height: 630px;
  height: calc(100vh - 60px);
}

.top-main-slider .text-box {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9;
  padding: 0 0 40px;
}

.top-main-slider .label-text {
  margin: 0 0 27px;
}

.top-main-slider .label {
  min-width: 172px;
  padding: 2px 20px 14px 0;
  line-height: 1.2;
}

.top-main-slider .date-text-box {
  position: relative;
  margin: 0 0 9px;
}

.top-main-slider .hide-text {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9;
}

.top-main-slider .hide-text .bg-white {
  background-color: #FFEB00;
}

.top-main-slider .date-text + .date-text p {
  padding-right: 12px;
}

.top-main-slider .date-text p {
  padding: 3px 7px 7px 0;
}

.top-main-slider .date-text01 {
  font-size: 34px;
  font-size: 3.4rem;
}

.top-main-slider .date-text02 {
  position: relative;
  top: -2px;
  margin: 0 0 0 1px;
  letter-spacing: 0.8px;
  font-size: 16px;
  font-size: 1.6rem;
}

.top-main-slider .date-text03 {
  padding: 0 0 0 3px;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 1px;
}

.top-main-slider .hide-text-label:after {
  content: attr(data-text) "";
}

.top-main-slider .post-ttl {
  max-width: 700px;
  margin: 0 0 20px;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.4;
}

.top-main-slider .label-white {
  padding: 6px 0 7px;
  background: -webkit-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
}

.top-main-slider .main-text-box {
  padding: 0 2.15827%;
}

.top-main-slider .sub-text-box {
  opacity: 0;
  margin: 0 0 -40px;
  padding: 22px 100px 61px 2.15827%;
  background-color: rgba(0, 0, 0, 0.3);
}

.top-main-slider .text {
  max-width: 730px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.1em;
}

.top-main-area-inner {
  padding: 0 0 0 168px;
}

.top-news-area {
  padding: 1px 0 0;
}

.top-news-area-inner {
  position: relative;
  z-index: 200;
  max-width: 1088px;
  padding: 0 0 0 162px;
  margin-top: -41px;
}

.top-news-area-inner .left-box {
  padding: 36px 0 0;
  width: 22.6087%;
}

.top-news-area-inner .right-box {
  min-height: 170px;
  width: 77.3913%;
  padding: 40px 164px 30px 0;
}

.top-news-area-inner .right-box:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  background-color: #fff;
}

.top-news-area-inner .main-ttl {
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.top-news-area-inner .list-link {
  margin: 6px 0 0;
  line-height: 1.5;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.top-news-area-inner .list-link .icon {
  margin: 0 0 0 5px;
  font-size: 10px;
  font-size: 1rem;
}

.top-news-slider .slick-slide > div {
  vertical-align: top;
}

.top-news-slider .slide-elm {
  display: none;
  padding-right: 20px;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.top-news-slider .slide-elm:first-child {
  display: block;
}

.top-news-slider .post-ttl {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.032;
  line-height: 1.6;
}

.news-slider-pager {
  position: absolute;
  bottom: 31px;
  right: 9px;
  z-index: 9;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.news-slider-pager .pager-elm {
  position: relative;
  height: 46px;
  width: 46px;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

.news-slider-pager .pager-elm.disabled {
  opacity: 1 !important;
}

.news-slider-pager .pager-elm.disabled .icon:before {
  color: #d4dde1;
}

.news-slider-pager .num {
  z-index: 9;
}

.news-slider-pager .icon {
  margin-top: 1px;
  font-size: 10px;
  font-size: 1rem;
}

.news-slider-pager .icon:before {
  display: inline-block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.cursor-img {
  position: fixed;
  z-index: 20;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  margin: -75px 0 0 -75px;
  pointer-events: none;
}

.on-mouse.cursor-img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 0.25s ease-in-out;
  transition: -webkit-transform 0.25s ease-in-out;
  -o-transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out, -webkit-transform 0.25s ease-in-out;
}

.top-about-area {
  position: relative;
  z-index: 9;
}

.top-about-area .top-about-pc-link {
  cursor: none;
}

.top-about-area .img-cell {
  width: 40%;
  padding: 36px 0 0;
}

.top-about-area .ttl-catch {
  position: absolute;
  z-index: 9;
  top: 122px;
  right: 47.85156%;
  margin: 0 -10px 0 0;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.85;
  letter-spacing: 4.8px;
}

.top-about-area .ttl-catch-text {
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.top-about-area .bg-img {
  top: auto;
}

.top-about-area .text-box {
  margin: -24px 0 -24px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 2.5;
}

.top-about-area .text-box p + p {
  margin-top: 39px;
}

.top-about-area .text-box p {
  text-align: justify;
  letter-spacing: 0.15px;
}

.top-topics-area-inner {
  padding: 0 0 0 10%;
}

.top-qq-main-link.type-event {
  margin: 0 0 120px;
}

.top-qq-main-link.type-event .img {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
  background-blend-mode: normal;
}

.top-qq-main-link.type-event .img:before, .top-qq-main-link.type-event .img:after,
.top-qq-main-link.type-event .img .overlay {
  display: none;
}

.top-qq-main-link.type-event .img-box {
  overflow: hidden;
  padding-top: 75%;
}

.top-qq-main-link.type-event .text-box {
  width: 30.55556%;
  padding: 87px 0 0;
}

.top-qq-main-link.type-event .status-label {
  min-height: 40px;
  width: 146px;
  margin: 0 0 25px;
  padding: 4px 4px 4px;
  line-height: 1;
  font-size: 18px;
  font-size: 1.8rem;
}

.top-qq-main-link.type-event .date {
  margin: 0 0 38px;
}

.top-qq-main-link.type-event .date-sub {
  margin: 22px 0 0;
}

.top-qq-main-link.type-event .date-text03 {
  font-size: 30px;
  font-size: 3rem;
}

.top-qq-main-link.type-event .ttl-box {
  margin: 0 -96.59091% 0 0;
}

.top-qq-main-link.type-event .ttl {
  margin: 0 0 35px;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.4;
  letter-spacing: 0;
}

.top-qq-main-link.type-event .ttl .label-white {
  padding: 2px 0 13px;
}

.top-qq-main-link.type-event .white-tag-list {
  margin: 0 0 18px;
}

.top-qq-main-link.type-event .white-tag-list li {
  font-size: 18px;
  font-size: 1.8rem;
}

.top-qq-main-link.type-event .white-tag-list .text {
  padding: 0 8px 2px 3px;
}

.top-qq-main-link.type-event .lead-text {
  max-width: 1026px;
  margin: 33px 0 0;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
  letter-spacing: 1.2px;
}

.top-qq-main-link.type-event .pc-link {
  max-width: 1026px;
  width: 58.50694%;
  margin: 27px 0 0 30.55556%;
}

.top-qq-main-link:after {
  content: "";
  display: none;
  height: 4px;
  width: 33.33333%;
  margin: 66px 0 0;
  background-color: #000;
}

.top-qq-main-link .img-box {
  overflow: hidden;
  padding-top: 89.84375%;
}

.top-qq-main-link .icon-q {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 7;
  width: 110.67708%;
  margin: 0 0 16.01562%;
}

.top-qq-main-link .img {
  -webkit-filter: grayscale(20%);
  filter: grayscale(20%);
  background-blend-mode: screen;
}

.top-qq-main-link .img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  background-color: #00a0e9;
  mix-blend-mode: hue;
}

.top-qq-main-link .img:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  background-color: rgba(0, 155, 255, 0.85);
  mix-blend-mode: screen;
}

.top-qq-main-link .img .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 6;
  background-color: rgba(0, 161, 235, 0.75);
  mix-blend-mode: color;
}

.top-qq-main-link .text-box {
  position: relative;
  z-index: 9;
  width: 33.33333%;
  padding: 80px 0 0;
}

.top-qq-main-link .area-ttl {
  margin: 0 0 53px;
}

.top-qq-main-link .ttl-box {
  margin: 0 -166.66667% 0 0;
}

.top-qq-main-link .label-white {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
}

.top-qq-main-link .cat {
  margin: 0 0 16px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.top-qq-main-link .cat .label-white {
  padding: 2px 0;
}

.top-qq-main-link .sub-ttl {
  margin: 0 0 15px;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.35;
  letter-spacing: 1.9px;
}

.top-qq-main-link .sub-ttl .label-white {
  padding: 0 0 8px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(8%, transparent), color-stop(8%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
}

.top-qq-main-link .ttl {
  margin: 0 0 70px;
  font-size: 59px;
  font-size: 5.9rem;
  line-height: 1.35;
  letter-spacing: 3px;
}

.top-qq-main-link .ttl .label-white {
  padding: 5px 0 19px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
}

.top-qq-main-link .date-sub {
  margin: 9px 0 0;
}

.top-qq-main-link .date-text01 {
  font-size: 60px;
  font-size: 6rem;
}

.top-qq-main-link .date-text02 {
  display: inline-block;
  position: relative;
  top: -1px;
  padding: 0 0 0 6px;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 1.1px;
}

.top-qq-main-link .date-text03 {
  font-size: 40px;
  font-size: 4rem;
}

.top-qq-main-link .lead-text {
  max-width: 1024px;
  margin: 36px 0 0;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 1.6px;
}

.top-qq-main-link .pc-link {
  max-width: 1024px;
  width: 55.55556%;
  margin: 16px 0 0 33.33333%;
}

.top-qq-main-link .pc-link .ct-link-text {
  padding: 18px 49px 18px 0;
  border-width: 4px;
  text-align: right;
}

.top-qq-main-link .pc-link .ct-link-text:before {
  right: 9px;
}

.top-qq-main-link .pc-link .ct-link-text:after {
  bottom: -4px;
  height: 4px;
}

.topics-link-area {
  position: relative;
  margin: 91px 0 0;
  padding: 39px 0 64px;
}

.top-topics-link-list-head {
  padding: 0 0 20px;
}

.top-topics-link-list-head .date-cell {
  width: 33.33333%;
}

.top-topics-link-list {
  position: relative;
}

.top-topics-link-list .list-elm {
  position: relative;
  z-index: 9;
  border-top: 1px solid #000;
}

.top-topics-link-list a {
  position: relative;
  padding: 0.7rem 0 0;
}

.top-topics-link-list .date-cell {
  width: 33.33333%;
  padding: 1.3rem 0 0;
}

.top-topics-link-list .bg-label-elm {
  position: relative;
}

.top-topics-link-list .bg-label-elm:after {
  content: attr(data-text) "";
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.top-topics-link-list .bg-label-elm-show-text:after {
  content: attr(data-text) "";
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.top-topics-link-list .bg-label-text-box {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.top-topics-link-list .bg-label-text {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.top-topics-link-list .date {
  display: inline-block;
  position: relative;
  margin: 0 0 14px;
  letter-spacing: 0.9px;
}

.top-topics-link-list .date .bg-label-text {
  padding: 18px 0 5px;
}

.top-topics-link-list .cat {
  margin: 0 0 20px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 1.3px;
}

.top-topics-link-list .cat + .cat {
  margin-top: -20px;
}

.top-topics-link-list .cat .bg-label-text {
  padding: 3px 0 0;
}

.top-topics-link-list .text-box {
  position: relative;
  padding: 0 0 11.3rem;
}

.top-topics-link-list .text-box .icon {
  position: absolute;
  bottom: 54px;
  left: 0;
  font-size: 14px;
  font-size: 1.4rem;
}

.top-topics-link-list .sub-ttl,
.top-topics-link-list .ttl {
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.9px;
}

.top-topics-link-list .sub-ttl .bg-label-text,
.top-topics-link-list .ttl .bg-label-text {
  padding: 5px 0 16px;
}

.top-topics-link-list .ttl {
  letter-spacing: 1.3px;
}

.top-topics-link-list .pc-link {
  max-width: 1024px;
  width: 55.55556%;
  margin: 0 0 57px 33.33333%;
}

.top-topics-link-list .pc-link .ct-link-text {
  padding: 18px 49px 18px 0;
  border-width: 4px;
  text-align: right;
}

.top-topics-link-list .pc-link .ct-link-text:before {
  right: 9px;
}

.top-topics-link-list .pc-link .ct-link-text:after {
  bottom: -4px;
  height: 4px;
}

.top-topics-bg-img-box {
  position: absolute;
  top: 0;
  right: 50%;
  left: -11.11111%;
  padding-top: 107.8125%;
}

.top-topics-bg-img {
  opacity: 0;
  bottom: auto;
  -webkit-filter: brightness(130%);
  filter: brightness(130%);
  mix-blend-mode: darken;
  padding-top: 107.8125%;
  background-position: top right;
}

.top-topics-bg-img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9;
  background-color: #ffbc00;
  mix-blend-mode: lighten;
}

.top-btn-inner {
  max-width: 344px;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .top-topics-link-list a:hover .bg-label-text-box {
    opacity: 1;
  }
  .top-topics-link-list a:hover .bg-label-elm:after {
    opacity: 0;
  }
  .top-main-pager-prev:hover .icon:before,
  .news-slider-prev:not(.disabled):hover .icon:before {
    margin-right: 5px;
    color: #000;
  }
  .top-main-pager-next:hover .icon:before,
  .news-slider-next:not(.disabled):hover .icon:before {
    margin-left: 5px;
    color: #000;
  }
}

.top-sec-ttl {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 15;
  margin-top: -68px;
  line-height: 1;
}

.top-sec-ttl-text {
  position: absolute;
  top: 5.8rem;
  right: 4.7rem;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  font-size: 54px;
  font-size: 5,4rem;
  letter-spacing: 0.05em;
}

.top-sec-ttl-text .top-sec-ttl-text-inner {
  display: block;
  -webkit-transform: scale(-1, -1);
  -ms-transform: scale(-1, -1);
  transform: scale(-1, -1);
}

.top-member-area {
  position: relative;
  z-index: 9;
}

.top-member-area.type-page {
  min-height: 872px;
}

.top-member-area.type-page .top-member-pc-link {
  padding-bottom: 161px;
  cursor: auto;
}

.top-member-area-inner {
  padding: 0 0 0 10%;
}

.top-member-area-inner .bg-member {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 55.55556%;
}

.top-member-area-inner .top-sec-ttl-text {
  top: 7.4rem;
}

.top-member-pc-link {
  padding: 116px 0 115px;
  cursor: none;
}

.top-member-ttl {
  margin: 0 0 111px;
  padding: 29px 0 0;
  border-top: 2px solid #000;
}

.top-member-ttl .main-text {
  font-size: 130px;
  font-size: 13rem;
}

.top-member-ttl .sub-text {
  margin: 2.4rem 0 0 -0.4rem;
  font-size: 60px;
  font-size: 6rem;
  letter-spacing: 5.9px;
}

.top-member-main-lead {
  margin: 0 0 22px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.top-member-sub-lead {
  margin: 0 0 44px;
  letter-spacing: 0.85px;
}

.top-member-link-btn {
  max-width: 336px;
  margin: 89px 0 0;
}

.top-member-col2-box {
  padding: 43px 0 0;
  border-top: 2px solid #000;
}

.top-member-col2-box .list-elm {
  width: 44.44444%;
  padding: 0 40px 0 0;
}

.top-member-col2-box .ttl {
  position: relative;
  margin: 0 0 41px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.5;
  letter-spacing: 1.5px;
}

.top-member-col2-box .ttl-text {
  position: relative;
  display: inline-block;
  padding: 0 0 0 4.3rem;
}

.top-member-col2-box .num {
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.3;
}

.top-member-col2-box .text {
  max-width: 440px;
  letter-spacing: 1px;
}

.top-info-area .top-sec-ttl-text {
  top: 7.4rem;
}

.top-info-list {
  padding: 120px 0 120px;
}

.top-info-list .list-elm {
  width: 48.66071%;
  margin: 0 2.67857% 0 0;
  line-height: 1.7;
}

.top-info-list .list-elm:nth-child(even) {
  margin-right: 0;
}

.top-info-list a {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
  border-bottom: 4px solid #000;
}

.top-info-list a:after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 4;
  height: 4px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.top-info-list .ttl {
  margin: 31px 19px 7px;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.top-info-list .text {
  margin: 26px 24px 64px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.78;
  letter-spacing: 0.05em;
}

.top-info-list .link {
  position: relative;
  margin: 64px 0 0;
  padding: 0 5.3rem 1.9rem 0;
  letter-spacing: 1px;
  font-size: 20px;
  font-size: 2rem;
}

.top-info-list .link:before {
  position: absolute;
  top: 0.4rem;
  right: 1.8rem;
  font-size: 15px;
  font-size: 1.5rem;
}

.top-info-list .icon-blank:before {
  right: 2.1rem;
  font-size: 13px;
  font-size: 1.3rem;
}

.top-moments-area {
  padding: 140px 0 115px;
}

.top-moments-area:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 140px;
  background-color: #f7f8f8;
}

.top-moments-area:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 150px;
  background-color: #f7f8f8;
}

.top-moments-box {
  padding: 0 0 0 70px;
}

.top-moments-box.type-event {
  width: 53.14815%;
  padding-top: 81px;
}

.top-moments-box.type-move {
  width: 38.14815%;
}

.top-moments-box.type-project {
  clear: both;
  padding-top: 59px;
}

.top-moments-box.type-project .top-moments-box-ttl {
  margin-top: -22px;
}

.top-moments-box-ttl {
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
  margin: 0;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.1;
  letter-spacing: 0;
}

.top-moments-box-ttl-text {
  position: relative;
  display: inline-block;
  width: 42px;
  padding: 0 0 0 9px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.top-moments-box-ttl-text:before, .top-moments-box-ttl-text:after {
  content: "";
  position: absolute;
  top: 0;
  left: 2px;
  bottom: 0;
  width: 2px;
  background-color: #000;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.top-moments-box-ttl-text:after {
  bottom: auto;
  height: 0;
  background-color: #FFEB00;
}

.top-moments-box-area {
  padding: 70px 0 0;
}

.top-moments-inner:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  bottom: -10px;
  width: 100vw;
  margin: 0 0 0 32.96296%;
  background-color: #f7f8f8;
}

.top-moments-inner:after {
  content: "";
  position: absolute;
  top: -10px;
  right: 50%;
  bottom: -10px;
  width: 100vw;
  margin: 0 32.96296% 0 0;
  background-color: #f7f8f8;
}

.movement-link-box .date-text-box {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 184px;
  padding: 5px 0 7px;
  z-index: 9;
}

.movement-link-box .date-text-box .main-text {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.movement-link-box .date-text-box .sub-text {
  margin: 5px 0 0;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.movement-link-box .img-box {
  margin: 0 0 14px;
}

.movement-link-box .img {
  padding-top: 133.43023%;
}

.movement-link-box .ttl {
  margin: 0 0 12px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
}

.key-words-label-list {
  margin: 0 0 -5px;
  font-size: 0;
}

.key-words-label-list li {
  display: inline-block;
  margin: 0 5px 5px 0;
  padding: 0 1px 0 2px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.29;
  letter-spacing: 0.05em;
}

.top-project-link-box:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #f7f8f8;
}

.top-project-link-box .img-box {
  width: 50%;
}

.top-project-link-box .img {
  position: relative;
  z-index: 9;
  padding-top: 56.43564%;
}

.top-project-link-box .text-box {
  position: relative;
  z-index: 4;
  width: 50%;
  margin: 43px 0 0;
}

.top-project-link-box .text-box-wrap {
  margin-left: -13.46535%;
  padding-left: 13.46535%;
}

.top-project-link-box .text-box-inner {
  min-height: 285px;
  padding: 44px 3.9604% 47px 4.75248%;
}

.top-project-link-box .post-ttl {
  margin: 0 0 29px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
}

.top-project-link-box .project-ttl {
  margin: 0 0 27px;
}

.top-project-link-box .project-ttl .ttl {
  position: relative;
  width: 120px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.top-project-link-box .project-ttl .ttl:after {
  content: "：";
  position: absolute;
  top: 0;
  right: 0;
}

.top-project-link-box .project-ttl .text {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.top-project-link-box .name-list {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.top-project-link-box .name-list li {
  display: inline;
}

.top-project-link-box .name-list li + li:before {
  content: " / ";
}

.top-project-link-box .project-ttl-line {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, #FFEB00)) no-repeat bottom left;
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background-size: 100% 6px;
}

.top-concept-area .top-sec-ttl {
  margin-top: -50px;
}

.top-concept-inner {
  padding: 194px 0 162px;
}

.top-concept-ttl {
  margin: 0 0 51px;
  font-size: 54px;
  font-size: 5.4rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.top-concept-text {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 1.92;
}

.top-concept-table .text-cell {
  padding: 0 40px 7px 0;
}

.top-concept-table .btn-cell {
  width: 344px;
}

.top-membership-area {
  min-height: 600px;
}

.top-membership-area .top-sec-ttl {
  margin-top: -59px;
}

.top-membership-inner {
  padding: 288px 0 120px;
}

.top-membership-img {
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 46.875%;
  width: 87.5%;
}

.top-membership-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 0 100px 0 0;
}

.top-membership-list .list-elm {
  width: 48.88889%;
  line-height: 1.7;
}

.top-membership-list .list-elm + .list-elm {
  margin-left: 2.22222%;
}

.top-membership-list .type-yellow .sub-ttl-bg,
.top-membership-list .type-yellow .link:after {
  background-color: #FFEB00;
}

.top-membership-list a {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%;
  padding: 33px 6.81818% 79px;
}

.top-membership-list .ttl {
  margin: 0 0 33px;
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.48;
}

.top-membership-list .sub-ttl {
  margin: 0 0 20px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.11;
  letter-spacing: 0.05em;
}

.top-membership-list .sub-ttl-bg {
  padding-right: 0.5em;
  background-color: #009BE6;
}

.top-membership-list .text {
  margin: 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.top-membership-list .link {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 69.69697%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 4.6rem 2rem 0;
  letter-spacing: 0.05em;
  font-size: 16px;
  font-size: 1.6rem;
  border-bottom: 4px solid #000;
}

.top-membership-list .link:before {
  position: absolute;
  top: 0.3rem;
  right: 2rem;
  font-size: 11px;
  font-size: 1.1rem;
}

.top-membership-list .link:after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 4;
  height: 4px;
  width: 0;
  background-color: #009BE6;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.top-message-area {
  padding: 113px 0 160px;
}

.top-message-head {
  margin: 0 0 97px;
}

.top-message-head .top-sec-ttl02 {
  width: 42.59259%;
}

.top-sec-ttl02 .main-text {
  font-size: 50px;
  font-size: 5rem;
}

.top-sec-ttl02 .sub-text {
  margin: 13px 0 0;
  font-size: 20px;
  font-size: 2rem;
}

.top-message-text {
  width: 57.40741%;
  margin: 11px 0 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.top-message-btn-box {
  margin-top: 120px;
}

.top-partners-area {
  padding: 94px 0 160px;
}

.top-partners-head {
  margin: 0 0 59px;
}

.top-partners-slider .slick-slide > div {
  vertical-align: top;
}

.top-partners-slider .slick-slide {
  margin-right: 20px;
}

.top-partners-slider .slide-elm {
  display: none;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.top-partners-slider .slide-elm:first-child {
  display: block;
}

.top-partners-slider .slide-inner {
  height: 164px;
  width: 220px;
}

.top-partners-slider .logo-img {
  width: 134px;
  height: 134px;
  background-size: contain;
}

.top-partners-btn-box {
  margin-top: 80px;
}

@media only screen and (min-width: 768px) {
  .top-topics-link-list a:hover .label-white {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  }
  .top-info-list a:hover:after {
    width: 100%;
  }
  .top-moments-box-ttl a:hover .top-moments-box-ttl-text:after {
    height: 100%;
  }
  .top-membership-list a:hover .link:after {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .top-wrapper .global-header {
    height: 60px;
    background-color: #fff;
  }
  .top-wrapper .global-header.fix {
    height: 60px;
  }
  .top-wrapper .contents {
    margin-top: 60px;
  }
  .fix .btn-load-line-anime {
    top: 0;
  }
  .btn-load-line-anime {
    top: 0;
  }
  .top-main-bg-sp {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    height: 550px;
    height: 100vh;
    background-position: top center;
  }
  .top-fix-ttl {
    bottom: 12px;
    width: 37px;
    margin: 0 0 0 11px;
    padding: 0;
  }
  .top-fix-ttl img {
    width: 100%;
  }
  .hv-fix-text-area {
    padding: 24px 13px 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: right;
  }
  .hv-fix-text-area-text {
    display: inline-block;
    vertical-align: top;
    font-size: 60px;
    font-size: 6rem;
    line-height: 1.2;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
  }
  .top-main-area-bg-box .bg-box {
    background-size: contain;
  }
  .top-main-area-bg-box .bg-box.type-s {
    background-image: url(../img/top/bg-s-sp.svg);
    background-size: contain;
  }
  .top-main-area-bg-box .bg-box.type-q {
    background-image: url(../img/top/bg-q-sp.svg);
  }
  .top-main-area-bg-box .bg-box.type-w {
    background-image: url(../img/top/bg-w-sp.svg);
  }
  .top-main-area-bg-box .bg-box.type-question {
    background-image: url(../img/top/bg-question-sp.svg);
  }
  .top-main-scroll-line-box {
    top: 338px;
    left: 33px;
    bottom: auto;
    right: auto;
    height: 65px;
  }
  .top-main-ttl {
    left: 14px;
    width: 42px;
  }
  .top-main-pager {
    top: auto;
    bottom: 2px;
    right: 0;
  }
  .top-main-pager .pager-elm {
    height: 45px;
    width: 45px;
  }
  .top-main-pager .icon:before {
    color: #000;
  }
  .top-main-area {
    min-height: calc(100vh - 60px);
  }
  .top-main-slider .top-main-slider-img-box,
  .top-main-slider .top-main-slider-img {
    height: 100vh;
  }
  .top-main-slider .text-box {
    padding: 0 0 50px;
  }
  .top-main-slider .label-text {
    margin: 0 0 8px;
  }
  .top-main-slider .label {
    min-width: 100px;
    padding: 2px 10px 5px 0;
    line-height: 1.2;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .top-main-slider .date-text-box {
    margin: 0 0 12px;
  }
  .top-main-slider .date-text + .date-text p {
    padding-right: 6px;
  }
  .top-main-slider .date-text p {
    padding: 5px 7px 4px 0;
  }
  .top-main-slider .date-text01 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .top-main-slider .date-text02 {
    position: relative;
    top: -1px;
    margin: 0 0 0 1px;
    letter-spacing: 0.05em;
    font-size: 10px;
    font-size: 1rem;
  }
  .top-main-slider .date-text03 {
    padding: 0 0 0 3px;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
  .top-main-slider .hide-text-label:after {
    content: attr(data-text) "";
  }
  .top-main-slider .post-ttl {
    margin: 0 0 18px;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.6;
    font-weight: bold;
  }
  .top-main-slider .label-white {
    padding: 6px 0 7px;
    background: -webkit-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  }
  .top-main-slider .main-text-box {
    padding: 0 3.27869%;
  }
  .top-main-slider .sub-text-box {
    margin: 0 0 -50px;
    padding: 10px 3.27869% 67px;
    background-color: rgba(0, 0, 0, 0.3);
  }
  .top-main-slider .text {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: normal;
  }
  .top-main-area-inner {
    padding: 0 0 0 70px;
  }
  .top-news-area {
    padding: 0;
    background-color: #fff;
  }
  .top-news-area-inner {
    padding: 0;
    margin-top: 0;
  }
  .top-news-area-inner .left-box {
    width: auto;
    margin: 0 0 20px;
    padding: 29px 25px 0;
  }
  .top-news-area-inner .right-box {
    min-height: inherit;
    width: auto;
    padding: 0 0 13px;
  }
  .top-news-area-inner .right-box:before {
    display: none;
  }
  .top-news-area-inner .main-ttl {
    float: left;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.05em;
  }
  .top-news-area-inner .list-link {
    float: right;
    margin: 4px 3px 0 0;
    font-size: 10px;
    font-size: 1rem;
  }
  .top-news-area-inner .list-link .icon {
    display: inline-block;
    margin: 0 0 0 1px;
    -webkit-transform: scale(0.7);
    -ms-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
  }
  .top-news-slider {
    margin: 0 0 15px;
  }
  .top-news-slider .slick-list {
    padding: 0 50px 0 25px;
  }
  .top-news-slider .slide-elm {
    padding-right: 10px;
  }
  .top-news-slider .post-ttl {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.6;
  }
  .news-slider-pager {
    position: relative;
    bottom: auto;
    right: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin: 0 12px 0 0;
  }
  .news-slider-pager .pager-elm {
    position: relative;
    height: 29px;
    width: 29px;
    line-height: 1;
    font-size: 10px;
    font-size: 1rem;
  }
  .news-slider-pager .icon {
    margin-top: -1px;
    margin-left: -1px;
    -webkit-transform: scale(0.745) translateY(-50%) translateX(-50%);
    -ms-transform: scale(0.745) translateY(-50%) translateX(-50%);
    transform: scale(0.745) translateY(-50%) translateX(-50%);
  }
  .top-about-area .img-box {
    padding-top: 14.66667%;
  }
  .top-about-area .ttl-catch {
    top: 0;
    right: 34.93333333333333vw;
    margin: 9.6vw 0 0;
    font-size: 17px;
    font-size: 4.533333333333333vw;
    line-height: 1.6;
    letter-spacing: 0.9066666666666665vw;
  }
  .top-about-area .bg-img {
    top: auto;
  }
  .top-about-area .text-area {
    position: relative;
    z-index: 11;
    padding: 1px 0 36px 62px;
  }
  .top-about-area .text-box {
    margin: -11px 0 0;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.85;
  }
  .top-about-area .text-box p + p {
    margin-top: 29px;
  }
  .top-about-area .text-box p {
    text-align: left;
    letter-spacing: 0.8px;
  }
  .top-about-area .sp-link-btn {
    margin: 29px 63px 0 0;
  }
  .sp-link-btn a {
    position: relative;
    padding: 13px 40px 12px 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.7;
    letter-spacing: 0.5px;
  }
  .sp-link-btn a:before {
    position: absolute;
    top: 50%;
    right: 14px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .top-topics-area {
    position: relative;
    z-index: 10;
  }
  .top-topics-area-inner {
    padding: 36px 0 0;
  }
  .top-qq-main-link-sp.type-event {
    margin: 0 0 59px;
    padding: 25px 0 0;
  }
  .top-qq-main-link-sp.type-event:after {
    display: none;
  }
  .top-qq-main-link-sp.type-event .img {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    background-blend-mode: normal;
  }
  .top-qq-main-link-sp.type-event .img:before, .top-qq-main-link-sp.type-event .img:after,
  .top-qq-main-link-sp.type-event .img .overlay {
    display: none;
  }
  .top-qq-main-link-sp.type-event .img-box {
    overflow: visible;
    padding-top: 66.66667%;
  }
  .top-qq-main-link-sp.type-event .img-box + .text-box {
    margin-top: -30px;
  }
  .top-qq-main-link-sp.type-event .text-box {
    width: 86.66667%;
    padding: 0;
    margin: 0 auto;
  }
  .top-qq-main-link-sp.type-event .status-label {
    position: absolute;
    top: -25px;
    right: 6.66667%;
    z-index: 9;
    min-height: 30px;
    width: 100px;
    margin: 0 0 25px;
    padding: 4px 4px 4px;
    line-height: 1;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .top-qq-main-link-sp.type-event .date {
    position: absolute;
    top: -25px;
    left: 6.66667%;
    z-index: 9;
  }
  .top-qq-main-link-sp.type-event .date-main {
    padding: 1px 5px 8px 0;
  }
  .top-qq-main-link-sp.type-event .date-main + .date-sub {
    padding-top: 5px;
  }
  .top-qq-main-link-sp.type-event .date-sub {
    margin: 0;
    padding: 1px 6px 4px 0;
  }
  .top-qq-main-link-sp.type-event .date-text01 {
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: 0;
  }
  .top-qq-main-link-sp.type-event .date-text02 {
    position: relative;
    top: 0;
    margin: 0 0 0 -1px;
    letter-spacing: 0.8px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .top-qq-main-link-sp.type-event .date-text03 {
    padding: 0 0 0 2px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0;
  }
  .top-qq-main-link-sp.type-event .ttl-box {
    margin: 0;
  }
  .top-qq-main-link-sp.type-event .ttl {
    margin: 0 0 21px;
  }
  .top-qq-main-link-sp.type-event .white-tag-list {
    margin: 0 0 -3px;
  }
  .top-qq-main-link-sp.type-event .white-tag-list li {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.5px;
    margin-right: 7px;
  }
  .top-qq-main-link-sp.type-event .white-tag-list .text {
    padding: 0 8px 2px 3px;
  }
  .top-qq-main-link-sp.type-event .lead-text {
    margin: 0 0 6px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 0.8px;
  }
  .top-qq-main-link-sp:after {
    content: "";
    display: block;
    height: 1px;
    width: auto;
    margin: 63px 0 0 62px;
    background-color: #000;
  }
  .top-qq-main-link-sp .img-box {
    position: relative;
    z-index: 12;
    overflow: hidden;
    margin: -2.66667% 0 0;
    padding-top: 90.13333%;
  }
  .top-qq-main-link-sp .img-box + .text-box {
    margin-top: -82px;
  }
  .top-qq-main-link-sp .icon-q {
    position: absolute;
    bottom: 0;
    left: -26.66667%;
    z-index: 7;
    width: 113.33333%;
    margin: 0 0 26.93333%;
  }
  .top-qq-main-link-sp .img {
    -webkit-filter: grayscale(20%);
    filter: grayscale(20%);
    background-blend-mode: screen;
  }
  .top-qq-main-link-sp .img:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 4;
    background-color: #00a0e9;
    mix-blend-mode: hue;
  }
  .top-qq-main-link-sp .img:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    background-color: rgba(0, 155, 255, 0.85);
    mix-blend-mode: screen;
  }
  .top-qq-main-link-sp .img .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 6;
    background-color: rgba(0, 161, 235, 0.75);
    mix-blend-mode: color;
  }
  .top-qq-main-link-sp .text-box {
    position: relative;
    z-index: 13;
    margin: 0 25px 0 62px;
  }
  .top-qq-main-link-sp .area-ttl {
    width: 54.4%;
    margin: 0 0 0 62px;
  }
  .top-qq-main-link-sp .area-ttl img {
    width: 100%;
  }
  .top-qq-main-link-sp .ttl-box {
    margin: 0;
  }
  .top-qq-main-link-sp .label-white {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  }
  .top-qq-main-link-sp .cat {
    margin: 0 0 9px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.8;
  }
  .top-qq-main-link-sp .cat .label-white {
    padding: 3px 0;
  }
  .top-qq-main-link-sp .sub-ttl {
    margin: 0 0 4px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.45;
    letter-spacing: 0.8px;
  }
  .top-qq-main-link-sp .sub-ttl .label-white {
    padding: 0 0 3px;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(8%, transparent), color-stop(8%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
    background: linear-gradient(to bottom, transparent 0%, transparent 8%, #fff 8%, #fff 92%, #fff 93%, #fff 100%);
  }
  .top-qq-main-link-sp .ttl {
    margin: 0 0 44px;
    font-size: 27px;
    font-size: 2.7rem;
    line-height: 1.45;
    letter-spacing: 1.2px;
  }
  .top-qq-main-link-sp .ttl .label-white {
    padding: 3px 0 14px;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
    background: linear-gradient(to bottom, transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  }
  .top-qq-main-link-sp .date-sub {
    position: relative;
    top: -2px;
    margin: 0 0 0 3px;
  }
  .top-qq-main-link-sp .date-text01 {
    font-size: 30px;
    font-size: 3rem;
  }
  .top-qq-main-link-sp .date-text02 {
    display: inline-block;
    position: relative;
    top: -1px;
    padding: 0 0 0 2px;
    font-size: 11px;
    font-size: 1.1rem;
    letter-spacing: 0.5px;
  }
  .top-qq-main-link-sp .date-text03 {
    font-size: 20px;
    font-size: 2rem;
  }
  .top-qq-main-link-sp .lead-text {
    margin: 10px 0 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.75;
    letter-spacing: 2px;
  }
  .top-qq-main-link-sp .link {
    margin: 15px 0 0;
  }
  .top-sec-ttl {
    position: relative;
    top: 0;
    right: auto;
    margin-top: 0;
  }
  .top-sec-ttl:before {
    height: 1.5rem;
    width: 1.5rem;
  }
  .top-sec-ttl-text {
    position: relative;
    top: 0;
    right: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    font-size: 50px;
    font-size: 5rem;
    letter-spacing: 0;
    text-align: right;
    color: #fff;
  }
  .top-sec-ttl-text .top-sec-ttl-text-inner {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .top-sec-ttl-text .type-black {
    color: #D4DDE2;
  }
  .topics-link-area {
    margin: 46px 0 0;
    padding: 39px 0 88px;
  }
  .sp-topics-slider .slick-slide > div {
    padding: 0 7px;
    vertical-align: top;
  }
  .sp-topics-slider .slide-elm {
    display: none;
    vertical-align: top;
  }
  .sp-topics-slider .slide-elm:first-child {
    display: block;
  }
  .sp-topics-slider .slick-list {
    padding: 0 55px;
  }
  .sp-topics-slider .img-box {
    padding-top: 89.64143%;
  }
  .sp-topics-slider .img-box + .text-box {
    margin-top: -29px;
  }
  .sp-topics-slider .top-topics-bg-img {
    opacity: 1 !important;
    bottom: 0;
    padding-top: 0;
    -webkit-filter: brightness(100%);
    filter: brightness(100%);
  }
  .sp-topics-slider .top-topics-bg-img:before {
    background-color: #ffeb00;
  }
  .sp-topics-slider .text-box {
    position: relative;
    z-index: 10;
  }
  .sp-topics-slider .bg-label-text {
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
    background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
    background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  }
  .sp-topics-slider .info {
    margin: 0 0 4px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .sp-topics-slider .info .bg-label-text {
    padding: 3px 0 3px;
  }
  .sp-topics-slider .info .bg-label-text + .bg-label-text {
    padding-left: 9px;
  }
  .sp-topics-slider .sub-ttl,
  .sp-topics-slider .ttl {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: 0.8px;
  }
  .sp-topics-slider .sub-ttl .bg-label-text,
  .sp-topics-slider .ttl .bg-label-text {
    padding: 5px 0 8px;
  }
  .sp-topics-slider .ttl {
    padding: 0 0 5px;
    letter-spacing: 1.5px;
  }
  .sp-topics-slider-link {
    margin: 35px 25px 0 0;
  }
  .top-member-area {
    background-color: #f7f8f8;
  }
  .top-member-area.type-page {
    min-height: inherit;
  }
  .top-member-area.type-page .top-member-pc-link {
    padding-bottom: 0;
  }
  .top-member-area-inner {
    padding: 0 0 0 62px;
  }
  .top-member-area-inner .bg-member {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 50.13333%;
  }
  .top-member-area-inner .top-sec-ttl-text {
    top: 7.4rem;
  }
  .top-member-pc-link {
    padding: 31px 0 80px;
  }
  .top-member-pc-link .bg-member {
    left: -62px;
    width: 60.0639%;
  }
  .top-member-pc-link .top-member-sub-lead {
    margin-bottom: 50px;
  }
  .top-member-link-btn {
    max-width: inherit;
    margin: 50px 62px 0 0;
  }
  .top-member-sp-link {
    padding: 31px 0 80px;
  }
  .top-member-sp-link .sp-link-btn {
    margin: 39px 62px 0 0;
  }
  .top-member-ttl {
    margin: 0 0 51px;
    padding: 12px 0 0;
    border-top: 2px solid #000;
  }
  .top-member-ttl .main-text {
    font-size: 65px;
    font-size: 6.5rem;
    line-height: 1.15;
  }
  .top-member-ttl .sub-text {
    margin: 1.8rem 0 0 0;
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: 3px;
  }
  .top-member-main-lead {
    margin: 0 25px 12px 0;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.6px;
  }
  .top-member-sub-lead {
    margin: 0 25px 60px 0;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.5px;
  }
  .top-member-col2-box {
    padding: 16px 0 0;
  }
  .top-member-col2-box .list-elm {
    width: auto;
    padding: 0 25px 0 0;
  }
  .top-member-col2-box .list-elm + .list-elm {
    margin-top: 43px;
    padding-top: 17px;
    border-top: 1px solid #000;
  }
  .top-member-col2-box .ttl {
    margin: 0 0 16px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 1.1px;
  }
  .top-member-col2-box .ttl-text {
    padding: 0 0 0 2.7rem;
  }
  .top-member-col2-box .num {
    top: 0;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.2;
  }
  .top-member-col2-box .text {
    max-width: inherit;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.8px;
  }
  .top-info-area {
    padding: 50px 0;
  }
  .top-info-list {
    padding: 0 0 0 6.66667%;
  }
  .top-info-list .list-elm {
    width: auto;
    margin: 0;
    padding: 0;
    line-height: 1.7;
  }
  .top-info-list .list-elm:nth-child(even) {
    margin-right: 0;
  }
  .top-info-list .list-elm + .list-elm {
    margin-top: 20px;
  }
  .top-info-list a {
    padding: 30px 19px 63px;
    height: auto;
    border-bottom: none;
  }
  .top-info-list a:after {
    display: none;
  }
  .top-info-list .ttl {
    margin: 0 0 9px -2px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.2;
    letter-spacing: 0.05em;
  }
  .top-info-list .text {
    min-height: 48px;
    margin: 18px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0.05em;
  }
  .top-info-list .link {
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 32px 0 0;
    width: 265px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 4.2rem 1.4rem 0;
    border-bottom: 3px solid #000;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: right;
    letter-spacing: 0.05em;
  }
  .top-info-list .link:before {
    top: 0.1rem;
    right: 16px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .top-info-list .icon-blank:before {
    right: 16px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .top-moments-area {
    overflow: hidden;
    padding: 1px 0 69px;
    background-color: #f7f8f8;
  }
  .top-moments-area:before, .top-moments-area:after {
    display: none;
  }
  .top-moments-area .top-sec-ttl {
    margin-top: -6px;
  }
  .top-moments-box {
    padding: 0 0 0 65px;
  }
  .top-moments-box.type-event {
    width: auto;
    padding-top: 21px;
    margin: 0 0 34px;
  }
  .top-moments-box.type-move {
    width: auto;
    margin: 0 0 44px;
  }
  .top-moments-box.type-project {
    clear: both;
    padding-top: 31px;
  }
  .top-moments-box.type-project .top-moments-box-ttl {
    margin-top: 0;
  }
  .top-moments-box .event-col2-list .ttl {
    margin: -1px 0 0;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .top-moments-box-ttl {
    top: 0;
    left: 10px;
    margin: 0;
    font-size: 30px;
    font-size: 3rem;
  }
  .top-moments-box-ttl-text {
    padding: 0 0 0 1px;
  }
  .top-moments-box-ttl-text:before, .top-moments-box-ttl-text:after {
    width: 2px;
    background-color: #000;
  }
  .top-moments-box-ttl-text img {
    width: 26px;
  }
  .top-moments-box-area {
    padding: 67px 0 0;
  }
  .top-moments-inner:before, .top-moments-inner:after {
    display: none;
  }
  .movement-link-box {
    padding: 26px 5.16129% 0 9.35484%;
  }
  .movement-link-box .date-text-box {
    width: auto;
    padding: 5px 7px 2px 0;
  }
  .movement-link-box .date-text-box .main-text {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    font-weight: normal;
  }
  .movement-link-box .date-text-box .sub-text {
    margin: 0 0 0;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
  .movement-link-box .img-box {
    margin: 0 0 15px;
  }
  .movement-link-box .img {
    padding-top: 133.43023%;
  }
  .movement-link-box .ttl {
    margin: 0 0 11px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.65;
  }
  .key-words-label-list {
    margin: 0 0 -10px;
  }
  .key-words-label-list li {
    margin: 0 10px 10px 0;
    padding: 0 2px 0 3px;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.38;
  }
  .top-project-link-box:after {
    content: "";
    position: absolute;
    top: 50%;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #f7f8f8;
  }
  .top-project-link-box .img-box {
    width: auto;
  }
  .top-project-link-box .img {
    padding-top: 56.45161%;
  }
  .top-project-link-box .text-box {
    width: auto;
    margin: 0;
  }
  .top-project-link-box .text-box-wrap {
    margin-left: 0;
    padding-left: 0;
  }
  .top-project-link-box .text-box-inner {
    min-height: inherit;
    padding: 23px 6.45161% 23px;
  }
  .top-project-link-box .post-ttl {
    margin: 0 0 9px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.65;
  }
  .top-project-link-box .project-ttl {
    margin: 0 0 18px;
    line-height: 1.5;
  }
  .top-project-link-box .project-ttl .ttl {
    display: inline-block;
    width: auto;
    padding: 0 1em 0 0;
    vertical-align: top;
    font-size: 10px;
    font-size: 1rem;
  }
  .top-project-link-box .project-ttl .ttl:after {
    content: "：";
    position: absolute;
    top: 0;
    right: 0;
  }
  .top-project-link-box .project-ttl .text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: 0.05em;
  }
  .top-project-link-box .name-list {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .top-project-link-box .project-ttl-line {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, #FFEB00)) no-repeat bottom left;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background-size: 100% 6px;
  }
  .top-concept-area {
    overflow: hidden;
  }
  .top-concept-area .top-sec-ttl {
    margin-top: -5px;
    margin-bottom: 68px;
  }
  .top-concept-inner {
    padding: 1px 0 122px;
  }
  .top-concept-ttl {
    margin: 0 0 29px;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.4;
  }
  .top-concept-text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
  }
  .top-concept-table .text-cell {
    padding: 0;
  }
  .top-concept-table .btn-cell {
    width: 250px;
    margin: 51px auto 0;
  }
  .top-membership-area {
    overflow: hidden;
    min-height: inherit;
  }
  .top-membership-area .top-sec-ttl {
    margin-top: -5px;
    margin-bottom: 60px;
  }
  .top-membership-img-text-box {
    min-height: auto !important;
  }
  .top-membership-inner {
    padding: 1px 0 80px;
  }
  .top-membership-img {
    position: relative;
    padding-top: 79.42857%;
    width: 93.33333%;
  }
  .top-membership-list {
    display: block;
    margin: -13.33333% 0 0;
    padding-left: 6.66667%;
  }
  .top-membership-list .list-elm {
    width: auto;
    margin: 0;
  }
  .top-membership-list .list-elm + .list-elm {
    margin-top: 38px;
    margin-left: 0;
  }
  .top-membership-list a {
    padding: 27px 7.42857% 70px;
  }
  .top-membership-list .ttl {
    margin: 0 0 35px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.6;
  }
  .top-membership-list .sub-ttl {
    margin: 0 0 14px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.08;
  }
  .top-membership-list .link {
    width: 265px;
    padding: 0 3.5rem 1.4rem 0;
    font-size: 12px;
    font-size: 1.2rem;
    border-bottom: 3px solid #000;
  }
  .top-membership-list .link:before {
    position: absolute;
    top: 0.2rem;
    right: 1.5rem;
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    font-size: 10px;
    font-size: 1rem;
  }
  .top-membership-list .link:after {
    content: "";
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 4;
    height: 4px;
    width: 0;
    background-color: #009BE6;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
  }
  .top-message-area {
    padding: 55px 0 80px;
  }
  .top-message-head {
    margin: 0 0 35px;
  }
  .top-message-head .top-sec-ttl02 {
    width: auto;
  }
  .top-sec-ttl02 .main-text {
    font-size: 36px;
    font-size: 3.6rem;
  }
  .top-sec-ttl02 .sub-text {
    margin: 12px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .top-message-text {
    width: auto;
    margin: 33px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
  }
  .top-message-btn-box {
    margin-top: 60px;
  }
  .top-partners-area {
    padding: 55px 0 80px;
  }
  .top-partners-head {
    margin: 0 0 55px;
  }
  .top-partners-slider .slick-slide {
    margin-right: 15px;
  }
  .top-partners-slider .slick-slide > div + div {
    margin-top: 15px;
  }
  .top-partners-slider .slide-inner {
    height: 135px;
    width: 180px;
  }
  .top-partners-slider .logo-img {
    width: 110px;
    height: 110px;
  }
  .top-partners-btn-box {
    margin-top: 60px;
  }
}

/* about
----------------------------------------------------------*/
.about-page-link-box {
  position: absolute;
  top: 100vh;
  right: 0;
  bottom: 168px;
  z-index: 18;
  width: 64px;
  border-left: 1px solid #000;
}

.about-page-link-list-wrap {
  position: absolute;
  top: 0;
  width: 64px;
}

.about-page-link-list-inner {
  width: 600px;
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
}

.about-page-link-list {
  width: 100%;
  margin: 0 0 0 -642px;
  padding: 0 0 19px;
  -webkit-transform: scale(-1, -1);
  -ms-transform: scale(-1, -1);
  transform: scale(-1, -1);
  font-size: 0;
}

.about-page-link-list li {
  display: inline-block;
  margin: 0 19px 0 0;
  vertical-align: top;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.about-page-link-list li:before {
  opacity: 0;
  content: "";
  display: inline-block;
  height: 1.4rem;
  width: 1.4rem;
  background-color: #000;
  border-radius: 50%;
  -webkit-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}

.about-page-link-list li:first-child {
  position: relative;
  padding: 0 0 0 32px;
}

.about-page-link-list li:first-child:before {
  opacity: 0;
  position: absolute;
  top: 4px;
  left: 0;
  margin: 0;
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}

.about-page-link-list li:first-child.current:before {
  opacity: 1;
  margin: 0;
}

.about-page-link-list li.current a {
  color: #000;
}

.about-page-link-list li.current:before {
  opacity: 1;
  margin: 0 12px 0 15px;
}

.about-page-link-list a {
  color: #d4dde1;
  -webkit-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
}

.topic-pass-area {
  position: relative;
  padding: 21px 0 0 120px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.58;
}

.topic-pass-list {
  padding: 1px 4px 0;
  line-height: 1.5;
}

.topic-pass-list li {
  display: inline-block;
  vertical-align: top;
}

.topic-pass-list li + li:before {
  content: "\e909";
  padding: 0 12px 0 11px;
  font-family: 'icon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  color: #58606b;
  font-size: 10px;
  font-size: 1rem;
}

.sp-about-page-ttl {
  position: absolute;
  bottom: 29px;
  left: 30px;
  z-index: 9;
  font-size: 60px;
  font-size: 6rem;
  padding: 0 15px 0 25px;
  line-height: 1;
}

.about-main-img {
  height: 434px;
}

.about-main-img .img {
  opacity: 0.4;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.about-main-img .img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(237, 237, 237, 0.6);
}

.about-main-obj {
  position: absolute;
  z-index: 8;
  top: -447px;
  left: -140px;
}

.about-label-ttl {
  max-width: 228px;
  line-height: 1.2;
  font-size: 20px;
  font-size: 2rem;
}

.about-concept-area {
  padding: 97px 0 147px;
}

.about-concept-obj {
  position: absolute;
  top: 85px;
  right: 0;
  z-index: 1;
  width: 583px;
}

.about-concept-ttl {
  margin: 0 0 63px;
  line-height: 1.4;
  font-size: 64px;
  font-size: 6.4rem;
  letter-spacing: 1.6px;
}

.about-concept-table {
  padding: 0 0 70px;
}

.about-concept-table .ttl-cell {
  width: 33.33333%;
  padding: 4px 0 0;
}

.about-concept-lead {
  line-height: 2.6;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1.1px;
}

.about-special-area {
  margin: 0 0 158px;
}

.about-special-obj {
  position: absolute;
  top: -254px;
  left: -301px;
  width: 887px;
}

.about-special-box {
  padding: 19px 16px 57px 22.22222%;
}

.about-special-area-ttl {
  position: absolute;
  top: 8px;
  left: 13px;
  z-index: 9;
}

.about-special-area-ttl-text {
  padding: 0 0 5px;
  border-bottom: 4px solid #000;
  font-size: 85px;
  font-size: 8.5rem;
  letter-spacing: 4.7px;
}

.about-special-date {
  position: absolute;
  top: 157px;
  left: 17px;
  z-index: 9;
  line-height: 1.9;
  letter-spacing: 1px;
}

.about-special-img {
  padding-top: 52.42967%;
}

.about-special-ttl-box {
  min-height: 157px;
  padding: 1px;
}

.about-special-ttl {
  margin: -12px -1px -1px -1px;
  line-height: 1.75;
  font-size: 40px;
  font-size: 4rem;
  letter-spacing: 2.2px;
}

.about-special-col2-box {
  margin: 16px 0 0;
}

.about-special-col2-box .link-cell {
  width: 230px;
  padding: 0 0 15px;
}

.about-special-col2-box .text-cell {
  padding: 0 30px 0 0;
}

.about-special-lead {
  max-width: 456px;
  letter-spacing: 0.9px;
}

.about-community-area {
  padding: 60px 0 160px;
}

.about-community-bg-img {
  position: absolute;
  top: -147px;
  right: 0;
  width: 697px;
  height: 690px;
}

.about-community-head {
  min-height: 483px;
}

.about-community-ttl {
  margin: 0 0  41px;
  line-height: 1.8;
  font-size: 50px;
  font-size: 5rem;
}

.about-community-table {
  padding: 0 0 80px;
}

.about-community-table .ttl-cell {
  width: 33.33333%;
  padding: 15px 0 0;
}

.about-community-lead {
  max-width: 570px;
  line-height: 2.6;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.about-message-area {
  padding: 30px 0 0;
}

.about-message-area .btn-set-list {
  margin-top: 11.11111%;
}

.about-message-ttl {
  margin: 0 0 75px;
}

.about-message-ttl-text {
  position: relative;
  display: inline-block;
  padding: 0 0 0 112px;
  vertical-align: top;
}

.about-message-ttl-text:before {
  content: "";
  position: absolute;
  top: 14px;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #000;
  border-radius: 50%;
}

.about-message-ttl-text .main-text {
  font-size: 50px;
  font-size: 5rem;
}

.about-message-ttl-text .sub-text {
  margin: 13px 0 0;
  font-size: 20px;
  font-size: 2rem;
}

.message-col2-list {
  margin: 0 0 -11.11111%;
  font-size: 0;
}

.message-col2-list .list-elm {
  display: inline-block;
  width: 44.44444%;
  margin: 0 11.11111% 11.11111% 0;
  vertical-align: top;
}

.message-col2-list .list-elm:nth-child(even) {
  margin-right: 0;
}

.message-link-box {
  display: block;
  position: relative;
  font-size: 16px;
  font-size: 1.6rem;
}

.message-link-box .img {
  margin: 0 114px 0 0;
  padding-top: 75%;
  background-position: center top;
}

.message-link-box .text-box {
  position: absolute;
  top: 0;
  right: 8px;
  left: 0;
  bottom: 75px;
  z-index: 9;
}

.message-link-box .name {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1;
  text-align: left;
  letter-spacing: 1.8px;
}

.message-link-box .info {
  margin: 4px 7px 0 0;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: left;
  line-height: 1;
  letter-spacing: 0.8px;
}

.message-link-box .link {
  position: absolute;
  right: 0;
  bottom: 20px;
  z-index: 9;
  width: 228px;
  padding: 0 0 9px;
  border-bottom: 2px solid #000;
}

.message-link-box .link:before {
  position: absolute;
  display: block;
  bottom: 13px;
  right: 0;
  font-size: 20px;
  font-size: 2rem;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  line-height: 1;
}

.message-link-box .link:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  z-index: 4;
  height: 2px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.message-link-box .link-text {
  padding: 4px 14px 5px 4px;
  letter-spacing: 0.8px;
}

@media only screen and (min-width: 768px) {
  .message-link-box:hover .link:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .message-link-box:hover .link:after {
    width: 100%;
  }
  .type-single .message-link-box {
    overflow: hidden;
  }
  .type-single .message-link-box .img {
    float: left;
    width: 47.36842%;
    margin: 0;
    padding-top: 47.36842%;
  }
  .type-single .message-link-box .text-box {
    position: relative;
    right: auto;
    left: auto;
    bottom: auto;
    float: right;
    width: 47.36842%;
    margin: 0 0 24px;
  }
  .type-single .message-link-box .name {
    margin: 7px 0 16px;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 1.33;
  }
  .type-single .message-link-box .info {
    height: auto !important;
    margin: 0;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: 1.63;
  }
  .type-single .message-link-box .text-box-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .type-single .message-link-box .link {
    bottom: 0;
    border: none;
  }
  .type-single .message-link-box .link:before {
    bottom: 0;
  }
  .type-single .message-link-box .link-text,
  .type-single .message-link-box .link:after {
    display: none;
  }
}

.about-program-area {
  padding-bottom: 100px;
}

.about-program-area-inner {
  padding-top: 117px;
  padding-bottom: 85px;
}

.about-program-obj {
  position: absolute;
  top: 0;
  right: -14px;
  width: 470px;
}

.about-program-bg-img {
  position: absolute;
  top: -147px;
  right: 0;
  width: 697px;
  height: 690px;
}

.about-program-head {
  min-height: 470px;
}

.about-program-ttl {
  margin: 0 0 77px;
  line-height: 1.8;
  font-size: 50px;
  font-size: 5rem;
}

.about-program-table {
  padding: 0 0 125px;
}

.about-program-table .ttl-cell {
  width: 33.33333%;
  padding: 9px 0 0;
}

.about-program-lead {
  max-width: 570px;
  line-height: 2.6;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.about-program-col3-list {
  font-size: 0;
}

.about-program-col3-list .list-elm {
  position: relative;
  display: inline-block;
  width: 30.99415%;
  margin: 0 3.41131% 0 0;
  padding: 37px 0 0;
  vertical-align: top;
  font-size: 16px;
  font-size: 1.6rem;
}

.about-program-col3-list .list-elm:nth-child(3n) {
  margin-right: 0;
}

.about-program-col3-list .ttl {
  position: absolute;
  top: 0;
  left: -3px;
  z-index: 9;
  border-bottom: 3px solid #000;
  font-size: 50px;
  font-size: 5rem;
}

.about-program-col3-list .img {
  padding-top: 100%;
  margin: 0 0 14px;
}

.about-program-col3-list .sub-ttl {
  position: absolute;
  top: 23px;
  right: -2px;
  z-index: 9;
  letter-spacing: 0.8px;
}

.about-program-col3-list .text {
  letter-spacing: 0.8px;
  line-height: 1.65;
}

.about-all-program-area {
  padding: 92px 0 0;
}

.about-all-program-list {
  margin: 0 0 -14px;
  font-size: 0;
}

.about-all-program-list .list-elm {
  position: relative;
  display: inline-block;
  width: 44.44444%;
  margin: 0 11.11111% 70px 0;
  padding: 10px 0 0;
  border-top: 1px solid #000;
  vertical-align: top;
  font-size: 16px;
  font-size: 1.6rem;
}

.about-all-program-list .list-elm:nth-child(even) {
  margin-right: 0;
}

.about-all-program-list .ttl {
  margin: 0 0 38px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.65;
  letter-spacing: 1.4px;
}

.about-all-program-list .text {
  letter-spacing: 0.8px;
}

.about-upcoming-program-area {
  padding: 92px 0 75px;
}

.about-upcoming-program-head {
  margin: 0 0 30px;
}

.about-upcoming-program-head .text-cell {
  padding: 9px 30px 0 0;
}

.about-upcoming-program-head .link-cell {
  width: 228px;
}

.about-upcoming-program-lead {
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.9px;
}

.about-upcoming-program-link {
  border-top: 1px solid #000;
}

.about-upcoming-program-link + .about-upcoming-program-link {
  margin-top: 47px;
}

.about-upcoming-program-link a {
  padding: 15px 0 15px;
}

.about-upcoming-program-link .date-cell {
  width: 33.33333%;
  padding: 4px 0 0;
}

.about-upcoming-program-link .date-text01 {
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 1.2px;
}

.about-upcoming-program-link .date-text02 {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
}

.about-upcoming-program-link .date-sub {
  margin: 6px 0 0;
}

.about-upcoming-program-link .sub-ttl,
.about-upcoming-program-link .ttl {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.7;
  letter-spacing: 1px;
}

.about-upcoming-program-link .cat {
  margin: 12px 0 0;
  letter-spacing: 1px;
}

@media only screen and (max-width: 767px) {
  .page-fix-ttl {
    position: fixed;
    bottom: 12px;
    z-index: 150;
    margin: 0;
    padding: 0 10px 0 25px;
    font-size: 30px;
    font-size: 3rem;
    line-height: 1;
  }
  .sp-about-page-ttl {
    position: absolute;
    bottom: 12px;
    left: 0;
    z-index: 9;
    font-size: 32px;
    font-size: 3.2rem;
    padding: 0 15px 0 25px;
    line-height: 1.4;
  }
  .about-main-img {
    height: 218px !important;
  }
  .about-main-obj {
    top: -108px;
    left: -71px;
    width: 210px;
  }
  .about-label-ttl {
    display: inline-block;
    max-width: inherit;
    vertical-align: top;
    line-height: 1;
  }
  .about-concept-area {
    padding: 61px 0 100px;
  }
  .about-concept-area .about-label-ttl {
    margin: 0 0 28px;
  }
  .about-concept-obj {
    position: absolute;
    top: 0;
    right: 0;
    width: 49.86667%;
  }
  .about-concept-ttl {
    margin: 0 0 39px;
    font-size: 28px;
    font-size: 2.8rem;
    letter-spacing: 0.5px;
  }
  .about-concept-table {
    padding: 0 0 49px;
  }
  .about-concept-lead {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.8px;
  }
  .about-special-area {
    margin: 0 -7.69231% 68px 0;
  }
  .about-special-obj {
    top: -133px;
    left: -172px;
    width: 142%;
  }
  .about-special-box {
    padding: 58px 7.14286% 0 0;
  }
  .about-special-area-ttl {
    top: 19px;
    left: -9px;
  }
  .about-special-area-ttl-text {
    padding: 0 0 2px;
    border-bottom: 2px solid #000;
    font-size: 42px;
    font-size: 4.25rem;
    letter-spacing: 2.2px;
  }
  .about-special-date {
    top: 36px;
    right: 6.57143%;
    left: auto;
    letter-spacing: 0.8px;
    font-size: 10px;
    font-size: 1rem;
  }
  .about-special-img {
    padding-top: 52.61538%;
  }
  .about-special-ttl-box {
    min-height: 79px;
    padding: 1px;
  }
  .about-special-ttl {
    margin: -4px -1px -1px 3px;
    line-height: 1.45;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 1.3px;
  }
  .about-special-col2-box {
    margin: 6px 0 0;
  }
  .about-special-col2-box .link-cell {
    width: auto;
    padding: 26px 0 0;
    text-align: right;
  }
  .about-special-col2-box .text-cell {
    padding: 0 0 0 3px;
  }
  .about-special-col2-box .link {
    display: inline-block;
    width: 164px;
    vertical-align: top;
  }
  .about-special-lead {
    max-width: inherit;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.9px;
  }
  .about-community-area {
    padding: 0;
  }
  .about-community-bg-img {
    top: 0;
    left: 32.8%;
    width: auto;
    height: 346px;
  }
  .about-community-head {
    min-height: inherit;
    padding: 184px 6.66667% 0;
    background-color: #f7f8f8;
  }
  .about-community-head .about-label-ttl {
    margin: 0 0 46px;
  }
  .about-community-ttl {
    margin: 0 0 46px;
    line-height: 1.4;
    font-size: 25px;
    font-size: 2.5rem;
    letter-spacing: 0.1px;
  }
  .about-community-table {
    padding: 0 0 53px;
  }
  .about-community-table .ttl-cell {
    width: 33.33333%;
    padding: 15px 0 0;
  }
  .about-community-lead {
    max-width: inherit;
    line-height: 2;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.7px;
  }
  .about-message-area {
    padding: 56px 6.66667% 83px;
  }
  .about-message-area .btn-set-list {
    margin-top: 9.23077%;
  }
  .about-message-ttl {
    margin: 0 0 41px;
  }
  .about-message-ttl-text {
    padding: 0 0 0 37px;
  }
  .about-message-ttl-text:before {
    top: 7px;
    height: 10px;
    width: 10px;
  }
  .about-message-ttl-text .main-text {
    font-size: 25px;
    font-size: 2.5rem;
  }
  .about-message-ttl-text .sub-text {
    margin: 7px 0 0;
    font-size: 10px;
    font-size: 1rem;
  }
  .message-col2-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 -9.23077%;
  }
  .message-col2-list .list-elm {
    width: 47.69231%;
    margin: 0 4.61538% 9.23077% 0;
  }
  .message-link-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 100%;
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .message-link-box .img {
    margin: 0 0 9px;
    padding-top: 100%;
  }
  .message-link-box .text-box {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    position: static;
    text-align: left;
  }
  .message-link-box .text-box-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .message-link-box .name {
    display: block;
    width: 100%;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
    text-align: left;
    letter-spacing: 0.6px;
  }
  .message-link-box .info {
    display: block;
    width: 100%;
    margin: 4px 0 0;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    line-height: 1.5;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.4px;
  }
  .message-link-box .link {
    position: static;
    width: auto;
    padding: 0;
    border-bottom: 2px solid #000;
    font-size: 9px;
    font-size: .9rem;
    text-align: right;
  }
  .message-link-box .link:before {
    bottom: 8px;
    font-size: 10px;
    font-size: 1rem;
  }
  .message-link-box .link-text {
    padding: 14px 19px 7px 4px;
    letter-spacing: 0.5px;
  }
  .about-program-area {
    padding-bottom: 0;
  }
  .about-program-area .about-label-ttl {
    margin: 0 0 46px;
  }
  .about-program-area-inner {
    padding-top: 78px;
    padding-bottom: 50px;
  }
  .about-program-obj {
    position: absolute;
    top: 0;
    right: 0;
    width: 50.13333%;
  }
  .about-program-head {
    min-height: inherit;
  }
  .about-program-ttl {
    margin: 0 0 28px;
    line-height: 1.4;
    font-size: 25px;
    font-size: 2.5rem;
    letter-spacing: 0.6px;
  }
  .about-program-table {
    padding: 0 0 51px;
  }
  .about-program-lead {
    max-width: inherit;
    line-height: 2;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.7px;
  }
  .about-program-col3-list {
    padding-top: 51px;
  }
  .about-program-col3-list .list-elm {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
    vertical-align: top;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .about-program-col3-list .list-elm + .list-elm {
    margin-top: 76px;
  }
  .about-program-col3-list .ttl {
    top: -22px;
    left: -2px;
    padding: 0 0 2px;
    border-bottom: 1px solid #000;
    font-size: 25px;
    font-size: 2.5rem;
    letter-spacing: 1px;
  }
  .about-program-col3-list .img {
    float: left;
    width: 47.69231%;
    padding-top: 47.69231%;
    margin: 0;
  }
  .about-program-col3-list .text-box {
    float: right;
    width: 47.69231%;
  }
  .about-program-col3-list .sub-ttl {
    position: static;
    margin: -1px 0 16px;
    letter-spacing: 0.4px;
    font-size: 8px;
    font-size: 0.8rem;
  }
  .about-program-col3-list .text {
    letter-spacing: 0.6px;
    line-height: 1.65;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .about-all-program-area {
    padding: 58px 0 0;
  }
  .about-all-program-list {
    margin: 0 0 -20px;
  }
  .about-all-program-list .list-elm {
    display: block;
    width: auto;
    margin: 0 0 32px;
    padding: 13px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .about-all-program-list .ttl {
    margin: 0 0 16px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.6px;
  }
  .about-all-program-list .text {
    letter-spacing: 0.8px;
  }
  .about-upcoming-program-area {
    padding: 58px 0 60px;
  }
  .about-upcoming-program-area .about-message-ttl {
    margin: 0 0 28px;
  }
  .about-upcoming-program-head {
    margin: 0 0 17px;
  }
  .about-upcoming-program-head .text-cell {
    padding: 0 0 23px 38px;
  }
  .about-upcoming-program-head .link-cell {
    width: auto;
    text-align: right;
  }
  .about-upcoming-program-head .about-upcoming-link-btn {
    display: inline-block;
    min-width: 163px;
    vertical-align: top;
    text-align: left;
  }
  .about-upcoming-program-lead {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 1.06px;
  }
  .about-upcoming-program-link {
    border-top: 1px solid #000;
  }
  .about-upcoming-program-link + .about-upcoming-program-link {
    margin-top: 20px;
  }
  .about-upcoming-program-link a {
    padding: 11px 0 15px;
  }
  .about-upcoming-program-link .date-cell {
    width: auto;
    padding: 0 0 21px;
  }
  .about-upcoming-program-link .date-inner {
    display: block;
  }
  .about-upcoming-program-link .date-text01 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.7px;
  }
  .about-upcoming-program-link .date-text02 {
    font-size: 9px;
    font-size: 0.9rem;
    letter-spacing: 0;
  }
  .about-upcoming-program-link .date-main {
    display: inline-block;
  }
  .about-upcoming-program-link .date-sub {
    display: inline-block;
    margin: 6px 0 0 9px;
  }
  .about-upcoming-program-link .sub-ttl,
  .about-upcoming-program-link .ttl {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.7;
    letter-spacing: 0.7px;
  }
  .about-upcoming-program-link .cat {
    margin: 9px 0 0;
    letter-spacing: 0.5px;
    font-size: 10px;
    font-size: 1rem;
  }
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999;
  margin: 0 auto;
  background: #fff;
  -webkit-transform: translateZ(1px);
  transform: translateZ(1px);
}

.modal-wrap {
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.modal-content {
  height: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.modal-content:before {
  content: "";
  position: absolute;
  top: 0;
  left: 27.73438%;
  bottom: 0;
  width: 100vw;
  z-index: -1;
  background-color: #d4dde1;
}

.modal-table-wrap {
  display: table;
  table-layout: fixed;
  height: 100%;
  width: 100%;
}

.modal-table-cell {
  display: table-cell;
  padding: 80px 0;
  vertical-align: middle;
}

.modal-content-box {
  position: relative;
  margin: 0 auto;
}

.modal-content-inner {
  padding: 59px 0 60px;
}

.modal-btn-close {
  position: absolute;
  top: 15px;
  right: 0;
  z-index: 9;
  height: 76px;
  width: 76px;
  cursor: pointer;
  font-size: 16px;
  font-size: 1.6rem;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.modal-btn-close:before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.modal-message-slider .slick-list {
  padding: 0 !important;
}

.modal-message-slider .slick-slide > div {
  vertical-align: top;
}

.modal-message-slider .slide-elm {
  display: none;
  vertical-align: top;
}

.modal-message-slider .slide-elm:first-child {
  display: block !important;
}

.modal-message-slider .left-box {
  width: 456px;
}

.modal-message-slider .img {
  width: 73.68421%;
  padding-top: 83.33333%;
}

.modal-message-slider .img-elm {
  background-position: center top;
}

.modal-message-slider .text-box {
  position: absolute;
  top: 0;
  right: 8px;
  left: 0;
  bottom: 0;
  z-index: 9;
}

.modal-message-slider .name {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1;
  text-align: left;
  letter-spacing: 1.8px;
}

.modal-message-slider .info {
  margin: 4px 7px 0 0;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-align: left;
  line-height: 1;
  letter-spacing: 0.8px;
}

.modal-message-slider .right-box {
  padding: 0 8.67446% 0 11.11111%;
}

.modal-message-slider .lead-text-wrap {
  overflow: auto;
  height: 380px;
}

.modal-message-slider .lead-text {
  padding-top: 5px;
}

.modal-message-slider .lead-text-box {
  position: relative;
  padding: 0 25px 0 0;
}

.modal-message-slider .slick-prev,
.modal-message-slider .slick-next {
  top: 50%;
  padding-top: 0;
  height: 84px;
  width: 80px;
  margin-top: -28px;
  text-align: center;
  line-height: 1;
}

.modal-message-slider .slick-prev.slick-disabled {
  opacity: 1;
  color: #d4dde1;
  cursor: default;
}

.modal-message-slider .slick-next.slick-disabled {
  opacity: 0.3;
  color: #000;
  cursor: default;
}

.modal-message-slider .slick-prev {
  left: 0;
}

.modal-message-slider .slick-prev:before {
  content: "\e908";
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  left: 50%;
  margin: 0;
  font-size: 15px;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.modal-message-slider .slick-next {
  right: 0;
}

.modal-message-slider .slick-next:before {
  content: "\e902";
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  left: 50%;
  margin: 0;
  font-size: 15px;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

@media only screen and (min-width: 768px) {
  .modal-btn-close:hover {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .modal-message-slider .slick-prev:hover {
    margin-left: -10px;
  }
  .modal-message-slider .slick-prev:hover.slick-disabled {
    margin-left: 0;
  }
  .modal-message-slider .slick-next:hover {
    margin-right: -10px;
  }
  .modal-message-slider .slick-next:hover.slick-disabled {
    margin-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .modal,
  .modal-wrap {
    background-color: #d4dde1;
  }
  .modal-content:before {
    display: none;
  }
  .modal-table-cell {
    padding: 25px 0;
    vertical-align: top;
  }
  .modal-content-inner {
    padding: 0;
  }
  .modal-btn-close {
    top: 0;
    height: 70px;
    width: 70px;
    font-size: 20px;
    font-size: 2rem;
  }
  .modal-message-slider .ct-inner-1026 {
    padding: 0 6.66667%;
  }
  .modal-message-slider .left-box {
    width: auto;
    margin: 0 0 35px;
  }
  .modal-message-slider .left-box > .posi-r {
    display: table;
    width: 100%;
  }
  .modal-message-slider .img {
    display: table-cell;
    vertical-align: top;
    width: 47.69231%;
    padding-top: 0;
  }
  .modal-message-slider .img-elm {
    position: static;
    padding-top: 100%;
  }
  .modal-message-slider .text-box {
    display: table-cell;
    position: static;
    padding: 0 0 0 4.61538%;
    vertical-align: middle;
  }
  .modal-message-slider .text-box-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
  .modal-message-slider .name {
    display: block;
    width: 100%;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    text-align: left;
    letter-spacing: 0.6px;
  }
  .modal-message-slider .info {
    display: block;
    width: 100%;
    margin: 4px 0 0;
    -webkit-writing-mode: horizontal-tb;
    -ms-writing-mode: lr-tb;
    writing-mode: horizontal-tb;
    text-align: left;
    line-height: 1.5;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.4px;
  }
  .modal-message-slider .right-box {
    padding: 0;
  }
  .modal-message-slider .lead-text-wrap {
    overflow: auto;
    height: auto !important;
  }
  .modal-message-slider .lead-text {
    margin-top: 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .modal-message-slider .lead-text-box {
    padding: 0;
  }
  .modal-message-slider .slick-prev,
  .modal-message-slider .slick-next {
    top: 0;
    padding-top: 0;
    height: 34px;
    width: 38px;
    margin-top: 36.26667%;
    line-height: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .modal-message-slider .slick-prev.slick-disabled {
    opacity: 0.3;
    color: #000;
    cursor: default;
  }
  .modal-message-slider .slick-next.slick-disabled {
    opacity: 0.3;
    color: #000;
    cursor: default;
  }
  .modal-message-slider .slick-prev {
    left: auto;
    right: 3.73333%;
    margin-right: 38px;
  }
  .modal-message-slider .slick-prev:before {
    font-size: 14px;
  }
  .modal-message-slider .slick-next {
    right: 3.73333%;
  }
  .modal-message-slider .slick-next:before {
    font-size: 14px;
  }
}

.about02-sec-ttl {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1;
}

.about02-sec-ttl + .about02-label-ttl {
  margin-top: 14px;
}

.about02-label-ttl-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.about02-catch {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.about-concept-area02 .left-box {
  width: 34.6875%;
  padding: 127px 11.875% 120px 1.5625%;
}

.about-concept-area02 .right-box {
  width: 65.3125%;
  padding: 121px 5.85938% 133px 9.0625%;
}

.about-concept-area02 .text-box {
  max-width: 900px;
}

.about-concept-area02 .bg-img {
  background-position: right top;
}

.about-concept-area02 .about02-catch + .text {
  margin-top: 110px;
}

.about-concept-area02 .text {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.about-community-area02 .left-box {
  width: 34.6875%;
  padding: 125px 6.79687% 120px 1.5625%;
}

.about-community-area02 .right-box {
  width: 65.3125%;
  padding: 110px 5.85938% 87px 9.0625%;
}

.about-community-area02 .text-box {
  max-width: 900px;
}

.about-community-area02 .bg-img {
  background-position: left top;
  background-size: 836px 377px;
}

.about-community-area02 .bg-img-sp {
  background-position: left top;
}

.about-community-area02 .about02-catch + .text {
  margin-top: 73px;
}

.about-community-area02 .text {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.about-community-white-box {
  margin: 0 0 86px;
}

.about-community-white-box .box-ttl {
  padding: 0 22px 0 0;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 1.29;
}

.about-community-white-box .img-box {
  padding: 18px 8.51852% 40px;
}

.about-partner-area {
  padding: 0 0 120px;
}

.about-partner-area .about02-catch {
  margin: 0 0 80px;
}

.about-partner-area .left-box {
  width: 48.88889%;
}

.about-partner-area .left-box-s {
  width: 40.37037%;
}

.about-partner-area .right-box {
  width: 48.88889%;
  padding: 1.66667% 4.25926%;
}

.about-partner-area .col2-box + .col2-box {
  margin-top: 57px;
}

.about-partner-area .box-ttl {
  margin: 0 0 45px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.33;
  letter-spacing: 0.05em;
}

.about-partner-area .btn-box {
  max-width: 344px;
  margin: 36px 0 0 auto;
}

.about-partner-area .about-partner-list {
  margin: 72px 0 0;
}

.about-partner-obj {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 904px;
  margin: 0 0 0 -195px;
}

.about-partner-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -2.22222%;
}

.about-partner-list li {
  width: 23.33333%;
  margin: 0 2.22222% 2.22222% 0;
}

.about-partner-list li:nth-child(4n) {
  margin-right: 0;
}

.about-partner-list .logo-wrap {
  position: relative;
  height: 141px;
}

.about-partner-list .logo-img {
  position: absolute;
  top: 17.02128%;
  left: 9.52381%;
  right: 9.52381%;
  bottom: 17.02128%;
  background-size: contain;
}

.about-program-area02 {
  padding: 0 0 130px;
}

.about-program-area02 .left-box {
  width: 34.6875%;
  padding: 138px 11.875% 120px 1.5625%;
}

.about-program-area02 .right-box {
  width: 65.3125%;
  padding: 122px 5.85938% 119px 9.0625%;
}

.about-program-area02 .text-box {
  max-width: 900px;
}

.about-program-area02 .bg-img {
  background-position: right top;
}

.about-program-area02 .about02-catch + .text {
  margin-top: 73px;
}

.about-program-area02 .text {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}

.about-program-area02 .btn-box {
  max-width: 344px;
  margin: 60px 0 0 auto;
}

.about-program-area02 .img {
  margin: 32px 3.72093% 0 0;
}

.about-program02-obj {
  position: absolute;
  top: 44px;
  right: 50%;
  width: 1058px;
  margin: 0 264px 0 0;
}

.about-floor-img {
  padding-top: 34.375%;
}

.about-floor-area .left-box {
  width: 34.6875%;
  padding: 102px 4.29688% 120px 1.5625%;
}

.about-floor-area .right-box {
  width: 65.3125%;
  padding: 91px 7.8125% 140px 9.0625%;
}

.about-floor-area .text-box {
  max-width: 900px;
}

.about-floor-area .bg-img {
  background-position: right top;
}

.about-floor-area .about02-catch + .text {
  margin-top: 41px;
}

.about-floor-area .text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2.02;
}

.about-floor-area .btn-box {
  max-width: 344px;
  margin: 54px 0 0 auto;
}

@media only screen and (max-width: 800px) {
  .about02-sec-ttl {
    font-size: 42px;
    font-size: 4.2rem;
  }
}

@media only screen and (max-width: 767px) {
  .about02-sec-ttl {
    font-size: 34px;
    font-size: 3.4rem;
    line-height: 1;
  }
  .about02-sec-ttl + .about02-label-ttl {
    margin-top: 17px;
  }
  .about02-label-ttl {
    padding: 0 0.5em 0 0;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .about02-catch {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.6;
  }
  .about-concept-area02 {
    padding: 63px 0 53px;
    background-color: #f7f8f8;
  }
  .about-concept-area02 .left-box {
    width: auto;
    padding: 0;
    margin: 0 0 33px;
    text-align: left;
  }
  .about-concept-area02 .right-box {
    width: auto;
    padding: 0;
  }
  .about-concept-area02 .about02-catch + .text {
    margin-top: 29px;
  }
  .about-community-area02 {
    padding: 63px 0 0;
  }
  .about-community-area02 .left-box {
    width: auto;
    padding: 0;
    margin: 0 0 33px;
    text-align: left;
  }
  .about-community-area02 .right-box {
    width: auto;
    padding: 0;
  }
  .about-community-area02 .col2-box {
    margin: 0 0 35px;
  }
  .about-community-area02 .about02-catch + .text {
    margin-top: 19px;
  }
  .about-community-white-box {
    margin: 0 0 53px;
  }
  .about-community-white-box .box-ttl {
    padding: 0 0 4px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1;
  }
  .about-community-white-box .img-box {
    padding: 50px 16% 40px;
  }
  .about-partner-area {
    padding: 0 0 60px;
  }
  .about-partner-area .about02-catch {
    margin: 0 0 48px;
  }
  .about-partner-area .left-box {
    width: auto;
    margin: 0 0 34px;
  }
  .about-partner-area .left-box-s {
    width: auto;
    margin: 0 0 34px;
  }
  .about-partner-area .right-box {
    width: auto;
    padding: 6.15385% 4.92308%;
  }
  .about-partner-area .col2-box + .col2-box {
    margin-top: 54px;
  }
  .about-partner-area .box-ttl {
    margin: 0 0 21px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .about-partner-area .text {
    padding: 0 6.15385%;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .about-partner-area .btn-box {
    margin: 40px auto 0;
  }
  .about-partner-area .about-partner-list {
    margin: 31px 0 0;
  }
  .about-partner-obj {
    top: 413px;
    bottom: auto;
    left: auto;
    right: 0;
    width: 258px;
    margin: 0;
  }
  .about-partner-list {
    padding: 6.15385% 6.15385% 1.84615%;
    background-color: #fff;
    margin-bottom: 0;
  }
  .about-partner-list li {
    width: 47.7193%;
    margin: 0 4.5614% 4.91228% 0;
  }
  .about-partner-list li:nth-child(2n) {
    margin-right: 0;
  }
  .about-partner-list .logo-wrap {
    height: 76px;
  }
  .about-partner-list .logo-img {
    top: 17.10526%;
    left: 9.55882%;
    right: 9.55882%;
    bottom: 17.10526%;
  }
  .about-program-area02 {
    padding: 63px 0 60px;
  }
  .about-program-area02 .about-program-top {
    overflow: visible;
  }
  .about-program-area02 .left-box {
    width: auto;
    padding: 0;
    margin: 0 0 33px;
    text-align: left;
  }
  .about-program-area02 .right-box {
    width: auto;
    padding: 0;
  }
  .about-program-area02 .col2-box {
    margin: 0 0 49px;
  }
  .about-program-area02 .about02-catch + .text {
    margin-top: 20px;
  }
  .about-program-area02 .btn-box {
    margin: 37px auto 0;
  }
  .about-program-area02 .img {
    margin: 24px 0 0;
  }
  .about-program02-obj {
    top: 120px;
    right: auto;
    left: 0;
    width: 212px;
    margin: 0;
  }
  .about-floor-img {
    padding-top: 54.66667%;
  }
  .about-floor-area {
    padding: 79px 0 60px;
  }
  .about-floor-area .left-box {
    width: auto;
    padding: 0;
    margin: 0 0 33px;
    text-align: left;
  }
  .about-floor-area .right-box {
    width: auto;
    padding: 0;
  }
  .about-floor-area .bg-img-sp {
    background-position: left top;
  }
  .about-floor-area .about02-catch + .text {
    margin-top: 19px;
  }
  .about-floor-area .btn-box {
    margin: 34px auto 0;
  }
  .about-concept-area02 .text,
  .about-community-area02 .text,
  .about-program-area02 .text,
  .about-floor-area .text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
  }
}

/* wysiwyg
--------------------------------------------------*/
.wysiwyg * + * {
  margin-top: 32px;
}

.wysiwyg * + h2 {
  margin-top: 120px;
}

.wysiwyg * + dt,
.wysiwyg * + dd,
.wysiwyg * + li,
.wysiwyg * + th,
.wysiwyg * + td,
.wysiwyg * + tr,
.wysiwyg * + br {
  margin-top: 0;
}

.wysiwyg * + hr {
  margin-top: 100px;
}

.wysiwyg * + .table-set-cap {
  margin-top: 13px;
}

.wysiwyg * + .gmap-link {
  margin-top: 13px;
}

.wysiwyg p * + * {
  margin-top: 0;
}

.wysiwyg h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.1;
}

.wysiwyg h2 {
  position: relative;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.wysiwyg h2:before {
  content: "";
  visibility: hidden;
  display: block;
  margin-top: -70px;
  height: 70px;
}

.wysiwyg h2.no-line span {
  border-top: none;
  padding-top: 0;
}

.wysiwyg h2.no-line span:after {
  display: none;
}

.wysiwyg h2 span {
  position: relative;
  display: block;
  border-top: 10px solid #D4DDE2;
  padding: 64px 0 0;
}

.wysiwyg h2 span:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  height: 10px;
  width: 180px;
  background-color: #FFEB00;
}

.wysiwyg h3 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
}

.wysiwyg h4 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: bold;
}

.wysiwyg h5 {
  font-size: 18px;
  font-size: 1.8rem;
}

.wysiwyg h6 {
  font-size: 13px;
  font-size: 1.3rem;
}

.wysiwyg p {
  letter-spacing: 0.05em;
}

.wysiwyg .alignleft {
  display: inline;
  float: left;
}

.wysiwyg .alignright {
  display: inline;
  float: right;
}

.wysiwyg .aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.wysiwyg a {
  color: #009BE6;
  background-color: #fff;
  word-break: break-all;
}

.wysiwyg .set-icon-blank {
  background: none;
  text-decoration: underline;
  color: #58606b;
}

.wysiwyg .set-icon-blank:hover {
  text-decoration: none;
}

.wysiwyg .set-icon-blank:after {
  content: "";
  display: inline-block;
  height: 9px;
  width: 10px;
  margin: 8px 7px 0 6px;
  background: url(../img/common/icon-blank.png) no-repeat top left;
  background-size: 10px auto;
  vertical-align: top;
}

.wysiwyg ul {
  line-height: 1.6;
}

.wysiwyg ul > li {
  position: relative;
  padding: 0 0 0 30px;
}

.wysiwyg ul > li:before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0px;
  height: 6px;
  width: 6px;
  border-radius: 50%;
  background-color: #58606b;
}

.wysiwyg ul ul,
.wysiwyg ul ol {
  margin-top: 19px;
  padding-left: 30px;
}

.wysiwyg ol {
  line-height: 1.6;
  counter-reset: li;
}

.wysiwyg ol > li {
  position: relative;
  padding: 0 0 0 30px;
}

.wysiwyg ol > li:before {
  counter-increment: li;
  content: counter(li) ".";
  display: block;
  position: absolute;
  top: 0;
  left: 0px;
  color: #58606b;
}

.wysiwyg ol ul,
.wysiwyg ol ol {
  margin-top: 19px;
  padding-left: 30px;
}

.wysiwyg li {
  letter-spacing: 0.8px;
}

.wysiwyg li + li {
  margin-top: 19px;
}

.wysiwyg table {
  background-color: #fff;
}

.wysiwyg tr th:first-child,
.wysiwyg tr td:first-child {
  border-left: none;
}

.wysiwyg tr th:last-child,
.wysiwyg tr td:last-child {
  border-right: none;
}

.wysiwyg th {
  height: 89px;
  padding: 21px 20px 15px;
  border: 2px solid #f7f8f8;
  background-color: #d4dde1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  color: #58606b;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.7;
}

.wysiwyg td {
  height: 89px;
  border: 2px solid #f7f8f8;
  padding: 21px 20px 15px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
}

.wysiwyg strong,
.wysiwyg b {
  font-weight: bold;
}

.wysiwyg sup {
  vertical-align: super;
  font-size: 58%;
}

.wysiwyg sub {
  vertical-align: sub;
  font-size: 58%;
}

.wysiwyg i,
.wysiwyg em {
  font-style: italic;
}

.wysiwyg del {
  text-decoration: line-through;
}

.wysiwyg ins,
.wysiwyg u {
  text-decoration: underline;
}

.wysiwyg hr {
  margin-bottom: 100px;
  border-top: 1px solid #d4dde1;
  border-bottom: none;
}

.wysiwyg code {
  display: inline-block;
  padding: 0 6px;
  background-color: #d4dde1;
}

.wysiwyg pre {
  overflow: auto;
  display: block;
  padding: 30px 3.7037% 30px;
  word-break: break-all;
  word-wrap: break-word;
  -webkit-overflow-scrolling: touch;
  background-color: #d4dde1;
  border: 1px solid #efefef;
}

.wysiwyg blockquote {
  display: block;
  background-color: #fff;
}

.wysiwyg small {
  display: block;
  padding-left: 13px;
  font-size: 81.25%;
  line-height: 1.65;
  color: #58606b;
}

.wysiwyg .scroll-table-wrap {
  overflow: auto;
}

.wysiwyg .scroll-table-wrap {
  padding-bottom: 10px;
}

.wysiwyg .scroll-table-wrap::-webkit-scrollbar {
  display: block;
  width: 6px;
}

.wysiwyg .scroll-table-wrap::-webkit-scrollbar:horizontal {
  height: 6px;
}

.wysiwyg .scroll-table-wrap::-webkit-scrollbar-track {
  border: none;
  border-radius: 5px;
}

.wysiwyg .scroll-table-wrap::-webkit-scrollbar-thumb {
  background: #d4dde1;
  border-radius: 5px;
  -webkit-box-shadow: none;
  box-shadow: none;
}

@media only screen and (max-width: 767px) {
  .wysiwyg {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .wysiwyg * + * {
    margin-top: 18px;
  }
  .wysiwyg * + h2 {
    margin-top: 100px;
  }
  .wysiwyg * + dt,
  .wysiwyg * + dd,
  .wysiwyg * + li,
  .wysiwyg * + th,
  .wysiwyg * + td,
  .wysiwyg * + tr,
  .wysiwyg * + br {
    margin-top: 0;
  }
  .wysiwyg * + hr {
    margin-top: 100px;
  }
  .wysiwyg * + .table-set-cap {
    margin-top: 8px;
  }
  .wysiwyg * + .gmap-link {
    margin-top: 11px;
  }
  .wysiwyg p {
    letter-spacing: 0.6px;
  }
  .wysiwyg p * + * {
    margin-top: 0;
  }
  .wysiwyg .table-set-cap {
    letter-spacing: 0.45px;
  }
  .wysiwyg h1 {
    font-size: 32px;
    font-size: 3.2rem;
  }
  .wysiwyg h2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .wysiwyg h2:before {
    margin-top: -60px;
    height: 60px;
  }
  .wysiwyg h2 span {
    padding: 36px 0 0;
  }
  .wysiwyg h2 span:after {
    width: 85px;
  }
  .wysiwyg h3 {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .wysiwyg h4 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.8px;
  }
  .wysiwyg .set-icon-blank {
    background: none;
    text-decoration: underline;
    color: #58606b;
  }
  .wysiwyg .set-icon-blank:hover {
    text-decoration: none;
  }
  .wysiwyg .set-icon-blank:after {
    height: 7px;
    width: 7px;
    margin: 9px 4px 0 6px;
    background-size: 7px auto;
  }
  .wysiwyg ul > li {
    padding: 0 0 0 20px;
  }
  .wysiwyg ul > li:before {
    top: 8px;
    left: 0px;
  }
  .wysiwyg ul ul,
  .wysiwyg ul ol {
    margin-top: 18px;
    padding-left: 0;
  }
  .wysiwyg ol > li {
    padding: 0 0 0 20px;
  }
  .wysiwyg ol > li:before {
    counter-increment: li;
    content: counter(li) ".";
    display: block;
    position: absolute;
    top: 0;
    left: 0px;
    color: #58606b;
  }
  .wysiwyg ol ul,
  .wysiwyg ol ol {
    margin-top: 18px;
    padding-left: 0;
  }
  .wysiwyg li {
    letter-spacing: 0.6px;
  }
  .wysiwyg li + li {
    margin-top: 18px;
  }
  .wysiwyg small {
    padding-left: 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .wysiwyg table {
    background-color: #fff;
  }
  .wysiwyg tr th:first-child,
  .wysiwyg tr td:first-child {
    border-left: none;
  }
  .wysiwyg tr th:last-child,
  .wysiwyg tr td:last-child {
    border-right: none;
  }
  .wysiwyg th {
    height: 45px;
    padding: 13px 15px 11px;
    border: 1px solid #f7f8f8;
    background-color: #d4dde1;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .wysiwyg td {
    height: 45px;
    border: 1px solid #f7f8f8;
    padding: 13px 15px 11px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .wysiwyg .scroll-table-wrap {
    margin: 0 -7.69231% 0 0;
  }
}

/* single
----------------------------------------------------------*/
.post-set-sec {
  padding: 57px 0 90px;
}

@media only screen and (min-width: 768px) {
  .single-post-ttl-area .main-obj.type-w {
    width: 714px;
    right: -3px;
  }
  .single-post-ttl-area .main-obj.type-question {
    width: 763px;
    right: -3px;
  }
  .single-post-ttl-area .main-obj.type-s {
    width: 836px;
  }
}

.single-post-ttl-area {
  padding: 0 0 58px;
}

.single-post-ttl-area .main-obj {
  position: absolute;
  top: 0;
  right: -23px;
  width: 985px;
}

.single-post-ttl-area .img {
  opacity: 0.4;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.single-post-ttl-area .img:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(237, 237, 237, 0.6);
}

.single-list-back-btn {
  position: absolute;
  top: 25px;
  left: 40px;
  z-index: 10;
  font-size: 12px;
  font-size: 1.2rem;
}

.single-list-back-btn a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 25px;
}

.single-list-back-btn .icon {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.single-post-ttl {
  display: inline-block;
  padding: 38px 0 0;
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.4;
  vertical-align: top;
  font-weight: 500;
}

.single-post-ttl .main-text {
  position: relative;
  padding: 0 0 3px;
}

.single-post-ttl .main-text:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background-color: #000;
}

/* post-set */
.post-set + .post-set {
  margin-top: 60px;
}

.post-set + .ttl-set-h2 {
  margin-top: 120px;
}

.bg-set-inner {
  padding: 57px 0 53px;
}

.bg-set-inner .ttl-box {
  position: relative;
  padding: 0 8.577%;
}

.bg-set-inner .ttl-box:before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  bottom: -3px;
  max-height: 64px;
  width: 10px;
  background: #FFEB00;
}

.bg-set-inner .ttl-box + .text-box {
  margin-top: 44px;
}

.bg-set-inner .text-box {
  padding: 0 8.577%;
}

.lead-set-text {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.1em;
}

.post-cap {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #58606b;
  letter-spacing: 0.7px;
}

.table-set-cap {
  max-width: 586px;
}

.img-text-set .img-box {
  width: 48.71795%;
}

.img-text-set .img-box.fl-r {
  text-align: right;
}

.img-text-set .img-box.fl-r .post-cap {
  padding: 0;
}

.img-text-set .white-label-text {
  background: none;
  padding: 0;
}

.img-text-set .post-cap {
  margin: 10px 0 0;
  padding: 0;
  background: none;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  letter-spacing: 0.05px;
}

.img-text-set .text-box {
  width: 46.15385%;
  margin: 0;
  line-height: 1.8;
}

.img-text-set .text-box.fl-r .text-box-inner {
  margin: 0;
}

.img-text-set .text-box-inner {
  position: relative;
  z-index: 9;
  background: none;
  margin: 0 0 0;
  padding: 0;
}

.img-set-col1 .post-cap {
  margin: 32px 0 0;
  padding: 0;
}

.img-set-col1 .white-label-text {
  background: none;
  padding: 0;
}

.white-label-text {
  padding: 4px 0 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
}

.faq-set + .ct-btn-wrap {
  margin-top: 80px;
}

.faq-set .faq-elm {
  position: relative;
  padding: 0;
  border-bottom: 2px solid #d4dde1;
}

.faq-set .faq-elm:first-child {
  border-top: 2px solid #d4dde1;
}

.faq-set .faq-elm.on .toggle-icon:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.faq-set .faq-elm .toggle-set-trunk {
  line-height: 1.95;
}

.faq-set .toggle-icon {
  position: absolute;
  top: 50%;
  right: 37px;
  z-index: 1;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 20px;
  font-size: 2rem;
}

.faq-set .toggle-icon:before {
  display: block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.faq-set .q-box {
  position: relative;
  padding: 41px 90px 31px 118px;
  cursor: pointer;
}

.faq-set .qa-text {
  position: absolute;
  top: 42px;
  left: 59px;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 1.1px;
}

.faq-set .q-text {
  max-width: 760px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
  line-height: 1.3;
}

.faq-set .a-box {
  display: none;
  position: relative;
}

.faq-set .a-box .qa-text {
  top: 0;
  padding: 44px 0 0;
}

.faq-set .a-box .qa-text:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 10px;
  background-color: #FFEB00;
}

.faq-set .text-inner {
  padding: 38px 90px 55px 118px;
}

.faq-set .text {
  max-width: 760px;
}

.message-set .text-box-inner .bg-white {
  background: none;
}

.partner-set-list {
  font-size: 0;
}

.partner-set-list .list-elm {
  display: inline-block;
  width: 22.80702%;
  margin: 0 2.92398% 2.92398% 0;
  vertical-align: top;
}

.partner-set-list .list-elm:nth-child(4n) {
  margin-right: 0;
}

.partner-set-list .logo-wrap {
  position: relative;
  height: 175px;
}

.partner-set-list .logo-img {
  position: absolute;
  top: 12.82051%;
  left: 12.82051%;
  right: 12.82051%;
  bottom: 12.82051%;
}

.partner-set-list img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.btn-set-list.col1 .list-elm {
  max-width: 498px;
  margin: 0 auto;
}

.btn-set-list.col1 .list-elm + .list-elm {
  margin-top: 30px;
}

.btn-set-list.col1 .ct-link-btn {
  font-size: 20px;
  font-size: 2rem;
}

.btn-set-list.col2 {
  max-width: 850px;
  margin: 0 auto;
  font-size: 0;
}

.btn-set-list.col2 .list-elm {
  display: inline-block;
  width: 48.23529%;
  margin: 0 3.52941% 30px 0;
  vertical-align: top;
}

.btn-set-list.col2 .list-elm:nth-child(even) {
  margin-right: 0;
}

.btn-set-list.col2 .ct-link-btn {
  padding: 26px 60px 22px 25px;
  font-size: 18px;
  font-size: 1.8rem;
}

.btn-set-list.col2 .ct-link-btn:before {
  right: 19px;
}

.btn-set-list.col2 .type-bd {
  padding: 21px 58px 19px 23px;
}

.btn-set-list.col2 .type-line {
  padding: 21px 58px 19px 0;
}

.btn-set-list .ct-link-btn {
  padding: 24px 60px 21px 25px;
  line-height: 1.6;
}

.btn-set-list .ct-link-btn:before {
  right: 29px;
}

.btn-set-list .type-bd {
  padding: 21px 58px 19px 23px;
}

.btn-set-list .type-line {
  padding: 21px 58px 19px 0;
}

.btn-set-list .icon-arrow-r02:before {
  font-size: 15px;
  font-size: 1.5rem;
}

.btn-set-list .icon-blank:before {
  font-size: 16px;
  font-size: 1.6rem;
}

.img-col-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 -56px;
}

.img-col-list.col3 .list-elm {
  width: 31.38402%;
}

.img-col-list.col3 .list-elm:nth-child(even) {
  margin-right: 2.92398%;
}

.img-col-list.col3 .list-elm:nth-child(3n) {
  margin-right: 0;
}

.img-col-list .list-elm {
  width: 48.53801%;
  margin: 0 2.92398% 56px 0;
}

.img-col-list .list-elm:nth-child(even) {
  margin-right: 0;
}

.img-col-list .img + .ttl {
  margin-top: 22px;
}

.img-col-list .img + .post-cap {
  margin-top: 19px;
}

.img-col-list .img + .post-cap-top {
  margin-top: 10px;
}

.img-col-list .post-cap-top {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
}

.img-col-list .post-cap + .ttl {
  margin-top: 22px;
}

.img-col-list .post-cap + .post-cap {
  margin-top: 19px;
}

.img-col-list .ttl + .post-cap {
  margin-top: 18px;
}

.step-set-list .list-elm {
  position: relative;
  min-height: 210px;
}

.step-set-list .list-elm:after {
  content: "";
  position: absolute;
  top: 194px;
  left: 122px;
  bottom: -10px;
  z-index: 1;
  width: 4px;
  background-color: #fff;
}

.step-set-list .list-elm:last-child:after {
  display: none;
}

.step-set-list .list-elm + .list-elm {
  margin-top: 10px;
}

.step-set-list .list-elm + .list-elm:before {
  content: "";
  position: absolute;
  top: 0;
  left: 109px;
  z-index: 1;
  height: 41px;
  width: 28px;
  background: url(../img/common/icon-arrow-b.png) no-repeat center top;
  background-size: 28px auto;
}

.step-set-list .text-box {
  padding: 55px 8.577% 52px 235px;
}

.step-set-list .num-box:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  height: 194px;
  width: 10px;
  background-color: #FFEB00;
}

.step-set-list .num-text {
  position: absolute;
  left: 100px;
  top: 59px;
  letter-spacing: 1px;
}

.step-set-list .num-text .sub-text {
  margin: 0 0 16px;
  font-size: 18px;
  font-size: 1.8rem;
}

.step-set-list .num-text .main-text {
  padding: 0 0 7px;
  border-bottom: 2px solid #000;
  font-size: 50px;
  font-size: 5rem;
}

.step-set-list .ttl + .text {
  margin-top: 40px;
}

.step-set-list .yellow-label {
  padding: 0 0 14px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #FFEB00), color-stop(92%, #FFEB00), color-stop(93%, #FFEB00), to(#FFEB00));
  background: -webkit-linear-gradient(top, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
  background: -o-linear-gradient(top, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
  background: linear-gradient(to bottom, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
}

.pagelink-set-list {
  margin: 0 0 -41px;
  font-size: 0;
}

.pagelink-set-list li {
  display: inline-block;
  width: 22.80702%;
  margin: 0 2.92398% 41px 0;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
  line-height: 1.6;
}

.pagelink-set-list li:nth-child(4n) {
  margin-right: 0;
}

.pagelink-set-list a {
  position: relative;
  padding: 9px 25px 9px 0;
  border-bottom: 2px solid #000;
}

.pagelink-set-list a:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  height: 2px;
  z-index: 1;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.pagelink-set-list .icon {
  opacity: 0;
  position: absolute;
  top: 50%;
  right: 17px;
  margin: 2px 0 0;
  color: #d4dde1;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.pagelink-set-list .icon:before {
  display: inline-block;
  -webkit-transform: rotate(90deg) translateY(-50%);
  -ms-transform: rotate(90deg) translateY(-50%);
  transform: rotate(90deg) translateY(-50%);
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
}

.guest-set-lg-inner {
  margin: 0 0 0 auto;
}

.guest-set-lg-box {
  padding: 0;
}

.guest-set-lg-box + .guest-set-lg-box .text-inner {
  padding-top: 0px;
}

.guest-set-lg-box + .guest-set-lg-box .img-box {
  top: 0;
}

.guest-set-lg-box .text-inner {
  padding: 0 10.25641% 98px 0;
}

.guest-set-lg-box .text-inner:after {
  content: "";
  clear: both;
  display: block;
}

.guest-set-lg-box .img-box {
  float: left;
  width: 40%;
}

.guest-set-lg-box .img {
  padding-top: 100%;
}

.guest-set-lg-box .text-box {
  float: right;
  width: 54.28571%;
  margin: 0 0 29px;
}

.guest-set-lg-box .name {
  display: inline-block;
  padding: 27px 0 0;
  margin: 0 0 10px;
  border-top: 10px solid #FFEB00;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 1.6px;
  vertical-align: top;
}

.guest-set-lg-box .info {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0.8px;
}

.guest-set-lg-box .lead {
  float: right;
  width: 54.28571%;
  font-size: 14px;
  font-size: 1.4rem;
}

.guest-set-lg-box .single-sns-list {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
  width: 35.89744%;
  margin: 38.84615% 0 0;
}

.single-sns-list {
  margin-bottom: -10px;
  font-size: 0;
}

.single-sns-list li {
  display: inline-block;
  margin: 0 0 10px 10px;
  vertical-align: top;
  font-size: 24px;
  font-size: 2.4rem;
}

.guest-set-min-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -20px;
}

.guest-set-min-list .list-elm {
  position: relative;
  overflow: hidden;
  width: 48.71795%;
  margin: 0 1.94932% 20px 0;
  padding-bottom: 34px;
  background-color: #fff;
}

.guest-set-min-list .list-elm:nth-child(2n) {
  margin-right: 0;
}

.guest-set-min-list .img {
  float: left;
  width: 38.42105%;
  padding-top: 38.42105%;
}

.guest-set-min-list .text-box {
  float: right;
  width: 61.57895%;
  padding: 13px 14px 5px;
}

.guest-set-min-list .name {
  margin: 0 0 9px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 1px;
}

.guest-set-min-list .name:before {
  content: "";
  position: absolute;
  top: 0;
  left: 14px;
  height: 6px;
  width: 20px;
  background-color: #FFEB00;
}

.guest-set-min-list .info {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.6;
  letter-spacing: 0.6px;
}

.guest-set-min-list .single-sns-list {
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.organizer-set-box {
  max-width: 1123px;
}

.organizer-set-box .box-wrap {
  padding: 0 13.00089% 0 0;
}

.organizer-set-box .box-inner {
  min-height: 322px;
  padding: 69px 25.17912% 74px 9.92835%;
}

.organizer-set-box .img-box {
  position: absolute;
  top: 69px;
  right: 0;
  z-index: 9;
  width: 28.6732%;
}

.organizer-set-box .img {
  padding-top: 100%;
}

.organizer-set-box .text-box {
  margin: 0 0 31px;
}

.organizer-set-box .name {
  display: inline-block;
  padding: 52px 0 0;
  margin: -69px 0 12px;
  border-top: 10px solid #FFEB00;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 1.6px;
  vertical-align: top;
}

.organizer-set-box .info {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0.8px;
}

.organizer-set-box .lead {
  font-size: 14px;
  font-size: 1.4rem;
}

.organizer-set-box .single-sns-list {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
  width: 35.89744%;
  margin: 38.84615% 0 0;
}

.rel-link-list {
  font-size: 0;
}

.rel-link-list .list-elm {
  display: inline-block;
  width: 48.53801%;
  vertical-align: top;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.92;
}

.rel-link-list .list-elm + .list-elm {
  margin-left: 2.92398%;
}

.rel-link-list .list-elm + .list-elm .hide-text-label {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #FFEB00), color-stop(92%, #FFEB00), color-stop(93%, #FFEB00), to(#FFEB00));
  background: -webkit-linear-gradient(top, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
  background: -o-linear-gradient(top, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
  background: linear-gradient(to bottom, transparent 0%, #FFEB00 0%, #FFEB00 92%, #FFEB00 93%, #FFEB00 100%);
}

.rel-link-list .text-box {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 16px 10px 16px 8px;
  letter-spacing: 1.2px;
}

.rel-link-list .show-text-label {
  padding: 2px 0 17px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(top, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(to bottom, transparent 0%, #fff 0%, #fff 92%, #fff 93%, #fff 100%);
}

.rel-link-list .hide-text {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9;
}

.rel-link-list .hide-text-label {
  padding: 2px 0 17px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #009BE6), color-stop(92%, #009BE6), color-stop(93%, #009BE6), to(#009BE6));
  background: -webkit-linear-gradient(top, transparent 0%, #009BE6 0%, #009BE6 92%, #009BE6 93%, #009BE6 100%);
  background: -o-linear-gradient(top, transparent 0%, #009BE6 0%, #009BE6 92%, #009BE6 93%, #009BE6 100%);
  background: linear-gradient(to bottom, transparent 0%, #009BE6 0%, #009BE6 92%, #009BE6 93%, #009BE6 100%);
}

.rel-link-list .hide-text-label:after {
  content: attr(data-text) "";
}

.comment-set-box {
  padding: 45px 0 40px 0;
}

.comment-set-box:after {
  content: "";
  clear: both;
  display: block;
}

.comment-set-box .img {
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 0 5.12821%;
  width: 28.20513%;
  padding-top: 28.20513%;
}

.comment-set-box .text-box {
  float: right;
  width: 61.53846%;
  padding: 0 40px 0 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.comment-set-box .quote-text {
  margin: 0 0 18px;
}

.comment-set-box .quote-text:before {
  content: "";
  display: block;
  height: 23px;
  width: 26px;
  margin: 0 0 21px;
  background: url(../img/common/icon-quote.svg) no-repeat;
  background-size: 26px 23px;
}

.comment-set-box .lead-text {
  line-height: 1.8;
  letter-spacing: .05em;
}

.comment-set-box .info-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.side-link-box {
  padding: 23px 0 27px;
  border-top: 4px solid #000;
}

.side-link-box-ttl {
  position: relative;
  margin: 0 0 20px;
  padding: 0 22px 0 16px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.side-link-box-ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 4px;
  background-color: #FFEB00;
}

.side-link-box-ttl.type-lg {
  margin-bottom: 32px;
  padding-left: 20px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.25;
}

.side-blank-link-list {
  padding: 0 22px;
}

.side-blank-link-list li {
  border-bottom: 1px solid #d4dde1;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.49;
}

.side-blank-link-list a {
  position: relative;
  padding: 18px 0 18px;
}

.side-blank-link-list .icon {
  position: absolute;
  top: 18px;
  right: 0;
  -webkit-transform: scale(0.889);
  -ms-transform: scale(0.889);
  transform: scale(0.889);
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  font-size: 10px;
}

.side-blank-link-list .date {
  margin: 0 0 8px;
  font-size: 12px;
  font-size: 1.2rem;
}

.side-event-link-list {
  padding: 0 7.93651%;
}

.side-event-link-list li + li {
  margin-top: 30px;
}

.side-event-link-list .date {
  margin: 0 0 10px;
}

.side-event-link-list .date p {
  vertical-align: baseline;
}

.side-event-link-list .date p + p {
  margin-left: 4px;
}

.side-event-link-list .date-text01 {
  font-size: 23px;
  font-size: 2.3rem;
  letter-spacing: 0.05em;
}

.side-event-link-list .date-text02 {
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 0.05em;
}

.side-event-link-list .date-text03 {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.side-event-link-list .img {
  position: relative;
  margin: 0 0 9px;
  padding-top: 54.71698%;
}

.side-event-link-list .status-label {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
  min-height: 21px;
  padding: 3px 11px 2px 1px;
  line-height: 1;
  font-size: 11px;
  font-size: 1.1rem;
}

.side-event-link-list .ttl {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.side-movement-link-list {
  padding: 0 7.93651%;
}

.side-movement-link-list li + li {
  margin-top: 30px;
}

.side-movement-link-list .img {
  position: relative;
  padding-top: 133.01887%;
}

.side-movement-link-list .img + .text-box {
  margin-top: 9px;
}

.side-movement-link-list .label-text {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
  min-height: 21px;
  padding: 0 10px 0 0;
  line-height: 1.3;
  vertical-align: top;
  font-size: 11px;
  font-size: 1.1rem;
}

.side-movement-link-list .ttl {
  margin: 0 0 7px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.side-movement-link-list .keyword {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -1em 8px 0;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.side-movement-link-list .keyword p {
  margin: 0 1em 0 0;
}

.side-movement-link-list .date-text {
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 0.05em;
}

@media only screen and (min-width: 768px) {
  .rel-link-list a:hover .hide-text {
    opacity: 1;
  }
  .pagelink-set-list a:hover:after {
    width: 100%;
  }
  .pagelink-set-list a:hover .icon {
    opacity: 1;
  }
  .single-top-box + .single-col2-box {
    margin-top: -46px;
  }
  .single-col2-box.type-side-link {
    margin-top: -100px;
  }
  .single-col2-right {
    width: 23.33333%;
  }
  .single-col2-left,
  .single-top-box {
    width: 72.22222%;
  }
  .single-col2-left {
    padding: 100px 0 0;
  }
  .single-col2-left.type-full {
    width: auto;
  }
  .single-col2-left.no-fix {
    padding-top: 0;
  }
  .single-col2-left .ct-side-space {
    padding-left: 0;
    padding-right: 0;
  }
  .single-col2-left .bg-set-inner .text-box {
    padding: 0 8.577%;
  }
  .single-col2-left .message-col2-list {
    margin-bottom: -7.69231%;
  }
  .single-col2-left .message-col2-list .list-elm {
    width: 48.71795%;
    margin: 0 2.5641% 7.69231% 0;
  }
  .single-col2-left .message-col2-list .list-elm:nth-child(even) {
    margin-right: 0;
  }
  .single-page-link-list {
    padding: 100px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .single-page-link-list li + li {
    margin-top: 28px;
  }
  .single-page-link-list a {
    position: relative;
    display: inline-block;
    padding: 0 0 0 30px;
    color: #D4DDE2;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  .single-page-link-list a:before {
    opacity: 0;
    content: "";
    position: absolute;
    top: -3px;
    left: 0;
    bottom: -3px;
    width: 10px;
    background-color: #FFEB00;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
  }
  .single-page-link-list a:hover {
    color: #000;
  }
  .single-page-link-list .current a {
    color: #000;
  }
  .single-page-link-list .current a:before {
    opacity: 1;
  }
  .faq-set .q-box:hover .toggle-icon {
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
  }
  .side-link-box-wrap {
    padding-top: 100px;
  }
}

.event-fix-btn,
#side-scroll-box,
#event-fix-btn-bottom {
  -webkit-transform: translateZ(1px);
  transform: translateZ(1px);
}

@media only screen and (max-width: 767px) {
  .post-set-sec {
    padding: 38px 0 40px;
  }
  .single-post-ttl-area {
    padding: 0;
  }
  .single-post-ttl-area .main-obj {
    right: 0;
    width: 100%;
  }
  .single-list-back-btn {
    top: 17px;
    left: 6.66667%;
  }
  .single-list-back-btn a {
    font-weight: bold;
    padding: 0 0 0 25px;
    color: #d4dde1;
  }
  .single-post-ttl {
    display: block;
    padding: 114px 0 0;
    margin: 0 0 0 6.66667%;
    font-size: 34px;
    font-size: 3.4rem;
  }
  .single-post-ttl.type02 {
    padding: 78px 0 25px;
  }
  .single-post-ttl.type02 .anime-label-line-text {
    display: inline-block;
  }
  .single-post-ttl.type02 .anime-label-line-text .main-text {
    padding: 0;
  }
  .single-post-ttl.type02 .anime-label-line-text .main-text:before {
    height: 3px;
  }
  .single-post-ttl .anime-label-line-text {
    display: block;
  }
  .single-post-ttl .main-text {
    padding: 0 7.14286% 16px 0;
  }
  .single-post-ttl .main-text:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background-color: #000;
  }
  .single-top-box {
    margin-bottom: 42px;
  }
  .single-page-link-list {
    position: relative;
    z-index: 10;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -20px;
  }
  .single-page-link-list li {
    width: 47.69231%;
    margin: 0 4.30769% 20px 0;
    border-bottom: 1px solid #000;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.7;
    letter-spacing: 0.05em;
  }
  .single-page-link-list li:nth-child(2n) {
    margin-right: 0;
  }
  .single-page-link-list a {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    padding: 2px 20px 3px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  .single-page-link-list a:before {
    content: "\e911";
    position: absolute;
    top: 50%;
    right: 5px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #d4dde1;
    font-size: 10px;
    font-size: 1rem;
    font-family: 'icon';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
  }
  .single-col2-right {
    height: auto !important;
    margin: 0 0 38px;
  }
  #side-scroll-box {
    position: static !important;
    width: auto !important;
  }
  /* post-set */
  .post-set + .post-set {
    margin-top: 40px;
  }
  .post-set + .ttl-set-h2 {
    margin-top: 100px;
  }
  .bg-set-inner {
    padding: 25px 0 35px;
  }
  .bg-set-inner .ttl-box {
    padding: 0 11.69231%;
  }
  .bg-set-inner .ttl-box:before {
    top: 4px;
    bottom: -1px;
    max-height: 32px;
    width: 5px;
  }
  .bg-set-inner .ttl-box + .text-box {
    margin-top: 30px;
  }
  .bg-set-inner .text-box {
    padding: 0 11.69231%;
  }
  .lead-set-text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .post-cap {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
    color: #58606b;
    letter-spacing: 0.7px;
  }
  .img-text-set {
    padding: 0 6.66667%;
  }
  .img-text-set .img-box {
    width: auto;
    margin: 0;
  }
  .img-text-set .img-box.fl-r {
    text-align: left;
  }
  .img-text-set .img-box.fl-r .post-cap {
    padding: 0;
  }
  .img-text-set .post-cap {
    margin: 16px 0 0;
    padding: 0;
  }
  .img-text-set .text-box {
    width: auto;
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 2;
  }
  .img-text-set .text-box.fl-r .text-box-inner {
    margin: 0;
  }
  .img-text-set .text-box-inner {
    margin: 0;
    padding: 21px 0 0;
    border-width: 5px;
  }
  .img-set-col1 {
    margin: 0;
  }
  .img-set-col1 .post-cap {
    margin: 16px 0 0;
    padding: 0;
    letter-spacing: 0.45px;
  }
  .white-label-text {
    padding: 3px 0 3px;
  }
  .map-set .iframe-wrap {
    padding-top: 100%;
  }
  .faq-set .toggle-icon {
    right: 27px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .faq-set .q-box {
    padding: 17px 60px 14px 60px;
  }
  .faq-set .qa-text {
    top: 20px;
    left: 23px;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.5px;
  }
  .faq-set .q-text {
    max-width: 760px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 1px;
    line-height: 1.6;
  }
  .faq-set .a-box .qa-text {
    padding: 24px 0 0;
  }
  .faq-set .a-box .qa-text:before {
    height: 5px;
  }
  .faq-set .text-inner {
    padding: 17px 30px 23px 61px;
  }
  .message-set .bg-white {
    background: none;
  }
  .partner-set-list {
    font-size: 0;
  }
  .partner-set-list .list-elm {
    width: 47.69231%;
    margin: 0 4.61538% 4.61538% 0;
    vertical-align: top;
  }
  .partner-set-list .list-elm:nth-child(even) {
    margin-right: 0;
  }
  .partner-set-list .logo-wrap {
    height: auto;
    padding-top: 75.48387%;
  }
  .partner-set-list .logo-img {
    top: 17.09402%;
    left: 17.09402%;
    right: 17.09402%;
    bottom: 17.09402%;
  }
  .btn-set-list.col1 .list-elm + .list-elm {
    margin-top: 8px;
  }
  .btn-set-list.col1 .ct-link-btn {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .btn-set-list.col2 {
    margin: 0 auto;
  }
  .btn-set-list.col2 .list-elm {
    display: block;
    width: auto;
    margin: 0 0 0 30.76923%;
  }
  .btn-set-list.col2 .list-elm + .list-elm {
    margin-top: 15px;
  }
  .btn-set-list.col2 .ct-link-btn {
    padding: 12px 30px 12px 10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.44;
  }
  .btn-set-list.col2 .ct-link-btn:before {
    right: 9px;
    font-size: 10px;
    font-size: 1rem;
  }
  .btn-set-list.col2 .type-bd {
    padding: 11px 30px 11px 10px;
  }
  .btn-set-list.col2 .type-line {
    padding: 12px 30px 12px 0;
  }
  .btn-set-list.col2 .icon-file:before,
  .btn-set-list.col2 .icon-dl:before {
    right: 10px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .btn-set-list .ct-link-btn {
    padding: 13px 40px 12px 12px;
  }
  .btn-set-list .ct-link-btn:before {
    right: 11px;
  }
  .btn-set-list .type-bd {
    padding: 13px 40px 11px 11px;
  }
  .btn-set-list .type-bd:before {
    right: 11px;
  }
  .btn-set-list .type-line {
    padding: 13px 40px 12px 0;
  }
  .btn-set-list .icon-arrow-r02:before {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .btn-set-list .icon-blank:before {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .btn-set-list .icon-file:before {
    right: 14px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .btn-set-list .icon-dl:before {
    right: 14px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .img-col-list {
    margin: 0 0 -50px;
  }
  .img-col-list.col3 .list-elm {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: auto;
  }
  .img-col-list.col3 .list-elm:nth-child(even), .img-col-list.col3 .list-elm:nth-child(3n) {
    margin-right: 0;
  }
  .img-col-list.col3 .list-elm + .list-elm {
    margin-top: 40px;
  }
  .img-col-list.col3 .ttl {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin: 0 0 11px;
  }
  .img-col-list.col3 .img {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 47.69231%;
  }
  .img-col-list.col3 .img + .post-cap,
  .img-col-list.col3 .img + .ttl + .post-cap {
    width: 47.69231%;
    margin: 0 0 0 4.61538%;
  }
  .img-col-list.col3 .img + .ttl {
    margin-top: 0;
  }
  .img-col-list.col3 .post-cap {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
  }
  .img-col-list .list-elm {
    width: 47.38462%;
    margin: 0 4.61538% 50px 0;
  }
  .img-col-list .list-elm:nth-child(even) {
    margin-right: 0;
  }
  .img-col-list .img + .ttl {
    margin-top: 10px;
  }
  .img-col-list .img + .post-cap {
    margin-top: 9px;
  }
  .img-col-list .img + .post-cap-top {
    margin-top: 16px;
  }
  .img-col-list .post-cap + .ttl {
    margin-top: 10px;
  }
  .img-col-list .post-cap + .post-cap {
    margin-top: 9px;
  }
  .img-col-list .ttl + .post-cap {
    margin-top: 6px;
  }
  .img-col-list .post-cap {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.5px;
  }
  .img-col-list .post-cap-top {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.45px;
  }
  .step-set-list .list-elm {
    min-height: inherit;
  }
  .step-set-list .list-elm:after {
    top: 98px;
    left: 31px;
    z-index: 1;
    width: 2px;
  }
  .step-set-list .list-elm:last-child:after {
    display: none;
  }
  .step-set-list .list-elm + .list-elm {
    margin-top: 10px;
  }
  .step-set-list .list-elm + .list-elm:before {
    left: 25px;
    height: 20px;
    width: 13px;
    background-size: 13px 20px;
  }
  .step-set-list .text-box {
    padding: 25px 6.66667% 32px 63px;
  }
  .step-set-list .num-box:after {
    display: none;
  }
  .step-set-list .num-text {
    left: 19px;
    top: 29px;
    letter-spacing: 0.4px;
  }
  .step-set-list .num-text .sub-text {
    margin: 0 0 8px;
    font-size: 9px;
    font-size: .9rem;
  }
  .step-set-list .num-text .main-text {
    padding: 0 0 4px;
    border-bottom: 1px solid #000;
    font-size: 25px;
    font-size: 2.5rem;
  }
  .step-set-list .ttl + .text {
    margin-top: 28px;
  }
  .step-set-list .yellow-label {
    padding: 0 0 7px;
  }
  .pagelink-set-list {
    margin: 0 0 -17px;
    font-size: 0;
  }
  .pagelink-set-list li {
    width: 47.69231%;
    margin: 0 4.61538% 17px 0;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.3px;
    line-height: 1.6;
  }
  .pagelink-set-list li:nth-child(2n) {
    margin-right: 0;
  }
  .pagelink-set-list a {
    padding: 4px 25px 4px 0;
    border-bottom: 1px solid #000;
  }
  .pagelink-set-list a:after {
    display: none;
  }
  .pagelink-set-list .icon {
    opacity: 1;
    right: 15px;
    font-size: 10px;
    font-size: 1rem;
  }
  .pagelink-set-list .icon:before {
    -webkit-transform: rotate(90deg) translateY(-50%) scale(0.8);
    -ms-transform: rotate(90deg) translateY(-50%) scale(0.8);
    transform: rotate(90deg) translateY(-50%) scale(0.8);
  }
  .guest-set-lg-inner {
    margin: 0;
  }
  .guest-set-lg-box {
    padding: 0;
  }
  .guest-set-lg-box + .guest-set-lg-box .text-inner {
    padding-top: 44px;
  }
  .guest-set-lg-box + .guest-set-lg-box .img-box {
    top: 0;
  }
  .guest-set-lg-box .text-inner {
    min-height: inherit;
    padding: 0 0 43px;
  }
  .guest-set-lg-box .img-text-box:after {
    content: "";
    clear: both;
    display: block;
  }
  .guest-set-lg-box .img-box {
    float: left;
    position: relative;
    top: auto;
    left: auto;
    z-index: 9;
    width: 49.53846%;
    margin: -4.61538% 0 0 -4.30769%;
  }
  .guest-set-lg-box .text-box {
    float: left;
    margin: 0 0 29px 4.30769%;
    width: 43.69231%;
  }
  .guest-set-lg-box .name {
    display: inline-block;
    padding: 13px 0 0;
    margin: 0 0 10px;
    border-top: 5px solid #FFEB00;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    letter-spacing: 1.5px;
  }
  .guest-set-lg-box .info {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: 0.5px;
  }
  .guest-set-lg-box .lead {
    float: none;
    width: auto;
    margin: 24px 11.69231% 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .guest-set-lg-box .single-sns-list {
    position: static;
    width: auto;
    margin: 21px 11.38462% -10px;
  }
  .guest-set-min-list {
    margin-bottom: -15px;
  }
  .guest-set-min-list .list-elm {
    display: block;
    width: 47.69231%;
    margin: 0 4.61538% 15px 0;
    background-color: #fff;
  }
  .guest-set-min-list .list-elm:nth-child(3n) {
    margin-right: 4.61538%;
  }
  .guest-set-min-list .list-elm:nth-child(2n) {
    margin-right: 0;
  }
  .guest-set-min-list .img {
    float: none;
    width: auto;
    padding-top: 100%;
  }
  .guest-set-min-list .text-box {
    float: none;
    width: auto;
    padding: 11px 13px 15px;
  }
  .guest-set-min-list .name {
    margin: 0 0 5px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
    letter-spacing: 1px;
  }
  .guest-set-min-list .name:before {
    top: 15px;
    left: 0;
    height: 15px;
    width: 4px;
  }
  .guest-set-min-list .info {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4;
    letter-spacing: 0.6px;
  }
  .guest-set-min-list .single-sns-list {
    right: auto;
    left: 10px;
    text-align: left;
    margin-right: -10px;
  }
  .guest-set-min-list .single-sns-list li {
    margin: 0 10px 10px 0;
  }
  .organizer-set-box .box-wrap {
    padding: 10.76923% 0 0;
  }
  .organizer-set-box .box-inner {
    min-height: 161px;
    padding: 12.30769% 11.69231% 11.07692%;
  }
  .organizer-set-box .img-box {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 49.53846%;
  }
  .organizer-set-box .img-box + .text-box,
  .organizer-set-box .img-box + .lead {
    margin-top: 43.7751%;
  }
  .organizer-set-box .text-box {
    margin: 0 0 11px;
  }
  .organizer-set-box .name {
    padding: 12px 0 0;
    margin: 0 0 11px;
    border-top: 5px solid #FFEB00;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 1.2px;
  }
  .organizer-set-box .info {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: 0.6px;
  }
  .organizer-set-box .lead {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .organizer-set-box .single-sns-list {
    position: static;
    width: auto;
    margin: 21px 0 -10px;
  }
  .rel-link-list {
    font-size: 0;
  }
  .rel-link-list .list-elm {
    display: block;
    width: auto;
    vertical-align: top;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
  }
  .rel-link-list .list-elm + .list-elm {
    margin: 36px 0 0;
  }
  .rel-link-list .text-box {
    padding: 14px 10px 9px 7px;
    letter-spacing: 1.5px;
  }
  .rel-link-list .show-text-label {
    padding: 0 0 8px;
  }
  .rel-link-list .hide-text-label {
    padding: 0 0 8px;
  }
  .comment-set-box {
    padding: 40px 20px 36px;
  }
  .comment-set-box .img {
    float: none;
    width: 65.26316%;
    margin: 0 auto 25px;
    padding-top: 65.26316%;
  }
  .comment-set-box .text-box {
    float: none;
    width: auto;
    padding: 0;
  }
  .comment-set-box .quote-text {
    position: relative;
    margin: 0 0 21px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .comment-set-box .quote-text:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 5px;
    margin: 0 0 15px;
  }
  .comment-set-box .lead-text {
    line-height: 2;
    letter-spacing: .05em;
  }
  .comment-set-box .info-text {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .side-link-box {
    padding: 32px 6.66667% 60px;
    border-top: none;
  }
  .side-link-box-ttl {
    position: relative;
    margin: 0 0 18px;
    padding: 3px 0 7px 22px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .side-link-box-ttl:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 4px;
    background-color: #FFEB00;
  }
  .side-blank-link-list {
    padding: 0 20px;
  }
  .side-event-link-list {
    padding: 0;
  }
  .side-event-link-list li + li {
    margin-top: 20px;
  }
  .side-event-link-list .head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-flow: row-reverse;
    -ms-flex-flow: row-reverse;
    flex-flow: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 0 9px;
  }
  .side-event-link-list .date {
    width: 47.38462%;
    margin: 1px 0 0 5.23077%;
  }
  .side-event-link-list .date p {
    display: block;
    vertical-align: baseline;
  }
  .side-event-link-list .date p + p {
    margin: 5px 0 0;
  }
  .side-event-link-list .date-text01 {
    margin: 0 4px 0 0;
    font-size: 30px;
    font-size: 3rem;
  }
  .side-event-link-list .date-text02 {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .side-event-link-list .date-text03 {
    margin: 0 2px 0 0;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .side-event-link-list .img {
    width: 47.38462%;
    margin: 0;
    padding-top: 25.84615%;
  }
  .side-event-link-list .status-label {
    min-height: inherit;
    min-width: 49px;
    padding: 0 11px 0 2px;
    line-height: 1.5;
    font-size: 10px;
    font-size: 1rem;
  }
  .side-event-link-list .ttl {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  .side-movement-link-list {
    padding: 0;
  }
  .side-movement-link-list li + li {
    margin-top: 20px;
  }
  .side-movement-link-list a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .side-movement-link-list .img {
    width: 36.92308%;
    padding-top: 49.23077%;
  }
  .side-movement-link-list .img + .text-box {
    margin-top: 0;
  }
  .side-movement-link-list .text-box {
    width: 57.53846%;
    margin: 0 0 0 5.53846%;
  }
  .side-movement-link-list .label-text {
    display: inline-block;
    position: relative;
    bottom: auto;
    left: auto;
    min-height: 18px;
    margin: 0 0 19px;
    padding: 1px 10px 0 0;
    vertical-align: top;
    font-size: 10px;
    font-size: 1rem;
  }
  .side-movement-link-list .ttl {
    margin: 0 0 17px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
  }
  .side-movement-link-list .keyword {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -1em 5px 0;
    letter-spacing: 0.05em;
  }
  .side-movement-link-list .keyword p {
    margin: 0 1em 0 0;
  }
}

@media only screen and (max-width: 360px) {
  .guest-set-min-list .single-sns-list li {
    font-size: 18px;
  }
}

/* event list
----------------------------------------------------------*/
.event-list-main-area {
  padding: 60px 0 110px;
}

.event-list-main-area .load-more-btn-wrap {
  margin: 83px 0 0;
}

.event-list-main-area .top-qq-main-link {
  margin-top: -80px;
}

.event-list-main-area .top-qq-main-link-sp + .top-qq-main-link {
  margin-top: auto;
}

.event-col2-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 -74px;
}

.event-col2-list.type-signage .list-elm {
  width: 47.39583%;
  margin: 0 5.20833% 41px 0;
}

.event-col2-list.type-signage .list-elm:nth-child(even) {
  margin-right: 0;
}

.event-col2-list.type-signage .img-box {
  margin: 0 0 10px;
}

.event-col2-list.type-signage .qr-box {
  position: absolute;
  bottom: -62px;
  right: -20px;
  z-index: 10;
  width: 100px;
  padding: 4px;
  background-image: url(../img/signage/bg-qr.jpg);
}

.event-col2-list.type-signage .qr-box-inner {
  padding: 9px;
}

.event-col2-list.type-signage .date-text + .date-text p {
  padding-right: 6px;
}

.event-col2-list.type-signage .date-text p {
  padding: 0 7px 6px 0;
}

.event-col2-list.type-signage .date-text01 {
  letter-spacing: 0.05em;
}

.event-col2-list.type-signage .date-text02 {
  letter-spacing: 0.05em;
}

.event-col2-list.type-signage .date-text03 {
  padding: 0 0 0 3px;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.event-col2-list.type-signage .img {
  padding-top: 54.06593%;
}

.event-col2-list.type-signage .ttl {
  padding: 0 110px 0 0;
  line-height: 1.4;
}

.event-col2-list.type-box {
  display: block;
  margin: 0;
}

.event-col2-list.type-box .list-elm {
  width: auto;
  margin: 0;
}

.event-col2-list .list-elm {
  width: 48.88889%;
  margin: 0 2.22222% 74px 0;
}

.event-col2-list .list-elm:nth-child(even) {
  margin-right: 0;
}

.event-col2-list .img-box {
  position: relative;
  padding: 23px 0 0;
  margin: 0 0 13px;
}

.event-col2-list .date-text-box {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9;
}

.event-col2-list .hide-text {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9;
}

.event-col2-list .hide-text .bg-white {
  background-color: #FFEB00;
}

.event-col2-list .date-text + .date-text p {
  padding-right: 12px;
}

.event-col2-list .date-text p {
  padding: 0 7px 6px 0;
}

.event-col2-list .date-text01 {
  font-size: 34px;
  font-size: 3.4rem;
  letter-spacing: 1.6px;
}

.event-col2-list .date-text02 {
  position: relative;
  top: -2px;
  margin: 0 0 0 1px;
  letter-spacing: 0.8px;
  font-size: 14px;
  font-size: 1.4rem;
}

.event-col2-list .date-text03 {
  padding: 0 0 0 3px;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.event-col2-list .hide-text-label:after {
  content: attr(data-text) "";
}

.event-col2-list .status-label {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
  min-height: 40px;
  width: 146px;
  padding: 8px 5px;
  line-height: 1;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.8px;
}

.event-col2-list .img {
  padding-top: 56.0241%;
}

.event-col2-list .ttl {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
  letter-spacing: 1px;
  font-weight: bold;
}

.event-col2-list .bd-white-label {
  margin: 9px 0 0;
  padding: 2px 18px 2px;
  font-size: 12px;
  font-size: 1.2rem;
  vertical-align: top;
}

.load-more-btn {
  position: relative;
  max-width: 344px;
  margin: 0 auto;
  padding: 14px 55px 14px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-bottom: 4px solid #000;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 1px;
}

.load-more-btn:before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  height: 4px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.load-more-btn .icon {
  position: absolute;
  top: 50%;
  right: 20px;
  margin: -1px 0 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 20px;
  font-size: 2rem;
}

.load-more-btn .icon:before {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.event-report-list-area {
  padding: 1px 0 146px;
}

.event-report-list-area .load-more-btn-wrap {
  margin: 61px 0 83px;
}

.event-report-list-ttl {
  font-size: 36px;
  font-size: 3.6rem;
  margin: 1px 0 75px 13px;
}

.event-report-list-box {
  padding: 18px 18px 18px;
}

.event-report-list-link-elm + .event-report-list-link-elm {
  margin-top: 18px;
}

.event-report-list-link-elm a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.event-report-list-link-elm .img-box {
  width: 48.48485%;
}

.event-report-list-link-elm .date-text-box {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 9;
  padding: 2px 6px 8px 3px;
}

.event-report-list-link-elm .date-text + .date-text {
  margin-left: 5px;
}

.event-report-list-link-elm .date-text01 {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 1px;
}

.event-report-list-link-elm .date-text02 {
  position: relative;
  top: -2px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
}

.event-report-list-link-elm .text-box {
  min-height: 270px;
  width: 51.51515%;
  padding: 1px 7px 60px;
}

.event-report-list-link-elm .ttl {
  margin: 0 0 21px;
  font-size: 34px;
  font-size: 3.4rem;
  line-height: 1.4;
  letter-spacing: 1px;
}

.event-report-list-link-elm .cat-list {
  margin: 0 0 0 6px;
  font-size: 0;
}

.event-report-list-link-elm .cat-list li {
  display: inline-block;
  vertical-align: top;
  margin: 0 16px 0 0;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 1px;
}

.event-report-list-link-elm .more {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 228px;
  padding: 13px 0;
  line-height: 1.2;
  letter-spacing: 0.7px;
  border-bottom: 2px solid #000;
}

.event-report-list-link-elm .more:before {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  z-index: 9;
  height: 2px;
  width: 0;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  background-color: #58606b;
}

.event-report-list-link-elm .more .icon {
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 15px;
  font-size: 1.5rem;
}

.event-report-list-link-elm .more .icon:before {
  display: inline-block;
  -webkit-transition: margin 0.3s ease-out;
  -o-transition: margin 0.3s ease-out;
  transition: margin 0.3s ease-out;
}

.event-post-old-area {
  padding: 1px 0 120px;
}

.event-post-old-area .event-report-list-ttl {
  position: relative;
  margin: 0 0 45px;
  padding-top: 73px;
  border-top: 10px solid #d4dde1;
}

.event-post-old-area .event-report-list-ttl.type-yellow:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  z-index: 9;
  height: 10px;
  width: 180px;
  background-color: #FFEB00;
}

.event-post-old-area .load-more-btn-wrap {
  margin: 100px 0 0;
}

.event-rel-link-area02 {
  padding: 80px 0;
}

.old-event-year-area {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 2px 0 40px;
  line-height: 1.1;
}

.old-event-year-list {
  white-space: nowrap;
  font-size: 0;
  border-bottom: 4px solid #d4dde1;
}

.old-event-year-list li {
  display: inline-block;
  margin: 0 0 0 40px;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.old-event-year-list li:first-child {
  margin-left: 0;
}

.old-event-year-list a {
  position: relative;
  padding: 0 5px 21px 0;
}

.old-event-year-list a:before {
  content: "";
  opacity: 0;
  position: absolute;
  bottom: -4px;
  left: 0;
  right: 0;
  height: 4px;
  z-index: 9;
  background-color: #FFEB00;
}

.old-event-year-list .current a {
  color: #009BE6;
}

.old-event-year-list .current a:before {
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .event-col2-list a:hover .hide-text {
    opacity: 1;
  }
  .event-col2-list a:hover .ttl {
    text-decoration: underline;
  }
  .event-col2-list.type-small .ttl {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .list-elm {
    width: 31.85185%;
    margin: 0 2.22222% 74px 0;
  }
  .event-col2-list.col3 .list-elm:nth-child(even) {
    margin-right: 2.22222%;
  }
  .event-col2-list.col3 .list-elm:nth-child(3n) {
    margin-right: 0;
  }
  .event-col2-list.col3 .date-text01 {
    font-size: 23px;
    font-size: 2.3rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .date-text02 {
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .date-text03 {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .status-label {
    min-height: 30px;
    width: 106px;
    padding: 6px 5px;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .ttl {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
  .event-col2-list.col3 .bd-white-label {
    padding: 2px 10px 2px;
    font-size: 10px;
    font-size: 1rem;
  }
  .load-more-btn:hover:before {
    width: 100%;
  }
  .load-more-btn:hover .icon:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .event-report-list-link-elm a:hover .ttl {
    text-decoration: underline;
  }
  .event-report-list-link-elm a:hover .more:before {
    width: 100%;
  }
  .event-report-list-link-elm a:hover .more .icon:before {
    margin-right: -10px;
  }
}

@media only screen and (max-width: 767px) {
  .event-list-main-area {
    padding: 42px 0 61px;
  }
  .event-list-main-area .load-more-btn-wrap {
    margin: 80px 0 0;
  }
  .event-col2-list {
    display: block;
    margin: 0 0 -33px;
  }
  .event-col2-list .list-elm {
    width: auto;
    margin: 0 0 33px;
  }
  .event-col2-list .img-box {
    padding: 14px 0 0;
    margin: 0 0 8px;
  }
  .event-col2-list .date-text + .date-text {
    margin-top: -1px;
  }
  .event-col2-list .date-text + .date-text p {
    padding-right: 6px;
  }
  .event-col2-list .date-text p {
    padding: 0 7px 4px 0;
  }
  .event-col2-list .date-text01 {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.9px;
  }
  .event-col2-list .date-text02 {
    top: -1px;
    margin: 0;
    letter-spacing: 0.5px;
    font-size: 7px;
    font-size: 0.7rem;
  }
  .event-col2-list .date-text03 {
    padding: 0 0 0 1px;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.7px;
  }
  .event-col2-list .status-label {
    min-height: 30px;
    width: 100px;
    padding: 4px 3px;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.8px;
  }
  .event-col2-list .img {
    padding-top: 56.0241%;
  }
  .event-col2-list .ttl {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: 1px;
  }
  .event-col2-list .bd-white-label {
    margin: 8px 0 0;
    padding: 1px 12px 1px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .load-more-btn {
    max-width: 185px;
    padding: 8px 30px 6px 0;
    border-bottom: 2px solid #000;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .load-more-btn:before {
    display: none;
  }
  .load-more-btn .icon {
    right: 9px;
    font-size: 10px;
    font-size: 1rem;
  }
  .event-report-list-area {
    padding: 0 0 0;
  }
  .event-report-list-area .load-more-btn-wrap {
    margin: 45px 0 29px;
  }
  .event-report-list-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    border-width: 6px;
    margin: 0 6.13333% 30px;
  }
  .event-report-list-box {
    padding: 31px 6.66667% 31px;
  }
  .event-report-list-link-elm + .event-report-list-link-elm {
    margin-top: 20px;
  }
  .event-report-list-link-elm a {
    display: block;
  }
  .event-report-list-link-elm .img-box {
    width: auto;
    padding-top: 56.61538%;
  }
  .event-report-list-link-elm .date-text-box {
    padding: 7px 6px 8px 5px;
  }
  .event-report-list-link-elm .date-text + .date-text {
    margin-left: 4px;
  }
  .event-report-list-link-elm .date-text01 {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.9px;
  }
  .event-report-list-link-elm .date-text02 {
    top: 0;
    margin: 0 0 0 -2px;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0;
  }
  .event-report-list-link-elm .text-box {
    min-height: inherit;
    width: auto;
    padding: 9px 2.76923% 58px;
  }
  .event-report-list-link-elm .ttl {
    margin: 0 0 12px;
    font-size: 20px;
    font-size: 2rem;
    text-decoration: underline;
  }
  .event-report-list-link-elm .cat-list {
    margin: 0 0 0 3px;
  }
  .event-report-list-link-elm .cat-list li {
    margin: 0 12px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 1px;
  }
  .event-report-list-link-elm .more {
    width: 162px;
    padding: 13px 0;
    line-height: 1.2;
    letter-spacing: 0.7px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .event-report-list-link-elm .more:before {
    display: none;
  }
  .event-report-list-link-elm .more .icon {
    right: 4px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .event-post-old-area {
    padding: 0 0 60px;
  }
  .event-post-old-area + .event-rel-link-area02 {
    padding-top: 0;
  }
  .event-post-old-area .event-report-list-ttl {
    margin: 0 6.66667% 41px;
    padding: 40px 0 0;
    border-width: 6px;
  }
  .event-post-old-area .load-more-btn-wrap {
    margin: 62px 6.66667% 0;
  }
  .event-rel-link-area02 {
    padding: 80px 0;
  }
  .old-event-year-area {
    position: relative;
    margin: 0 0 42px;
    padding: 0 0 0 6.66667%;
  }
  .old-event-year-list {
    border-bottom: 6px solid #d4dde1;
  }
  .old-event-year-list li {
    position: relative;
    margin: 0 30px 0 0;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .old-event-year-list li:before {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 0;
    right: -30px;
    height: 6px;
    background-color: #d4dde1;
  }
  .old-event-year-list a {
    padding: 0 0 20px 0;
  }
  .old-event-year-list a:before {
    bottom: -6px;
    height: 6px;
  }
}

/* event single
----------------------------------------------------------*/
.event-single-wrapper .global-footer {
  background-color: #fff;
  border-top: 2px solid #f7f8f8;
}

.event-single-head-area {
  padding: 0 24px;
  margin: 0 auto 32px;
}

.event-single-head-area .single-list-back-btn {
  top: 5px;
  left: 24px;
}

.event-single-head-area .topic-pass-area {
  padding-top: 0;
}

.event-single-main-area {
  padding: 21px 0 165px;
}

.event-single-main-area + .event-single-join-area {
  margin-top: -50px;
}

.event-single-main-area .date-cell,
.event-single-main-area .date-sub,
.event-single-main-area .keyword-list-box {
  color: #fff;
}

.event-single-main-area .ct-inner-1220 {
  position: relative;
}

.event-single-main-area .left-box {
  width: 64.81481%;
}

.event-single-main-area .right-box {
  width: 23.33333%;
}

.event-single-main-area .img-box {
  width: 44.01639%;
}

.event-single-main-area .status-date-table {
  margin: 0 0 51px;
}

.event-single-main-area .status-cell {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 161px;
  text-align: center;
  vertical-align: middle;
}

.event-single-main-area .status-cell + .date-cell {
  padding-left: 21px;
}

.event-single-main-area .status-white-label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px 10px 9px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #fff;
  line-height: 1;
}

.event-single-main-area .status-white-label + .status-text {
  margin-bottom: 35px;
}

.event-single-main-area .status-text {
  padding: 2px 3px;
  letter-spacing: 1.1px;
  font-size: 20px;
  font-size: 2rem;
}

.event-single-main-area .date-text {
  margin: 8px 0 4px;
}

.event-single-main-area .date-text + .date-text {
  margin-top: 11px;
}

.event-single-main-area .date-text01 {
  display: inline-block;
  margin: 0 0 0 -3px;
  font-size: 42px;
  font-size: 4.2rem;
}

.event-single-main-area .date-text02 {
  position: relative;
  top: -1px;
  margin: 0 0 0 3px;
  letter-spacing: 0.8px;
}

.event-single-main-area .date-text03 {
  font-size: 24px;
  font-size: 2.4rem;
}

.event-single-main-area .date-text03 + .date-text02 {
  margin-left: 4px;
}

.event-single-main-area .post-ttl {
  margin: 0 0 48px;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.event-single-main-area .label-white {
  padding: 7px 0 6px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
}

.event-single-main-area .bd-white-label {
  margin: 0 0 20px;
}

.event-single-main-area .sub-ttl {
  margin: 0 0 18px;
  max-width: 595px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 1.1px;
}

.keyword-list-box {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.keyword-list-ttl-cell {
  letter-spacing: 0.05em;
  width: 100px;
}

.keyword-list {
  line-height: 1.6;
  margin-right: -1em;
  font-size: 0;
}

.keyword-list li {
  display: inline-block;
  margin: 0 1em 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.bd-white-label {
  display: inline-block;
  padding: 3px 25px 3px;
  border: 1px solid #000;
  background-color: #fff;
  line-height: 1.5;
  letter-spacing: 0.7px;
}

.white-tag-list {
  margin: 0 0 -10px;
  font-size: 0;
}

.white-tag-list li {
  display: inline-block;
  margin: 0 10px 10px 0;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.9px;
}

.white-tag-list .text {
  padding: 0 11px 6px 3px;
}

.event-single-main-bg:after {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  background-color: rgba(0, 155, 255, 0.85);
}

.event-single-main-bg .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 6;
  background-color: rgba(0, 0, 0, 0.2);
}

.event-single-join-area + .post-set-sec {
  padding-top: 0;
}

.event-single-join-area .single-col2-left {
  padding-top: 0;
}

.event-single-join-area .white-col2-box-inner {
  padding: 0 10.25641% 50px;
}

.event-single-join-area .right-box {
  width: 36.41732%;
  padding: 52px 0 0;
}

.event-single-join-area .ttl {
  display: inline-block;
  position: relative;
  padding: 45px 0 0;
  margin: 0 0 43px;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.3;
  letter-spacing: 1.2px;
}

.event-single-join-area .ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 10px;
  background-color: #FFEB00;
}

.event-single-join-area .info-table-box {
  padding: 0 0 34px;
  border-bottom: 1px solid #000;
}

.event-single-join-area .info-table {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
}

.event-single-join-area .info-table + .info-table {
  margin-top: 7px;
}

.event-single-join-area .ttl-cell {
  width: 116px;
}

.event-single-join-area .info-text {
  letter-spacing: 1.5px;
}

.event-single-join-area .info-text + .info-sub-text {
  margin-top: 8px;
}

.event-single-join-area .date {
  padding-top: 1px;
}

.event-single-join-area .info-sub-text {
  margin: 0 0 11px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.9px;
}

.event-single-join-area .lead {
  margin: 24px 0 0;
}

.event-join-btn-link-wrap + .event-join-btn-link-wrap {
  margin-top: 20px;
}

.event-post-area {
  padding: 0 0 70px;
}

.event-join-btn-link {
  position: relative;
  padding: 19px 55px 17px 17px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  box-sizing: border-box;
  border: 2px solid #009BE6;
}

.event-join-btn-link:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #009BE6;
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  -ms-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.event-join-btn-link.type-white {
  border: 2px solid #fff;
  background: none;
}

.event-join-btn-link.type-blue {
  border: 2px solid #009BE6;
}

.event-join-btn-link.type-lg {
  padding: 0;
}

.event-join-btn-link.type-lg .main-text,
.event-join-btn-link.type-lg .sub-text {
  width: 100%;
}

.event-join-btn-link.type-lg .text {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.event-join-btn-link.type-lg .text-inner {
  display: table-cell;
  height: 240px;
  width: 100%;
  padding: 13px 45px 13px 17px;
  vertical-align: middle;
}

.event-join-btn-link.type-lg .icon {
  bottom: 50%;
  -webkit-transform: translateY(50%);
  -ms-transform: translateY(50%);
  transform: translateY(50%);
}

.event-join-btn-link .main-text {
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

.event-join-btn-link .icon {
  display: block;
  position: absolute;
  top: 50%;
  right: 14px;
  z-index: 9;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: margin 0.3s ease-out;
  -o-transition: margin 0.3s ease-out;
  transition: margin 0.3s ease-out;
  font-size: 12px;
  font-size: 1.2rem;
}

.event-single-join-attention {
  margin: 27px 0 0;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.3;
}

.event-rel-link-area {
  padding: 80px 0;
}

.event-sns-list-area {
  border-top: 1px solid #d4dde1;
  padding: 31px 11px 99px;
}

.event-sns-link-list {
  font-size: 0;
}

.event-sns-link-list li {
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.05em;
}

.event-sns-link-list li + li {
  margin-left: 30px;
}

.event-sns-link-list .icon {
  display: inline-block;
  margin: 0 9px 0 0;
  line-height: 1;
  font-size: 20px;
  font-size: 2rem;
  vertical-align: top;
}

.event-sns-link-list .text {
  display: inline-block;
  padding: 3px 0 0;
  vertical-align: top;
}

@media only screen and (min-width: 768px) {
  a.event-join-btn-link:hover {
    color: #FFEB00;
  }
  a.event-join-btn-link:hover:after {
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
  }
  a.event-join-btn-link:hover .icon {
    margin-right: -5px;
  }
}

@media only screen and (max-width: 767px) {
  .event-single-wrapper .global-footer {
    border-top: none;
  }
  .event-single-head-area {
    padding: 0 6.66667%;
    margin: 0 auto 73px;
  }
  .event-single-head-area .single-list-back-btn {
    left: 6.66667%;
  }
  .event-single-head-area .single-list-back-btn a {
    color: #fff;
  }
  .event-single-head-area .topic-pass-area {
    padding-top: 0;
  }
  .event-single-main-area {
    padding: 19px 0 25px;
  }
  .event-single-main-area + .event-single-join-area {
    margin-top: 0;
  }
  .event-single-main-area .left-box {
    width: auto;
    margin-bottom: 15px;
  }
  .event-single-main-area .left-box + .right-box {
    margin-top: 38px;
  }
  .event-single-main-area .right-box {
    width: auto;
  }
  .event-single-main-area .event-fix-btn {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .event-single-main-area .event-fix-btn .event-join-btn-link-wrap {
    width: 47.69231%;
    margin: 0 4.61538% 15px 0;
  }
  .event-single-main-area .event-fix-btn .event-join-btn-link-wrap:nth-child(2n) {
    margin-right: 0;
  }
  .event-single-main-area .img-box {
    width: auto;
    margin: 0 0 15px;
  }
  .event-single-main-area .status-date-table {
    margin: 0 0 20px;
  }
  .event-single-main-area .status-cell {
    width: 100px;
  }
  .event-single-main-area .status-cell + .date-cell {
    padding-left: 21px;
  }
  .event-single-main-area .status-text {
    padding: 4px 3px;
    letter-spacing: 0.05em;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .event-single-main-area .status-white-label {
    padding: 8px 10px 8px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
    line-height: 1;
    font-size: 10px;
    font-size: 1rem;
  }
  .event-single-main-area .status-white-label + .status-text {
    margin-bottom: 26px;
  }
  .event-single-main-area .date-text {
    margin: 4px 0 2px;
  }
  .event-single-main-area .date-text + .date-text {
    margin-top: 4px;
  }
  .event-single-main-area .date-text01 {
    margin: 0;
    font-size: 30px;
    font-size: 3rem;
  }
  .event-single-main-area .date-text02 {
    margin: 0 0 0 1px;
    letter-spacing: 0;
    font-size: 10px;
    font-size: 1rem;
  }
  .event-single-main-area .date-text03 {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .event-single-main-area .date-text03 + .date-text02 {
    margin-left: 1px;
  }
  .event-single-main-area .text-head {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .event-single-main-area .post-ttl {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    margin: 0 0 41px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.44;
  }
  .event-single-main-area .bd-white-label {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    margin: 0 0 8px;
  }
  .event-single-main-area .sub-ttl {
    margin: 0 0 6px;
    max-width: inherit;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
    letter-spacing: 0.7px;
  }
  .event-fix-scroll-area-top {
    position: static !important;
    height: auto !important;
    width: auto !important;
  }
  .event-fix-btn {
    position: static !important;
    width: auto !important;
  }
  .keyword-list-box {
    font-size: 10px;
    font-size: 1rem;
  }
  .keyword-list-ttl-cell {
    letter-spacing: 0.05em;
    width: 70px;
  }
  .keyword-list {
    margin-bottom: -4px;
  }
  .keyword-list li {
    margin: 0 1em 4px 0;
    font-size: 10px;
    font-size: 1rem;
  }
  .bd-white-label {
    padding: 2px 16px 2px;
    letter-spacing: 0.6px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .white-tag-list {
    margin: 0 0 -10px;
    font-size: 0;
  }
  .white-tag-list li {
    display: inline-block;
    margin: 0 10px 10px 0;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.9px;
  }
  .white-tag-list .text {
    padding: 0 6px 1px 2px;
  }
  .event-single-join-area {
    padding: 40px 0 40px;
  }
  .event-single-join-area .white-col2-box-inner {
    margin: 0 6.15385%;
    padding: 0 0 33px;
  }
  .event-single-join-area .left-box {
    width: auto;
  }
  .event-single-join-area .left-box + .right-box {
    margin-top: 26px;
  }
  .event-single-join-area .right-box {
    width: auto;
    padding: 0;
  }
  .event-single-join-area .ttl {
    padding: 28px 0 0;
    margin: 0 0 32px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.05em;
  }
  .event-single-join-area .ttl:before {
    height: 8px;
  }
  .event-single-join-area .info-table-box {
    padding: 0 0 21px;
  }
  .event-single-join-area .info-table {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .event-single-join-area .info-table + .info-table {
    margin-top: 6px;
  }
  .event-single-join-area .ttl-cell {
    width: 63px;
  }
  .event-single-join-area .info-text {
    letter-spacing: 1.3px;
  }
  .event-single-join-area .info-text + .info-sub-text {
    margin-top: 0;
  }
  .event-single-join-area .date {
    padding-top: 1px;
  }
  .event-single-join-area .info-sub-text {
    margin: 0 0 4px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.9px;
  }
  .event-single-join-area .lead {
    margin: 22px 0 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
  }
  .event-single-join-area .btn-box {
    margin-top: 35px;
  }
  .event-join-btn-link-wrap + .event-join-btn-link-wrap {
    margin-top: 10px;
  }
  .event-post-area {
    padding: 0;
  }
  .event-join-btn-link {
    padding: 7px 7px 6px 10px;
    border-width: 1px;
    font-size: 8px;
    font-size: 0.8rem;
    line-height: 1.6;
  }
  .event-join-btn-link:after {
    display: none;
  }
  .event-join-btn-link.type-white {
    border-width: 1px;
  }
  .event-join-btn-link.type-blue {
    background: none;
  }
  .event-join-btn-link.type-lg {
    padding: 0;
  }
  .event-join-btn-link.type-lg .main-text,
  .event-join-btn-link.type-lg .sub-text {
    width: 100%;
  }
  .event-join-btn-link.type-lg .text-inner {
    height: 100px;
    padding: 10px 37px 10px 13px;
  }
  .event-join-btn-link.type-lg02 {
    padding: 15px 20px 18px 19px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .event-join-btn-link.type-lg02 .main-text {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .event-join-btn-link.type-lg02 .main-text + .sub-text {
    margin-top: 6px;
  }
  .event-join-btn-link.type-lg02 .icon {
    bottom: 9px;
    right: 7px;
    -webkit-transform: translateY(0) scale(1);
    -ms-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
    font-size: 12px;
  }
  .event-join-btn-link .main-text {
    margin: 0 0 1px;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.9px;
  }
  .event-join-btn-link .icon {
    top: auto;
    -webkit-transform: translateY(0) scale(0.653);
    -ms-transform: translateY(0) scale(0.653);
    transform: translateY(0) scale(0.653);
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    bottom: 5px;
    right: 4px;
    font-size: 10px;
  }
  .event-single-join-attention {
    margin: 10px 0 0;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.6;
  }
  .event-rel-link-area {
    padding: 40px 0 0;
  }
  .event-rel-link-area + .post-set-sec {
    margin-top: 40px;
  }
  .event-sns-list-area {
    padding: 31px 0 40px;
  }
  .event-sns-list-area + .white-col2-box {
    margin-bottom: 20px;
  }
  .event-sns-link-list li + li {
    margin-left: 30px;
  }
  .event-sns-link-list .icon {
    margin: 0;
  }
}

/* project list
----------------------------------------------------------*/
.project-list-area {
  padding: 52px 0 150px;
}

.project-list-area-head {
  margin: 0 0 71px;
}

.project-list-area-head .lead-set-text {
  width: 72.22222%;
}

.challange-bnr-box {
  width: 82.96296%;
  margin: 0 auto 100px;
}

.challange-bnr-wrap {
  padding: 20px;
}

.challange-bnr-inner {
  position: relative;
  padding: 24px 27px 26px;
}

.challange-bnr-ttl {
  margin: 0 0 16px;
  font-size: 60px;
  font-size: 6rem;
}

.challange-bnr-text {
  padding: 0 240px 0 4px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.challange-bnr-more {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 232px;
  padding: 0 0 11px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  border-bottom: 4px solid #000;
}

.challange-bnr-more:after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 4;
  height: 4px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.challange-bnr-more .icon {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 15px;
  font-size: 1.5rem;
}

.project-link-list-sec {
  margin: 0 0 90px;
}

.project-list-area-ttl {
  margin: 0 0 50px;
  font-size: 36px;
  font-size: 3.6rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.project-link-list .list-elm + .list-elm {
  margin-top: 20px;
}

.project-link-list .list-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
}

.project-link-list .img {
  width: 40.37037%;
  padding-top: 22.77778%;
}

.project-link-list .text-box {
  width: 59.62963%;
  padding: 17px 2.22222% 18px;
}

.project-link-list .post-ttl {
  min-height: 114px;
  margin: 0 0 5.43478%;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.project-link-list .project-ttl {
  margin: 0 0 11px;
  padding-left: 8em;
  text-indent: -8em;
  line-height: 1.4;
  font-size: 14px;
  font-size: 1.4rem;
}

.project-link-list .project-name {
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.05em;
}

.project-link-list .name-list-box {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.project-link-list .name-list {
  display: inline;
}

.project-link-list .name-list li {
  display: inline;
}

.project-link-list .name-list li + li:before {
  content: " / ";
}

.project-link-list .project-ttl-line {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, #FFEB00)) no-repeat bottom left;
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background-size: 100% 6px;
}

.project-link-list .label-white {
  padding: 7px 0 6px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(5%, transparent), color-stop(5%, #fff), color-stop(92%, #fff), color-stop(93%, #fff), to(#fff));
  background: -webkit-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: -o-linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
  background: linear-gradient(transparent 0%, transparent 5%, #fff 5%, #fff 92%, #fff 93%, #fff 100%);
}

.project-toggle-sec-area {
  border-top: 2px solid #d4dde1;
}

.project-toggle-sec {
  border-bottom: 2px solid #d4dde1;
}

.project-toggle-sec .project-toggle-btn {
  padding: 42px 60px 42px 0;
  cursor: pointer;
}

.project-toggle-sec .project-toggle-btn.on .toggle-icon:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.project-toggle-sec .project-list-area-ttl {
  margin: 0;
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.6;
}

.project-toggle-sec .toggle-icon {
  position: absolute;
  top: 50%;
  right: 20px;
  z-index: 1;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 20px;
  font-size: 2rem;
}

.project-toggle-sec .toggle-icon:before {
  display: block;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.project-toggle-sec .project-toggle-ct {
  display: none;
  position: relative;
}

.project-toggle-sec .project-link-list {
  padding-bottom: 70px;
}

@media only screen and (min-width: 768px) {
  .challange-bnr-wrap:hover .challange-bnr-more:after {
    width: 100%;
  }
  .project-link-list.type-small .img {
    width: 35.89744%;
    padding-top: 20.25641%;
  }
  .project-link-list.type-small .text-box {
    width: 64.10256%;
    padding: 18px 2.5641% 18px;
  }
  .project-link-list.type-small .post-ttl {
    min-height: 64px;
    margin: 0 0 3.8%;
    font-size: 20px;
    font-size: 2rem;
  }
  .project-link-list.type-small .name-list-box {
    display: none;
  }
  .project-link-list.type-gray a {
    background-color: #f7f8f8;
  }
  .project-link-list.type-gray .label-white {
    padding: 0;
    background: none;
  }
  .project-toggle-sec .project-toggle-btn:hover .toggle-icon {
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
  }
}

@media only screen and (max-width: 767px) {
  .project-list-area {
    padding: 33px 0 80px;
  }
  .project-list-area-head {
    margin: 0 0 34px;
  }
  .project-list-area-head .lead-set-text {
    width: auto;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .challange-bnr-box {
    width: auto;
    margin: 0 auto 47px;
  }
  .challange-bnr-wrap {
    padding: 20px;
  }
  .challange-bnr-inner {
    position: relative;
    padding: 21px 20px 20px;
  }
  .challange-bnr-ttl {
    margin: 0 0 21px;
    font-size: 34px;
    font-size: 3.4rem;
  }
  .challange-bnr-text {
    margin: 0;
    padding: 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.4;
  }
  .challange-bnr-more {
    margin: 33px 0 0;
    position: relative;
    bottom: auto;
    right: auto;
    width: auto;
    padding: 0 0 6px;
    font-size: 12px;
    font-size: 1.2rem;
    border-bottom: 2px solid #000;
  }
  .challange-bnr-more:after {
    display: none;
  }
  .challange-bnr-more .icon {
    top: 7px;
    right: 10px;
    font-size: 10px;
    font-size: 1rem;
  }
  .project-link-list-sec {
    margin: 0 0 60px;
  }
  .project-list-area-ttl {
    margin: 0 0 34px;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .project-link-list .list-elm + .list-elm {
    margin-top: 20px;
  }
  .project-link-list .list-inner {
    display: block;
    padding: 0;
  }
  .project-link-list .img {
    width: auto;
    padding-top: 56.30769%;
  }
  .project-link-list .text-box {
    width: auto;
    padding: 17px 6.15385% 22px;
  }
  .project-link-list .post-ttl {
    min-height: inherit;
    margin: 0 0 17px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0;
  }
  .project-link-list .project-ttl {
    margin: 0 0 19px;
    line-height: 1.4;
    font-size: 10px;
    font-size: 1rem;
  }
  .project-link-list .project-name {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  .project-link-list .name-list-box {
    font-size: 10px;
    font-size: 1rem;
  }
  .project-toggle-sec .project-toggle-btn {
    padding: 14px 75px 15px 0;
  }
  .project-toggle-sec .project-list-area-ttl {
    margin: 0;
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
  .project-toggle-sec .toggle-icon {
    top: 16px;
    right: 13px;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    font-size: 18px;
    font-size: 1.8rem;
  }
  .project-toggle-sec .project-link-list {
    padding-bottom: 40px;
  }
}

/* project single
----------------------------------------------------------*/
.project-single-head-area {
  padding: 0 24px;
  margin: 0 auto 52px;
}

.project-single-head-area .single-list-back-btn {
  top: 5px;
  left: 24px;
}

.project-single-head-area .topic-pass-area {
  padding-top: 0;
}

.project-single-main-area {
  padding: 21px 0 55px;
}

.project-single-main-area .ct-inner-1220 {
  position: relative;
}

.project-single-main-area .col2-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.project-single-main-area .left-box {
  width: 62.96296%;
}

.project-single-main-area .right-box {
  width: 27.77778%;
  margin: 0 0 0 9.25926%;
}

.project-single-main-area .post-ttl {
  margin: 0 0 28px;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.4;
}

.project-single-main-area .lead-text {
  margin: 0 0 35px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: .1em;
}

.project-single-main-area .main-info-box {
  padding: 20px 7.66667% 19px;
}

.project-single-main-area .project-name-ttl {
  margin: 0 0 3px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: .05em;
}

.project-single-main-area .project-name {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
  letter-spacing: .05em;
}

.project-single-main-area .name-list {
  display: inline;
}

.project-single-main-area .name-list li {
  display: inline;
}

.project-single-main-area .name-list li + li:before {
  content: " / ";
}

.project-single-main-area .project-ttl-line {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, #FFEB00)) no-repeat bottom left;
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
  background-size: 100% 6px;
}

.project-single-main-area .member-name-ttl {
  margin: 13px 0 0;
}

.project-single-main-area .member-name-ttl,
.project-single-main-area .member-name-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: .05em;
}

.project-single-main-bg {
  opacity: 0.2;
}

@media only screen and (max-width: 767px) {
  .project-single-head-area {
    padding: 0 24px;
    margin: 0 auto 54px;
  }
  .project-single-head-area .single-list-back-btn {
    top: 5px;
    left: 24px;
  }
  .project-single-head-area .single-list-back-btn a {
    color: #58606b;
  }
  .project-single-head-area .topic-pass-area {
    padding-top: 0;
  }
  .project-single-main-area {
    padding: 11px 0 35px;
  }
  .project-single-main-area .col2-box {
    display: block;
  }
  .project-single-main-area .left-box {
    width: auto;
  }
  .project-single-main-area .right-box {
    width: auto;
    margin: 0 0 18px;
  }
  .project-single-main-area .post-ttl {
    margin: 0 0 33px;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .project-single-main-area .lead-text {
    margin: 0 0 19px;
    font-weight: normal;
  }
  .project-single-main-area .main-info-box {
    padding: 19px 20px 16px;
  }
  .project-single-main-area .main-info-name {
    display: table;
    width: 100%;
    margin: 0 0 6px;
  }
  .project-single-main-area .main-info-name dt {
    display: table-cell;
    width: 8.4em;
    letter-spacing: 0;
    vertical-align: top;
  }
  .project-single-main-area .main-info-name dd {
    display: table-cell;
    vertical-align: top;
  }
  .project-single-main-area .project-name-ttl {
    margin: 0 0 3px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.6;
    letter-spacing: .05em;
  }
  .project-single-main-area .project-name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    letter-spacing: .05em;
  }
  .project-single-main-area .project-ttl-line {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, #FFEB00)) no-repeat bottom left;
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background: -o-linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, #FFEB00 50%) no-repeat bottom left;
    background-size: 100% 6px;
  }
  .project-single-main-area .member-name-ttl {
    margin: 0;
  }
  .project-single-main-area .member-name-ttl,
  .project-single-main-area .member-name-text {
    display: inline;
    font-size: 10px;
    font-size: 1rem;
  }
  .project-single-main-bg {
    opacity: 0.7;
    -webkit-filter: grayscale(80%);
    filter: grayscale(80%);
    background-blend-mode: screen;
  }
  .project-single-main-bg:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    background-color: rgba(255, 255, 255, 0.85);
    mix-blend-mode: screen;
  }
  .project-single-main-bg .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 6;
    background-color: rgba(0, 161, 235, 0.75);
    mix-blend-mode: color;
  }
  .event-post-old-area.type-projects-page {
    background: #f7f8f8;
  }
  .event-post-old-area.type-projects-page .ttl-set {
    margin-bottom: 40px;
  }
}

/* movement list
----------------------------------------------------------*/
.movement-list-main-area {
  padding: 52px 0 0;
}

.movement-list-lead-area {
  margin: 0 0 31px;
}

.movement-post-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.movement-post-list .img-box {
  overflow: hidden;
  padding: 0 45px 0 0;
  margin: 0 0 15px;
}

.movement-post-list .img-box:after {
  content: "";
  position: absolute;
  bottom: 20px;
  right: 0;
  left: 24px;
  z-index: 9;
  height: 1px;
  background-color: #000;
}

.movement-post-list .img {
  padding-top: 133.33333%;
}

.movement-post-list .date-text {
  position: absolute;
  top: 0;
  left: 100%;
  width: 300px;
  margin: 0 0 0 -21px;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.movement-post-list .date-text .date {
  margin: 0 2px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.movement-post-list .label-text {
  position: absolute;
  bottom: 31px;
  right: 0;
  z-index: 9;
  min-height: 27px;
  padding: 0 10px 0 0;
  line-height: 1.3;
  font-size: 14px;
  font-size: 1.4rem;
}

.movement-post-list .ttl {
  margin: 0 0 20px;
  padding: 0 0 0 24px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.movement-post-list .list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 0 0 24px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.movement-post-list .list li {
  margin: 0 7px 0 0;
}

@media only screen and (min-width: 768px) {
  .movement-post-list.col3 {
    margin: 59px 0 104px;
  }
  .movement-post-list.col3 .list-elm {
    width: 31.85185%;
    margin: 0 2.22222% 15px 0;
  }
  .movement-post-list.col3 .list-elm:nth-child(3n) {
    margin-right: 0;
  }
  .movement-post-list.col3 .list-elm:nth-child(2), .movement-post-list.col3 .list-elm:nth-child(3n + 2) {
    margin-top: 60px;
  }
  .movement-post-list.col3 .label-text {
    padding: 0 29px 0 1px;
  }
  .movement-post-list.col2 {
    margin-bottom: -92px;
  }
  .movement-post-list.col2 .list-elm {
    width: 44.10256%;
    margin: 0 11.79487% 60px 0;
  }
  .movement-post-list.col2 .list-elm:nth-child(3n) {
    margin-right: 11.79487%;
  }
  .movement-post-list.col2 .list-elm:nth-child(2n) {
    margin-right: 0;
  }
}

@media only screen and (max-width: 767px) {
  .movement-list-main-area {
    padding: 33px 0 61px;
  }
  .movement-list-lead-area {
    margin: 0 0 33px;
  }
  .movement-list-lead-area .lead-set-text {
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .movement-post-list {
    margin-bottom: 0;
    display: block;
  }
  .movement-post-list.col3 {
    margin: 30px 0 55px;
    padding: 0 1.6% 0 6.66667%;
  }
  .movement-post-list.col3 .list-elm + .list-elm {
    margin-top: 30px;
  }
  .movement-post-list.col3 .img-box {
    padding: 0 50px 0 0;
    margin: 0 0 14px;
  }
  .movement-post-list.col3 .date-text {
    margin: 0 0 0 -22px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .movement-post-list.col3 .date-text .date {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .movement-post-list.col3 .label-text {
    min-height: 27px;
    padding: 1px 29px 0 1px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .movement-post-list.col3 .ttl {
    margin: 0 50px 15px 0;
    padding: 0;
  }
  .movement-post-list.col3 .list {
    margin: 0 42px 0 0;
    padding: 0;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .movement-post-list.col3 .list li {
    margin: 0 6px 0 0;
  }
  .movement-post-list .list-elm {
    width: auto;
    margin: 0;
  }
  .movement-post-list .list-elm + .list-elm {
    margin-top: 38px;
  }
  .movement-post-list .img-box {
    padding: 0 42px 0 0;
    margin: 0 0 17px;
  }
  .movement-post-list .img-box:after {
    bottom: 19px;
    left: 23px;
  }
  .movement-post-list .img {
    padding-top: 133.33333%;
  }
  .movement-post-list .date-text {
    margin: 0 0 0 -20px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .movement-post-list .date-text .date {
    margin: 0 2px 0 0;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
  }
  .movement-post-list .label-text {
    position: absolute;
    bottom: 29px;
    min-height: 26px;
    padding: 1px 11px 0 0;
    line-height: 1.3;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .movement-post-list .ttl {
    margin: 0 0 20px;
    padding: 0 0 0 10px;
  }
  .movement-post-list .list {
    padding: 0 0 0 20px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .movement-post-list .list li {
    margin: 0 8px 0 0;
  }
}

/* movement single
----------------------------------------------------------*/
.movement-single-head-area {
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  z-index: 9;
}

.movement-single-head-area .head-inner {
  padding: 0 24px;
  margin: 0 auto;
}

.movement-single-head-area .single-list-back-btn {
  top: 5px;
  left: 24px;
}

.movement-single-head-area .topic-pass-area {
  padding-top: 0;
}

.movement-single-main-table .img-cell {
  width: 76.5625%;
}

.movement-page-ttl {
  display: inline-block;
  margin: 0 -0.9em 96px 0;
  border-bottom: 2px solid #fff;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  vertical-align: top;
  font-weight: 500;
  white-space: nowrap;
}

.movement-main-img {
  height: 514px;
}

.movement-single-main-inner {
  padding: 0;
  margin-top: -126px;
}

.movement-single-main-inner .head {
  padding: 14px 17px 10px 12px;
}

.movement-single-main-inner .cat {
  line-height: 1;
  font-size: 16px;
  font-size: 1.6rem;
}

.movement-single-main-inner .cat + .date {
  margin-left: 15px;
}

.movement-single-main-inner .date {
  line-height: 1.3;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
}

.movement-single-main-inner .post-ttl {
  margin: 0 0 13px;
  line-height: 1.4;
  font-size: 34px;
  font-size: 3.4rem;
}

.movement-single-main-inner .text-box {
  min-height: 80px;
  padding: 22px 25px 26px;
}

.movement-single-main-inner .keyword-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: -1em;
}

.movement-single-main-inner .keyword-list li {
  margin: 0 1.05em 1em 0;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .movement-single-head-area {
    top: 12px;
    z-index: 10;
  }
  .movement-single-head-area .head-inner {
    padding: 0 24px;
    margin: 0 auto;
  }
  .movement-single-head-area .single-list-back-btn {
    top: 5px;
    left: 24px;
  }
  .movement-single-head-area .single-list-back-btn a {
    color: #fff;
  }
  .movement-single-head-area .topic-pass-area {
    padding-top: 0;
  }
  .movement-single-main-table .left-cell {
    position: relative;
    z-index: 9;
    padding: 40px 0 0;
  }
  .movement-single-main-table .left-cell + .img-cell {
    margin-top: -17px;
  }
  .movement-single-main-table .img-cell {
    width: auto;
    padding: 0 0 0 6.66667%;
  }
  .movement-page-ttl {
    margin: 0;
    padding: 0 2px 0 0;
    font-size: 34px;
    font-size: 3.4rem;
  }
  .movement-main-img {
    height: auto;
    padding-top: 108.57143%;
  }
  .movement-single-main-inner {
    padding: 0;
    margin-top: -39px;
  }
  .movement-single-main-inner .head {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-height: 41px;
    padding: 12px 19px 10px 12px;
  }
  .movement-single-main-inner .head:before {
    content: "";
    position: absolute;
    top: -2px;
    right: 100%;
    bottom: -2px;
    width: 100vw;
    background-color: #d4dde1;
  }
  .movement-single-main-inner .cat + .date {
    margin-left: 9px;
  }
  .movement-single-main-inner .date {
    margin-top: 2px;
    line-height: 1.3;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .movement-single-main-inner .post-ttl-wrap {
    position: relative;
    padding: 18px 6.15385% 21px;
  }
  .movement-single-main-inner .post-ttl-wrap:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
    width: 100vw;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #d4dde1;
  }
  .movement-single-main-inner .post-ttl-wrap:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 2;
    width: 100vw;
    background-color: #fff;
  }
  .movement-single-main-inner .post-ttl {
    position: relative;
    z-index: 9;
    margin: 0;
    line-height: 1.4;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .movement-single-main-inner .text-box {
    position: relative;
    min-height: inherit;
    padding: 0 0 45px;
  }
  .movement-single-main-inner .text-box:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 2;
    width: 100vw;
    background-color: #fff;
  }
  .movement-single-main-inner .keyword-ttl {
    margin: 0 0 6px;
    padding: 0 6.15385%;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
  .movement-single-main-inner .keyword-list {
    padding: 0 6.15385%;
    font-size: 11px;
    font-size: 1.1rem;
    margin-bottom: -0.4em;
  }
  .movement-single-main-inner .keyword-list li {
    margin: 0 0.95em 0.4em 0;
  }
}

/* program list
----------------------------------------------------------*/
.program-list-area-head {
  padding: 52px 0;
}

.program-list-area-head .lead-set-text {
  width: 74.44444%;
}

.program-list-col3-area {
  padding: 91px 0 51px;
}

.program-list-col3-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.program-list-col3-list .list-elm {
  width: 31.85185%;
  margin: 0 24px 24px 0;
}

.program-list-col3-list .list-elm:nth-child(3n) {
  margin-right: 0;
}

.program-list-col3-list .head + .img-box {
  margin-top: -14px;
}

.program-list-col3-list .num {
  position: absolute;
  bottom: 13px;
  right: 0;
  font-size: 14px;
  font-size: 1.4rem;
}

.program-list-col3-list .catch {
  display: inline-block;
  border-bottom: 2px solid #000;
  font-size: 40px;
  font-size: 4rem;
  vertical-align: top;
}

.program-list-col3-list .img-box {
  margin: 0 0 13px;
  border: 4px solid #f7f8f8;
}

.program-list-col3-list .ttl {
  margin: 0 0 15px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6;
}

.program-list-col3-list .text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.program-list-post-area {
  padding: 116px 0 0;
}

.program-list-area-ttl {
  margin: 0 0 64px;
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.program-post-box {
  margin: 0 0 68px;
}

.program-list-post-head {
  margin: 0 0 21px;
}

.program-list-post-head .left-box {
  width: 40.37037%;
}

.program-list-post-head .right-box {
  width: 51.11111%;
  margin: 5px 0 0;
}

.program-list-post-head .main-ttl {
  margin: 0 0 14px;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.program-list-post-head .main-ttl:before {
  content: "";
  position: absolute;
  top: 0.3em;
  left: 0;
  right: 0;
  bottom: 0.2em;
  background-color: #FFEB00;
}

.program-list-post-head .tag-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.program-list-post-head .tag-list li {
  margin: 0 20px 10px 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
}

.program-list-post-head .lead {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.05em;
}

.program-list-post-head .link a {
  position: relative;
  padding: 16px 50px 21px 0;
  border-bottom: 4px solid #000;
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
}

.program-list-post-head .link a:after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 4;
  height: 4px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.program-list-post-head .link .icon {
  position: absolute;
  top: 14px;
  right: 10px;
  font-size: 15px;
  font-size: 1.5rem;
}

.program-list-post-bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.program-list-post-bottom .left-box {
  width: 40.37037%;
}

.program-list-post-bottom .left-box + .right-box {
  border-left: 2px solid #f7f8f8;
}

.program-list-post-bottom .right-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 59.62963%;
  padding: 120px 8.33333% 83px;
}

.program-list-post-bottom .ttl {
  margin: 0 0 12px;
  padding: 5px 0 5px 11px;
  border-left: 6px solid #FFEB00;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.program-list-post-bottom .img-box {
  padding: 0 11.92661% 58px;
}

.program-list-post-bottom .logo-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -1.20482%;
}

.program-list-post-bottom .logo-list li {
  width: 48.19277%;
  margin: 0 3.61446% 1.20482% 0;
}

.program-list-post-bottom .logo-list li:nth-child(even) {
  margin-right: 0;
}

.program-list-post-bottom .logo-list .logo-wrap {
  position: relative;
  height: 90px;
}

.program-list-post-bottom .logo-list .logo-img {
  position: absolute;
  top: 11.11111%;
  left: 12.5%;
  right: 12.5%;
  bottom: 11.11111%;
  background-size: contain;
}

.program-list-post-bottom .text-box {
  position: relative;
}

.program-list-post-bottom .quote-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  letter-spacing: 0.05em;
}

.program-list-post-bottom .quote-text:before {
  content: "";
  position: absolute;
  bottom: 100%;
  right: 100%;
  display: block;
  height: 33px;
  width: 38px;
  margin: 0 4px 25px 0;
  background: url(../img/common/icon-quote.svg) no-repeat;
  background-size: 38px 33px;
}

.program-list-post-bottom .quote-text + .info-text {
  margin-top: 31px;
}

.program-list-post-bottom .img {
  padding-top: 100%;
}

.program-list-post-bottom .info-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
}

.program-list-post-bottom .img-col2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -6.62651%;
}

.program-list-post-bottom .img-col2 li {
  width: 48.19277%;
  margin: 0 3.61446% 6.62651% 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5;
}

.program-list-post-bottom .img-col2 li:nth-child(even) {
  margin-right: 0;
}

.program-list-post-bottom .img-col2 .img {
  margin: 0 0 5px;
}

.program-bnr-area {
  margin: 120px 0 0;
}

@media only screen and (min-width: 768px) {
  .program-list-post-head .link a:hover:after {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .program-list-area-head {
    padding: 33px 0;
  }
  .program-list-area-head .lead-set-text {
    width: auto;
    line-height: 2;
    letter-spacing: 0.1em;
  }
  .program-list-col3-area {
    padding: 41px 0 64px;
  }
  .program-list-col3-list {
    display: block;
  }
  .program-list-col3-list .list-elm {
    width: auto;
    margin: 0;
  }
  .program-list-col3-list .list-elm + .list-elm {
    margin-top: 44px;
  }
  .program-list-col3-list .head + .img-box {
    margin-top: -14px;
  }
  .program-list-col3-list .num {
    bottom: 12px;
  }
  .program-list-col3-list .catch {
    font-size: 34px;
    font-size: 3.4rem;
  }
  .program-list-col3-list .img-box {
    margin: 0 0 15px;
  }
  .program-list-col3-list .ttl {
    margin: 0 0 10px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .program-list-col3-list .text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .program-list-post-area {
    padding: 38px 0 0;
  }
  .program-list-area-ttl {
    margin: 0 0 38px;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
  }
  .program-post-box {
    margin: 0 0 41px;
  }
  .program-list-post-head {
    margin: 0 0 21px;
  }
  .program-list-post-head .left-box {
    width: auto;
  }
  .program-list-post-head .right-box {
    width: auto;
    margin: 11px 0 0 5.97015%;
  }
  .program-list-post-head .main-ttl {
    display: inline-block;
    margin: 0 0 9px;
    padding: 0 5px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.39;
  }
  .program-list-post-head .main-ttl:before {
    top: 0;
    bottom: 0;
  }
  .program-list-post-head .tag-list li {
    margin: 0 10px 5px 0;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .program-list-post-head .lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .program-list-post-head .link {
    width: 155px;
    margin-left: auto;
  }
  .program-list-post-head .link a {
    padding: 14px 21px 12px 0;
    border-bottom: 2px solid #000;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0.05em;
  }
  .program-list-post-head .link .icon {
    top: 15px;
    right: 0;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    font-size: 10px;
    font-size: 1rem;
  }
  .program-list-post-bottom {
    display: block;
  }
  .program-list-post-bottom .left-box {
    width: auto;
  }
  .program-list-post-bottom .left-box + .right-box {
    border-left: none;
    border-top: 12px solid #f7f8f8;
  }
  .program-list-post-bottom .right-box {
    display: block;
    width: auto;
    padding: 21px 5.97015% 36px;
  }
  .program-list-post-bottom .ttl {
    margin: 0 0 12px;
    padding: 5px 0 5px 11px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .program-list-post-bottom .img-box {
    padding: 0 5.97015% 5.97015%;
  }
  .program-list-post-bottom .logo-list {
    margin-bottom: -1.75439%;
  }
  .program-list-post-bottom .logo-list li {
    width: 47.36842%;
    margin: 0 5.26316% 1.75439% 0;
  }
  .program-list-post-bottom .logo-list li:nth-child(even) {
    margin-right: 0;
  }
  .program-list-post-bottom .logo-list .logo-wrap {
    height: 76px;
  }
  .program-list-post-bottom .logo-list .logo-img {
    top: 13.15789%;
    left: 14.81481%;
    right: 14.81481%;
    bottom: 13.15789%;
  }
  .program-list-post-bottom .quote-text {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .program-list-post-bottom .quote-text:before {
    content: "";
    display: block;
    position: static;
    height: 23px;
    width: 26px;
    margin: 0 0 14px;
    background-size: 26px 23px;
  }
  .program-list-post-bottom .quote-text + .info-text {
    margin-top: 22px;
  }
  .program-list-post-bottom .info-text {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .program-list-post-bottom .img-col2 {
    margin-bottom: -5.26316%;
  }
  .program-list-post-bottom .img-col2 li {
    width: 47.36842%;
    margin: 0 5.26316% 5.26316% 0;
  }
  .program-list-post-bottom .img-col2 li:nth-child(even) {
    margin-right: 0;
  }
  .program-list-post-bottom .img-col2 .img {
    margin: 0 0 4px;
  }
  .program-bnr-area {
    margin: 60px 0 0;
  }
}

/* program single
----------------------------------------------------------*/
.program-single-head-area {
  padding: 0 24px;
  margin: 0 auto 42px;
}

.program-single-head-area .single-list-back-btn {
  top: 5px;
  left: 24px;
}

.program-single-head-area .topic-pass-area {
  padding-top: 0;
}

.program-single-main-area {
  padding: 20px 0 67px;
}

.program-single-main-area .col2-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.program-single-main-area .left-box {
  width: 46.2963%;
}

.program-single-main-area .right-box {
  width: 44.44444%;
  margin: 0 0 0 9.25926%;
}

.program-single-main-area .post-ttl {
  margin: 0 0 12px;
  padding: 0 5px;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.program-single-main-area .post-ttl:before {
  content: "";
  position: absolute;
  top: 0.2em;
  left: 0;
  right: 0;
  bottom: 0.2em;
  background-color: #FFEB00;
}

.program-single-main-area .tag-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.program-single-main-area .tag-list li {
  margin: 0 20px 10px 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
}

.program-single-main-area .lead-text {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: .05em;
}

.program-post-set-sec {
  padding: 86px 0 90px;
}

.other-program-post-list {
  margin: 79px 0 0;
}

.other-program-post-list .list-elm {
  border-top: 1px solid #D4DDE2;
}

.other-program-post-list a {
  padding: 36px 0 35px;
}

.other-program-post-list .main-ttl {
  display: inline-block;
  margin: 0 180px 27px 0;
  padding: 0 5px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.63;
  vertical-align: top;
}

.other-program-post-list .main-ttl:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #FFEB00;
}

.other-program-post-list .tag-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.other-program-post-list .tag-list li {
  margin: 0 20px 10px 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
}

.other-program-post-list .text {
  margin: 33px 0 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.other-program-post-list .link {
  position: absolute;
  top: 42px;
  right: 51px;
  z-index: 9;
  padding: 0 26px 0 0;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.other-program-post-list .icon {
  position: absolute;
  left: 100%;
  font-size: 15px;
  font-size: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .program-single-head-area {
    padding: 0 24px;
    margin: 0 auto 41px;
  }
  .program-single-head-area .single-list-back-btn {
    top: 5px;
    left: 24px;
  }
  .program-single-head-area .topic-pass-area {
    padding-top: 0;
  }
  .program-single-main-area {
    padding: 11px 0 33px;
  }
  .program-single-main-area .col2-box {
    display: block;
  }
  .program-single-main-area .left-box {
    width: auto;
  }
  .program-single-main-area .right-box {
    width: auto;
    margin: 10px 0 0;
  }
  .program-single-main-area .post-ttl {
    margin: 0 0 14px;
    padding: 0 10px 0 0;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .program-single-main-area .post-ttl:before {
    top: 0.3em;
    bottom: 0.2em;
  }
  .program-single-main-area .tag-list li {
    margin: 0 20px 10px 0;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .program-single-main-area .lead-text {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .program-post-set-sec {
    padding: 40px 0 50px;
  }
  .other-program-post-list {
    margin: 0;
  }
  .other-program-post-list a {
    padding: 14px 0 18px;
  }
  .other-program-post-list .main-ttl {
    display: inline-block;
    margin: 0 0 10px;
    padding: 0 15px 4px 0;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6;
  }
  .other-program-post-list .main-ttl:before {
    top: 0.2em;
    bottom: 0;
  }
  .other-program-post-list .tag-list li {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .other-program-post-list .text {
    margin: 5px 0 0;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .other-program-post-list .link {
    position: relative;
    top: auto;
    right: auto;
    z-index: 9;
    margin: 17px 0 0;
    padding: 0;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: bold;
  }
  .other-program-post-list .icon {
    position: relative;
    left: auto;
    margin: 0 0 0 7px;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
    -webkit-transform-origin: right center;
    -ms-transform-origin: right center;
    transform-origin: right center;
    font-size: 10px;
    font-size: 1rem;
  }
}

/* news list
----------------------------------------------------------*/
.news-pickup-area {
  padding: 0 0 50px;
}

.news-pickup-area-ttl {
  margin: 0 0 10px;
  padding: 24px 0 0;
  border-top: 10px solid #FFEB00;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.news-pickup-box-inner .img {
  left: auto;
  width: 40.37037%;
}

.news-pickup-box-inner .text-box {
  width: 59.62963%;
  padding: 60px 2.22222% 93px 2.77778%;
}

.news-pickup-box-inner .date {
  margin: 0 0 16px;
}

.news-pickup-box-inner .date-text01 {
  margin: 0 3px 0 0;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.news-pickup-box-inner .date-text02 {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.news-pickup-box-inner .post-ttl {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.news-pickup-box-inner .more {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 252px;
  padding: 0 0 14px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: 0.05em;
  border-bottom: 4px solid #000;
}

.news-pickup-box-inner .more:after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 4;
  height: 4px;
  width: 0;
  background-color: #FFEB00;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.news-pickup-box-inner .more .icon {
  margin: 0 23px 0 19px;
  font-size: 15px;
  font-size: 1.5rem;
}

.news-post-list-area {
  padding: 86px 0 120px;
}

.news-post-list-area-ttl {
  margin: 0 0 37px;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.news-post-list {
  border-bottom: 1px solid #d4dde1;
  line-height: 1.6;
  letter-spacing: 0.05em;
}

.news-post-list .list-elm {
  border-top: 1px solid #d4dde1;
}

.news-post-list .date {
  width: 183px;
}

.news-post-list .elm-inner {
  padding: 27px 0;
}

.news-post-list .ttl {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 14.28571% 0 0;
}

.news-post-list .icon-blank {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 12px;
  font-size: 1.26rem;
}

.list-pager {
  margin: 60px 0 0;
  font-size: 0;
}

.list-pager .wp-pagenavi {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding: 0 111px;
}

.list-pager .extend,
.list-pager .current,
.list-pager .page,
.list-pager .last,
.list-pager .first {
  display: inline-block;
  min-width: 42px;
  margin: 0 7px 10px;
  padding: 0 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
  line-height: 42px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  background-color: #f7f8f8;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.list-pager .previouspostslink,
.list-pager .nextpostslink {
  display: block;
  position: absolute;
  top: 0;
  width: 67px;
  margin: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #000;
  line-height: 40px;
  vertical-align: top;
  font-weight: normal;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.list-pager .previouspostslink {
  left: 0;
}

.list-pager .nextpostslink {
  right: 0;
}

.list-pager .previouspostslink:hover,
.list-pager .nextpostslink:hover,
.list-pager .last:hover,
.list-pager .first:hover,
.list-pager .current,
.list-pager .page:hover {
  background-color: #000;
  color: #fff;
}

.list-pager .extend {
  background: none;
  padding: 0;
  min-width: inherit;
}

@media only screen and (min-width: 768px) {
  .news-pickup-box-inner:hover .more:after {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .news-pickup-area {
    padding: 0 0 30px;
  }
  .news-pickup-area-ttl {
    margin: 0 0 5px;
    padding: 22px 0 0;
    border-top: 8px solid #FFEB00;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .news-pickup-box-inner {
    background: none;
  }
  .news-pickup-box-inner .img {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: auto;
    margin: 0 0 25px;
    padding-top: 71.69231%;
  }
  .news-pickup-box-inner .text-box {
    width: auto;
    padding: 0;
  }
  .news-pickup-box-inner .date {
    margin: 0 0 13px;
  }
  .news-pickup-box-inner .date-text01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .news-pickup-box-inner .date-text02 {
    font-size: 10px;
    font-size: 1rem;
  }
  .news-pickup-box-inner .post-ttl {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .news-pickup-box-inner .more {
    position: relative;
    width: 155px;
    margin: 21px 0 0 auto;
    padding: 0 0 6px;
    border-bottom: 2px solid #000;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .news-pickup-box-inner .more .icon {
    margin: 0 0 0 7px;
    font-size: 10px;
    font-size: 1rem;
  }
  .news-post-list-area {
    padding: 43px 0 60px;
  }
  .news-post-list-area-ttl {
    margin: 0 0 39px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .news-post-list {
    border-bottom: 1px solid #d4dde1;
    line-height: 1.6;
  }
  .news-post-list .list-elm {
    border-top: 1px solid #d4dde1;
  }
  .news-post-list .date {
    width: 85px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  .news-post-list .elm-inner {
    padding: 22px 0;
  }
  .news-post-list .ttl {
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
  }
  .news-post-list .icon-blank {
    position: relative;
    top: auto;
    right: auto;
    margin: 0 0 0 1em;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    font-size: 10px;
    font-size: 1rem;
    color: #58606b;
  }
  .list-pager {
    position: relative;
    margin: 36px 0 0;
    padding-bottom: 38px;
  }
  .list-pager .wp-pagenavi {
    position: static;
    padding: 0;
  }
  .list-pager .extend,
  .list-pager .current,
  .list-pager .page,
  .list-pager .last,
  .list-pager .first {
    min-width: 38px;
    margin: 0 7px 14px;
    line-height: 38px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .list-pager .previouspostslink,
  .list-pager .nextpostslink {
    position: absolute;
    top: auto;
    bottom: 0;
    width: 60px;
    margin: 0;
    line-height: 36px;
  }
  .list-pager .previouspostslink {
    left: auto;
    right: 50%;
    margin: 0 7px 0 0;
  }
  .list-pager .nextpostslink {
    right: auto;
    left: 50%;
    margin: 0 0 0 7px;
  }
  .list-pager .previouspostslink:hover,
  .list-pager .nextpostslink:hover,
  .list-pager .last:hover,
  .list-pager .first:hover,
  .list-pager .page:hover {
    background-color: #f7f8f8;
    color: #000;
  }
  .list-pager .extend {
    min-width: inherit;
  }
}

/* news single
----------------------------------------------------------*/
.news-single-main-area {
  padding: 0 0 100px;
}

.news-single-head-area {
  margin: 0 0 54px;
}

.news-single-main-head {
  position: relative;
  padding: 0 0 34px;
  margin: 0 0 80px;
  border-bottom: 10px solid #D4DDE2;
}

.news-single-main-head:after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  height: 10px;
  width: 180px;
  background-color: #FFEB00;
}

.news-single-main-head .date {
  margin: 0 0 15px;
}

.news-single-main-head .date-text01 {
  margin: 0 3px 0 0;
  font-size: 18px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.news-single-main-head .date-text02 {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.news-post-list-single-area {
  padding: 0 0 100px;
}

.news-post-list-single-area .btn-box {
  max-width: 344px;
  margin: 60px auto 0;
}

.news-single-post-ttl {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.news-post-list-single-ttl {
  position: relative;
  padding: 54px 0 0;
  margin: 0 0 37px;
  border-top: 10px solid #D4DDE2;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.news-post-list-single-ttl:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  height: 10px;
  width: 180px;
  background-color: #FFEB00;
}

@media only screen and (max-width: 767px) {
  .news-single-main-area {
    padding: 0 0 60px;
  }
  .news-single-head-area {
    padding: 0;
  }
  .news-single-main-head {
    position: relative;
    padding: 61px 0 36px;
    margin: 0 0 40px;
  }
  .news-single-main-head:after {
    width: 85px;
  }
  .news-single-main-head .date {
    margin: 0 0 17px;
  }
  .news-single-main-head .date-text01 {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .news-single-main-head .date-text02 {
    font-size: 10px;
    font-size: 1rem;
  }
  .news-post-list-single-area {
    padding: 0 0 60px;
  }
  .news-post-list-single-area .btn-box {
    margin: 40px auto 0;
  }
  .news-single-post-ttl {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.4;
    letter-spacing: 0.1em;
  }
  .news-post-list-single-ttl {
    padding: 37px 0 0;
    margin: 0 0 36px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .news-post-list-single-ttl:after {
    width: 85px;
  }
}

/* search result
----------------------------------------------------------*/
.search-result-page-ttl {
  margin-top: 41px;
}

.search-result-post-area {
  padding: 94px 0 121px;
}

.search-result-text {
  margin: 0 0 34px;
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.search-post-list {
  border-bottom: 1px solid #d4dde1;
}

.search-post-list a {
  padding: 24px 0;
}

.search-post-list .img {
  float: left;
  width: 28.125%;
  padding-top: 15.84821%;
}

.search-post-list .text-box {
  float: right;
  width: 69.19643%;
}

.search-post-list .post-ttl {
  margin: 0 0 25px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.search-post-list .date {
  margin: 0 0 9px;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
}

.search-post-list .url {
  line-height: 1.6;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  word-break: break-all;
}

.search-result-btn-box {
  max-width: 480px;
  margin: 81px auto 0;
}

@media only screen and (max-width: 767px) {
  .search-result-page-ttl {
    margin-top: 0;
  }
  .search-result-post-area {
    padding: 35px 0 60px;
  }
  .search-result-text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .search-post-list a {
    padding: 15px 0;
  }
  .search-post-list .img {
    width: 47.69231%;
    padding-top: 26.76923%;
  }
  .search-post-list .text-box {
    width: 47.69231%;
  }
  .search-post-list .post-ttl {
    margin: 0 0 16px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search-post-list .date {
    margin: 0 0 5px;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .search-post-list .url {
    line-height: 1.27;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .search-result-btn-box {
    margin: 72px auto 0;
  }
  .search-result-bottom-ttl:after {
    content: "";
    position: absolute;
    top: -8px;
    left: 0;
    height: 8px;
    width: 85px;
    background-color: #FFEB00;
  }
}

/* signage
----------------------------------------------------------*/
.signage-bg {
  height: 100px;
}

.signage-sec {
  width: 960px;
  min-height: 1720px;
  margin: 0 auto;
  padding: 47px 0 80px;
}

.signage-sec-ttl {
  margin: 0 0 40px;
  font-size: 58px;
  font-size: 5.8rem;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

.slick-slide:focus, .slick-slide:active {
  outline: none;
}

.slick-slide a:focus, .slick-slide a:active {
  outline: none;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  top: 0;
  z-index: 9;
  display: block;
  width: 54px;
  padding: 60% 0 0;
  cursor: pointer;
  border: none;
  outline: none;
  background: transparent;
  text-align: center;
  background-color: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  color: #000;
  font-size: 0;
  line-height: 0;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled {
  opacity: 0;
}

.slick-prev .slide-active-num,
.slick-prev .slide-all-num,
.slick-next .slide-active-num,
.slick-next .slide-all-num {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  font-size: 15px;
  line-height: 1;
  color: #58606b;
  text-align: center;
}

.slick-prev:before,
.slick-next:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 3px 0 0;
  background-size: contain;
  background-repeat: no-repeat;
  font-family: 'icon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  font-size: 14px;
}

.slick-prev {
  right: auto;
  left: 25px;
}

.slick-prev .slide-active-num {
  margin: -17px 0 0 3px;
}

.slick-prev .slide-all-num {
  margin: 20px 0 0 3px;
}

.slick-prev:before {
  content: "\e907";
}

.slick-next {
  right: 25px;
}

.slick-next .slide-active-num {
  margin: -17px 3px 0 0;
}

.slick-next .slide-all-num {
  margin: 20px 3px 0 0;
}

.slick-next:before {
  content: "\e903";
}

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto;
}

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  display: none;
  opacity: 0 !important;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-y {
  top: 0 !important;
  display: none;
  opacity: 1;
  -o-transition: background-color .2s linear, opacity .2s linear;
  transition: background-color .2s linear, opacity .2s linear;
  -webkit-transition: background-color .2s linear, opacity .2s linear;
  width: 4px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: #eee;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 1;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 1;
}

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  background-color: #000;
  -o-transition: background-color .2s linear, height .2s ease-in-out;
  transition: background-color .2s linear, height .2s ease-in-out;
  -webkit-transition: background-color .2s linear, height .2s ease-in-out;
  height: 4px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 0;
  /* please don't change 'position' */
  position: absolute;
}

.ps__thumb-y {
  background-color: #000;
  -o-transition: background-color .2s linear, width .2s ease-in-out;
  transition: background-color .2s linear, width .2s ease-in-out;
  -webkit-transition: background-color .2s linear, width .2s ease-in-out;
  width: 4px;
  /* there must be 'right' for ps__thumb-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute;
  cursor: pointer;
}

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}

/* anime
--------------------------------------------------*/
.anime-elm {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: .9s;
  animation-duration: .9s;
  opacity: 0;
}

.set-anime {
  -webkit-animation-name: fadeInUpBox;
  animation-name: fadeInUpBox;
}

.set-anime.fade {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.set-anime.fade-in-left {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

.set-anime.fade-in-right {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInUpBox {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUpBox {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@media only screen and (max-width: 767px) {
  .anime-elm {
    -webkit-animation-duration: .4s;
    animation-duration: .4s;
  }
  @-webkit-keyframes fadeInRight {
    0% {
      opacity: 0;
      -webkit-transform: translateY(20px);
      transform: translateY(20px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0);
    }
  }
  @keyframes fadeInRight {
    0% {
      opacity: 0;
      -webkit-transform: translateY(20px);
      transform: translateY(20px);
    }
    100% {
      opacity: 1;
      -webkit-transform: translateY(0);
      transform: translateY(0);
    }
  }
}

.delay1 {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.delay2 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.delay3 {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.delay4 {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.delay5 {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.delay6 {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.delay7 {
  -webkit-animation-delay: 0.7s;
  animation-delay: 0.7s;
}

.delay8 {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}

.delay9 {
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s;
}

.delay10 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.delay11 {
  -webkit-animation-delay: 1.1s;
  animation-delay: 1.1s;
}

.delay12 {
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
}

.delay13 {
  -webkit-animation-delay: 1.3s;
  animation-delay: 1.3s;
}

.delay14 {
  -webkit-animation-delay: 1.4s;
  animation-delay: 1.4s;
}

.delay15 {
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}

.delay16 {
  -webkit-animation-delay: 1.6s;
  animation-delay: 1.6s;
}

.delay17 {
  -webkit-animation-delay: 1.7s;
  animation-delay: 1.7s;
}

.delay18 {
  -webkit-animation-delay: 1.8s;
  animation-delay: 1.8s;
}

.delay19 {
  -webkit-animation-delay: 1.9s;
  animation-delay: 1.9s;
}

.delay20 {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.delay21 {
  -webkit-animation-delay: 2.1s;
  animation-delay: 2.1s;
}

.delay22 {
  -webkit-animation-delay: 2.2s;
  animation-delay: 2.2s;
}

.delay23 {
  -webkit-animation-delay: 2.3s;
  animation-delay: 2.3s;
}

.delay24 {
  -webkit-animation-delay: 2.4s;
  animation-delay: 2.4s;
}

.delay25 {
  -webkit-animation-delay: 2.5s;
  animation-delay: 2.5s;
}

.delay26 {
  -webkit-animation-delay: 2.6s;
  animation-delay: 2.6s;
}

.delay27 {
  -webkit-animation-delay: 2.7s;
  animation-delay: 2.7s;
}

.delay28 {
  -webkit-animation-delay: 2.8s;
  animation-delay: 2.8s;
}

.delay29 {
  -webkit-animation-delay: 2.9s;
  animation-delay: 2.9s;
}

.delay30 {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.t-delay1 {
  -webkit-transition-delay: 0.1s;
  -o-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.t-delay2 {
  -webkit-transition-delay: 0.2s;
  -o-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.t-delay3 {
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.t-delay4 {
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}

.t-delay5 {
  -webkit-transition-delay: 0.5s;
  -o-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

.t-delay6 {
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}

.t-delay7 {
  -webkit-transition-delay: 0.7s;
  -o-transition-delay: 0.7s;
  transition-delay: 0.7s;
}

.t-delay8 {
  -webkit-transition-delay: 0.8s;
  -o-transition-delay: 0.8s;
  transition-delay: 0.8s;
}

.t-delay9 {
  -webkit-transition-delay: 0.9s;
  -o-transition-delay: 0.9s;
  transition-delay: 0.9s;
}

.t-delay10 {
  -webkit-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s;
}

.t-delay11 {
  -webkit-transition-delay: 1.1s;
  -o-transition-delay: 1.1s;
  transition-delay: 1.1s;
}

.t-delay12 {
  -webkit-transition-delay: 1.2s;
  -o-transition-delay: 1.2s;
  transition-delay: 1.2s;
}

.t-delay13 {
  -webkit-transition-delay: 1.3s;
  -o-transition-delay: 1.3s;
  transition-delay: 1.3s;
}

.t-delay14 {
  -webkit-transition-delay: 1.4s;
  -o-transition-delay: 1.4s;
  transition-delay: 1.4s;
}

.t-delay15 {
  -webkit-transition-delay: 1.5s;
  -o-transition-delay: 1.5s;
  transition-delay: 1.5s;
}

.t-delay16 {
  -webkit-transition-delay: 1.6s;
  -o-transition-delay: 1.6s;
  transition-delay: 1.6s;
}

.t-delay17 {
  -webkit-transition-delay: 1.7s;
  -o-transition-delay: 1.7s;
  transition-delay: 1.7s;
}

.t-delay18 {
  -webkit-transition-delay: 1.8s;
  -o-transition-delay: 1.8s;
  transition-delay: 1.8s;
}

.t-delay19 {
  -webkit-transition-delay: 1.9s;
  -o-transition-delay: 1.9s;
  transition-delay: 1.9s;
}

.t-delay20 {
  -webkit-transition-delay: 2s;
  -o-transition-delay: 2s;
  transition-delay: 2s;
}

.t-delay21 {
  -webkit-transition-delay: 2.1s;
  -o-transition-delay: 2.1s;
  transition-delay: 2.1s;
}

.t-delay22 {
  -webkit-transition-delay: 2.2s;
  -o-transition-delay: 2.2s;
  transition-delay: 2.2s;
}

.t-delay23 {
  -webkit-transition-delay: 2.3s;
  -o-transition-delay: 2.3s;
  transition-delay: 2.3s;
}

.t-delay24 {
  -webkit-transition-delay: 2.4s;
  -o-transition-delay: 2.4s;
  transition-delay: 2.4s;
}

.t-delay25 {
  -webkit-transition-delay: 2.5s;
  -o-transition-delay: 2.5s;
  transition-delay: 2.5s;
}

.t-delay26 {
  -webkit-transition-delay: 2.6s;
  -o-transition-delay: 2.6s;
  transition-delay: 2.6s;
}

.t-delay27 {
  -webkit-transition-delay: 2.7s;
  -o-transition-delay: 2.7s;
  transition-delay: 2.7s;
}

.t-delay28 {
  -webkit-transition-delay: 2.8s;
  -o-transition-delay: 2.8s;
  transition-delay: 2.8s;
}

.t-delay29 {
  -webkit-transition-delay: 2.9s;
  -o-transition-delay: 2.9s;
  transition-delay: 2.9s;
}

.t-delay30 {
  -webkit-transition-delay: 3s;
  -o-transition-delay: 3s;
  transition-delay: 3s;
}

/* edge
--------------------------------------------------*/
@media only screen and (min-width: 768px) {
  @supports (-ms-ime-align: auto) {
    .top-topics-bg-img-box {
      display: none !important;
    }
    .modal-message-slider .lead-text {
      margin-top: -3px;
    }
    .about-concept-obj .obj-box-inner {
      -webkit-transition-delay: 0.6s;
      -o-transition-delay: 0.6s;
      transition-delay: 0.6s;
    }
  }
}

@supports (-ms-ime-align: auto) {
  .top-qq-main-link .img:before {
    display: none;
  }
  .top-qq-main-link .img:after {
    background-color: rgba(0, 155, 255, 0.5);
  }
}

/* ie11
--------------------------------------------------*/
*::-ms-backdrop, .top-qq-main-link .img:before {
  display: none;
}

*::-ms-backdrop, .top-qq-main-link .img:after {
  background-color: rgba(0, 155, 255, 0.5);
}

*::-ms-backdrop, .bd-white-label {
  padding-top: 10px;
  padding-bottom: 4px;
  line-height: 1;
}

*::-ms-backdrop, .event-single-main-area .status-text {
  padding-top: 4px;
}

*::-ms-backdrop, .event-single-main-area .date-text {
  margin-top: -1px;
}

*::-ms-backdrop, .event-col2-list .bd-white-label {
  padding-top: 6px;
}

@media only screen and (min-width: 768px) and (-ms-high-contrast: none) {
  *::-ms-backdrop, .top-topics-bg-img-box {
    display: none !important;
  }
  *::-ms-backdrop, .top-member-col2-box .ttl-text {
    padding-top: 0.6rem;
  }
  *::-ms-backdrop, .about-label-ttl {
    padding-top: 1px;
  }
  *::-ms-backdrop, .about-special-area-ttl {
    top: 18px;
  }
  *::-ms-backdrop, .about-special-area-ttl-text {
    padding-bottom: 0;
  }
  *::-ms-backdrop, .about-special-ttl {
    margin-top: -6px;
  }
  *::-ms-backdrop, .about-all-program-list .list-elm {
    padding-top: 15px;
  }
  *::-ms-backdrop, .modal-message-slider .lead-text {
    margin-top: 2px;
  }
  *::-ms-backdrop, .bg-set-inner .ttl-box:before {
    top: 0;
  }
  *::-ms-backdrop, .faq-set .qa-text {
    top: 38px;
  }
  *::-ms-backdrop, .faq-set .a-box .qa-text {
    padding-top: 41px;
  }
  *::-ms-backdrop, .step-set-list .yellow-label {
    padding: 2px 0 12px;
  }
  *::-ms-backdrop, .sp-about-page-ttl .anime-label-line-text .anime-label-line-text-wrap:after {
    top: -8px;
  }
  *::-ms-backdrop, .about-concept-obj .obj-box-inner {
    ransition-delay: 0.6s;
  }
  *::-ms-backdrop, .guest-set-min-list .text-box {
    padding-top: 16px;
  }
  *::-ms-backdrop, .header-link-list .icon {
    top: 3px;
  }
  *::-ms-backdrop, .global-header.fix .header-link-list .icon {
    top: 2px;
  }
  *::-ms-backdrop, .fix .header-join-btn-link {
    padding-top: 24px;
  }
  *::-ms-backdrop, .top-moments-box-ttl-text {
    padding-left: 4px;
  }
  *::-ms-backdrop, .top-moments-box-ttl .anime-label-line-text .anime-label-line-text-wrap:after {
    right: -6px;
  }
}
