@charset "UTF-8";
/* コンテンツ幅
-------------------------------------------*/
.base_w_1600 {
  max-width: 1600px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .base_w_1600 {
    width: 88%;
  }
}

.base_w_1300 {
  max-width: 1300px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .base_w_1300 {
    width: 88%;
  }
}

.base_w_1400 {
  max-width: 1400px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .base_w_1400 {
    width: 88%;
  }
}

.base_w_1200 {
  max-width: 1200px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .base_w_1200 {
    width: 88%;
  }
}

/* ヘッダー
-------------------------------------------*/
.con_lower_title {
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.con_lower_title.fv_pat1 {
  height: 100vh;
}
.con_lower_title.fv_pat1 h2 .jp {
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  -moz-text-orientation: upright;
  -ms-text-orientation: upright;
  text-orientation: upright;
  text-align: left;
  display: inline-block;
  margin-right: 3px;
}
.con_lower_title.fv_pat2 {
  height: 100vh;
}
@media only screen and (min-width: 768px) {
  .con_lower_title.fv_pat2 h2 {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title.fv_pat2 h2 {
    width: 90%;
  }
}
@media only screen and (min-width: 1025px) {
  .con_lower_title.fv_pat3 {
    height: 600px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_lower_title.fv_pat3 {
    height: 500px;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title.fv_pat3 {
    height: 67.5vh;
  }
}
@media only screen and (min-width: 768px) {
  .con_lower_title.fv_pat3 h2 {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title.fv_pat3 h2 {
    width: 80%;
  }
}
.con_lower_title::before, .con_lower_title::after {
  content: "";
  width: 100%;
  position: absolute;
  left: 0;
  z-index: 1;
}
.con_lower_title::before {
  height: 30%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.7)), to(transparent));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), transparent);
  top: 0;
}
.con_lower_title::after {
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
  bottom: 0;
}
.con_lower_title h2 {
  margin: 0;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
  text-shadow: 0 0 7.5px rgba(0, 0, 0, 0.5);
  width: 92%;
}
.con_lower_title h2 span {
  display: block;
}
.con_lower_title h2 .jp {
  letter-spacing: 0.15em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #e9e9e9;
}
@media only screen and (min-width: 1441px) {
  .con_lower_title h2 .jp {
    font-size: 40px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .con_lower_title h2 .jp {
    font-size: 35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_lower_title h2 .jp {
    font-size: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title h2 .jp {
    font-size: 30px;
  }
}
@media only screen and (max-width: 544px) {
  .con_lower_title h2 .jp {
    font-size: 27.5px;
  }
}
@media only screen and (min-width: 1025px) {
  .con_lower_title h2 .jp .s {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_lower_title h2 .jp .s {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title h2 .jp .s {
    font-size: 15px;
  }
}
.con_lower_title h2 .en {
  font-family: 'Crimson Text', serif;
  font-weight: 400;
  font-family: 'Noto Serif', serif;
  font-weight: 200;
  letter-spacing: .05em;
  letter-spacing: 0.15em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #e9e9e9;
  line-height: 1;
  word-break: keep-all;
  overflow-wrap: break-word;
}
html.cn .con_lower_title h2 .en {
  font-family: 'Crimson Text', 'Noto Serif SC', serif;
}
html.tc .con_lower_title h2 .en {
  font-family: 'Crimson Text', 'Noto Serif TC', serif;
}
html.cn .con_lower_title h2 .en {
  font-family: 'Noto Serif SC', serif;
}
html.tc .con_lower_title h2 .en {
  font-family: 'Noto Serif TC', serif;
}
@media only screen and (min-width: 1441px) {
  .con_lower_title h2 .en {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .con_lower_title h2 .en {
    font-size: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_lower_title h2 .en {
    font-size: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title h2 .en {
    font-size: 32px;
  }
}
.con_lower_title .img_area {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.con_lower_title .img_area .tmp_slide {
  width: 100%;
  height: 100%;
}
.con_lower_title .img_area .tmp_slide_option {
  position: absolute;
  bottom: 5%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.con_lower_title .img_area .slick-list, .con_lower_title .img_area .slick-track, .con_lower_title .img_area .slide {
  width: 100%;
  height: 100%;
}
.con_lower_title .img_area .slide {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
@media only screen and (min-width: 768px) {
  .con_lower_title .box_lower_noslider_mainimg_sp {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title .box_lower_noslider_mainimg_sp {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
  }
}
.con_lower_title .fv_att_txt {
  --zoom: 1;
  font-size: calc((15 / var(--base-font-size)) * var(--zoom) * 1em);
  position: absolute;
  bottom: 1em;
  right: 1em;
  z-index: 2;
  color: #fff;
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .con_lower_title .fv_att_txt {
    --zoom: .7;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_lower_title .fv_att_txt {
    --zoom: .7;
  }
}
@media only screen and (max-width: 767px) {
  .con_lower_title .fv_att_txt {
    --zoom: .6;
  }
}

/* パンくず
-------------------------------------------*/
@media only screen and (min-width: 1025px) {
  .con_topicpath {
    margin-top: 230px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_topicpath {
    margin-top: 180px;
  }
}
@media only screen and (max-width: 767px) {
  .con_topicpath {
    margin-top: 4em;
  }
}
@media only screen and (min-width: 1025px) {
  .con_topicpath {
    margin-bottom: 45px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_topicpath {
    margin-bottom: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .con_topicpath {
    margin-bottom: 1.5em;
  }
}
.con_topicpath ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.con_topicpath li:not(:last-child) {
  margin-right: .75em;
  padding-right: 1.25em;
  position: relative;
}
.con_topicpath li:not(:last-child) i {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.con_topicpath li:not(:last-child) i svg {
  width: .55em !important;
  height: .55em !important;
}
.con_topicpath li > span, .con_topicpath li a {
  font-size: 12px;
}

/* プレーンテキスト
-------------------------------------------*/
.tmp_lower_text .txt {
  letter-spacing: 0.05em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt {
    line-height: 1.875;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt {
    line-height: 2.1;
  }
}
.tmp_lower_text .txt + .txt {
  margin-top: 1em;
}
.tmp_lower_text .txt_vrt {
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -moz-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  -moz-text-orientation: upright;
  -ms-text-orientation: upright;
  text-orientation: upright;
  text-align: left;
  display: inline-block;
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_vrt {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_vrt {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_vrt {
    line-height: 3.125;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_vrt {
    line-height: 2.1;
  }
}
@media only screen and (min-width: 768px) and (max-width: 896px) {
  .tmp_lower_text .txt_vrt {
    line-height: 2.25;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    font-size: 14px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    line-height: 2.75;
    letter-spacing: 0.06em;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    letter-spacing: 0.15em;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
@media only screen and (max-width: 767px) and (min-width: 768px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) and (min-width: 768px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    line-height: 1.875;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .tmp_lower_text .txt_vrt_pc-tab {
    line-height: 2.1;
  }
}

.tmp_lower_text .txt_l {
  letter-spacing: 0.15em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media only screen and (min-width: 1025px) {
  .tmp_lower_text .txt_l {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_lower_text .txt_l {
    font-size: 17px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_l {
    font-size: 15px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_l {
    line-height: 1.5;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_l {
    line-height: 2.1;
  }
}
.tmp_lower_text .txt_l .txt_offset {
  margin-left: -1em;
  margin-right: -1em;
}
@media only screen and (min-width: 768px) {
  .tmp_lower_text .txt_l + .txt {
    margin-top: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lower_text .txt_l + .txt {
    margin-top: 0.5em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 896px) {
  .tmp_lower_text .txt_l + .txt {
    margin-top: .5em;
  }
}
.tmp_lower_text.white * {
  color: #cdcdcd;
}
.tmp_lower_text.black * {
  color: #242424;
}

/* 見出し（h3）
-------------------------------------------*/
.tmp_h3 span, .tmp_h3_vrt span, .tmp_h4_vrt span, .tmp_h4_vrt_bg span {
  display: block;
}
@media only screen and (min-width: 1025px) {
  .tmp_h3 span, .tmp_h3_vrt span, .tmp_h4_vrt span, .tmp_h4_vrt_bg span {
    font-size: 35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h3 span, .tmp_h3_vrt span, .tmp_h4_vrt span, .tmp_h4_vrt_bg span {
    font-size: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3 span, .tmp_h3_vrt span, .tmp_h4_vrt span, .tmp_h4_vrt_bg span {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1025px) {
  .tmp_h3 span:not(:first-of-type), .tmp_h3_vrt span:not(:first-of-type), .tmp_h4_vrt span:not(:first-of-type), .tmp_h4_vrt_bg span:not(:first-of-type) {
    margin-right: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h3 span:not(:first-of-type), .tmp_h3_vrt span:not(:first-of-type), .tmp_h4_vrt span:not(:first-of-type), .tmp_h4_vrt_bg span:not(:first-of-type) {
    margin-right: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3 span:not(:first-of-type), .tmp_h3_vrt span:not(:first-of-type), .tmp_h4_vrt span:not(:first-of-type), .tmp_h4_vrt_bg span:not(:first-of-type) {
    margin-right: 0.5em;
  }
}
@media only screen and (min-width: 768px) and (max-width: 896px) {
  .tmp_h3 span, .tmp_h3_vrt span, .tmp_h4_vrt span, .tmp_h4_vrt_bg span {
    font-size: 25px;
  }
}
.tmp_h3 span small, .tmp_h3_vrt span small, .tmp_h4_vrt span small, .tmp_h4_vrt_bg span small {
  font-size: .6em;
  margin-bottom: .3em;
  display: block;
}
.tmp_h3.white, .white.tmp_h3_vrt, .white.tmp_h4_vrt, .white.tmp_h4_vrt_bg {
  color: #cdcdcd;
}
.tmp_h3.black, .black.tmp_h3_vrt, .black.tmp_h4_vrt, .black.tmp_h4_vrt_bg {
  color: #242424;
}
.tmp_h3_vrt em {
  position: relative;
  border-bottom: 1px solid #cdcdcd;
}

.tmp_h3_line {
  text-align: center;
}
.tmp_h3_line .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  --h: 200px;
  --h: 250px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-top: var(--h);
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h3_line .inner {
    --h: 150px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3_line .inner {
    --h: 8rem;
  }
}
.tmp_h3_line .inner:before {
  height: calc(var(--h) * (150 / 200));
  content: "";
  width: 1px;
  background: #858585;
  position: absolute;
  top: 0;
  left: 50%;
}
.tmp_h3_line .jp {
  display: block;
  white-space: nowrap;
}
.tmp_h3_line .jp span {
  display: block;
}
.tmp_h3_line .jp .m {
  margin-top: .2em;
}
@media only screen and (min-width: 1441px) {
  .tmp_h3_line .jp .m {
    font-size: 35px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .tmp_h3_line .jp .m {
    font-size: 33px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h3_line .jp .m {
    font-size: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3_line .jp .m {
    font-size: 25px;
  }
}
.tmp_h3_line .jp .s {
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .tmp_h3_line .jp .s {
    font-size: 17px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h3_line .jp .s {
    font-size: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3_line .jp .s {
    font-size: 12px;
  }
}
.tmp_h3_line .jp .s::before, .tmp_h3_line .jp .s::after {
  margin-right: .25em;
  margin-left: .25em;
}
.tmp_h3_line .jp .s::before {
  content: "[";
}
.tmp_h3_line .jp .s::after {
  content: "]";
}
@media only screen and (min-width: 768px) {
  .tmp_h3_line .jp + .en {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h3_line .jp + .en {
    margin-top: 0.75em;
  }
}
.tmp_h3_line.white {
  color: #cdcdcd;
}
.tmp_h3_line.white .inner:before {
  background: #cdcdcd;
}
.tmp_h3_line.black {
  color: #242424;
}
.tmp_h3_line.black .inner:before {
  background: #242424;
}
.tmp_h3_line.lower_inview_single {
  opacity: 0;
}
.tmp_h3_line.lower_inview_single.is-active {
  -webkit-transition: .8s opacity ease-in;
  transition: .8s opacity ease-in;
  opacity: 1;
}

/* 見出し（h4）
-------------------------------------------*/
.tmp_h4 span {
  letter-spacing: 0.1em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: block;
}
@media only screen and (min-width: 1025px) {
  .tmp_h4 span {
    font-size: 35px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h4 span {
    font-size: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4 span {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_h4 span {
    line-height: 1.28571;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4 span {
    line-height: 1.5;
  }
}
.tmp_h4 span:not(:first-of-type) {
  margin-right: 20px;
}
@media only screen and (min-width: 768px) and (max-width: 896px) {
  .tmp_h4 span {
    font-size: 25px;
  }
}
.tmp_h4_vrt span:not(:first-child) {
  margin-top: .25em;
}
.tmp_h4_vrt em {
  display: inline-block;
  position: relative;
  border-bottom: 1px solid #cdcdcd;
  padding-bottom: .25em;
  display: inline-block;
}
.tmp_h4_vrt_bg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.tmp_h4_vrt_bg span {
  color: #cdcdcd;
  background: #292c11;
}
@media only screen and (min-width: 1025px) {
  .tmp_h4_vrt_bg span {
    font-size: 28px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h4_vrt_bg span {
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4_vrt_bg span {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_h4_vrt_bg span {
    padding: 0 28px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4_vrt_bg span {
    padding: 0 0.75em;
  }
}
.tmp_h4_vrt_bg span:not(:first-of-type) {
  display: inline-block;
  margin-right: 0;
  margin-top: 1em;
}
@media only screen and (min-width: 768px) and (max-width: 896px) {
  .tmp_h4_vrt_bg span {
    padding: 17.5px 7.5px;
    font-size: 22px;
  }
}
@media only screen and (max-width: 544px) {
  .tmp_h4_vrt_bg span {
    font-size: 18px;
  }
}
.tmp_h4_vrt_bg span.small {
  padding: 14px 8px;
  display: table;
}
.tmp_h4_vrt_bg span.small em {
  font-size: .8em;
  height: 6em;
  display: block;
}
.tmp_h4.white {
  color: #cdcdcd;
}
.tmp_h4.black {
  color: #242424;
}
.tmp_h4.center {
  text-align: center;
}
@media only screen and (min-width: 1025px) {
  .tmp_h4.s span {
    font-size: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h4.s span {
    font-size: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4.s span {
    font-size: 18px;
  }
}

.tmp_h4_line span {
  letter-spacing: 0.04em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: block;
  padding-left: .75em;
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .tmp_h4_line span {
    font-size: 25px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h4_line span {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h4_line span {
    font-size: 18px;
  }
}
.tmp_h4_line span::before {
  content: "";
  width: 3px;
  height: 110%;
  background: #424242;
  position: absolute;
  top: -5%;
  left: 0;
}
.tmp_h4_line.white span {
  color: #cdcdcd;
}
.tmp_h4_line.white span::before {
  background: #cdcdcd;
}
.tmp_h4_line.black span {
  color: #242424;
}
.tmp_h4_line.black span::before {
  background: #242424;
}

/* 見出し（h5）
-------------------------------------------*/
.tmp_h5 span {
  letter-spacing: 0.16em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: block;
}
@media only screen and (min-width: 1441px) {
  .tmp_h5 span {
    font-size: 25px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .tmp_h5 span {
    font-size: 22px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h5 span {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h5 span {
    font-size: 17px;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_h5 span {
    line-height: 1.72;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h5 span {
    line-height: 1.7;
  }
}
.tmp_h5.white {
  color: #cdcdcd;
}
.tmp_h5.black {
  color: #242424;
}
@media only screen and (min-width: 1025px) {
  .tmp_h5.s span {
    font-size: 18px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_h5.s span {
    font-size: 17px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_h5.s span {
    font-size: 14px;
  }
}

/* アンカーリンク
-------------------------------------------*/
.tmp_btn, .tmp_btn_cnv, .tmp_btn_ghost {
  display: block;
  width: 100%;
  background: #28261e;
  color: #e4e4e4;
  border: 1px solid #28261e;
  -webkit-transition: .3s background-color ease-in-out;
  transition: .3s background-color ease-in-out;
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 1025px) {
  .tmp_btn, .tmp_btn_cnv, .tmp_btn_ghost {
    padding: 22.5px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_btn, .tmp_btn_cnv, .tmp_btn_ghost {
    padding: 17.5px 0;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn, .tmp_btn_cnv, .tmp_btn_ghost {
    padding: 15px 0;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn, .tmp_btn_cnv, .tmp_btn_ghost {
    font-size: 14px;
  }
}
.tmp_btn:hover, .tmp_btn_cnv:hover, .tmp_btn_ghost:hover, .tmp_btn:focus, .tmp_btn_cnv:focus, .tmp_btn_ghost:focus {
  color: #e4e4e4;
  background: #191813;
  border-color: #191813;
  opacity: 1;
}
@media only screen and (max-width: 1024px) {
  .tmp_btn:hover, .tmp_btn_cnv:hover, .tmp_btn_ghost:hover, .tmp_btn:focus, .tmp_btn_cnv:focus, .tmp_btn_ghost:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}
.tmp_btn i, .tmp_btn_cnv i, .tmp_btn_ghost i {
  position: absolute;
  top: 50%;
  right: 1.5em;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tmp_btn_cnv {
  border-color: #4c472c;
  background: #4c472c;
}
.tmp_btn_cnv:hover, .tmp_btn_cnv:focus {
  background: #3c3823;
  border-color: #3c3823;
}
@media only screen and (max-width: 1024px) {
  .tmp_btn_cnv:hover, .tmp_btn_cnv:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}

.tmp_btn_ghost {
  color: #cdcdcd;
  border-color: #424242;
  background: rgba(40, 38, 30, 0);
  border-color: #cdcdcd;
  -webkit-transition: .3s opacity ease-in-out;
  transition: .3s opacity ease-in-out;
}
.tmp_btn_ghost i {
  fill: #cdcdcd;
}
.tmp_btn_ghost:hover, .tmp_btn_ghost:focus {
  color: #cdcdcd;
  background: rgba(40, 38, 30, 0);
  border-color: #cdcdcd;
  opacity: .7;
}
@media only screen and (max-width: 1024px) {
  .tmp_btn_ghost:hover, .tmp_btn_ghost:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}

/* 汎用ボタン
-------------------------------------------*/
.tmp_textlink {
  display: inline-block;
  position: relative;
  padding-bottom: 1.5rem;
}
@media only screen and (min-width: 1025px) {
  .tmp_textlink {
    padding-right: calc(100px + 40px);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_textlink {
    padding-right: calc(60px + 30px);
  }
}
@media only screen and (max-width: 767px) {
  .tmp_textlink {
    padding-right: calc(3em + 1em);
  }
}
.tmp_textlink:hover i, .tmp_textlink:focus i {
  -webkit-transform: translateX(0.6em);
          transform: translateX(0.6em);
}
@media only screen and (max-width: 1024px) {
  .tmp_textlink:hover, .tmp_textlink:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}
.tmp_textlink .en {
  font-family: 'EB Garamond', serif;
  font-weight: 300;
  letter-spacing: 0.15em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 14px;
  line-height: 1;
}
html.cn .tmp_textlink .en {
  font-family: 'EB Garamond', 'Noto Serif SC', serif;
}
html.tc .tmp_textlink .en {
  font-family: 'EB Garamond', 'Noto Serif TC', serif;
}
.tmp_textlink i {
  display: block;
  height: 6px;
  position: absolute;
  top: calc(50% - .75rem);
  margin-top: -3px;
  right: 0;
  -webkit-transition: .3s transform ease-in;
  transition: .3s transform ease-in;
}
@media only screen and (min-width: 1025px) {
  .tmp_textlink i {
    width: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_textlink i {
    width: 80px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_textlink i {
    width: 3em;
  }
}
.tmp_textlink i:before, .tmp_textlink i:after {
  content: "";
  position: absolute;
  bottom: 0;
}
.tmp_textlink i:before {
  width: 100%;
  height: 1px;
  background: #424242;
  left: 0;
}
.tmp_textlink i:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #424242;
  right: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_textlink i:after {
    border-width: 6px 0 0 21px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_textlink i:after {
    border-width: 0.3em 0 0 0.9em;
  }
}
.tmp_textlink.white {
  color: #cdcdcd;
}
.tmp_textlink.white:after {
  content: "";
  width: 100%;
  height: 3px;
  background: #cdcdcd;
  position: absolute;
  bottom: 0;
  left: 0;
}
.tmp_textlink.white i:before {
  background: #cdcdcd;
}
.tmp_textlink.white i:after {
  border-color: transparent transparent transparent #cdcdcd;
}

.tmp_textlink_arrow {
  letter-spacing: 0.06em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  display: inline-block;
  padding-left: 1em;
  position: relative;
}
.tmp_textlink_arrow i {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tmp_textlink_arrow.white {
  color: #cdcdcd;
}

.tmp_textlink_normal {
  display: inline-block;
  position: relative;
}
.tmp_textlink_normal::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #424242;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: .3s transform ease-in-out;
  transition: .3s transform ease-in-out;
}
.tmp_textlink_normal:hover::after, .tmp_textlink_normal:focus::after {
  -webkit-transform: scale(0);
          transform: scale(0);
}
@media only screen and (max-width: 1024px) {
  .tmp_textlink_normal:hover, .tmp_textlink_normal:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}
.tmp_textlink_normal.jp {
  letter-spacing: 0em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  padding-bottom: .25em;
}
.tmp_textlink_normal.en {
  font-family: 'EB Garamond', serif;
  font-weight: 300;
  letter-spacing: 0.15em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-size: 14px;
}
html.cn .tmp_textlink_normal.en {
  font-family: 'EB Garamond', 'Noto Serif SC', serif;
}
html.tc .tmp_textlink_normal.en {
  font-family: 'EB Garamond', 'Noto Serif TC', serif;
}
.tmp_textlink_normal.en::after {
  bottom: .2em;
}
.tmp_textlink_normal.white {
  color: #cdcdcd;
}
.tmp_textlink_normal.white::after {
  background: #cdcdcd;
}

/* サイト内リンク
-------------------------------------------*/
.tmp_lowerlnk {
  max-width: 1600px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk {
    width: 88%;
  }
}
@media only screen and (min-width: 1441px) {
  .tmp_lowerlnk {
    --ml: -70px;
  }
}
@media only screen and (min-width: 1025px) and (max-width: 1440px) {
  .tmp_lowerlnk {
    --ml: -50px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_lowerlnk {
    --ml: -50px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk {
    --ml: 0;
  }
}
.tmp_lowerlnk ul {
  margin-left: var(--ml);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (min-width: 1025px) {
  .tmp_lowerlnk ul {
    margin-top: -20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_lowerlnk ul {
    margin-top: -15px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk ul {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.tmp_lowerlnk li {
  margin-left: calc(var(--ml) * -1);
}
@media only screen and (min-width: 1025px) {
  .tmp_lowerlnk li {
    margin-top: 20px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_lowerlnk li {
    margin-top: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk li {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk li {
    width: 48%;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk li:nth-child(n+3) {
    margin-top: .75em;
  }
}
.tmp_lowerlnk a {
  display: inline-block;
  padding: 0 .25em .75em;
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .tmp_lowerlnk a {
    font-size: 18px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_lowerlnk a {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk a {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk a {
    width: 100%;
    text-align: center;
  }
}
.tmp_lowerlnk a::after {
  content: "";
  width: 100%;
  background: #cdcdcd;
  position: absolute;
  bottom: 0;
  left: 0;
  opacity: 0;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: .4s transform ease-in-out , .4s opacity ease-in-out;
  transition: .4s transform ease-in-out , .4s opacity ease-in-out;
}
@media only screen and (min-width: 768px) {
  .tmp_lowerlnk a::after {
    height: 3px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_lowerlnk a::after {
    height: 0.1em;
  }
}
.tmp_lowerlnk a:hover, .tmp_lowerlnk a:focus {
  opacity: 1;
}
.tmp_lowerlnk a:hover::after, .tmp_lowerlnk a:focus::after {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
@media only screen and (max-width: 1024px) {
  .tmp_lowerlnk a:hover, .tmp_lowerlnk a:focus {
    -webkit-tap-highlight-color: transparent;
    -webkit-transition-delay: 200ms;
            transition-delay: 200ms;
  }
}
.tmp_lowerlnk a.is-active::after {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
.tmp_lowerlnk a i {
  display: inline-block;
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
  margin-left: .5em;
}
.tmp_lowerlnk.white a {
  color: #cdcdcd;
}

/* アンカーリンク
-------------------------------------------*/
.tmp_anclnk {
  max-width: 1200px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk {
    width: 88%;
  }
}
.tmp_anclnk ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.tmp_anclnk li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk li {
    width: calc(270 / 1200 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk li {
    width: 48%;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk li:not(:nth-child(4n+1)) {
    margin-left: calc(40 / 1200 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk li:nth-child(n+5) {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk li:nth-child(n+3) {
    margin-top: .25em;
  }
}
.tmp_anclnk a {
  display: block;
  border-bottom: 2px solid #cdcdcd;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk a {
    padding: 0.5em 1.75em 0.5em 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk a {
    padding: 0.75em 1em 0.75em 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk a {
    min-height: 63px;
  }
}
.tmp_anclnk a::after {
  content: "";
  width: .4em;
  height: .4em;
  border-bottom: 1px solid #242424;
  border-right: 1px solid #242424;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
@media only screen and (min-width: 768px) {
  .tmp_anclnk a::after {
    right: 1.25em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_anclnk a::after {
    right: 0.5em;
  }
}

/* タブ切り替え
-------------------------------------------*/
.tmp_switch_tab .tmp_switch_tab_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab .tmp_switch_tab_btn {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab .tmp_switch_tab_btn {
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
  }
}
.tmp_switch_tab .tmp_switch_tab_btn li {
  position: relative;
  border: 1px solid #cdcdcd;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab .tmp_switch_tab_btn li {
    width: 25%;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab .tmp_switch_tab_btn li {
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab .tmp_switch_tab_btn li:nth-child(n+3) {
    border-top: none;
  }
  .tmp_switch_tab .tmp_switch_tab_btn li:nth-child(even) {
    border-left: none;
  }
}
.tmp_switch_tab .tmp_switch_tab_btn li::before {
  content: "";
  width: 100%;
  background: #cdcdcd;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .3s opacity ease-in-out;
  transition: .3s opacity ease-in-out;
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab .tmp_switch_tab_btn li::before {
    height: 4px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab .tmp_switch_tab_btn li::before {
    height: 3px;
  }
}
.tmp_switch_tab .tmp_switch_tab_btn li.is-active::before {
  opacity: 1;
}
.tmp_switch_tab .tmp_switch_tab_btn a {
  display: block;
  padding: 1em;
  text-align: center;
}
.tmp_switch_tab .tmp_inn_switch_tab_panel:not(:first-of-type) {
  display: none;
}
.tmp_switch_tab.col_under_4 {
  max-width: 1214px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab.col_under_4 {
    width: 88%;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_under_4 {
    padding: 0 7px;
  }
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn {
  position: relative;
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::before, .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::after {
  width: 7px;
  height: 1px;
  background: #cdcdcd;
  position: absolute;
  bottom: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::before, .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::after {
    content: "";
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::before, .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::after {
    content: none;
  }
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::before {
  left: -7px;
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn::after {
  right: -7px;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li {
    border-bottom: none;
  }
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li::after {
  width: 100%;
  height: 1px;
  background: #cdcdcd;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: .3s opacity ease-in-out;
  transition: .3s opacity ease-in-out;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li::after {
    content: "";
  }
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li::after {
    content: none;
  }
}
.tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li.is-active::after {
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_under_4 .tmp_switch_tab_btn li:nth-child(n+2) {
    border-left: none;
  }
}
.tmp_switch_tab.col_over_4 {
  max-width: 1200px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .tmp_switch_tab.col_over_4 {
    width: 88%;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_over_4 .tmp_switch_tab_btn li {
    border-left: none;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_over_4 .tmp_switch_tab_btn li:nth-child(4n+1) {
    border-left: 1px solid #cdcdcd;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_switch_tab.col_over_4 .tmp_switch_tab_btn li:nth-child(n+5) {
    border-top: none;
  }
}

/* テーブル
-------------------------------------------*/
.tmp_wrp_tbl {
  max-width: 1200px;
  width: 92%;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .tmp_wrp_tbl {
    width: 88%;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_wrp_tbl .tmp_h5 {
    margin-bottom: 25px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_wrp_tbl .tmp_h5 {
    margin-bottom: 1em;
  }
}

.tmp_tbl {
  width: 100%;
}
.tmp_tbl tr {
  border-bottom: 1px solid #cdcdcd;
}
.tmp_tbl th, .tmp_tbl td {
  line-height: 2;
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .tmp_tbl th, .tmp_tbl td {
    padding: 1.25em 1.25em 1.25em 1em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tbl th, .tmp_tbl td {
    display: block;
    padding-left: 2.5%;
    padding-right: 2.5%;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tbl th {
    font-weight: 900;
    padding-top: 1em;
    margin-bottom: .25em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tbl td {
    padding-bottom: 1em;
  }
}

/* スライダー
-------------------------------------------*/
.tmp_slide_dots ul, .slick-dots ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.tmp_slide_dots li, .slick-dots li {
  border: 1px solid #424242;
  border-radius: 50%;
  -webkit-transition: .3s background-color ease-in-out;
  transition: .3s background-color ease-in-out;
}
@media only screen and (min-width: 768px) {
  .tmp_slide_dots li, .slick-dots li {
    width: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_dots li, .slick-dots li {
    width: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_slide_dots li, .slick-dots li {
    height: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_dots li, .slick-dots li {
    height: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_slide_dots li:not(:first-child), .slick-dots li:not(:first-child) {
    margin-left: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_dots li:not(:first-child), .slick-dots li:not(:first-child) {
    margin-left: 0.5em;
  }
}
.tmp_slide_dots li.is-active, .slick-dots li.is-active {
  background: #424242;
}

.slick-dots {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.slick-dots li {
  border: 1px solid #fff;
  border-radius: 50%;
  -webkit-transition: .3s background-color ease-in-out;
  transition: .3s background-color ease-in-out;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .slick-dots li {
    width: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .slick-dots li {
    width: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .slick-dots li {
    height: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .slick-dots li {
    height: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  .slick-dots li:not(:first-child) {
    margin-left: 1em;
  }
}
@media only screen and (max-width: 767px) {
  .slick-dots li:not(:first-child) {
    margin-left: 0.5em;
  }
}
.slick-dots li.slick-active {
  background: #fff;
}
.slick-dots button {
  width: 100%;
  height: 100%;
  opacity: 0;
  border: none;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.dots_b .slick-dots li {
  border: 1px solid #424242;
}
.dots_b .slick-dots li.slick-active {
  background: #424242;
}

.tmp_slide_arrows li {
  background: #000;
  position: absolute;
  cursor: pointer;
}
@media only screen and (min-width: 1025px) {
  .tmp_slide_arrows li {
    width: 94px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_slide_arrows li {
    width: 65px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_arrows li {
    width: 3em;
  }
}
@media only screen and (min-width: 1025px) {
  .tmp_slide_arrows li {
    height: 94px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_slide_arrows li {
    height: 65px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_arrows li {
    height: 3em;
  }
}
.tmp_slide_arrows li span {
  display: block;
  height: 6px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: .3s transform ease-in;
  transition: .3s transform ease-in;
}
@media only screen and (min-width: 1025px) {
  .tmp_slide_arrows li span {
    width: 57px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_slide_arrows li span {
    width: 45px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_arrows li span {
    width: 1.75em;
  }
}
.tmp_slide_arrows li span:before, .tmp_slide_arrows li span:after {
  content: "";
  position: absolute;
  bottom: 0;
}
.tmp_slide_arrows li span:before {
  width: 100%;
  height: 1px;
  background: #fff;
  left: 0;
}
.tmp_slide_arrows li span:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #fff;
  right: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_slide_arrows li span:after {
    border-width: 6px 0 0 21px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_arrows li span:after {
    border-width: 0.3em 0 0 0.7em;
  }
}
.tmp_slide_arrows li span.reverse:after {
  border-color: transparent transparent #fff transparent;
  left: 0;
}
@media only screen and (min-width: 768px) {
  .tmp_slide_arrows li span.reverse:after {
    border-width: 0 0 6px 21px;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slide_arrows li span.reverse:after {
    border-width: 0 0 0.3em 0.7em;
  }
}

/* さんぽう背景
-------------------------------------------*/
.tmp_bg_sanpou {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

/* インビュー
-------------------------------------------*/
.lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_h3_vrt {
  text-shadow: 0 0 10px #cdcdcd;
  opacity: 0;
  color: transparent;
}
@media only screen and (min-width: 768px) {
  .lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_h3_vrt {
    margin-left: auto;
  }
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_h3_vrt span:not(:first-child), .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_h3_vrt span:not(:first-child) {
  margin-top: .25em;
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_h3_vrt span em, .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_h3_vrt span em {
  padding-bottom: .25em;
  display: inline-block;
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_lower_text, .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_lower_text {
  margin-top: 2em;
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white .tmp_lower_text .txt_vrt_pc-tab, .lower_inview_multiple .lower_inview_chd.anime_blur.black .tmp_lower_text .txt_vrt_pc-tab {
  text-shadow: 0 0 10px #cdcdcd;
  opacity: 0;
  color: transparent;
  min-width: 1px;
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white.tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd.anime_blur.black.tmp_h3_vrt {
  text-shadow: 0 0 10px #cdcdcd;
  opacity: 0;
  color: transparent;
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .lower_inview_multiple .lower_inview_chd.anime_blur.white.tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd.anime_blur.black.tmp_h3_vrt {
    margin-left: auto;
  }
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white.tmp_h3_vrt span em:before, .lower_inview_multiple .lower_inview_chd.anime_blur.black.tmp_h3_vrt span em:before {
  background: rgba(205, 205, 205, 0.2);
}
.lower_inview_multiple .lower_inview_chd.anime_blur.white.tmp_lower_text .txt_vrt_pc-tab, .lower_inview_multiple .lower_inview_chd.anime_blur.black.tmp_lower_text .txt_vrt_pc-tab {
  text-shadow: 0 0 10px #cdcdcd;
  opacity: 0;
  color: transparent;
  min-width: 1px;
}
.lower_inview_multiple .lower_inview_chd.anime_bottom {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white .tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black .tmp_h3_vrt {
  text-shadow: none;
  opacity: 1;
  -webkit-transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
  transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white .tmp_h3_vrt span em:before, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black .tmp_h3_vrt span em:before {
  -webkit-transition: 1s background-color ease-in 1.25s;
  transition: 1s background-color ease-in 1.25s;
  background: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white .tmp_lower_text .txt_vrt_pc-tab, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black .tmp_lower_text .txt_vrt_pc-tab {
  text-shadow: none;
  opacity: 1;
  -webkit-transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
  transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white.tmp_h3_vrt, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black.tmp_h3_vrt {
  text-shadow: none;
  opacity: 1;
  -webkit-transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
  transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white.tmp_h3_vrt span em:before, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black.tmp_h3_vrt span em:before {
  -webkit-transition: 1s background-color ease-in 1.25s;
  transition: 1s background-color ease-in 1.25s;
  background: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white.tmp_lower_text .txt_vrt_pc-tab, .lower_inview_multiple .lower_inview_chd_done.anime_blur.black.tmp_lower_text .txt_vrt_pc-tab {
  text-shadow: none;
  opacity: 1;
  -webkit-transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
  transition: .5s opacity ease-in .75s , 1s color ease-in 1.25s , 1s text-shadow ease-in 1.25s;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white .tmp_h3_vrt {
  color: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white .tmp_lower_text .txt_vrt_pc-tab {
  color: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white.tmp_h3_vrt {
  color: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.white.tmp_lower_text .txt_vrt_pc-tab {
  color: #cdcdcd;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.black .tmp_h3_vrt {
  color: #242424;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.black .tmp_lower_text .txt_vrt_pc-tab {
  color: #242424;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.black.tmp_h3_vrt {
  color: #242424;
}
.lower_inview_multiple .lower_inview_chd_done.anime_blur.black.tmp_lower_text .txt_vrt_pc-tab {
  color: #242424;
}
.lower_inview_multiple .lower_inview_chd_done.anime_bottom {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: 1.5s opacity ease-in .75s , 2s -webkit-transform ease-in;
  transition: 1.5s opacity ease-in .75s , 2s -webkit-transform ease-in;
  transition: 2s transform ease-in , 1.5s opacity ease-in .75s;
  transition: 2s transform ease-in , 1.5s opacity ease-in .75s , 2s -webkit-transform ease-in;
}
