@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
html {
  font-size: 62.5%;
}

body {
  margin: 0 auto;
  padding: 0;
  font-size: 1.6rem;
  background: #fff;
  position: relative;
  font-weight: 400;
  text-align: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.8;
  font-weight: normal;
  max-width: 100%;
  font-family: "Overpass", "Roboto", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", Meiryo, sans-serif;
  max-width: 2120px;
  min-width: 900px;
}

body.en {
  font-family: "Overpass", "Roboto", sans-serif;
}

body.jp {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", sans-serif;
}

object {
  pointer-events: none;
}

.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

a[href^="tel:"] {
  pointer-events: none;
}

a {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.inner {
  max-width: 1040px;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.harea02>.inner,
.harea01>.inner {
  max-width: 1550px;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.mega>.inner {
  max-width: 1200px;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_960 {
  max-width: 960px;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.inner_1260 {
  max-width: 990px;
  position: relative;
  width: 96%;
  margin: 0 auto;
}

.max-wid300 {
  max-width: 300px;
}

.max-wid350 {
  max-width: 350px;
}

.max-wid400 {
  max-width: 400px;
}

.max-wid450 {
  max-width: 450px;
}

.max-wid500 {
  max-width: 500px;
}

.max-wid550 {
  max-width: 550px;
}

.max-wid600 {
  max-width: 600px;
}

.max-wid1260 {
  max-width: 1260px;
  margin: 0 auto;
  width: 90%;
}

.max-wid1330 {
  max-width: 990px;
}

.color_bk22 {
  color: #222222;
}

.white_box {
  background-color: #fff;
  -webkit-box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
}

.white_box .boxin {
  padding: 45px 60px 20px;
}

.white_box2 {
  background-color: #fff;
  -webkit-box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
}

.white_box2 .boxin {
  padding: 40px 50px;
}

.border_b {
  border-bottom: solid 1px #dddddd;
}

/* ---------------------------------------------------------------------------
  ★フォントファミリー
--------------------------------------------------------------------------- */
.Df_mincho {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif;
}

.Df_YuGothic {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;
}

.Df_Hiragino {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

.Df_Roboto {
  font-family: Roboto, sans-serif;
}

.Df_Helvetica {
  font-family: "Helvetica Neue", Helvetica, serif;
}

.Gf_NSaJ {
  font-family: "Noto Sans JP", sans-serif;
}

.Gf_Overpass {
  font-family: "Overpass", sans-serif;
}

/* ---------------------------------------------------------------------------
  ★背景
--------------------------------------------------------------------------- */
.bk_gry {
  background-color: #f5f5f5;
}

.bk_gry2 {
  background-color: #f9f8f8;
}

.bk_white {
  background-color: #fff;
}

.bk_black_op {
  background-color: rgba(0, 0, 0, 0.5);
}

.bk_red {
  background-color: #df3030;
}

/* ---------------------------------------------------------------------------
  ★LIST
--------------------------------------------------------------------------- */
.disc {
  margin-left: 20px;
  list-style-type: disc;
}

.disc>li {
  list-style-type: disc;
}

.disc>li:not(:last-child) {
  padding-bottom: 5px;
}

.decimal {
  margin-left: 20px;
  list-style-type: decimal;
}

.decimal>li {
  list-style-type: decimal;
}

.decimal>li:not(:last-child) {
  padding-bottom: 5px;
}

.note {
  font-size: 1.4rem;
}

.note>li {
  padding-left: 20px;
  position: relative;
}

.note>li:not(:last-child) {
  margin-bottom: 5px;
}

.note>li::before {
  display: block;
  content: "※";
  position: absolute;
  left: 0px;
  top: 0;
}

.ulbar>li {
  padding-left: 20px;
  position: relative;
}

.ulbar>li:not(:last-child) {
  margin-bottom: 5px;
}

.ulbar>li::before {
  display: block;
  content: "－";
  position: absolute;
  left: 0px;
  top: 0;
}

/* ---------------------------------------------------------------------------
  ★BASE
--------------------------------------------------------------------------- */
.small {
  font-size: 85%;
}

main {
  display: block;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

#wb_wrap {
  overflow: hidden;
  position: relative;
}

.parallax {
  width: 100%;
  background-attachment: fixed;
  background-position: top center;
  background-repeat: no_repeat;
  background-color: #e6e6e6;
}

.text-shadow {
  text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.6);
}

.movie_wrap {
  padding: 0 0 56.6%;
  width: 100%;
}

.movie_wrap video {
  position: absolute;
  width: 100%;
  height: 100%;
}

.yt_wrap {
  padding: 0 0 66.6%;
  width: 100%;
}

.gmap_wrap {
  padding: 0 0 55%;
  width: 100%;
}

.iframe_wrap {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}

.iframe_wrap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
}

.sToggle dl>dd {
  display: none;
}

.plus_wrap {
  position: absolute;
  right: 30px;
  width: 20px;
  content: "";
  display: block;
  height: 20px;
  top: -5px;
  bottom: 0;
  margin: auto;
}

.plus_wrap span {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #1b1d25;
  top: 50%;
  bottom: 0;
  position: absolute;
  margin: 0;
}

.pl02 {
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
}

.togg .pl02 {
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
}

.pAtb10 {
  padding: 10px 0;
}

.pAtb20 {
  padding: 20px 0;
}

.pAtb30 {
  padding: 30px 0;
}

.pAtb40 {
  padding: 40px 0;
}

.pAtb50 {
  padding: 50px 0;
}

.pAtb60 {
  padding: 60px 0;
}

.pAtb70 {
  padding: 70px 0;
}

.pAtb80 {
  padding: 80px 0;
}

.pAtb90 {
  padding: 90px 0;
}

.pAtb100 {
  padding: 50px 0;
}

.pAtb110 {
  padding: 110px 0;
}

.pAtb120 {
  padding: 120px 0;
}

.pAtb130 {
  padding: 130px 0;
}

.pAtb140 {
  padding: 140px 0;
}

.pAtb150 {
  padding: 150px 0;
}

.pAtb160 {
  padding: 160px 0;
}

.pAtb170 {
  padding: 170px 0;
}

.pAtb180 {
  padding: 180px 0;
}

.pAtb190 {
  padding: 190px 0;
}

.pAtb200 {
  padding: 200px 0;
}

.pAtb210 {
  padding: 210px 0;
}

.pAtb220 {
  padding: 220px 0;
}

.pAtb230 {
  padding: 230px 0;
}

.pAtb240 {
  padding: 240px 0;
}

.pAtb250 {
  padding: 250px 0;
}

.pAtb260 {
  padding: 260px 0;
}

.pAtb270 {
  padding: 270px 0;
}

.pAtb280 {
  padding: 280px 0;
}

.pAtb290 {
  padding: 290px 0;
}

.pAtb300 {
  padding: 300px 0;
}

.pAtb310 {
  padding: 310px 0;
}

.pAtb320 {
  padding: 320px 0;
}

.pAtb330 {
  padding: 330px 0;
}

.pAtb340 {
  padding: 340px 0;
}

.pAtb350 {
  padding: 350px 0;
}

/* ---------------------------------------------------------------------------
  ★タイトル
--------------------------------------------------------------------------- */
.tit01 b {
  font-size: 8rem;
  line-height: 1.5;
  letter-spacing: 0.3rem;
  display: inline-block;
  position: relative;
  font-weight: 900;
}

.tit02 {
  margin: 0 auto 25px;
}

.tit02 b {
  font-size: 3.5rem;
  line-height: 1.1;
  display: inline-block;
  position: relative;
  font-weight: 900;
}

.tit03 {
  margin-bottom: 40px;
  line-height: 1.1;
}

.tit03 b {
  font-size: 2.5rem;
  position: relative;
  display: block;
  font-weight: 400;
  padding-bottom: 15px;
}

.tit03 b::after {
  position: absolute;
  content: "";
  width: 60px;
  height: 2px;
  background-color: #df3030;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
}

.tit03 small {
  font-size: 80%;
  color: #a5a5a5;
  padding-top: 27px;
  display: inline-block;
}

.tit03_2 {
  margin-bottom: 20px;
}

.tit03_2 b {
  font-size: 3.1rem;
  line-height: 1.1;
  display: inline-block;
  position: relative;
  font-weight: bold;
  font-family: Roboto, sans-serif;
}

.tit03_3 {
  margin-bottom: 10px;
  line-height: 1.1;
}

.tit03_3 b {
  font-size: 2.6rem;
  position: relative;
  display: block;
  font-weight: 800;
}

.en .hcover_wp .hcover .h_txt_box .hh1 {
  font-family: "Overpass", sans-serif;
  font-weight: 800;
  font-size: 50px;
}

.jp .hcover_wp .hcover .h_txt_box .hh1 {
  font-weight: 500;
  font-size: 4.5rem;
}

.jp .hcover_wp .hcover .h_txt_box .hh1 span {
  font-size: 2.2rem;
}

.jp h1 b {
  font-weight: 400;
}

.jp h2 b {
  font-weight: 400;
}

.jp .tit02 {
  margin: 0 auto 10px;
}

.jp .tit02 b {
  font-size: 3.5rem;
}

.jp h3 b {
  font-weight: 400;
}

.jp .tit03 {
  margin: 0 auto 20px;
}

.jp .tit03 b {
  font-size: 2.5rem;
  padding-bottom: 15px;
}

.jp .hnav .hnav_inner nav dl dt a {}

.jp .f20b {
  font-weight: bold;
}

.jp .mega .mega_inner ul li a {
  font-weight: normal;
}

.jp .hdll>dd .lang_chenge_wp li a {
  font-family: "Overpass", sans-serif;
  font-weight: 800;
}

/* ---------------------------------------------------------------------------
  ★テキスト
--------------------------------------------------------------------------- */
.color_red {
  color: #df3030;
}

.color_white {
  color: white;
}

.color_black {
  color: black !important;
}

.f20b {
  font-size: 2rem;
  position: relative;
  display: block;
  font-weight: 800;
}

/* ---------------------------------------------------------------------------
  ★ボタン
--------------------------------------------------------------------------- */
.c_btn01 {
  color: #fff;
  position: relative;
  font-size: 0;
  display: inline-block;
  font-weight: bold;
  text-align: center;
  background-color: #ffffff;
  border: solid 1px #df3030;
  border-radius: 30px;
  margin: 0 10px 10px 5px;
  min-width: 280px;
}

.c_btn01.min_bre01 {
  min-width: 200px;
}

.c_btn01.clcg {
  background-color: #ffdf00;
}

.c_btn01 span {
  position: relative;
  display: block;
  padding: 1.4rem 6.2rem 1.4rem 4rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: 1px solid #df3030;
  border-radius: inherit;
  background: #df3030;
  z-index: 1;
  font-size: 1.6rem;
  left: -5px;
  top: -5px;
  font-family: "Noto Sans JP", sans-serif;
}

.c_btn01 span::after {
  content: "";
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: #e55959;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

.c_btn02 {
  color: #ffffff;
  position: relative;
  font-size: 1.6rem;
  display: inline-block;
  padding: 10px 45px;
  font-weight: bold;
  letter-spacing: 1px;
  text-align: center;
  min-width: 120px;
  margin-bottom: 15px;
  background: #df3030;
  border-radius: 40px;
  margin: 0 20px;
}

.c_btn03 {
  color: #df3030;
  position: relative;
  font-size: 1.8rem;
  display: inline-block;
  font-weight: bold;
  background-color: #fff;
  border-radius: 40px;
  margin: 0 30px;
  min-width: 420px;
  padding: 20px 50px;
  text-align: left;
}

.c_btn03::after {
  content: "";
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: #df3030;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 30px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

.c_btn04 {
  display: inline-block;
  position: relative;
  font-size: 1.2rem;
  padding: 5px 25px 5px 5px;
  line-height: 1.3;
  color: #000;
  font-weight: 500;
}

.c_btn04::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #df3030;
  border-right: 2px solid #df3030;
  position: absolute;
  top: 40%;
  right: 5px;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) translateX(0%) rotate(45deg);
  transform: translateY(-50%) translateX(0%) rotate(45deg);
}

.pdf_btn {
  display: block;
  background-color: #ffd8d8;
  text-align: center;
  color: #df3030;
  padding: 11px 10px;
  position: relative;
}

.pdf_btn span {
  display: block;
  font-weight: bold;
  font-family: "Overpass", ssans-serif;
}

.pdf_btn::after {
  content: "";
  width: 21px;
  height: 21px;
  background-image: url(../img/pdf_btn_bk.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100%;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

.jp .c_btn04::after {
  top: 50%;
}

/* ---------------------------------------------------------------------------
  ★アニメーション
--------------------------------------------------------------------------- */
.whi_sli {
  overflow: hidden;
  position: relative;
}

.whi_sli::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 0;
  background-color: #fff;
  -webkit-transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
  transition-timing-function: cubic-bezier(0.77, 0, 0.175, 1);
  z-index: 2;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.whi_sli.isShow::before {
  right: -100%;
}

@-webkit-keyframes fadeInUp2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
    transform: translate3d(0, 20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20%, 0);
    transform: translate3d(0, 20%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp2 {
  -webkit-animation-name: fadeInUp2;
  animation-name: fadeInUp2;
}

@-webkit-keyframes fadeInyoko {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-20%, 0, 0);
    transform: translate3d(-20%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInyoko {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-20%, 0, 0);
    transform: translate3d(-20%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInyoko {
  -webkit-animation-name: fadeInyoko;
  animation-name: fadeInyoko;
}

@-webkit-keyframes fadesin {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes fadesin {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

.fadein {
  visibility: hidden;
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  position: relative;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
}

.fadein.on {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.fade {
  visibility: hidden;
  opacity: 0;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-duration: 1.2s;
  transition-duration: 1.2s;
  position: relative;
}

.fade.on {
  visibility: visible;
  opacity: 1;
}

.delay_03 {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.delay_05 {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

.delay_07 {
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s;
}

.delay_1 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

.delay_13 {
  -webkit-transition-delay: 1.3s;
  transition-delay: 1.3s;
}

.delay_2 {
  -webkit-transition-delay: 2s;
  transition-delay: 2s;
}

.bounceIn2 {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-name: bounceIn2;
  animation-name: bounceIn2;
}

@-webkit-keyframes bounceIn2 {

  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bounceIn2 {

  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }

  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }

  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes fadeIns {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIns {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIns {
  -webkit-animation-name: fadeIns;
  animation-name: fadeIns;
}

@-webkit-keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeft2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInLeft2 {
  -webkit-animation-name: fadeInLeft2;
  animation-name: fadeInLeft2;
}

@-webkit-keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRight2 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(50%, 0, 0);
    transform: translate3d(50%, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.fadeInRight2 {
  -webkit-animation-name: fadeInRight2;
  animation-name: fadeInRight2;
}

/* ---------------------------------------------------------------------------
  ★ヘッダー
--------------------------------------------------------------------------- */
header {
  width: 100%;
  z-index: 5;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -webkit-transition-duration: 0.5s;
  transition-duration: 0.5s;
  max-width: 2120px;
  position: fixed;
  top: 0px;
  left: 0;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  min-width: 1000px;
}

header .menu_txt {
  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;
  font-family: europa, sans-serif;
  letter-spacing: 2px;
}

header .menu_txt em {
  padding: 0 10px;
  color: #f3f3f3;
}

header.changed {
  position: fixed;
  -webkit-animation: slideInDown 0.3s forwards ease-in-out;
  animation: slideInDown 0.3s forwards ease-in-out;
}

.harea01 {
  padding: 10px 0;
}

.hdll>dt {
  float: left;
  margin-top: 3px;
  font-size: 0;
  line-height: 1;
}

.hdll>dt>a {
  margin-right: 15px;
}

.hdll>dd {
  float: right;
  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;
}

.hdll>dd .in_wp {
  max-width: 28px;
  margin-right: 5px;
}

.hdll>dd .lang_chenge_wp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.3;
}

.hdll>dd .lang_chenge_wp li {
  padding: 0 22px;
}

.hdll>dd .lang_chenge_wp li a {
  color: #949494;
  font-size: 1.5rem;
  font-weight: 900;
  padding: 3px;
}

.hdll>dd .lang_chenge_wp li a.current {
  color: #000;
}

.hdll>dd .lang_chenge_wp li:first-child {
  border-right: solid 1px #949494;
}

.hnav_area {
  position: relative;
}

.h_logo_wp {
  max-width: 245px;
  width: 18%;
  position: relative;
}

.h_logo_wp a {
  display: block;
}

.harea02 {
  overflow: hidden;
  box-shadow: 0px 3px 5px 0px rgb(0 0 0 / 6%);
}

.harea02 .inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.hnav {
  width: 80%;
}

.hnav .hnav_inner nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.hnav .hnav_inner nav dl dt a {
  font-size: 1.6rem;
}

.hnav .hnav_inner nav>dl:not(.h_inq_btn) {
  position: relative;
  margin: 0 3%;
}

.hnav .hnav_inner nav>dl:not(.h_inq_btn)>dt a {
  display: inline-block;
  padding: 0;
  position: relative;
  word-break: keep-all;
  text-align: center;
  color: #000;
  line-height: 1.2;
}

.hnav .hnav_inner nav dl.h_inq_btn {
  padding-left: 2%;
}

.hnav .hnav_inner nav dl.h_inq_btn dt a {
  position: relative;
  color: #fff;
  background: #df3030;
  padding: 25px 3px;
  width: 200px;
  display: block;
  text-align: center;
}

.hnav .hnav_inner nav dl.h_inq_btn dt a span {
  position: relative;
  display: inline-block;
  padding-left: 40px;
}

.hnav .hnav_inner nav dl.h_inq_btn dt a span::before {
  position: absolute;
  display: block;
  content: "";
  width: 25px;
  height: 19px;
  background: url(../img/icon_mail.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  top: 48%;
  left: 0px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

.mbtn_wp {
  display: none !important;
  position: absolute;
  top: 10px;
  right: -65px;
  background: #000;
  opacity: 1;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-timing-function: cubic-bezier(0.96, -0.01, 0.08, 1);
  transition-timing-function: cubic-bezier(0.96, -0.01, 0.08, 1);
  overflow: hidden;
  width: 60px;
  height: 60px;
  padding: 12px 12px 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 7;
}

.mbtn_wp.active {
  background: #d61518;
}

.mbtn_wp.changed {
  right: 10px;
  position: fixed;
}

@-webkit-keyframes slideInDown {
  0% {
    visibility: visible;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes slideInDown {
  0% {
    visibility: visible;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.mega {
  opacity: 0;
  z-index: -2;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: absolute;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 10px 0;
  box-shadow: 0px 3px 5px 0px rgb(0 0 0 / 6%);
}

.mega.on {
  opacity: 1;
  z-index: 2;
}

.mega .mega_inner>div {
  display: none;
}

.mega .mega_inner>div.on {
  display: block;
}

.mega .mega_inner ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.mega .mega_inner ul li {
  padding: 10px 0;
  /* width: calc(96% / 4); */
  width: 100%;
  max-width: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.mega .mega_inner ul li a {
  position: relative;
  display: block;
  /* width: 75%; */
  width: 88%;
  margin: auto;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
  line-height: 1.2;
  padding-right: 40px;
}

.mega .mega_inner ul li a::after {
  content: "";
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: #df3030;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

.close {
  width: 40px;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
}

.close::before {
  content: "";
  display: block;
  width: 26px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
  transform: translateY(-50%) translateX(-50%) rotate(45deg);
  z-index: 10;
}

.close::after {
  content: "";
  display: block;
  width: 26px;
  height: 2px;
  background-color: #fff;
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(135deg);
  transform: translateY(-50%) translateX(-50%) rotate(135deg);
}

/* ---------------------------------------------------------------------------
  ★フッター
--------------------------------------------------------------------------- */
.contact_btn {
  padding: 12px 10px;
  border: solid 1px #fff;
  display: block;
  max-width: 300px;
  margin: 0 auto;
  font-size: 2rem;
  color: #fff;
  border-radius: 10px;
}

.contact_btn span {
  position: relative;
  padding-left: 40px;
  display: inline-block;
}

.contact_btn span::before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
  background: url(../img/icon_mail.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  width: 26px;
  height: 18px;
}

footer .f_contact {
  background-image: url(../img/f_contact_bk.jpg);
  background-repeat: no-repeat;
  background-size: auto;
  background-attachment: fixed;
  background-position: center center;
}

footer .f_contact .gaps {
  padding: 100px 0 120px;
}

footer .f_contact .btn_wp {
  max-width: 1030px;
  margin: 0 auto;
}

footer .f_front {
  padding: 60px 0 20px;
  background: #363636;
}

footer .f_front_box_left {
  float: left;
  width: 35%;
  max-width: 520px;
}

footer .f_front_box_left .f_logo_wp {
  margin-bottom: 20px;
  max-width: 300px;
}

footer .f_front_box_left .ptxt01 {
  font-size: 1.3rem;
  line-height: 2;
}

footer .f_front_box_right {
  float: right;
  width: 60%;
  max-width: 720px;
}

footer .fnav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

footer .fnav .fnav_cont {
  margin-bottom: 15px;
  width: calc(100% / 1.5);
}

footer .fnav dl {
  margin-bottom: 25px;
}

footer .fnav dl em {
  display: block;
}

footer .fnav dl dt {
  margin-bottom: 5px;
  font-size: 1.6rem;
}

footer .fnav dl dt a {
  position: relative;
  color: #fff;
  display: inline-block;
}

footer .fnav dl dd em {
  margin-bottom: 0px;
}

footer .fnav dl dd a {
  display: inline-block;
  font-size: 1.3rem;
  padding-left: 10px;
  color: #fff;
  line-height: 1.2;
  color: #fff;
}

footer .fnav dl dd a::before {
  display: inline-block;
  content: "-";
  margin-right: 3px;
}

.footer_logo_inner {
  position: absolute;
  bottom: 35px;
  left: 0px;
  display: flex;
}

.footer_logo_wrap a {
  width: 80px;
  display: block;
  margin: 0 5px;
}

.copyright {
  text-align: center;
  color: #fff;
  background-color: #000000;
  font-size: 1.2rem;
  padding: 10px 0;
}

/* ---------------------------------------------------------------------------
  ★ハンバーガーメニーュ
--------------------------------------------------------------------------- */
.menu-trigger span {
  display: inline-block;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  background: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 35px;
  height: 22px;
}

.menu-trigger em {
  opacity: 0.6;
  color: #fff;
  margin: 0 auto;
  font-weight: bold;
  left: 0;
  top: 19px;
  position: relative;
  font-size: 1.1rem;
  text-align: center;
}

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

.menu-trigger span:nth-of-type(2) {
  top: 10px;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
  width: 100%;
}

.active .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}

.active .menu-trigger span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-menu-bar02 0.8s forwards;
  animation: active-menu-bar02 0.8s forwards;
}

@-webkit-keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}

@keyframes active-menu-bar02 {
  100% {
    height: 0;
  }
}

.active .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-10px) rotate(45deg);
  width: 100%;
}

/* ---------------------------------------------------------------------------
  ★グローバルナビゲーション
--------------------------------------------------------------------------- */
.spnaviwrap {
  display: none !important;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 6;
  width: 100%;
  height: 100%;
  padding: 100px 0px 30px;
  background: rgba(0, 0, 0, 0.8);
  overflow-y: auto;
}

.spnaviwrap .nav_site .hnav_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-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.spnaviwrap .nav_site .hnav_inner>dl {
  margin-bottom: 45px;
  width: 48%;
}

.spnaviwrap .nav_site .hnav_inner>dl a {
  text-decoration: underline;
}

.spnaviwrap .nav_site .hnav_inner>dl a,
.spnaviwrap .nav_site .hnav_inner>dl b {
  overflow: hidden;
  display: inline-block;
  color: #fff;
}

.spnaviwrap .nav_site .hnav_inner>dl a span,
.spnaviwrap .nav_site .hnav_inner>dl b span {
  -webkit-transition: 1.3s;
  transition: 1.3s;
  -webkit-transition-timing-function: cubic-bezier(0.63, 0.24, 0.36, 0.91);
  transition-timing-function: cubic-bezier(0.63, 0.24, 0.36, 0.91);
  position: relative;
  top: 100px;
}

.spnaviwrap .nav_site .hnav_inner>dl dt {
  border-bottom: solid 2px #fff;
  line-height: 1.5;
  margin-bottom: 20px;
}

.spnaviwrap .nav_site .hnav_inner>dl dt a,
.spnaviwrap .nav_site .hnav_inner>dl dt b {
  font-size: 2.2rem;
  letter-spacing: 3px;
  font-weight: bold;
}

.spnaviwrap .nav_site .hnav_inner>dl dt a span::after,
.spnaviwrap .nav_site .hnav_inner>dl dt b span::after {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #fff;
  -webkit-transform-origin: 100% 50% 0;
  transform-origin: 100% 50% 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: -webkit-transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.35s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  content: "";
}

.spnaviwrap.active.changed {
  display: block;
  right: 0;
  opacity: 1;
}

.spnaviwrap.active.changed .nav_site .hnav_inner>dl a,
.spnaviwrap.active.changed .nav_site .hnav_inner>dl b {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

.spnaviwrap.active.changed .nav_site .hnav_inner>dl a span,
.spnaviwrap.active.changed .nav_site .hnav_inner>dl b span {
  top: 0;
}

.nav_site {
  max-width: 1200px;
  position: relative;
  width: 90%;
  margin: 0 auto;
}

.h_logo_wp_nv {
  max-width: 170px;
  margin-bottom: 50px;
}

/* ---------------------------------------------------------------------------
  ★TOTOP
--------------------------------------------------------------------------- */
#totop {
  width: 60px;
  height: 60px;
  background: rgba(0, 0, 0, 0.6);
  display: block;
  border-radius: 50%;
}

.totop_wrap {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 4;
  display: none;
}

.totop_wrap .icon-totop {
  display: block;
  width: 100%;
  text-align: center;
}

.totop_wrap .icon-totop::before {
  font-size: 5rem;
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: absolute;
  top: 54%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(-45deg);
  transform: translateY(-50%) translateX(-50%) rotate(-45deg);
}

#totop span {
  font-size: 1.2rem;
  text-align: center;
  display: inline-block;
  color: #fff;
  position: absolute;
  top: 29px;
  left: 50%;
  -webkit-transform: translateY(0%) translateX(-50%);
  transform: translateY(0%) translateX(-50%);
  width: 100%;
  display: none;
}

/* =======================================
  ★パンくず
========================================== */
.pankuzu_wrap {
  max-width: 100%;
  margin: 10px auto;
  padding: 10px 0;
  border-bottom: solid 1px #eeeeee;
}

.pankuzu {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0px auto;
  font-size: 1.4rem;
}

.pankuzu>li {
  display: inline-block;
  position: relative;
  word-break: break-all;
}

.pankuzu>li::after {
  display: inline-block;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 1px solid #949494;
  border-right: 1px solid #949494;
  position: relative;
  top: 3px;
  margin: 0 10px 0 14px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
  transform: translateY(-50%) translateX(-50%) rotate(45deg);
}

.pankuzu>li:last-child:after {
  display: none;
}

.pankuzu span {
  color: #df3030;
}

.pankuzu a {
  color: #949494;
}

/* =======================================
	★ページャー
========================================== */
.pager {
  width: auto;
  margin: 0 auto;
  padding-bottom: 30px;
}

.wp-pagenavi {
  clear: both;
  font-size: 14px;
  /* text-align: center; */
}

.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  width: 35px;
  height: 35px;
  line-height: 2.6;
  border: 1px solid #949494;
  -webkit-transition: ease-out 0.5s;
  transition: ease-out 0.5s;
  color: #616161;
  font-size: 14px;
  margin: 5px;
  vertical-align: top;
  padding: 0px;
  background-color: #fff;
  text-align: center;
}

.wp-pagenavi span.extend {
  border: 1px solid rgba(245, 245, 245, 0);
}

.wp-pagenavi span.current {
  color: #fff;
  background-color: #949494;
  font-size: 14px;
  vertical-align: top;
  text-decoration: none;
  text-align: center;
}

/* =======================================
	★TOP
========================================== */
.home_w .maincont {
  position: relative;
  z-index: 2;
}

.hcover_wp {
  padding-top: 50px;
  position: relative;
  z-index: 1;
}

.hcover_wp .hcover .hcover_inner {
  position: relative;
  padding-bottom: 600px;
  overflow: hidden;
}

.hcover_wp .hcover .slider_h_wp {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
  min-width: 1300px;
  display: block;
}

.hcover_wp .hcover .h_txt_box {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  text-align: center;
  color: #fff;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
}

.hcover_wp .hcover .h_txt_box .hh1 {
  font-weight: normal;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8);
}

.hcover_wp .hcover .h_txt_box p {
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8);
}

.hcover_wp .hcover .h_txt_box .hh1 strong {
  font-size: 4.5rem;
  display: block;
  font-weight: 800;
  line-height: 1;
}

.hcover_wp .hcover .h_txt_box .hh1 span {
  font-size: 2.8rem;
  display: inline-block;
  font-weight: 700;
  margin-bottom: 15px;
}

.home_w .sec01_area {
  background: url(../img/top_sec01_bk.jpg) no-repeat;
  background-size: auto;
  background-position: top center;
}

.home_w .sec01_area .gaps {
  padding: 0 0 100px;
}

.home_w .sec01_area .img_wp_box {
  padding-left: 10%;
}

.home_w .sec01_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.home_w .sec01_area .white_box {
  position: absolute;
  top: -50px;
  left: 0;
  max-width: 1050px;
  width: 80%;
  z-index: 3;
}

.home_w .sec01_area .white_box .boxin {
  float: right;
  max-width: 900px;
  width: 90%;
}

.home_w .sec01_area .white_box .boxin .txt_box {
  margin-bottom: 25px;
}

.home_w .sec01_area .white_box .boxin .btn_wp a {
  margin: 0 40px 30px 0;
}

.home_w .sec01_area .rela .img_wp_box {
  height: 500px;
  overflow: hidden;
}

.home_w .sec02_area .img_wp_box {
  max-width: 1210px;
  width: 90%;
  height: 550px;
  overflow: hidden;
}

.home_w .sec02_area .img_wp_box img {
  object-fit: cover;
  height: 850px;
  display: block;
}

.home_w .sec02_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.home_w .sec02_area .white_box {
  position: absolute;
  top: -60px;
  right: 0;
  max-width: 1100px;
  width: 70%;
  z-index: 3;
}

.home_w .sec02_area .white_box .boxin {
  max-width: 800px;
  width: 100%;
}

.home_w .sec02_area .white_box .boxin .txt_box {
  margin-bottom: 30px;
}

.home_w .sec03_area .gaps {
  padding: 60px 0 50px;
}

.home_w .sec03_area .movie_wp_wp {
  margin: 0 auto;
  width: 48%;
}

.home_w .sec03_area .movie_wp {
  display: block;
  width: 100%;
  padding-bottom: 48.6%;
}

.home_w .sec04_area {
  background: url(../img/top_sec04_bk.jpg) no-repeat;
  background-size: 100%;
  background-position: top center;
}

.home_w .sec04_area .gaps {
  padding: 80px 0 20px;
}

.home_w .sec04_area .img_wp_box {
  padding-left: 10%;
}

.home_w .sec04_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.home_w .sec04_area .white_box {
  position: absolute;
  top: -30px;
  left: 0;
  max-width: 1050px;
  width: 80%;
  z-index: 3;
}

.home_w .sec04_area .white_box .boxin {
  float: right;
  max-width: 900px;
  width: 90%;
}

.home_w .sec04_area .white_box .boxin .txt_box {
  margin-bottom: 30px;
}

.home_w .sec04_area .white_box .boxin .btn_wp a {
  margin: 0 40px 30px 0;
}

.home_w .sec05_area .gaps {
  padding: 30px 0 0;
}

.home_w .sec05_area .ctb_wp {
  -webkit-box-shadow: 5px 5px 10px rgb(0 0 0 / 10%);
  box-shadow: 5px 5px 10px rgb(0 0 0 / 10%);
  margin: 0 auto;
}

.home_w .sec05_area .boxcg_btn_Box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.home_w .sec05_area .boxcg_btn_Box>a {
  text-align: center;
  display: block;
  width: 50%;
  font-size: 1.8rem;
  background-color: #eeeeee;
  color: #000;
  padding: 15px 0;
}

.home_w .sec05_area .boxcg_btn_Box>a.on {
  background-color: #fff;
}

.home_w .sec05_area .boxcg_Box {
  max-width: 1040px;
  margin: auto;
  padding: 25px 20px 20px;
  background: #fff;
}

.news_list_box>li {
  padding: 15px 25px;
}

.news_list_box>li>a {
  display: block;
  position: relative;
  color: #000;
}

.news_list_box>li>a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #c6c6c6;
  border-right: 2px solid #c6c6c6;
  position: absolute;
  top: 40%;
  right: 5px;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) translateX(0%) rotate(45deg);
  transform: translateY(-50%) translateX(0%) rotate(45deg);
}

.news_list_box>li>a dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.news_list_box>li>a dl dt {
  width: 30%;
  font-size: 1.4rem;
}

.news_list_box>li>a dl dt .tags {
  margin-left: 20px;
}

.news_list_box>li>a dl dd {
  width: 90%;
  font-size: 1.6rem;
}

.news_list_box>li:not(:last-child) {
  border-bottom: solid 1px #eeeeee;
}

.date {
  color: #a5a5a5;
}

.tags {
  display: inline-block;
  background-color: #eeeeee;
  color: #a5a5a5;
  text-align: center;
  padding: 0px 20px;
}

.boxcg_Box_in>div {
  display: none;
}

.boxcg_Box_in>div.on {
  display: block;
}

.jp .home_w .sec05_area .ctb_wp {
  margin: -100px auto 60px;
}

/* =======================================
	★UNDER 共通
========================================== */
.under_l .u_cover {
  padding-top: 116px;
}

.under_l .u_cover_inner {
  padding-bottom: 100px;
}

.under_l .hh1 {
  position: absolute;
  top: 90%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
  line-height: 1;
}

.en .under_l .hh1 {
  position: absolute;
  top: 70%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
  line-height: 1;
}

.under_l .hh1 b {
  font-family: "Overpass", sans-serif;
  font-size: 4rem;
  font-weight: 400;
}

.under_l .hh1 b.b2 {
  font-size: 4rem;
}

/* =======================================
	★
========================================== */
/* =======================================
	★Contact
========================================== */
.zenbun0_area .gaps {
  padding-top: 50px;
  margin-bottom: 70px;
}

.zenbun0_area .txtBox {
  border: solid 1px #80ccff;
  padding: 30px;
  max-width: 680px;
  margin: 0 auto;
}

.zenbun_area .gaps {
  padding-top: 70px;
  margin-bottom: 0px;
}

.zenbun_area .txtBox {
  margin-bottom: 30px;
}

.zenbun_area .tlei_box {
  margin-bottom: 20px;
}

.zenbun_area .tlei_box .tel_link {
  font-size: 3.6rem;
  font-family: century-gothic, sans-serif;
  color: #000;
}

.form_area {
  margin-bottom: 70px;
}

/* =======================================
	★フォーム
========================================== */
.c_form01 {
  margin-bottom: 50px;
}

.c_form01 table {
  margin-bottom: 30px;
  width: 100%;
}

.c_form01 table tbody tr th,
.c_form01 table tbody tr td {
  padding: 10px;
}

.c_form01 table tbody tr th {
  vertical-align: top;
  font-weight: bold;
  width: 30%;
  position: relative;
  font-size: 2rem;
  /* font-family: Roboto; */
}

.c_form01 table tbody tr td {
  vertical-align: top;
}

.c_form01 table tbody tr td select {
  padding: 0;
  width: 400px;
  padding: 11px;
}

.c_form01 table tbody tr td label {
  margin-right: 10px;
}

.c_form01 table .inp01,
.c_form01 table .inp02 {
  padding: 15px 10px;
  background-color: #f5f5f5;
  border-radius: 5px;
  border: 0px solid #afafaf;
}

.c_form01 table .inp_txtarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 10px;
  width: 100% !important;
  height: 200px !important;
  background-color: #f5f5f5;
  border: 0px solid #afafaf;
}

.c_form01 table input:-ms-input-placeholder {
  color: #a9a9a9;
}

.c_form01 table input::-ms-input-placeholder {
  color: #a9a9a9;
}

.c_form01 .kojin_wrap {
  padding: 35px 30px;
  margin-bottom: 80px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: solid 1px #e8e8e8;
  border-bottom: solid 1px #e8e8e8;
}

.c_form01 .kojin_wrap strong {
  margin-bottom: 5px;
  display: block;
}

.c_form01 .kojin_wrap>p {
  margin-bottom: 20px;
}

.c_form01 .kojin_wrap .txt_link {
  color: #df3030;
  text-decoration: underline;
}

.c_form01 .submit_wrap {
  margin-bottom: 5%;
  text-align: center;
}

.submit_btn {
  cursor: pointer;
}

input::-webkit-input-placeholder {
  color: #a9a9a9;
}

input:-ms-input-placeholder {
  color: #a9a9a9;
}

input::-ms-input-placeholder {
  color: #a9a9a9;
}

input::placeholder {
  color: #a9a9a9;
}

input.short {
  width: 25%;
}

input.middle {
  width: 50%;
}

input.long {
  width: 90%;
}

.hissu {
  display: inline-block;
  text-align: center;
  margin-left: 10px;
  font-weight: bold;
  line-height: 1;
  font-size: 1.4rem;
  word-break: keep-all;
  color: #df3030;
}

.c_form01 .yubin_wp {
  margin-bottom: 10px;
}

.c_form01 .yubin_wp>em {
  display: inline-block;
  margin-right: 5px;
}

.c_form01 .adre_wp>input {
  margin-bottom: 5px;
}

.formInfo_wrap{
  padding: 35px 30px;
  margin-bottom: 80px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top: solid 1px #e8e8e8;
  border-bottom: solid 1px #e8e8e8;
}
.formInfo_wrap p:not(:last-child) {
  margin-bottom: 20px;
}


/* =======================================
	★個人情報保護方針
========================================== */
.privacy h2 {
  margin-bottom: 40px;
}

.privacy .inner_cont {
  padding-bottom: 10px;
}

.privacy .inner_cont .pp_txt {
  margin-bottom: 40px;
}

.privacy .vacy_box {
  margin: 0 0 70px;
}

.privacy .vacy_box b {
  font-weight: bold;
  margin: 0 0 10px;
  display: block;
  font-size: 1.8rem;
}

.privacy .vacy_box p {
  margin: 0 0 30px;
}

/* =======================================
	★beginners
========================================== */
.beginners .sec01_area .gaps {
  padding: 50px 0 100px;
}

.beginners .sec02_area h2 {
  margin-bottom: 60px;
}

.beginners .sec02_area>.gaps>dl {
  margin-bottom: 200px;
}

.beginners .sec02_area>.gaps>dl:nth-child(odd)>dd {
  right: -220px;
}

.beginners .sec02_area>.gaps>dl:nth-child(even)>dt div {
  float: right;
}

.beginners .sec02_area>.gaps>dl:nth-child(even)>dd {
  left: 0;
}

.beginners .sec03_area .gaps {
  padding: 90px 0 20px;
}

.beginners .sec03_area h3 {
  margin-bottom: 60px;
}

.beginners .sec03_area .cl50 li {
  padding-right: 8%;
}

.beginners .sec03_area .cl50 li:last-child dl:first-child {
  margin-bottom: 200px;
}

.beginners .sec03_area .bar_dl {
  margin-bottom: 45px;
}

.beginners .sec03_area .bar_dl dt {
  position: relative;
}

.beginners .sec03_area .bar_dl dt strong {
  font-size: 2.6rem;
  font-weight: bold;
  display: block;
}

.beginners .sec03_area .bar_dl dt small {
  position: absolute;
  top: -18px;
}

.beginners .sec03_area .bar_dl .bar_box {
  color: #fff;
  text-align: right;
  padding: 0 40px;
  border-radius: 5px;
}

.beginners .sec03_area .bar_dl .bar_box>em {
  font-size: 3.8rem;
  font-weight: bold;
  font-family: Roboto;
}

body.en .beginners .sec03_area .bar_dl .bar_box>em {
  font-family: sans-serif;
}

.beginners .sec03_area .bar_dl .bar_box.red01_bar {
  background-color: #df3030;
}

.beginners .sec03_area .bar_dl .bar_box.red02_bar {
  background-color: #ef9797;
}

.beginners .sec03_area .bar_dl .bar_box.bar02 {
  width: 75%;
}

.beginners .sec03_area .bar_dl .bar_box.bar03 {
  width: 50%;
}

.beginners .sec04_area .cl50_max li:first-child {
  border-right: solid 1px #dddddd;
  padding-right: 60px;
}

.beginners .sec04_area .cl50_max li:first-child .img_box img {
  margin: 0 auto;
}

.beginners .sec04_area .cl50_max li:last-child {
  padding-left: 60px;
}

.beginners .sec04_area .cl50_max li {
  padding: 20px 0;
}

.beginners .fuki_box {
  max-width: 1000px;
  width: 80%;
  margin: 20px auto 0;
  padding-top: 30px;
}

.beginners .fuki_box::before {
  content: "";
  display: block;
  position: absolute;
  top: 0%;
  left: 50%;
  -webkit-transform: translateY(0%) translateX(-50%);
  transform: translateY(0%) translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 30px 30px 30px;
  border-color: transparent transparent #f5f5f5 transparent;
}

.beginners .fuki_box b {
  font-size: 2.9rem;
  font-weight: bold;
  font-family: Roboto;
  display: block;
  margin-bottom: 5px;
}

.beginners .fuki_box .fuki_boxin {
  background-color: #f5f5f5;
  border-radius: 10px;
  position: relative;
  padding: 30px 50px 50px;
}

.beginners .sec05_area .disc li {
  margin-bottom: 30px;
}

.beginners .sec06_area .cl50 .img_box {
  margin-bottom: 10px;
}

.beginners .sec06_area .disc li {
  margin-bottom: 30px;
}

.smtxt {
  color: #a5a5a5;
  line-height: 1.6;
  display: inline-block;
}

.bedls {
  position: relative;
}

.bedls>dd {
  position: absolute;
  top: 0;
}

.bedls>dt {
  padding-top: 70px;
}

.bedls>dt>div {
  max-width: 710px;
  width: 55%;
  min-height: 280px;
}

.bedls>dd>img {
  width: 75%;
}

/* =======================================
	★events_destination
========================================== */
.events_destination .sec02_area h2 {
  margin-bottom: 40px;
}

.events_destination .sec05_area h2 {
  margin-bottom: 40px;
}

.events_destination .sec05_area .cl50 li .txt_box {
  margin-bottom: 50px;
}

.events_destination .sec06_area h2 {
  margin-bottom: 60px;
}

.wxbox {
  background: #fff;
  border-radius: 10px;
  padding: 45px 40px;
}

.wxbox:not(:last-child) {
  margin-bottom: 60px;
}

.wxbox .inbox {
  position: relative;
}

.wxbox .inbox::before {
  position: absolute;
  left: -20px;
  top: -70px;
  width: 76px;
  height: 60px;
  display: block;
  content: "";
  background: url(../img/cyoncyon.png) no-repeat;
  background-size: 100%;
  background-position: center center;
}

.wxbox .inbox .tlt_wp {
  font-family: Roboto;
  margin-bottom: 40px;
}

.wxbox .inbox .tlt_wp dt {
  border-bottom: solid 1px #dddddd;
  margin-bottom: 12px;
  padding-bottom: 7px;
}

.wxbox .inbox .tlt_wp dt h3 {
  color: #df3030;
  line-height: 1;
}

.wxbox .inbox .tlt_wp dt h3 b {
  font-size: 2.4rem;
  display: inline-block;
  border-right: solid 2px;
  padding: 0 10px 0 0;
  margin-right: 10px;
}

.wxbox .inbox .tlt_wp dt h3 small {
  font-size: 1.4rem;
  display: inline-block;
  vertical-align: text-top;
}

.wxbox .inbox .tlt_wp dt p {
  font-size: 1.4rem;
}

.wxbox .inbox .tlt_wp dt p span {
  color: #949494;
  display: inline-block;
  margin-right: 5px;
}

.wxbox .inbox .tlt_wp dt p strong {
  color: #000;
  display: inline-block;
}

.wxbox .inbox .tlt_wp dd {
  color: #949494;
  line-height: 1;
}

.wxbox .inbox .tlt_wp dd p {
  font-size: 1.2rem;
}

.wxbox .inbox .tlt_wp dd small {
  font-size: 1rem;
}

.wxbox .inbox .txt_wp {
  margin-bottom: 60px;
}

/* =======================================
	★TABLE
========================================== */
.t_table_01 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.t_table_01 table thead {
  background-color: #666;
  color: #fff;
  margin: 0;
  border: 0;
}

.t_table_01 table thead tr th {
  padding: 15px 20px;
  border: solid 1px #e8e8e8;
  vertical-align: middle;
  line-height: 1.3;
}

.t_table_01 table tbody tr th,
.t_table_01 table tbody tr td {
  padding: 15px 20px;
  word-break: break-word;
  border: solid 1px #e8e8e8;
  vertical-align: middle;
  line-height: 1.5;
}

.t_table_01 table tbody tr td a.txt {
  color: #df3030;
  text-decoration: underline;
}

.t_table_01 table tbody tr:nth-child(odd) {
  background-color: #fff;
}

.t_table_01 table tbody tr:nth-child(even) {
  background-color: #f5f5f5;
}

@media (max-width: 900px) and (min-width: 0px) {
  .t_table_01 table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: inherit;
    width: 100%;
  }

  .t_table_01 table thead {
    display: none;
  }

  .t_table_01 table tbody tr th,
  .t_table_01 table tbody tr td {
    display: block;
  }

  .t_table_01 table tbody tr th {
    background-color: #666;
    color: #fff;
    text-align: center;
    clear: both;
    width: 100%;
    font-size: 3.8vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
  }

  .t_table_01 table tbody tr td {
    padding: 10px;
    font-size: 3.6vw;
    word-break: break-word;
    width: 50%;
    float: left;
    line-height: 1.8;
    text-align: left;
    border-bottom: 1px solid #000;
  }

  .t_table_01 table tbody tr td:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .t_table_01 table tbody tr:nth-child(even) {
    background-color: #e4e4e4;
  }

  .t_table_01 table tbody tr td[data-th]:before {
    width: 40%;
    content: attr(data-th);
    font-weight: bold;
    display: block;
    margin-right: 0.25em;
  }
}

.c_table_01 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.c_table_01 table tbody tr th {
  border: 1px solid #f5f5f5;
  background: #606060;
  vertical-align: middle;
  padding: 15px;
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  width: 24.5%;
  word-break: break-word;
  line-height: 1.3;
}

.c_table_01 table tbody tr td {
  border: 1px solid #e8e8e8;
  vertical-align: middle;
  padding: 15px;
  background: #fff;
  word-break: break-word;
  line-height: 1.3;
  white-space: pre-wrap;
  text-align: left;
}

.c_table_01 table tbody tr td a.txt {
  color: #df3030;
  text-decoration: underline;
}

@media (max-width: 900px) and (min-width: 0px) {
  /* .c_table_01 table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: inherit;
    width: 100%;
  }

  .c_table_01 table tbody tr th {
    border: 1px solid;
    background: #f7f7f7;
    vertical-align: top;
    padding: 3%;
    color: #000000;
    font-weight: bold;
    width: 100%;
    word-break: break-word;
    display: block;
    border-bottom: 0;
  }

  .c_table_01 table tbody tr td {
    border: 1px solid;
    vertical-align: top;
    padding: 3%;
    background: #fff;
    word-break: break-word;
    display: block;
  }

  .c_table_01 table tbody tr:not(:last-child) td {
    border-bottom: 0;
  } */
}

.c_table_03 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.c_table_03 table tbody tr th {
  vertical-align: middle;
  padding: 15px;
  font-size: 16px;
  font-weight: bold;
  width: 24.5%;
  word-break: break-word;
}

.c_table_03 table tbody tr td {
  vertical-align: middle;
  padding: 15px;
  word-break: break-word;
}

.c_table_04 table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: inherit;
  width: 100%;
}

.c_table_04 table tbody tr th {
  vertical-align: middle;
  padding: 15px;
  font-size: 2.1rem;
  font-weight: bold;
  width: 24.5%;
  word-break: break-word;
  background: #606060;
  color: #fff;
  border: solid 1px #f5f5f5;
}

.c_table_04 table tbody tr td {
  vertical-align: middle;
  padding: 15px;
  word-break: break-word;
  border: solid 1px #f5f5f5;
  font-size: 1.4rem;
}

.c_table_04 table tbody tr:nth-child(even) td {
  background-color: #f5f5f5;
}

/* =======================================
	★past_events
========================================== */
.past_events .sec01_area .txt_wp {
  margin-bottom: 40px;
}

/* =======================================
	★news
========================================== */
.lr_xBox .aside_xBox {
  float: left;
  width: 20%;
}

.lr_xBox .main_xBox {
  float: right;
  width: 75%;
}

.news_bpx {
  margin-bottom: 50px;
}

.news_bpx .news_list_box>li>a dl {
  display: block;
}

.news_bpx .news_list_box>li>a dl dt {
  display: block;
  margin-bottom: 5px;
}

.news_bpx .news_list_box>li:last-child {
  border-bottom: solid 1px #eeeeee;
}

.year_box {
  margin-bottom: 20px;
}

.year_box .year_list {
  border-top: dashed 1.5px #dddddd;
}

.year_box .year_list li {
  border-bottom: dashed 1.5px #dddddd;
}

.year_box .year_list li a {
  display: block;
  position: relative;
  font-weight: bold;
  padding: 15px 25px 13.5px;
  color: #000;
}

.year_box .year_list li a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #c6c6c6;
  border-right: 2px solid #c6c6c6;
  position: absolute;
  top: 50%;
  right: 15px;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) translateX(0%) rotate(45deg);
  transform: translateY(-50%) translateX(0%) rotate(45deg);
}

.yu_btn_wp a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #dddddd;
  padding: 10px 20px;
  font-family: Roboto;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
}

.yu_btn_wp a b {
  font-weight: bold;
  font-size: 2.1rem;
  display: inline-block;
  color: #000;
}

.yu_btn_wp a span {
  font-weight: bold;
  font-size: 1.3rem;
  color: #df3030;
  display: inline-block;
  text-decoration: underline;
  position: relative;
  padding-right: 25px;
}

.yu_btn_wp a span::after {
  display: block;
  content: "";
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background-color: #df3030;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50%;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 52%;
  right: 0;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

/* =======================================
	★detail
========================================== */
.news_detail .date_wp {
  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;
}

.news_detail .date_wp .date {
  display: inline-block;
  margin-right: 15px;
  font-size: 1.4rem;
}

.news_detail .date_wp .tags {
  display: inline-block;
  font-size: 1.2rem;
}

.news_detail .ntit_wp {
  /* font-family: Roboto; */
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.news_detail .ntit_wp h1,
.news_detail .ntit_wp h3 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 10px;
}

.news_detail .ntit_wp p {
  font-weight: bold;
}

.news_detail .txt01 {
  font-size: 1.4rem;
  margin-bottom: 30px;
}

.news_detail .btn_wp {
  margin-bottom: 30px;
}

.news_detail .btn_wp>li {
  margin-bottom: 10px;
}

.detail_box {
  margin-bottom: 20px;
}

.detail_box .one_box {
  margin-bottom: 40px;
}

.detail_box .one_box .img_box {
  margin-bottom: 20px;
}

.detail_box .mbox {
  margin-bottom: 30px;
  font-family: Roboto;
}

.detail_box .mbox .img_box {
  margin-bottom: 10px;
}

.detail_box .mbox b {
  font-weight: bold;
}

.detail_box .txt_wp {
  margin-bottom: 15px;
}

.detail_box .txt_wp strong {
  font-family: Roboto;
  font-size: 2rem;
  font-weight: bold;
}

/* =======================================
	★Facility Search
========================================== */
.rs_btn_wp>label {
  display: inline-block;
  margin: 0 30px;
  position: relative;
  cursor: pointer;
}

.rs_btn_wp>label span {
  cursor: pointer;
}

.rs_btn_wp>label span input {
  cursor: pointer;
}

.facility_search .c_table_03 table {
  margin-bottom: 60px;
}

.facility_search .sec02_area .gaps {
  padding: 0 0 100px;
}

.facility_search .sec02_area .d_number p {
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.reset_btn input {
  font-family: sans-serif;
  font-size: 1.6rem;
  color: #949494;
  font-weight: bold;
  border: solid 0px;
  background: none;
}

.reset_btn span {
  position: relative;
  display: inline-block;
  padding-left: 25px;
}

.reset_btn span::before {
  content: "";
  display: block;
  background: url(../img/readfree.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  position: absolute;
  top: 50%;
  left: 0%;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
  width: 20px;
  height: 20px;
}

.submit_btn input {
  border: solid 0px;
  background: none;
  color: #fff;
  font-family: sans-serif;
}

.sele_wp {
  border: solid 1px #e8e8e8;
  border-radius: 5px;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.sele_wp::after {
  content: "";
  width: 7px;
  height: 7px;
  border-bottom: 2px solid #c6c6c6;
  border-right: 2px solid #c6c6c6;
  position: absolute;
  top: 47%;
  right: 18px;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translateY(-50%) translateX(0%) rotate(45deg);
  transform: translateY(-50%) translateX(0%) rotate(45deg);
  z-index: 1;
}

.sele_wp select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  font-size: 100%;
  font-family: Roboto, sans-serif;
  padding: 14px 20px;
  border: solid 0px #e8e8e8;
  border-radius: 0px;
  width: 100%;
  color: #949494;
  position: relative;
  z-index: 2;
  background: none;
}

.check_wp>label {
  cursor: pointer;
}

.check_wp>label input {
  display: none;
}

.check_wp>label input:checked+span::after {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 9px;
  width: 7px;
  height: 11px;
  -webkit-transform: rotate(40deg);
  transform: rotate(40deg);
  border-bottom: 4px solid #fff;
  border-right: 4px solid #fff;
  z-index: 2;
}

.check_wp>label input:checked+span::before {
  background-color: #df3030;
}

.check_wp>label>span {
  padding-left: 40px;
  position: relative;
  margin-right: 30px;
  display: inline-block;
}

.check_wp>label>span::before {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  width: 27px;
  height: 27px;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  z-index: 1;
}

/* =======================================
	★Facility Search 詳細
========================================== */
/* slide */
.slide {
  position: relative;
  margin: 0;
  padding: 0;
}

.slide .item {
  position: relative;
  height: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.slide .item::before {
  display: block;
  padding-top: 66%;
  content: "";
  position: relative;
  overflow: hidden;
}

.slide .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}

.slide>.slick-list,
.slide>.slick-list>.slick-track,
.slide>.slick-list>.slick-track>.slick-slide>div {
  position: relative;
  height: 100%;
}

/* slide-navigation */
.slide-navigation {
  position: relative;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.slide-navigation .item {
  position: relative;
  cursor: pointer;
  overflow: hidden;
  width: 48%;
  height: 100%;
  padding: 0;
  margin-bottom: 4%;
}

.slide-navigation .item::before {
  display: block;
  padding-top: 69%;
  content: "";
}

.slide-navigation .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
}

.slide-navigation .item::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.5;
  background: #000;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.slide-navigation .item.current::after {
  opacity: 0;
}

.icon_list_wp {
  margin-bottom: 15px;
  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;
}

.icon_list_wp .icon_wp {
  display: inline-block;
  margin: 0 15px 0 0;
}

.icon_list_wp.white_ul {
  border-radius: 5px;
  padding: 30px;
  margin-bottom: 30px;
}

.icon_list_wp.white_ul ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.3;
}

.icon_list_wp.white_ul ul li:not(:last-child) {
  margin-bottom: 15px;
}

.pein_area .pein_wp .boxcg_btn_Box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 25px;
}

.pein_area .pein_wp .boxcg_btn_Box a {
  width: 32.5%;
  text-align: center;
  background-color: #f5f5f5;
  font-family: 2.8rem;
  font-weight: bold;
  color: #000;
  padding: 10px 0;
  position: relative;
  border-radius: 3px;
}

.pein_area .pein_wp .boxcg_btn_Box a.on {
  background-color: #df3030;
  color: #fff;
}

.pein_area .pein_wp .boxcg_btn_Box a.on::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 12.5px 0 12.5px;
  border-color: #df3030 transparent transparent transparent;
  position: absolute;
  bottom: -20px;
  left: 50%;
  -webkit-transform: translateY(0%) translateX(-50%);
  transform: translateY(0%) translateX(-50%);
}

.details .txt_wp01 {
  margin-bottom: 70px;
}

.details .cheimg_wp {
  margin-bottom: 40px;
}

.details .cheimg_wp dt {
  float: left;
  width: 75%;
  max-width: 940px;
}

.details .cheimg_wp dd {
  float: right;
  width: 23%;
  max-width: 300px;
}

.details .c_table_01 {
  margin-bottom: 60px;
}

.details .gmap_box .gmap_wrap {
  padding-bottom: 42%;
}

.pein_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.pein_box a {
  display: block;
  width: 32.5%;
  border: solid 1px #bbbbbb;
  color: #000;
}

.pein_box a .img_wp {
  overflow: hidden;
  width: 100%;
  padding-bottom: 63%;
  position: relative;
}

.pein_box a .img_wp img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.pein_box a .txt_box {
  padding: 15px;
}

.pein_box a .txt_box dl dt {
  border-bottom: dotted 1px #bbbbbb;
  margin-bottom: 10px;
  padding-bottom: 15px;
}

.pein_box a .txt_box dl dt .tags {
  margin-bottom: 5px;
}

.pein_box a .txt_box dl dt b {
  font-size: 1.8rem;
  font-weight: bold;
}

.pein_box a .txt_box dl dd>span {
  display: inline-block;
  padding-left: 25px;
  position: relative;
  line-height: 1.3;
}

.pein_box a .txt_box dl dd>span.icon_pi01::before {
  content: "";
  display: block;
  background: url(../img/icon_pi01.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  width: 15px;
  height: 20px;
  position: absolute;
  top: 10%;
  left: 0%;
}

.pein_box a .txt_box dl dd>span.icon_pi02::before {
  content: "";
  display: block;
  background: url(../img/icon_pi02.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 10%;
  left: 0%;
}

.vm_bn {
  font-weight: bold;
  font-size: 1.3rem;
  color: #df3030;
  display: inline-block;
  text-decoration: underline;
  position: relative;
  padding-right: 25px;
}

.vm_bn:after {
  display: block;
  content: "";
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background-color: #df3030;
  background-image: url(../img/icon_y02.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50%;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 52%;
  right: 0;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
}

/* =======================================
	★Uniquevenues
========================================== */
.Uniquevenues .txt_wp01 {
  margin-bottom: 30px;
}

.Uniquevenues .sec01_area .c_table_03 table {
  margin-bottom: 30px;
}

.Uniquevenues .sec02_area .gaps {
  padding: 0 0 90px;
}

.Uniquevenues .uxbox {
  margin-bottom: 20px;
}

.Uniquevenues .uxbox .pein_box {
  justify-content: flex-start;
}

.Uniquevenues .uxbox .pein_box>a {
  margin-bottom: 1.5%;
  position: relative;
}

.Uniquevenues .uxbox .pein_box>a:not(:nth-of-type(3n)) {
  margin-right: 1%;
}

.Uniquevenues .uxbox .pein_box>a .txt_box dl dt {
  border-bottom: solid 0px;
  padding-bottom: 0px;
  margin-bottom: 0px;
}

.Uniquevenues .pein_box a .txt_box {
  padding: 15px 15px 45px;
}

.Uniquevenues .txt_right.btn_wp {
  text-align: right !important;
  position: absolute;
  bottom: 10px;
  right: 10px;
}

/* =======================================
	★Uniquevenues 詳細
========================================== */
.pdf_btn_wp {
  max-width: 442px;
  width: 96%;
  margin: 0 auto;
}

.und_detail .pdf_btn_wp {
  margin: 35px auto;
}

/* =======================================
	★Accommodations, Dining, And Events
========================================== */
.parties .maincont section .btn_wp {
  margin-bottom: 40px;
}

.txt_bbxx {
  margin-bottom: 45px;
}

/* =======================================
	★After-Event Experiences And Sightseeing
========================================== */
.after .maincont section .btn_wp {
  margin-bottom: 40px;
}

.pdf_btn_wp2 {
  max-width: 289px;
  width: 96%;
  margin-bottom: 20px;
}

.cl33x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.cl33x>li {
  width: calc(100% / 3.05);
  margin-bottom: 1%;
}

.white_box3 {
  background-color: #fff;
  padding: 30px;
  border-radius: 5px;
}

/* =======================================
	★Guidelines For MICE Events
========================================== */
.guidelines .tttx {
  margin-bottom: 40px;
}

.guidelines .tttx>span {
  display: inline-block;
  margin-right: 15px;
}

.guidelines .tttx .emails>a {
  color: #df3030;
  text-decoration: underline;
}

.guidelines .sec03_area .white_box3 p {
  font-size: 2rem;
  font-weight: bold;
  float: left;
  line-height: 1.5;
}

.guidelines .sec03_area .white_box3>a {
  margin-top: 20px;
  display: block;
  float: right;
}

.in_dl {
  display: inline-block;
}

.pdf_btn_wp3 {
  text-align: center;
}

.pdf_btn_wp3 li {
  display: inline-block;
  max-width: 326px;
  margin: 0 15px;
  width: 50%;
}

.pdf_btn_wp3 li small {
  color: #a5a5a5;
}

.smvbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.smvbox>a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  color: #000;
  font-size: 1.4rem;
  border: solid 1px #dddddd;
  padding: 20px 20px 10px;
  width: calc(100% / 3.05);
  margin-bottom: 1%;
  line-height: 1.5;
}

.smvbox>a>p {
  margin-bottom: 3px;
}

.smvbox>a .btn_wp {
  margin-top: auto;
}

.smvbox>a:not(:nth-child(3n)) {
  margin-right: 0.82%;
}

/* =======================================
	★Meeting & Event Support For Organizers
========================================== */
.organizers .ulls>li {
  margin-bottom: 40px;
}

/* =======================================
	★Our Business Partners
========================================== */
/* =======================================
	★大阪MICE推進委員会
========================================== */
/* =======================================
	★Osaka’s MICE Areas
========================================== */
.numbers_ul>li {
  padding: 40px 0;
}

.numbers_ul>li:not(:last-child) {
  border-bottom: solid 1px #dddddd;
}

.numbers_ul>li .txt_wp b {
  font-weight: bold;
}

.cl50cl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}

.cl50cl>li {
  float: left;
  width: 49%;
  margin-bottom: 1%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.movie_wp2 {
  padding-bottom: 56%;
}

/* =======================================
	★Resources For Event Planners
========================================== */
.pdf_btn_wp4 {
  max-width: 314px;
  width: 96%;
  margin-bottom: 20px;
}

/* =======================================
	★Contact Form
========================================== */
.conrs>label {
  margin: 0 30px;
}

/* =======================================
	★Privacy
========================================== */
.privacy .sec01_area article p {
  margin: 1em 0;
}

.privacy .sec01_area article .col-md-12 {
  padding-left: 15px;
  padding-right: 15px;
}

/* ---------------------------------------------------------------------------
  ★media Screen
--------------------------------------------------------------------------- */
@media screen and (max-width: 1400px) {
  .hnav .hnav_inner nav dl.h_inq_btn dt a {
    width: 200px;
  }

  .hnav .hnav_inner nav>dl:not(.h_inq_btn) {
    margin: 0 2%;
  }
}

/* ---------------------------------------------------------------------------
  ★IE
--------------------------------------------------------------------------- */
/* IE11 にのみ適用される */
/* ---------------------------------------------------------------------------
  ★中田追加
--------------------------------------------------------------------------- */
.column2_box.reverse {
  flex-direction: row-reverse;
}

.column2_box .c_table_01 {
  width: 57%;
}

.column2_box .c_table_01 {
  width: 57%;
}

.column2_box.img_flex figure {
  width: 49%;
}

.syuuhenn {
  display: flex;
  margin-bottom: 20px;
}

.syuuhenn li {
  width: 32%;
  margin-right: 2%;
}

.syuuhenn li:nth-child(3n) {
  margin-right: 0;
}

.syuuhenn.covid li:nth-child(3n) {
  margin-right: 2%;
}

.syuuhenn.covid li:nth-child(4n) {
  margin-right: 0;
}

.syuuhenn a {
  color: #000;
}

.syuuhenn.covid li {
  width: 23%;
}

/* ---------------------------------------------------------------------------
		  ★西嶋追加
		--------------------------------------------------------------------------- */
.radius_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto 40px;
}

.radius_list div {
  width: 30%;
}

.radius_list div img {
  width: 170px;
  border-radius: 50%;
}

.column2_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.column2_box figure {
  width: 40%;
}

.column2_box p {
  width: 57%;
}

.column2_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.column2_box p {
  width: 57%;
}

.column2_box li {
  width: 48%;
}

.news_link {
  display: flex;
  flex-wrap: wrap;
}

.column2_box .mov {
  margin: auto;
  position: relative;
  padding-top: 22.32%;
  margin-bottom: 30px;
}

.column2_box .mov iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.column2_box li .mov {
  margin: auto;
  position: relative;
  padding-top: 56.32%;
  margin-bottom: 30px;
  width: 100%;
}

.column2_box li .mov iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.slider_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
}

.slider_list li {
  width: 30%;
  margin-bottom: 15px;
}

.raijou {
  display: flex;
  justify-content: space-between;
  margin: auto;
  text-align: center;
  flex-wrap: wrap;
}

.border_top_gray {
  padding-top: 50px;
  border-top: 1px solid #ccc;
}

.theme_zone {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: auto;
}

.theme_zone li {
  width: 23%;
}

.theme_zone li:nth-child(1) div {
  border: 7px solid rgb(73, 131, 195);
}

.theme_zone li:nth-child(2) div {
  border: 7px solid rgb(243, 152, 1);
}

.theme_zone li:nth-child(3) div {
  border: 7px solid rgb(234, 80, 152);
}

.theme_zone li:nth-child(4) div {
  border: 7px solid rgb(18, 160, 110);
}

.theme_zone li p {
  font-size: 13px;
  text-align: center;
}

.theme_zone li p strong {
  font-size: 16px;
}

.member_li {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: auto;
}

.member_li li {
  width: 30%;
}

.member_li li:nth-child(1) {
  margin-right: 10px;
}

/* 211002追加分 */
.news_detail .youTube {
  text-align: center;
  margin: 15px 0;
  position: relative;
  padding-bottom: 56.25%;
}

.news_detail .youTube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.detail_box .edit table {
  width: 100%;
  border: 1px solid #ddd;
}

.detail_box .edit table th {
  background: #f7f7f7;
  font-weight: bold;
  border: 1px solid #ddd;
  padding: .5em;
  line-height: 1.4;
}

article .row {
  display: flex;
  justify-content: space-between;
  margin: 0 auto 20px;
  flex-wrap: wrap;
}

.detail_box .edit table td {
  background: #fff;
  border: 1px solid #ddd;
  padding: .5em;
}

article .col-md-6 {
  width: 48%;
}

/*211012*/
.t_table_02 table {
  width: 100%;
}

.t_table_02 table thead {
  background-color: #666;
  color: #fff;
  margin: 0;
  border: 0;
}

.t_table_02 table thead tr th {
  padding: 10px;
  border: solid 1px #e8e8e8;
  vertical-align: middle;
  line-height: 1.3;
  font-size: 14px;
}

.events_destination .t_table_02 table thead tr th:nth-of-type(2) {
  width: 17%;
}

.t_table_02 table tbody:nth-child(odd) tr {
  background-color: #f5f5f5;
}

.t_table_02 table tbody:nth-child(even) tr {
  background-color: #fff;
}

.t_table_02 table tbody tr th,
.t_table_02 table tbody tr td {
  padding: 10px;
  border: solid 1px #e8e8e8;
  vertical-align: middle;
  line-height: 1.5;
  font-size: 14px;
}

/*211104*/
.ave_caption {
  display: block;
  font-size: 18px;
  padding-top: 10px;
  font-weight: 400;
}

.bg_gray_ttl {
  font-size: 18px;
  font-weight: bold;
  padding: 10px 20px;
  border-left: 3px solid #BBB;
  background: #F8F7F6;
  display: block;
  width: 100%;
  margin-bottom: 20px;
}

/*211116*/
.scroll-hide {
  -webkit-transform: translateY(-48px);
  transform: translateY(-48px);
  transition: .5s;
}

/*施設検索一覧*/
.fs_archive_item {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin-bottom: 20px;
  align-items: center;
  border-bottom: solid 1px #ddd;
  padding-bottom: 20px;
}

.fs_archive_img {
  width: 35%;
}

.fs_archive_img img {
  height: 200px;
  width: 100%;
  object-fit: cover;
}

.fs_archive_txt {
  width: 60%;
  color: #000;
}

.fs_archive_ttl {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.5em;
  margin-bottom: 20px;
}

.fs_archive_label {
  display: inline-block;
  background-color: #eeeeee;
  color: #a5a5a5;
  text-align: center;
  padding: 0px 10px;
}


/*広告*/
.ad_ttl {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ad_ttl>a {
  color: #666;
  font-weight: bold;
  font-size: 1.4rem;
  display: block;
  white-space: pre;
}

.adheading {
  padding: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  font-size: 18px;
  font-weight: bold;
}

.adheading::before {
  content: '';
  width: 1.5em;
  height: 1.5em;
  background: url(../img/ico_speaker.svg) no-repeat center/contain;
  margin-right: 10px;
}

.f_ad {
  padding: 40px 0;
}

.ad_wrap {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}

.ad_wrap a {
  margin-bottom: 20px;
  transition: .3s;
  width: calc((100% - 20px*2)/3);
}

/* .ad_wrap a:not(:nth-child(3n)) {
  margin-right: 2%;
} */

.ad_wrap a:hover {
  opacity: .7;
}

.ad_wrap a img {
  width: 320px;
  height: 80px;
  border: solid 1px rgba(0, 0, 0, 0.25);
  margin: 0 auto 5px;
}

.ad_banner_txt {
  text-align: center;
  font-weight: bold;
  color: #333;
}

/*資料ダウンロード*/
.resources_wrap {
  display: flex;
  flex-wrap: wrap;
  margin: auto;
}

.resources_contents {
  width: 32%;
  margin-bottom: 20px;
  box-shadow: 3px 3px 8px rgb(0 0 0 / 16%);
  position: relative;
}

.resources_contents:not(:nth-of-type(3n)) {
  margin-right: 2%;
}

.resources_contents a {}

.resources_img {}

.resources_img img {
  height: 213px;
  width: auto;
  margin: auto;
  object-fit: contain;
}

.resources_txt {
  color: #000;
  padding: 15px 15px 100px;
}

.resources_ttl {
  font-size: 18px;
  border-bottom: solid 1px #DDDDDD;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.resources_caption {}

.resources_btn {
  border: solid 1px #df3030;
  color: #df3030;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  width: 80%;
  margin: auto;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 25px;
  transition: .3s;
}

.resources_contents:hover .resources_btn {
  background-color: #df3030;
  color: #fff;
}

.resources_btn.btn_arrow_btm {}

.resources_btn.btn_arrow_right {}

.resources .sec01_area .txt_bbxx b {
  font-size: 20px;
}

.resources .sec01_area .txt_bbxx b a {
  text-decoration: underline;
}

/*SDGs for MICE*/
.inter_tab_wrap {
  display: flex;
  cursor: pointer;
  font-weight: bold;
  border-bottom: solid 1px rgb(34, 54, 67, 0.25);
  margin-top: 50px;
}

.inter_tab {
  cursor: pointer;
  width: 50%;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 20px;
  color: #2d4655;
}

.inter_tab.current {
  background-color: #2d4655;
  color: #fff;
}

.inter_tab_content {
  display: none;
  margin-top: -3px;
}

.inter_tab_content.show {
  display: block;
}

.inter_tab_content.highlight_show {
  display: block;
}

.sdgs_logo {
  margin: 0 auto 50px;
  width: 60%;
}

.sdgs_about_txt {
  width: 80%;
  margin: 0 auto 70px;
}

.sdgs_iconlist img {
  width: 100%;
  margin: 0 auto 20px;
}

.sdgs_iconlist p {
  text-align: center;
}

.sdgs_about_point .bedls>dd>img {
  max-height: 600px;
}

.sdgs_advisor_sec h2.tit03 {
  margin-bottom: 60px;
}

.sdgs_results_ttl {
  font-size: 2.0rem;
  margin-bottom: 10px;
}

.faq_item {
  position: relative;
}

.faq_item:not(:last-of-type) {
  border-bottom: solid 1px #DDDDDD;
}

.faq_item dt {
  font-size: 1.8rem;
  border-radius: 5px;
  padding: 20px 55px;
  position: relative;
  cursor: pointer;
}

.faq_item dt::before,
.faq_item dd::before {
  font-size: 2.0rem;
  position: absolute;
  left: 0;
  line-height: 0;
  width: 37px;
  height: 37px;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.faq_item dt::before {
  content: 'Q';
  color: #fff;
  top: 18px;
  background-color: #E13803;
}

.faq_item.new dt {}

.faq_item.new dt::before {}

.faq_item.new dt::after {
  content: 'NEW';
  position: absolute;
  top: 17px;
  left: 0;
  padding: 5px 10px;
  line-height: 1;
  font-size: 1.2rem;
  color: #E13803;
}

.faq_item dd {
  padding: 5px 55px 25px;
  position: relative;
  display: none;
}

.faq_item dd::before {
  content: 'A';
  top: 0;
  color: #E13803;
  background-color: #FAF2EF;
}

.faq_item+span {
  font-size: 1.2rem;
  display: block;
  text-align: right;
}

.faq_item::before {
  content: '';
  background-color: #9C9C9C;
  width: 30px;
  height: 30px;
  border-radius: 100px;
  position: absolute;
  right: 0;
  top: 18px;
}

.faq_item::after {
  content: '＋';
  position: absolute;
  font-size: 2.0rem;
  color: #fff;
  z-index: 1;
  top: 15px;
  right: 5px;
  cursor: pointer;
}

.faq_item.active::after {
  content: '－';
}

.mega .mega_inner ul li ol {
  display: none;
  position: absolute;
  background-color: #fff;
  top: 68px;
  width: 320px;
}

/* .mega .mega_inner ul li ol.active {
  position: absolute;
  background-color: #fff;
  top: 68px;
  width: 320px;
  display: block;
} */
.mega .mega_inner ul li ol li {
  width: 100%;
  padding-bottom: 20px;
}

.mega .mega_inner ul li.navi_middle {
  position: relative;
}

.row_th_tbl {
  width: 100%;
  border: solid 1px #DCDCDC;
}

.row_th_tbl tr {
  display: flex;
}

.row_th_tbl tr:not(:last-of-type) {
  border-bottom: solid 1px #DCDCDC;
}

.row_th_tbl tr th,
.row_th_tbl tr td {
  padding: 20px;
}

.row_th_tbl tr th {
  background-color: #EEEEEE;
  width: 30%;
  display: flex;
  align-items: center;
}

.row_th_tbl tr td {
  width: 70%;
}

.bullet_list li {
  text-indent: -1em;
  padding-left: 1em;
}

.bullet_list li::before {
  content: '・';
}

.sdgs_schedule_wrap li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}

.sdgs_schedule_wrap li span {
  width: 20%;
  background-color: #df3030;
  color: #fff;
  padding: 10px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.sdgs_schedule_wrap li:not(:last-of-type) span::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #df3030 transparent transparent transparent;
  position: absolute;
  bottom: -21px;
  left: 0;
  right: 0;
  margin: auto;
}

.sdgs_schedule_wrap li p {
  width: 78%;
  padding: 10px 0;
}


/*220610 イタリック修正*/
.news_detail em {
  font-style: italic;
}

/* 220816 */
.sec01_area .title {
  display: flex;
  margin: 0 auto 34px;
  max-width: 612px;
  align-items: center;
  flex-wrap: wrap;
}

.sec01_area .title.ver_en {
  max-width: 642px;
}

.sec01_area .title figure {
  width: 40%;
  margin: 0 auto 10px;
}

.sec01_area .title h3 {
  font-size: 24px;
  width: 100%;
  text-align: center;
}

.team_mice_link_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  max-width: 1100px;
  margin: auto;
  width: 100%
}

.team_mice_link_list li {
  width: 18%;
  margin: 0 1% 30px;
  transition: .3s;
}

.team_mice_link_list li:first-child,
.team_mice_link_list li:nth-child(6) {
  margin-left: 0;
}

.team_mice_link_list li:nth-child(5n) {
  margin-right: 0;
}

.team_mice_link_list li a {
  width: 95%;
  height: 100%;
  position: relative;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.team_mice_link_list li:hover {
  opacity: 0.8;
}

.team_mice_link_list li a img {
  width: 100%;
  max-height: 70px;
  transition: .5s;
  opacity: 1;
  object-fit: contain;
}

.team_title {
  font-size: 20px;
  margin-bottom: 30px;
}

.contact_box {
  margin-bottom: 50px;
}

/* 230214 */
.footer_logo_wrap a.bsi {
  width: 142px;
}

/* 240603 */
.sec02_area>article>.table_box {
  overflow-x: scroll;
  width: 100%;
  -webkit-overflow-scrolling: touch;
  margin: 40px 0;
}

.sec02_area>article>.table_box>table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.sec02_area>article>.table_box>table>tbody>tr>th {
  vertical-align: middle;
  padding: 20px;
  border: 1px solid #d8d8d8;
  color: #000;
  font-size: 14px;
  text-align: center;
  white-space: nowrap;
}

.table_box>table>tbody>tr>th>td {
  vertical-align: middle;
  padding: 20px;
  border: 1px solid #d8d8d8;
  color: #000;
  font-size: 14px;
  text-align: center;
  white-space: nowrap;
}

.sec02_area>article>.table_box>table>tbody>tr>th {
  background: #000;
}

.sec02_area>article>.table_box>table>tbody>tr>td {
  background: #fff;
  font-size: 13px;
  padding: 8px 20px;
  min-width: 100px;
}

.sec02_area>article>.table_box>table>tbody>tr>.sticky,
.venue_search_contents.sec02_area>article>.table_box>table>tbody>tr>th  {
  position: sticky;
  top: 0;
  left: 0;
  background: none;
  border-left: none;
  border-right: none;
  margin-bottom: 1px;
  font-weight: bold;
  color: white;
}

.sec02_area>article>.table_box>table>tbody>tr>.sticky::before,
.venue_search_contents.sec02_area>article>.table_box>table>tbody>tr>th::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-left: 1px solid #f5f5f5;
  border-right: 1px solid #f5f5f5;
  border-bottom: 1px solid #f5f5f5;
  background: #EF8E81;
  z-index: -1;
}

/*ユニークベニュー詳細*/
.c_table_02 {
  margin-bottom: 50px;
  padding: 30px;
}

.c_table_02>table {
  width: 100%;
}

.c_table_02 table tbody tr {
  display: flex;
  flex-wrap: nowrap;
  border-bottom: solid 1px #dddddd;
  padding: 10px 0;
}

.c_table_02 table tr th {
  width: 15%;
  font-weight: bold;
}

.c_table_02 table tr td {
  width: 80%;
  white-space: pre-wrap;
}

.und_detail .icon_list_wp.white_ul ul li em {
  white-space: pre-wrap;
}

.und_detail .txt_wp02 {
  white-space: pre-wrap;
}

.Uniquevenues .icon_pi01 {
  padding: 5px 7px !important;
  font-size: 12px;
  background-color: #999;
  color: #fff;
  border-radius: 3px;
  letter-spacing: 0.05em;
  line-height: 1em !important;
}

.Uniquevenues .icon_pi01::before {
  display: none !important;
}

.t_table_01.calendar_tbl table thead tr th:first-of-type {
  width: 18%;
}

.rela_movie {
  display: flex;
}

/* 250124_資料ダウンロード */
.explanation_txt {
  margin-bottom: 25px;
}

.form_resources_contents {
  background-color: #FFF8F8;
  padding: 30px;
  box-shadow: 3px 3px 8px rgb(0 0 0 / 16%);
  display: flex;
  align-items: center;
  gap: 10px;
  flex-direction: column;
  margin-bottom: 40px;
  transition: background-color 0.3s ease;
}

.form_resources_container {
  margin-top: 10px;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.form_resources_img {
  flex-shrink: 0;
  margin-right: 40px;
}

.form_resources_img img {
  height: 213px;
  width: auto;
  margin: auto;
  object-fit: contain;
}

.form_resources_txt {
  flex-grow: 1;
}

.form_resources_subtitle {
  font-size: 16px;
  color: #DF3030;
  margin: 0;
  font-weight: bold;
}

.form_resources_list {
  list-style-type: decimal;
  padding-left: 20px;
}

.form_resources_list li {
  font-size: 14px;
  margin-bottom: 5px;
}

.form_resources_ttl {
  border-bottom: 2px solid #DF3030;
  width: 100%;
}

.form_resources_ttl p {
  font-size: 16px;
  font-weight: bold;
  margin: 0 0 5px;
}

.form_resources_caption {
  font-size: 14px;
  margin: 0;
}

.checkbox_area {
  width: 70px;
}

.form_resources_checkbox {
  display: inline-block;
  margin-right: 20px;
  width: 40px;
  height: 40px;
  border: 3px solid #DF3030;
  border-radius: 4px;
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  position: relative;
  cursor: pointer;
}

.form_resources_checkbox:checked {
  background-color: #FFAAAA;
  border: 3px solid #DF3030;
}

.form_resources_checkbox:checked::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 3px;
  width: 10px;
  height: 4px;
  background-color: #DF3030;
  transform: rotate(45deg);
  visibility: visible;
  transform-origin: center;

}

.form_resources_checkbox:checked::after {
  content: "";
  position: absolute;
  top: 15px;
  left: 7px;
  width: 21px;
  height: 4px;
  background-color: #DF3030;
  transform: rotate(-45deg);
  transform-origin: center;
}

.form_resources_checkbox::before {
  visibility: hidden;
}

.form_resources_contents.checked {
  background-color: #FFAAAA;
  /* チェック時の背景色 */
}

.other_link_ttl {
  width: 100%;
  margin-bottom: 25px;
}

.fixed_footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #DF3030;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 20px;
  font-size: 16px;
  font-weight: bold;
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  cursor: pointer;
}

.fixed_footer span {
  flex: 1;
  text-align: center;
}

.count_circle {
  background: #fff;
  color: #DF3030;
  font-weight: bold;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-right: 10px;
}

.fixed_footer::after {
  content: '›';
  /* 矢印記号 */
  font-size: 18px;
  margin-left: 10px;
}

.no-pc {
  display: none;
}

.download_form table tbody tr td {
  border: none;
  text-align: left;
}

.download_form table tbody tr td input,
textarea {
  box-shadow: 0px 0px 5px #CCC inset;
  border-radius: 3px;
}

.download_form .c_btn01 {
  border-radius: 0
}

.download_form .c_btn01 span {
  border-radius: 0
}

.download_wrap {
  justify-content: space-between;
  margin: auto;
}

.download_contents {
  width: calc(33.33% - 2%);
  margin-bottom: 20px;
}

.download_contents:nth-of-type(3n) {
  margin-right: 0;
}

body.underp .totop_wrap {
  bottom: 70px;
}

/*250324 コラム内リストタグ用*/
ul.column_list_txt {
  /*  display: flex;
  flex-wrap: wrap;*/
  margin: 30px 0;
  /*  font-size: 14px;*/
}

ul.column_list_txt li {
  /* width: 23%;
  margin: 1%;
  text-align: center;
  background-color: #e55959;
  border-radius: 12px;
  color: #fff;*/
}

ul.column_expo_guidelist {
  background-color: #fff8f8;
  padding: 2%;
  border: 1px solid #ffa7a7;
  margin: 10px 0px 30px;
}

ul.column_doc_listtxt li {
  margin-bottom: 20px;
  text-decoration: underline;
  text-underline-offset: -0.2em;
  text-decoration-thickness: 0.5em;
  text-decoration-color: rgba(255, 228, 0, 0.4);
  text-decoration-skip-ink: none;
}

p.column_expo_character_img img {
  /*  width: 25%;*/
  margin: 0 auto;
}

ul.column_list_txt li::before {
  content: "・";
}

ul.column_doc_listtxt li::before {
  content: "・";
}

ul.column_expo_guidelist li::before {
  content: "・";
}

/* スタッフ紹介ページ */
.staff-container {
  width: 100%;
  max-width: 990px;
  ;
  margin: 0 auto;
  padding: 20px;
}

.staff-section {
  margin-bottom: 30px;
}

.staff-main-image {
  display: block;
  width: 100%;
  max-width: 900px;
  height: auto;
  margin: 20px 0;
}

.staff-content p {
  margin: 0 5px;
}

.staff-features {
  display: flex;
  justify-content: space-around;
  text-align: center;
}

.staff-feature-box {
  width: 30%;
  padding: 15px;
  border: 1px solid gary;
  background-color: #e3e3e3;
  border-radius: 18px;
}

.staff-feature-box a {
  display: block;
  margin-top: 10px;
  text-decoration: none;
  color: #000;
}

.staff-feature-box a:hover {
  opacity: 0.7;
}

.staff-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  /* text-align: center; */
}

.staff-box {
  width: 30%;
  border-radius: 5px;
  text-align: center;
}

.staff-box p {
  text-align: left;
}

.staff-box img {
  width: 100%;
  max-width: 300px;
  height: auto;
  margin-bottom: 10px;
  display: block;
  margin: 0 auto 3%;
}

.staff-mg10 {
  margin-bottom: 10%;
}

.staff-name-bold {
  font-weight: bold;
  font-size: 17px;
}

.staff-buttons {
  text-align: center;
  margin: 60px 0;
}

.staff-wrap {
  display: flex;
  flex-wrap: nowrap;
  gap: 30px;
}

.staff-contents {
  width: calc((100% - 30px) / 3);
  box-shadow: 3px 3px 20px rgb(0 0 0 / 16%);
  position: relative;
  padding-bottom: 85px;
}

.staff-contents-img {
  height: 300px;
  width: 100%;
  background-color: #A1A1A1;
}

.staff-contents-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.staff-contents-txt {
  padding: 20px 20px 0;
}

.staff-contents-ttl {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
  color: #000;
}

.staff-contents-caption {
  color: #000;
}

.staff-detail-btn {
  display: flex;
  margin-top: 20px;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
  border: solid 1px #df3030;
  color: #df3030;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 90%;
  bottom: 20px;
  left: 5%;
}

/* 250409 大阪・関西万博バナー追加 */
.osaka-bn-size {
  margin: 0 auto 5%;
  /* width: 40%; */
}

/* 250507 過去の開催実績 英語版 表の幅調整 */
.th-third-width th:nth-child(3) {
  width: 13%;
}




/******************************
  ★20260220追記分(ミドロ＆ニシナガ)
******************************/

.sdgs-page .hcover_wp .hcover .hcover_inner {
  overflow: inherit;
}

.sdgs-page .sdgspage_mv_sp {
  display: none;
}

.sdgs-page .sgdspage_subtxt_area {
  padding: 80px 0;
}

.sdgs-page .sgdspage_subtxt {
  background-color: #FFF9EA;
}

.sdgs-page .sgdspage_subtxt p {
  text-align: center;
  font-size: 18px;
  line-height: 3.0rem;
  padding: 50px 0;
}

.sdgs-page .home_w .sec01_area {
  background: none;
}

.sdgs-page .sdgspage_title {
  text-align: center;
}

.sdgs-page .sdgspage_title b {
  font-weight: bold;
}

.sdgs-page .sdgspage_title b::after {
  position: absolute;
  content: "";
  width: 60px;
  height: 2px;
  background-color: #E49C00;
  /* top: 0; */
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  display: block;
}

.sdgs-page .sdgspage_title p {
  padding-top: 15px;
}

.sdgs-page .sdgspage_maintitle b {
  font-size: 2.8rem;
  font-weight: bold;
}

.sdgs-page .sdgspage_maintitle b::after {
  display: none;
}

.sdgs-page .sdgspage_maintitle {
  background-color: #3188B3;
  color: #fff;
  text-align: center;
  padding: 50px 0;
}

.sdgs-page .sdgspage_maintitle_area {
  position: relative;
}

.sdgs-page .sdgspage_maintitle_area::after {
  position: absolute;
  content: "";
  background-image: url(../img/sdgs_maintitle_after.png);
  background-position: center;
  background-repeat: no-repeat;
  top: 150px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
}

.sdgs-page .home_w .sec01_area .gaps {
  padding: 0 0 100px;
}

.sdgs-page .home_w .sec01_area .img_wp_box {
  padding-left: 10%;
}

.sdgs-page .home_w .sec01_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  justify-content: flex-end;
}

.sdgs-page .home_w .sec01_area .white_box {
  position: absolute;
  top: 40px;
  left: 0;
  max-width: 1050px;
  width: 80%;
  z-index: 3;
}

.sdgs-page .white_box .boxin {
  padding: 45px 60px 45px;
}

.sdgs-page .green_box {
  border: 3px solid #43B029;
  border-left: none;
}

.sdgs-page .home_w .sec01_area .white_box .boxin {
  float: right;
  max-width: 900px;
  width: 90%;
}

.sdgs-page .sdgs_two_menu .color_green {
  display: block;
  color: #43B029;
}

.sdgs-page .tit02_flex {
  display: flex;
  gap: 30px;
}

.sdgs-page .sdgs_check_area li {
  font-size: 18px;
  display: flex;
  align-items: center;
  padding-bottom: 10px;
}

.sdgs-page .sdgs_check_area li:last-child {
  padding-bottom: 0;
}

.sdgs-page .sdgs_check_gr::before {
  content: "";
  background-image: url(../img/sdgs_check_gr.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-right: 10px;
}

.sdgs-page .sdgs_check_bl::before{
  content: "";
  background-image: url(../img/sdgs_check_bl.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 25px;
  height: 25px;
  margin-right: 10px;
}

.sdgs-page .green_box .green_box_btn .vm_bn {
  font-size: 1.6rem;
  color: #43B029;
  text-decoration: none;
}

.sdgs-page .green_box .green_box_btn .vm_bn:after {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #43B029;
}

.sdgs-page .blue_box .blue_box_btn .vm_bn {
  font-size: 1.6rem;
  color: #3188B3;
  text-decoration: none;
}

.sdgs-page .blue_box .blue_box_btn .vm_bn:after {
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #3188B3;
}

.sdgs-page .home_w .sec01_area .white_box .boxin .txt_box {
  margin-bottom: 25px;
}

/* .sdgs-page .home_w .sec01_area .white_box .boxin .txt_box p {
  font-size: 18px;
} */

.sdgs-page .home_w .sec01_area .white_box .boxin .btn_wp a {
  margin: 0 40px 30px 0;
}

.sdgs-page .home_w .sec01_area .rela .img_wp_box {
  height: 500px;
  overflow: hidden;
}

.sdgs-page .home_w .sec02_area .img_wp_box {
  max-width: 1210px;
  width: 90%;
  height: 550px;
  overflow: hidden;
}

.sdgs-page .home_w .sec02_area .img_wp_box img {
  object-fit: cover;
  height: 850px;
  display: block;
}

.sdgs-page .home_w .sec02_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.sdgs-page .home_w .sec02_area .white_box {
  position: absolute;
  top: 50px;
  right: 0;
  max-width: 1100px;
  width: 70%;
  z-index: 3;
}

.sdgs-page .blue_box {
  border: 3px solid #3188B3;
  border-right: none;
}

.sdgs-page .home_w .sec02_area .white_box .boxin {
  max-width: 800px;
  width: 100%;
}

.sdgs-page .sdgs_two_menu .color_blue {
  display: block;
  color: #3188B3;
}

.sdgs-page .home_w .sec02_area .white_box .boxin .txt_box {
  margin-bottom: 30px;
}

.sdgs-page .home_w .sec03_area .gaps {
  padding: 60px 0 50px;
}

.sdgs-page .home_w .sec03_area .movie_wp_wp {
  margin: 0 auto;
  width: 48%;
}

.sdgs-page .home_w .sec03_area .movie_wp {
  display: block;
  width: 100%;
  padding-bottom: 48.6%;
}

.sdgs-page .home_w .sec04_area {
  background: url(../img/top_sec04_bk.jpg) no-repeat;
  background-size: 100%;
  background-position: top center;
}

.sdgs-page .home_w .sec04_area .gaps {
  padding: 80px 0 20px;
}

.sdgs-page .home_w .sec04_area .img_wp_box {
  padding-left: 10%;
}

.sdgs-page .home_w .sec04_area .img_wp_boxin {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.sdgs-page .home_w .sec04_area .white_box {
  position: absolute;
  top: -30px;
  left: 0;
  max-width: 1050px;
  width: 80%;
  z-index: 3;
}

.sdgs-page .home_w .sec04_area .white_box .boxin {
  float: right;
  max-width: 900px;
  width: 90%;
}

.sdgs-page .home_w .sec04_area .white_box .boxin .txt_box {
  margin-bottom: 30px;
}

.sdgs-page .home_w .sec04_area .white_box .boxin .btn_wp a {
  margin: 0 40px 30px 0;
}

.sdgs-page .home_w .sec05_area .gaps {
  padding: 30px 0 0;
}

.sdgs-page .home_w .sec05_area .ctb_wp {
  -webkit-box-shadow: 5px 5px 10px rgb(0 0 0 / 10%);
  box-shadow: 5px 5px 10px rgb(0 0 0 / 10%);
  margin: 0 auto;
}

.sdgs-page .home_w .sec05_area .boxcg_btn_Box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.sdgs-page .home_w .sec05_area .boxcg_btn_Box>a {
  text-align: center;
  display: block;
  width: 50%;
  font-size: 1.8rem;
  background-color: #eeeeee;
  color: #000;
  padding: 15px 0;
}

.sdgs-page .home_w .sec05_area .boxcg_btn_Box>a.on {
  background-color: #fff;
}

.sdgs-page .home_w .sec05_area .boxcg_Box {
  max-width: 1040px;
  margin: auto;
  padding: 25px 20px 20px;
  background: #fff;
}

/* .sdgs-page .sgdspage_section01 {
  padding-top: 80px;
  padding-bottom: 0;
} */

.sdgs-page .sdgspage_qa {
  position: relative;
}

.sdgs-page .sdgspage_qa_listarea {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-top: 40px;
  margin-bottom: 40px;
}

.sdgs-page .sdgspage_qa_list {
  background-color: #efefef;
  border-radius: 10px;
  padding: 20px 60px;
  padding-left: 80px;
}

.sdgs-page .sdgspage_qa_title {
  font-size: 20px;
  font-weight: bold;
  color: #E49C00;
  padding-bottom: 10px;
}

.sdgs-page .sdgspage_qa_title span {
  font-family: "Noto Sans JP", sans-serif;
}

.sdgs-page .sdgs_human_img {
  width: 170px;
  position: absolute;
  top: 80%;
  right: -6%;
}

.sdgs-page .sdgs_human2_img {
  width: 200px;
  position: absolute;
  top: 90%;
  left: -12%;
}

.sdgs-page .pein_box2 {
  padding-top: 10px;
}

.sdgs-page .pein_box a {
    border: none;
    box-shadow: 2px 2px 6px #c4c4c4;
}

.sdgs-page .pein_box a:hover {
  background: #fbfbfb;
  color: #000;
}

.sdgs-page .pein_box a .txt_box dl dt {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 10px;
}

.sdgs-page .pein_box a .txt_box dl dt b {
  font-size: 1.8rem;
  font-weight: bold;
  display: block;
}

.sdgs-page .pein_box a .txt_box dl dt >span {
  display: inline-block;
  padding-left: 25px;
  position: relative;
  line-height: 1.3;
}

.sdgs-page .pein_box a .txt_box dl dt >span.icon_pi01::before {
  content: "";
  display: block;
  background: url(../img/icon_pi01.png) no-repeat;
  background-position: center center;
  background-size: 100%;
  width: 15px;
  height: 20px;
  position: absolute;
  top: 10%;
  left: 0%;
}

.sdgs-page .pein_box a .txt_box dl dt >span {
  padding-left: 0;
  font-size: 14px;
  color: #E49C00;
  border: 1px solid #E49C00;
  padding: 3px 5px;
  border-radius: 20px;
}

.sdgs-page .txt_right {
  text-align: right !important;
  padding: 15px 0;
}

.sdgs-page .vm_bn {
  font-size: 1.4rem;
  color: #E49C00;
  text-decoration: none;
}

.sdgs-page .vm_bn:after {
  display: block;
  content: "";
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #E49C00;
}

.sdgs-page .sgdspage_section04 {
  padding-bottom: 0;
}

.sdgs-page .inner.sgdspage_section04{
  max-width: 100%;
  position: relative;
  width: 100%;
}

.sdgs-page .example_box {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  overflow: scroll;
  overflow-x: auto;   /* 横スクロール有効 */
  overflow-y: hidden; /* 縦スクロール非表示 */
  padding-bottom: 20px;
}

.sdgs-page .example_box .example_item {
  display: block;
  width: 32.5%;
  min-width: 300px;
  color: #000;
  border: none;
  box-shadow: 2px 2px 6px #c4c4c4;
}

.sdgs-page .example_box .example_item .img_wp {
  overflow: hidden;
  width: 100%;
  padding-bottom: 63%;
  position: relative;
}

.sdgs-page .example_box .example_item .img_wp img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}

.sdgs-page .example_box .example_item .txt_box {
  padding: 15px;
}

.sdgs-page .example_box .example_item .txt_box dl dt {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 10px;
}

.sdgs-page .example_box .example_item .txt_box dl dt b {
  font-size: 1.8rem;
  font-weight: bold;
  display: block;
}

.sdgs-page .example_box .example_item .txt_box dl dt >span.kouken {
  font-size: 14px;
  color: #fff;
  border: none;
  padding: 3px 5px;
  border-radius: 0;
  background-color: #43B029;
}

.sdgs-page .example_box .example_item .txt_box dl dt >span.hyouka {
  font-size: 14px;
  color: #fff;
  border: none;
  padding: 3px 5px;
  border-radius: 0;
  background-color: #3188B3;
}

.sdgs-page .sdgs_btn_wp {
  padding: 60px 0;
  background-image: url(../img/bk_osakamaice.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.sdgs-page .kouken_btn {
  color: #fff;
  position: relative;
  font-size: 0;
  display: inline-block;
  font-weight: bold;
  text-align: center;
  background-color: #ffffff;
  border-radius: 30px;
  margin: 0 10px 10px 5px;
  min-width: 280px;
  border: solid 1px #68b631;
}

.sdgs-page .kouken_btn span {
  position: relative;
  display: block;
  padding: 1.4rem 6.2rem 1.4rem 4rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-radius: inherit;
  z-index: 1;
  font-size: 1.6rem;
  left: -5px;
  top: -5px;
  font-family: "Noto Sans JP", sans-serif;
  border: 1px solid #68b631;
  background: #68b631;
}

.sdgs-page .kouken_btn span::after {
  content: "";
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
  background-color: #8cdb54;
}

.sdgs-page .kouken_btn:hover span {
  left: 0px;
  top: 0px;
  background: #68b631;
}

.sdgs-page .hyouka_btn {
  color: #fff;
  position: relative;
  font-size: 0;
  display: inline-block;
  font-weight: bold;
  text-align: center;
  border-radius: 30px;
  margin: 0 10px 10px 5px;
  min-width: 280px;
  border: solid 1px #68b631;
  border: solid 1px #3188B3;
}

.sdgs-page .hyouka_btn span {
  position: relative;
  display: block;
  padding: 1.4rem 6.2rem 1.4rem 4rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border-radius: inherit;
  z-index: 1;
  font-size: 1.6rem;
  left: -5px;
  top: -5px;
  font-family: "Noto Sans JP", sans-serif;
  border: 1px solid #3188B3;
  background: #3188B3;
}

.sdgs-page .hyouka_btn span::after {
  content: "";
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-image: url(../img/icon_y.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  position: absolute;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%) translateX(0%);
  transform: translateY(-50%) translateX(0%);
  background-color: #50b2e3;
}

.sdgs-page .hyouka_btn:hover span {
  left: 0px;
  top: 0px;
  background: #3188B3;
}

.sdgs-page .flow_inner {
  max-width: 800px;
}

.sdgs-page .sdgspage_flow_list {
  height: 120px;
  display: flex;
  align-items: center;
  gap: 100px;
  position: relative;

  background-image: url(../img/bk_sdgs_flow.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 10px;
  padding: 20px 50px;
  padding-left: 50px;
}

.sdgs-page .sdgspage_flow_listarea li {
  position: relative;
}

.sdgs-page .sdgspage_flow_listarea li:not(:last-child)::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #7E7E7E transparent transparent transparent;
  position: absolute;
  bottom: -21px;
  left: 0;
  right: 0;
  margin: auto;
}

.sdgs-page .sdgspage_flow_list figure {
  width: 40px;
}

.sdgs-page .sdgspage_flow_title {
  font-size: 20px;
  font-weight: bold;
  color: #000;
}

.sdgs-page .sdgspage_flow_btn {
  text-align: center;
}

.sdgs-page .sdgspage_flow_btn .c_btn01 {
  border: solid 1px #E49C00;
}

.sdgs-page .sdgspage_flow_btn .c_btn01 span {
  border: 1px solid #E49C00;
  background: #E49C00;
}

.sdgs-page .sdgspage_flow_btn .c_btn01 span::after {
  background-color: #f1bf51;
}



/* 260331 ヘッダーフッターの改修 */
.harea02>.inner, .harea01>.inner {
  width: 100%;
}
.h_logo_wp {
  margin-left: 10px;
}
.hnav {
  width: 60%;
}
.hnav .hnav_inner nav>dl:not(.h_inq_btn) {
  margin: 0 2%;
}
.hnav .hnav_inner nav dl.h_inq_btn {
  padding-left: 1%;
}
.hnav .hnav_inner nav dl dt a {
  font-size: 1.5rem;
}
.hnav .hnav_inner nav dl.h_inq_btn dt a {
  width: 170px;
}
.hnav .hnav_inner nav dl.h_inq_btn dt a span {
  padding-left: 0;
}
.hnav .hnav_inner nav dl.h_inq_btn dt a span::before {
  content: none;
}

.mega .mega_inner #apd01_s ul li {
  width: calc(96% / 6);
}

footer .f_front_box_right {
  width: 65%;
}

footer .fnav .fnav_cont {
  margin-right: 3%;
}