@charset "UTF-8";


body {
  font-family: 'Ryumin Light KL','Ryumin Regular KL', 'Midashi Go MB31';
  background-color: #000;
}

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

li {
  list-style: none;
}

html {
  font-size: 62.5%;
}

@media screen and (max-width: 600px) {
  html {
    font-size: 55%;
  }
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}


.header.header-bg-change {
background-color: #000;
transition: all .4s;
} 

.header__pc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 10px 3% 0 3%;
transition: all .4s;
}

.header__pc.header-pc-change {
padding: 0px 3% 10px 3%;
transition: all .4s;
}

@media screen and (max-width: 760px) {
  .header__pc {
    padding-top: 15px;
  }
}

.header__pc__logo {
  width: 210px;
  display: block;
transition: all .4s;
}

.header__pc__logo.header-logo-change {
padding-top: 10px;
transition: all .4s;
}

.header__pc__flex {
  display: block;
  padding-top: 13px;
}

.langbtn {
	display: flex;
}
.langbtn a {
	font-size: 1.6rem;
	position: relative;
	display: block;
	transition: all .2s;
}
.langbtn a:hover {
	opacity: 0.6;
	transition: all .2s;
}
.langbtn a:nth-child(1) {
	margin-left: 16px;
}
.langbtn a:nth-child(even) {
	margin: 0 18px;
}
.langbtn a:nth-child(even)::before {
content:"";
width:1px;
height: 60%;
background-color: #fff;
position: absolute;
left: -9px;
top:46%;
transform: translateY(-50%);
}
.langbtn a:nth-child(even)::after {
content:"";
width:1px;
height: 60%;
background-color: #fff;
position: absolute;
left: 31px;
top:46%;
transform: translateY(-50%);
}
#langbtn-sp {
	width: 80%;
	margin: 12px auto 0;
}
#langbtn-sp a {
	color: #000;
	font-size: 2rem;
}
#langbtn-sp a:nth-child(1) {
	margin-left: 0;
}
#langbtn-sp a:nth-child(even)::before {
	background-color: #000;
}
#langbtn-sp a:nth-child(even)::after {
	background-color: #000;
}
@media screen and (max-width: 860px) {
  .header__pc__flex {
    display: none;
  }
}

.header__pc__nav {
  margin-bottom: 10px;
}

@media screen and (max-width: 900px) {
  .header__pc__nav {
    margin-right: 0;
  }
}

.header__pc__nav .menu-header-container ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header__pc__nav .menu-header-container ul li {
  position: relative;
}

.header__pc__nav .menu-header-container ul li:nth-child(even) {
  margin: 0 22px;
}

.header__pc__nav .menu-header-container ul li:last-child {
  margin-right: 0;
}

.header__pc__nav .menu-header-container ul li:not(:last-child)::before {
  content: "/";
  color: #fff;
  font-size: 16px;
  position: absolute;
}

.header__pc__nav .menu-header-container ul li:nth-child(1)::before {
  right: -31%;
}

.header__pc__nav .menu-header-container ul li:nth-child(2)::before {
  right: -23%;
}

.header__pc__nav .menu-header-container ul li:nth-child(3)::before {
  right: -30%;
}

.header__pc__nav .menu-header-container ul li:nth-child(4)::before {
  right: -21%;
}

.header__pc__nav .menu-header-container ul li:nth-child(5)::before {
  right: -20%;
}

.header__pc__nav .menu-header-container ul li:nth-child(6)::before {
  right: -23%;
}

.header__pc__nav .menu-header-container ul li a {
  font-size: 16px;
  display: block;
  font-family: "Ryumin Light KL";
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav .menu-header-container ul li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.header__pc__nav__sub ul li:nth-child(odd) {
  margin: 0 13px;
}

.header__pc__nav__sub ul li a i {
  font-size: 2.2rem;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub ul li a i:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub ul li a img {
  width: 22px;
  height: 22px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub ul li a img:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub__form {
  background-color: #fff;
  height: 26px;
  text-align: center;
  -webkit-transition: all .4s;
  transition: all .4s;
  border: 1px solid transparent;
}

.header__pc__nav__sub__form:hover {
  -webkit-transition: all .4s;
  transition: all .4s;
  background-color: #9fa0a0;
  border: 1px solid transparent;
}

.header__pc__nav__sub__form a {
  font-size: 14px;
  color: #000;
  font-family: "Ryumin Medium KL";
  display: block;
  padding: 0 10px;
  line-height: 26px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.header__pc__nav__sub__form li a {
	display: block;
}

.svg-inline--fa {
	height: 23px;
}

.svg-inline--fa.fa-w-14,.svg-inline--fa.fa-w-16 {
   font-size: 24px;
	-webkit-transition: all .4s;
  transition: all .4s;
}

.svg-inline--fa.fa-w-14:hover {
	  -webkit-transition: all .4s;
  transition: all .4s;
	opacity: .6;
}

.svg-inline--fa.fa-w-16:hover {
  -webkit-transition: all .4s;
  transition: all .4s;
	opacity: .6;
}

.header__pc__nav__sub__form a:hover {
  -webkit-transition: all .4s;
  transition: all .4s;
  color: #fff;
}

.header__sp {
  display: none;
}

@media screen and (max-width: 860px) {
  .header__sp {
    display: block;
  }
}

.header__sp__openbtn {
  position: fixed;
  z-index: 9999;
  top: 26px;
  right: 30px;
  cursor: pointer;
  width: 35px;
  height: 21px;
  -webkit-transition: all .3s;
  transition: all .3s;
  z-index: 9999;
}

.header__sp__openbtn.header-sp-change {
top: 23px;
  transition: all .3s;
}

.header__sp__openbtn span {
  display: inline-block;
  -webkit-transition: all .3s;
  transition: all .3s;
  position: absolute;
  height: 1px;
  border-radius: 2px;
  background-color: #fff;
  width: 100%;
}

.header__sp__openbtn span:nth-child(1) {
  top: 2px;
}

.header__sp__openbtn span:nth-child(2) {
  top: 10px;
  -webkit-transition: 0s;
  transition: 0s;
}

.header__sp__openbtn span:nth-child(3) {
  top: 18px;
}

.header__sp__openbtn.active-span span:nth-child(1) {
  background-color: #000;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 10px;
}

.header__sp__openbtn.active-span span:nth-child(2) {
  opacity: 0;
  -webkit-transition: 0s;
  transition: 0s;
}

.header__sp__openbtn.active-span span:nth-child(3) {
  background-color: #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 11px;
}

.header__sp__nav {
  position: fixed;
  width: 335px;
  height: 100vh;
  top: 0%;
  right: -1000px;
  background-color: #cbcbcb;
  -webkit-transition: .4s;
  transition: .4s;
  z-index: 9998;
}

@media screen and (max-width: 500px) {
  .header__sp__nav {
    width: 275px;
  }
}

@media screen and (max-width: 400px) {
  .header__sp__nav {
    width: 250px;
  }
}

.header__sp__nav.panelactive {
  right: 0;
  -webkit-transition: .5s;
  transition: .5s;
}

.header__sp__nav__logo {
  width: 140px;
  display: block;
  margin: 0 auto;
  padding-top: 5vh;
}

@media screen and (max-width: 500px) {
  .header__sp__nav__logo {
    width: 125px;
  }
}

.header__sp__nav .menu-header-container {
  width: 80%;
  margin: 15% auto 5% auto;
}

.header__sp__nav .menu-header-container ul li {
  margin: 10% 0;
}

.header__sp__nav .menu-header-container ul li a {
  font-size: 16px;
  color: #000;
  font-family: "Ryumin Light KL";
  display: block;
  border-bottom: 1px solid #000;
  line-height: 31px;
}

.header__sp__nav__sub__form {
  background-color: #fff;
  border: 1px solid transparent;
  width: 55%;
  margin: 12% 10%;
  text-align: center;
  height: 40px;
}

.header__sp__nav__sub__form a {
  font-size: 16px;
  font-family: "Ryumin Medium KL";
  color: #000;
  line-height: 40px;
}

.header__sp__nav__sub ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 80%;
  margin: 0 auto;
}

.header__sp__nav__sub .svg-inline--fa {
	color: #000;
}

.header__sp__nav__sub ul li:nth-child(even) {
  margin: 0 10%;
}

.header__sp__nav__sub ul li a i {
  font-size: 2.5rem;
  color: #000;
}

.header__sp__nav__sub ul li a img {
  width: 24px;
  height: 24px;
}

.header__cover {
  display: none;
}

@media screen and (max-width: 760px) {
  .header__cover {
    display: block;
  }
}

.header__cover.cover__bg {
  height: 100%;
  width: 100%;
  visibility: visible;
  background: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
}

.fv {
  height: 100vh;
  position: relative;
}

.fv__video {
    position: absolute;
    z-index: -1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;	
}

.fv__video::before {
content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #0000006b;
	z-index: 0;
}

.fv__video video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
}

.fv__logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.fv__logo img {
  width: 275px;
  margin: 0 auto;
  display: block;
}

@media screen and (max-width: 760px) {
  .fv__logo img {
    width: 200px;
  }
}

.about {
  padding: 15% 0 8% 0;
}

.about__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 85%;
  max-width: 1300px;
  margin: 0 auto 145px auto;
}

@media screen and (max-width: 1200px) {
  .about__inner {
    width: 90%;
  }
}

@media screen and (max-width: 760px) {
  .about__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    width: 100%;
    margin-bottom: 15%;
  }
}

.about__inner__pcimg {
  width: 580px;
  height: auto;
}

@media screen and (max-width: 1000px) {
  .about__inner__pcimg {
    width: 100%;
  }
}

.about__inner__box {
  color: #fff;
  margin-left: 10%;
}

@media screen and (max-width: 760px) {
  .about__inner__box {
    margin-left: 0;
  }
}

.about__inner__box__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

@media screen and (max-width: 760px) {
  .about__inner__box__wrapper {
    display: block;
  }
}

.about__inner__box h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  padding: 5px 15px;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  height: 428px;
  text-align: center;
  letter-spacing: 3px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

@media screen and (max-width: 760px) {
  .about__inner__box h2 {
    height: auto;
    width: 430px;
    font-size: 4.3rem;
    margin-left: 3%;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}

@media screen and (max-width: 600px) {
  .about__inner__box h2 {
    font-size: 3.5rem;
    width: 340px;
  }
}

@media screen and (max-width: 500px) {
  .about__inner__box h2 {
    font-size: 3rem;
    width: 290px;
  }
}

.about__inner__box__txt {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  height: 340px;
  line-height: 30px;
  margin: 60% 19% 0 0;
  letter-spacing: 1px;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

@media screen and (max-width: 1200px) {
  .about__inner__box__txt {
    margin-right: 10%;
  }
}

@media screen and (max-width: 760px) {
  .about__inner__box__txt {
    margin: 8% 3% 5% 3%;
    height: auto;
    line-height: 26px;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}

.about__inner__box__btn {
  margin: 31% 0 0 0;
  width: 145px;
  position: relative;
}

@media screen and (max-width: 760px) {
  .about__inner__box__btn {
    margin: 0 3% 8% auto;
  }
}

.about__inner__box__btn a {
  color: #fff;
  font-size: 18px;
  font-family: "Ryumin Regular KL";
  display: block;
  -webkit-transition: all .4s;
  transition: all .4s;
  position: relative;
}

.about__inner__box__btn a:hover::after {
  -webkit-transition: all .4s;
  transition: all .4s;
  left: 8px;
}

.about__inner__box__btn a::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0%;
  bottom: 0%;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.about__inner__box__btn::before {
  content: "";
  width: 25px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  right: -2px;
  bottom: 5px;
  -webkit-transform: rotate(25deg);
          transform: rotate(25deg);
  -webkit-transition: all .4s;
  transition: all .4s;
}

.about__inner__box__btn:hover::before {
  -webkit-transition: all .4s;
  transition: all .4s;
  right: -10px;
}

.about__inner__btm__img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1700px) {
  .about__inner__btm__img {
    height: 900px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (max-width: 760px) {
  .about__inner__btm__img {
    display: none;
  }
}

.about__inner__btm__img__02 {
  display: none;
}

@media screen and (max-width: 760px) {
  .about__inner__btm__img__02 {
    display: block;
    width: 100%;
    height: auto;
  }
}

.news {
  background-image: url(/wp-content/uploads/2022/01/news-top-img.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  position: relative;
  z-index: 1;
  padding: 125px 0 90px 0;
}

@media screen and (max-width: 760px) {
  .news {
    padding: 20% 0 15% 0;
  }
}

.news::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#3e3b2080), color-stop(50%, #342204));
  background: linear-gradient(to right, #3e3b2080, #342204 50%);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

.news h4 {
  font-size: 5rem;
  color: #fff;
  font-family: "Ryumin Regular KL";
  width: 85%;
  max-width: 1300px;
  margin: 0 auto 0 auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .news h4 {
    width: auto;
    margin-left: 3%;
  }
}

.news__sub {
  color: #fff;
  font-size: 14px;
  font-family: "Ryumin Regular KL";
  width: 85%;
  max-width: 1300px;
  margin: -10px auto 0 auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .news__sub {
    width: auto;
    margin-left: 3%;
  }
}

.news__border {
  width: 60%;
  min-width: 550px;
  height: 1px;
  background-color: #fff;
  margin: 20px 0 70px 0;
}

@media screen and (max-width: 760px) {
  .news__border {
    width: 80%;
    min-width: 270px;
  }
}

.news__box {
	width: 85%;
	max-width: 1300px;
  margin: 0 auto;
}

.news__item {
	width: 28%;
}

@media screen and (max-width: 1200px) {
	.news__item {
	width: 30%;
}
}

.top__news__img {
	margin-bottom: 16px;
	overflow: hidden;
}

.top__news__img a {
	display: block;
}

.top__news__img a:hover {
	opacity: 1!important;
}

.top__news__img a:hover img{
	transform: scale(1.1,1.1);
	 transition: transform .6s cubic-bezier(.16,.5,.43,1);
}

.top__news__img a img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	object-fit: cover;
	  transition: transform .6s cubic-bezier(.16,.5,.43,1);
}

@media screen and (max-width: 760px) {
  .news__box {
    margin-left: 3%;
	 width: 94%;
  }
	.news__item {
		width: 100%;
	}
	.top__news__img {
		width: 150px;
		min-width: 150px;
	}
}

@media screen and (max-width: 400px) {
		.top__news__img {
		width: 125px;
		min-width: 125px;
	}
} 

@media screen and (max-width: 760px) {
  .news__box ul ul {
    display: flex;
  }
}

.news__box ul ul:nth-child(even) {
  margin-top: 40px;
  margin-bottom: 40px;
}

@media screen and (max-width: 760px) {
  .news__box ul ul:nth-child(even) {
    margin-top: 6%;
    margin-bottom: 6%;
  }
}

.news__box ul ul li {
  color: #fff;
  font-size: 16px;
  font-family: "Ryumin Regular KL";
}

.news__box ul ul li a {
  -webkit-transition: all .4s;
  transition: all .4s;
}

.news__box ul ul li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}


.news__wrap {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

@media screen and (max-width: 760px) {
  .news__box ul ul div {
    margin-left: 5%;
  }
	.news__wrap {
		display: block;
	}
}

.news__btn .about__inner__box__btn {
  margin: 75px 10% 0 auto;
}

.service {
  padding: 200px 0 150px 0;
}

@media screen and (max-width: 760px) {
  .service {
    padding: 30% 0 20% 0;
  }
}

.service h4 {
  font-family: "Ryumin Regular KL";
  font-size: 5rem;
  color: #fff;
  width: 85%;
  max-width: 1300px;
  margin: 0 auto;
  text-align: right;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .service h4 {
    width: auto;
    margin-right: 3%;
  }
}

.service__sub {
  color: #fff;
  font-size: 14px;
  font-family: "Ryumin Regular KL";
  width: 85%;
  max-width: 1300px;
  margin: -10px auto 0 auto;
  text-align: right;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .service__sub {
    width: auto;
    margin-right: 3%;
  }
}

.service__border {
  width: 60%;
  min-width: 550px;
  height: 1px;
  background-color: #fff;
  margin: 20px 0 90px auto;
}

@media screen and (max-width: 760px) {
  .service__border {
    width: 80%;
    min-width: 270px;
  }
}

.service__box {
  width: 85%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1300px;
  margin: 0 auto;
}

@media screen and (max-width: 760px) {
  .service__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    width: auto;
    margin-right: 0;
    margin-left: 0;
  }
}

.service__box__img img {
  width: 100%;
  height: auto;
}

.service__box__img__01 {
  display: block;
}

@media screen and (max-width: 760px) {
  .service__box__img__01 {
    display: none;
  }
}

.service__box__img__02 {
  display: none;
}

@media screen and (max-width: 760px) {
  .service__box__img__02 {
    display: block;
  }
}

.service__box__txt {
  padding: 3% 5% 0 5%;
}

@media screen and (max-width: 760px) {
  .service__box__txt {
    padding: 0;
    margin-right: 3%;
    margin-left: 3%;
  }
}

.service__box__txt__p {
  color: #fff;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  font-family: "Ryumin Regular KL";
  font-size: 16px;
  line-height: 30px;
  max-width: 150px;
  height: 370px;
}

@media screen and (max-width: 760px) {
  .service__box__txt__p {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    text-align: right;
    height: auto;
    max-width: 100%;
  }
}

.service__box__txt .about__inner__box__btn {
  margin: 35% 0 0 11%;
}

@media screen and (max-width: 760px) {
  .service__box__txt .about__inner__box__btn {
    margin: 5% 0 10% auto;
  }
}

.top__gallery {
	margin: 75px 0 150px;
}

.top__gallery__box {
	margin: 0 0 0 auto;
	position: relative;
}

.top__gallery h4 {
font-size: 5rem;
    color: #fff;
    font-family: "Ryumin Regular KL";
    width: 85%;
    max-width: 1300px;
    margin: 0 auto 0 auto;
    letter-spacing: 1px;
}


.top__gallery__box  .swiper-button-next, .swiper-button-prev {
	top: 47%;
}

.top__gallery__box  .swiper-button-next::after, .swiper-button-prev::after {
	font-family: inherit;
	font-size: 0;
}

.top__gallery__box  .swiper-button-next::after {
	content: "";
	 display: block;
    width: 30px;
    height: 29px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.top__gallery__box  .swiper-button-prev::after {
	content: "";
	 display: block;
    width: 30px;
    height: 29px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.top__gallery__box  .swiper-button-next {
	right: 10px;
}

.top__gallery__box  .swiper-button-prev {
	left: 10px;
}

.top__gallery__box .swiper-pagination-bullet {
	background-color: #fff;
	width: 12px;
	height: 12px;
}

.top__gallery__box ul ul:nth-child(even) {
	margin-top: 0;
	margin-bottom: 0;
}

.top__gallery__box .swiper-pagination {
	bottom: -20%;
}

.access {
  padding: 100px 0 65px 0;
  background-image: url(/wp-content/uploads/2022/01/access-img.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  position: relative;
  z-index: 1;
}

.access h4 {
  font-size: 5rem;
  color: #fff;
  font-family: "Ryumin Regular KL";
  width: 85%;
  max-width: 1300px;
  margin: 0 auto 0 auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .access h4 {
    width: auto;
    margin-left: 3%;
  }
  .top__gallery__box .news__wrap {
	display: flex!important;  
   }
	.top__gallery__box ul ul {
		display: block!important;
	}
	.top__gallery__box ul ul div {
		margin-left: 0;
	}
	.top__gallery__box .top__news__img {
		width: 100%;
		height: auto;
	}
	.top__gallery h4 {
		width: auto;
		margin-left: 3%;
	}
}

.access__sub {
  color: #fff;
  font-size: 14px;
  font-family: "Ryumin Regular KL";
  width: 85%;
  max-width: 1300px;
  margin: -10px auto 0 auto;
  letter-spacing: 1px;
}

@media screen and (max-width: 760px) {
  .access__sub {
    width: auto;
    margin-left: 3%;
  }
}

.access__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 85%;
  max-width: 1300px;
  margin: 70px auto 0 auto;
}

@media screen and (max-width: 760px) {
  .access__box {
    display: block;
  }
}

.access__box__left {
  margin-right: 10%;
}

@media screen and (max-width: 760px) {
  .access__box__left {
    margin-right: 0;
  }
}

.access__box__left img {
  width: 100%;
  height: auto;
  min-width: 330px;
}

@media screen and (max-width: 1000px) {
  .access__box__left img {
    min-width: 280px;
  }
}

.access__box__left p {
  width: 170px;
  border: 1px solid #fff;
  height: 41px;
  text-align: center;
  margin: 30px auto 0 auto;
}

@media screen and (max-width: 760px) {
  .access__box__left p {
    margin: 30px auto 50px 0;
  }
}

.access__box__left p a {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  display: block;
  color: #fff;
  line-height: 41px;
  letter-spacing: 1.5px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.access__box__left p a:hover {
  -webkit-transition: all .4s;
  transition: all .4s;
  background-color: #fff;
  color: #000;
}

.access__box__right__info {
  padding-top: 25px;
}

.access__box__right__info p {
  font-size: 16px;
  color: #fff;
  font-family: "Ryumin Regular KL";
  letter-spacing: 2.3px;
}

.access__box__right__info p:nth-child(2) {
  margin-top: 10px;
  margin-bottom: 10px;
}

.access__box__right__car {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 80px 0 45px 0;
}

@media screen and (max-width: 1000px) {
  .access__box__right__car {
    margin: 10% 0 5% 0;
  }
}

.access__box__right__car img {
  width: 35px;
  height: auto;
}

@media screen and (max-width: 760px) {
  .access__box__right__car img {
    width: 30px;
  }
}

.access__box__right__car p {
  font-size:16px;
  font-family: "Ryumin Regular KL";
  letter-spacing: 2.2px;
  color: #fff;
  margin-left: 40px;
}

@media screen and (max-width: 760px) {
  .access__box__right__car p {
    margin-left: 20px;
  }
}

.access__box__right__train {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.access__box__right__train img {
  width: 35px;
  height: auto;
}

@media screen and (max-width: 760px) {
  .access__box__right__train img {
    width: 30px;
  }
}

.access__box__right__train p {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  letter-spacing: 2.2px;
  color: #fff;
  margin-left: 40px;
}

@media screen and (max-width: 760px) {
  .access__box__right__train p {
    margin-left: 20px;
  }
}

.page__fv {
  background-image: url(/wp-content/uploads/2022/01/top-img.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  height: 100vh;
  position: relative;
	z-index: 1;
}

.page__fv::before {
content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #00000047;
	z-index: -1;
}

.contact-fv-bg {
background-image: url(/wp-content/uploads/2022/01/contact-top-img.jpg)!important;
}

.service-fv-bg {
background-image: url(/wp-content/uploads/2022/01/service-top-img.jpg);
}

.access-fv-bg {
background-image: url(/wp-content/uploads/2022/01/access-top-img.jpg);
}

.reserve-fv-bg {
background-image: url(/wp-content/uploads/2022/01/yoyaku-top-img.jpg);
}

.privacy__fv {
	background-image: url(/wp-content/uploads/2022/02/privacy-top-img.jpg);
}

.page__fv h3 {
  font-family: "Ryumin Light KL";
  font-size: 1.7rem;
  color: #fff;
  padding-top: 85vh;
  width: 95%;
  margin: 0 auto;
}

@media screen and (max-width: 760px) {
  .page__fv h3 {
    font-size: 16px;
    padding-top: 75vh;
  }
}

.page__fv h2 {
  font-family: "Ryumin Regular KL";
  font-size: 4.6rem;
  color: #fff;
  width: 95%;
  margin: -7px auto 0 auto;
}

@media screen and (max-width: 760px) {
  .page__fv h2 {
    font-size: 4.2rem;
  }
}

@media screen and (max-width: 600px) {
  .page__fv h2 {
    font-size: 3.8rem;
  }
}

.page__border {
  background-color: #fff;
  width: 70%;
  min-width: 890px;
  height: 1px;
}

@media screen and (max-width: 1000px) {
  .page__border {
    min-width: 95%;
    width: 95%;
  }
}

.page__about__top {
  width: 85%;
  margin: 0 auto;
  padding: 170px 0 200px 0;
  color: #fff;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

@media screen and (min-width: 1700px) {
  .page__about__top {
    max-width: 1400px;
  }
}

@media screen and (max-width: 1600px) {
  .page__about__top {
    width: 90%;
  }
}

@media screen and (max-width: 1400px) {
  .page__about__top {
    width: 90%;
  }
}

@media screen and (max-width: 1000px) {
  .page__about__top {
    width: 95%;
  }
}

@media screen and (max-width: 760px) {
  .page__about__top {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    padding: 20% 0;
  }
}

.page__about__top h2 {
  font-size: 4.9rem;
  font-family: "Ryumin Regular KL";
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  height: 595px;
  letter-spacing: 1px;
  padding: 5px 15px;
  text-align: center;
}

@media screen and (max-width: 760px) {
  .page__about__top h2 {
    height: auto;
    font-size: 4rem;
    width: 484px;
    text-align: left;
  }
}

@media screen and (max-width: 600px) {
  .page__about__top h2 {
    font-size: 3.2rem;
    width: 355px;
  }
}

@media screen and (max-width: 400px) {
  .page__about__top h2 {
    font-size: 2.8rem;
    width: 100%;
  }
}

@media screen and (max-width: 350px) {
  .page__about__top h2 {
    width: 100%;
	  padding: 5px 0px 5px 5px;
  }
}

@media screen and (max-width: 315px) {
  .page__about__top h2 {
    width: 100%;
  }
}


.page__about__top__txt {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  height: 520px;
  line-height: 46px;
  margin: 20% 8% 0 0;
}

@media screen and (max-width: 1600px) {
  .page__about__top__txt {
    line-height: 2.9vw;
  }
}

@media screen and (max-width: 1200px) {
  .page__about__top__txt {
    height: 605px;
    margin-top: 8%;
    line-height: 3.2vw;
  }
}

@media screen and (max-width: 760px) {
  .page__about__top__txt {
    height: auto;
    margin-right: 0;
    line-height: 28px;
	  font-size: 16px;
  }
}

.page__about__why {
  padding: 90px 5% 200px 5%;
  color: #fff;
  background-image: url(/wp-content/uploads/2022/01/about-back01.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  width: 100%;
  height: 1500px;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 1100px) {
  .page__about__why {
    padding-right: 3%;
    padding-left: 3%;
  }
}

@media screen and (max-width: 760px) {
  .page__about__why {
    padding-top: 15%;
    padding-bottom: 27%;
    height: auto;
  }
}

.page__about__why::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #0000007b;
  z-index: 0;
}

.page__about__why h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 80px;
  margin: 0 auto;
  padding: 25px 20px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 760px) {
  .page__about__why h2 {
    font-size: 4rem;
    line-height: 68px;
top: 5%;
  }
}

@media screen and (max-width: 600px) {
  .page__about__why h2 {
    font-size: 3.5rem;
    line-height: 55px;
  }
}

.page__about__why p {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 125px auto 0 auto;
  height: 480px;
  line-height: 40px;
  position: absolute;
  left: 50%;
  bottom: 13%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media screen and (max-width: 1100px) {
  .page__about__why p {
    height: 560px;
  }
}

@media screen and (max-width: 900px) {
  .page__about__why p {
    line-height: 4.5vw;
  }
}

@media screen and (max-width: 760px) {
  .page__about__why p {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    line-height: 33px;
    height: auto;
    margin-top: 600px;
	  font-size: 16px;
    position: inherit;
  }
}

@media screen and (max-width: 600px) {
  .page__about__why p {
    margin-top: 500px;
  }
}

/* _::-webkit-full-page-media,
_:future,
:root .page__about__why h2 {
  left: 46%;
  top: 8%;
  -webkit-transform: translateX(-46%);
          transform: translateX(-46%);
}

@media screen and (max-width: 760px) {
  _::-webkit-full-page-media,
  _:future,
  :root .page__about__why h2 {
    left: 40%;
    top: 5%;
    -webkit-transform: translateX(-40%);
            transform: translateX(-40%);
  }
}

@media screen and (max-width: 600px) {
  _::-webkit-full-page-media,
  _:future,
  :root .page__about__why h2 {
    left: 34%;
    -webkit-transform: translateX(-34%);
            transform: translateX(-34%);
  }
}

@media screen and (max-width: 400px) {
  _::-webkit-full-page-media,
  _:future,
  :root .page__about__why h2 {
    left: 24%;
    -webkit-transform: translateX(-24%);
            transform: translateX(-24%);
  }
} */

/* @media screen and (max-width: 600px) {
  _::-webkit-full-page-media,
  _:future,
  :root .page__about__why p {
    margin-top: 520px;
  }
} */

.about__kappan {
  color: #fff;
  padding: 300px 0 220px 0;
}

@media screen and (max-width: 760px) {
  .about__kappan {
    padding: 45% 0 38% 0;
  }
}

.about__kappan__ttl h2 {
  font-family: "Ryumin Regular KL";
  font-size: 3.4rem;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 0 auto;
  padding: 0 3% 0 3%;
  line-height: 70px;
  height: 476px;
  max-width: 285px;
  width: 285px;
}

@media screen and (max-width: 600px) {
  .about__kappan__ttl h2 {
    width: 245px;
  }
}

.about__toppan {
  background-image: url(/wp-content/uploads/2022/01/about-back02.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
  z-index: 1;
  color: #fff;
  width: 100%;
  padding: 90px 0 75px 0;
}

@media screen and (max-width: 760px) {
  .about__toppan {
    padding: 90px 0 110px 0;
  }
}

.about__toppan::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#13100f36), to(#00645640));
  background: linear-gradient(to right, #13100f36, #00645640);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

.about__toppan__inner {
  width: 90%;
  margin: 0 auto;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

@media screen and (min-width: 1700px) {
  .about__toppan__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .about__toppan__inner {
    width: 95%;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}

.about__toppan__inner h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  padding: 5px 10px;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  text-align: center;
  height: 235px;
}

@media screen and (max-width: 760px) {
  .about__toppan__inner h2 {
    height: auto;
    width: 215px;
	  font-size: 4rem;
  }
}


@media screen and (max-width: 600px) {
  .about__toppan__inner h2 {
    height: auto;
    width: 155px;
	  font-size: 3.2rem;
  }
}

@media screen and (max-width: 400px) {
  .about__toppan__inner h2 {
    height: auto;
    width: 165px;
	  font-size: 2.8rem;
  }
}

.about__toppan__inner p {
  font-size: 2rem;
  color: #fff;
  font-family: "Ryumin Regular KL";
  height: 410px;
  line-height: 40px;
  margin: 155px 80px 0 0;
}

@media screen and (max-width: 760px) {
  .about__toppan__inner p {
    margin: 8% 0 0 0;
    height: auto;
	  font-size: 16px;
	  line-height: 33px;
  }
}

.about__history {
  color: #fff;
  padding: 115px 0 150px 0;
}

.about__history__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 90%;
	flex-direction: column-reverse;
}

@media screen and (min-width: 1700px) {
  .about__history__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .about__history__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    width: 95%;
  }
}

.about__history__inner__img {
  max-width: 315px;
  height: auto;
  margin-top: 80px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 1000px) {
  .about__history__inner__img {
    margin-top: 40px;
  }
}

@media screen and (max-width: 760px) {
  .about__history__inner__img {
    width: 315px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 400px) {
  .about__history__inner__img {
    width: 90%;
  }
}

.about__history__inner__img img {
  width: 100%;
  height: auto;
}

.about__history__inner__img p {
  font-size: 14px;
  font-family: "Ryumin Light KL";
  margin-top: 15px;
	text-align: center;
}

.about__history__inner__txt {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

@media screen and (max-width: 760px) {
  .about__history__inner__txt {
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    margin-left: 0;
  }
}

.about__history__inner__txt h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  padding: 5px 15px;
  text-align: center;
  height: 165px;
  letter-spacing: 20px;
  text-indent: 20px;
}

@media screen and (max-width: 760px) {
  .about__history__inner__txt h2 {
    height: auto;
    width: 175px;
    padding: 5px 12px;
	  font-size:4rem;
  }
}

@media screen and (max-width: 600px) {
  .about__history__inner__txt h2 {
    width: 150px;
	 font-size: 3.2rem;
  }
}

@media screen and (max-width: 400px) {
  .about__history__inner__txt h2 {
    width: 140px;
	 font-size: 2.8rem;
  }
}

.about__history__inner__txt p {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  height: 460px;
  margin: 80px 66px 0 0;
  line-height: 40px;
}

@media screen and (max-width: 1300px) {
  .about__history__inner__txt p {
    margin-right: 8%;
	  height: 500px;
  }
}

@media screen and (max-width: 1100px) {
  .about__history__inner__txt p {
    margin-top: 40px;
    margin-right: 5%;
	  line-height: 3.6vw;
  }
}

@media screen and (max-width: 760px) {
  .about__history__inner__txt p {
    height: auto;
    margin: 8% 0 60px 0;
	  line-height: 33px;
	  font-size: 16px;
  }
}

.about__kathuzi {
  background-image: url(/wp-content/uploads/2022/01/about-back03.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
  z-index: 1;
  color: #fff;
  width: 100%;
  padding: 90px 0 75px 0;
}

@media screen and (max-width: 760px) {
  .about__kathuzi {
    padding: 90px 0 110px 0;
  }
}

.about__kathuzi::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#5e4f4a42), to(#381d01));
  background: linear-gradient(to right, #5e4f4a42, #381d01);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

.about__kathuzi h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  padding: 5px 15px;
  text-align: center;
  height: 165px;
  letter-spacing: 20px;
  text-indent: 20px;
}

@media screen and (max-width: 760px) {
  .about__kathuzi h2 {
    height: auto;
    width: 185px;
    padding: 5px 12px;
  }
}

@media screen and (max-width: 600px) {
  .about__kathuzi h2 {
    width: 150px;
	  font-size: 3.2rem;
  }
}

@media screen and (max-width: 400px) {
  .about__kathuzi h2 {
    width: 140px;
	  font-size: 2.8rem;
  }
}

.about__kathuzi p {
  margin-top: 100px;
  height: 410px;
  margin-right: 66px;
}

@media screen and (max-width: 760px) {
  .about__kathuzi p {
    height: auto;
    margin-right: 0;
    margin-top: 8%;
  }
}

.contact__box {
  padding: 140px 5% 70px 5%;
  color: #fff;
  background-image: url(/wp-content/uploads/2022/01/contact-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
}

.contact__box::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#000), color-stop(rgba(0, 0, 0, 0.44)), to(#000));
  background: linear-gradient(#000, rgba(0, 0, 0, 0.44), #000);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

@media screen and (max-width: 1000px) {
  .contact__box {
    padding-left: 3%;
    padding-right: 3%;
  }
}

@media screen and (min-width: 1700px) {
  .contact__box__inner {
    max-width: 1400px;
    margin: 0 auto;
  }
}

.contact__box__ttl {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 0 auto;
  line-height: 38px;
  height: 365px;
  max-width: 76px;
  width: 76px;
}

.contact__box__tel {
  text-align: center;
  width: 390px;
  height: 65px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  margin: 165px auto 30px auto;
}

@media screen and (max-width: 760px) {
  .contact__box__tel {
    width: 60%;
    min-width: 250px;
  }
}

.contact__box__tel a {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  display: block;
  line-height: 65px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact__box__tel a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact__box__txt {
  font-size: 16px;
  font-family: "Ryumin Light KL";
  text-align: center;
  margin-bottom: 25px;
}

.contact__box__form {
  width: 80%;
  margin: 95px auto 0 auto;
  border-spacing: 0 30px;
}

@media screen and (max-width: 1200px) {
  .contact__box__form {
    width: 100%;
  }
}

@media screen and (max-width: 760px) {
  .contact__box__form {
    width: 90%;
  }
}

@media screen and (max-width: 500px) {
  .contact__box__form {
    width: 95%;
  }
}

.contact__box__form tr th {
  font-size:16px;
  font-family: "Ryumin Light KL";
  text-align: right;
}

@media screen and (max-width: 760px) {
  .contact__box__form tr th {
    width: 100%;
    display: block;
    text-align: left;
  }
}

@media screen and (max-width: 760px) {
  .contact__box__form tr td {
    width: 100%;
    display: block;
  }
}

.contact__box__form tr td input {
  border: 2px solid #fff;
  background-color: #9fa0a0;
  font-size:16px;
  color: #fff;
  font-family: "Ryumin Light KL";
  width: 65%;
  height: 41px;
  margin-left: 40px;
}

@media screen and (max-width: 760px) {
  .contact__box__form tr td input {
    margin-left: 0;
    width: 100%;
    margin-top: 10px;
  }
}

.contact__box__form tr td input::-webkit-input-placeholder {
  color: #fff;
  font-size: 14px;
  padding-left: 20px;
}

.contact__box__form tr td input:-ms-input-placeholder {
  color: #fff;
  font-size: 14px;
  padding-left: 20px;
}

.contact__box__form tr td input::-ms-input-placeholder {
  color: #fff;
  font-size: 14px;
  padding-left: 20px;
}

.contact__box__form tr td input::placeholder {
  color: #fff;
  font-size: 14px;
  padding-left: 20px;
}

.contact__box__form tr td textarea {
  border: 2px solid #fff;
  background-color: #9fa0a0;
  width: 65%;
  border-radius: 0px;
	color: #fff;
  height: 215px;
  margin-left: 40px;
}

@media screen and (max-width: 760px) {
  .contact__box__form tr td textarea {
    margin-left: 0;
    margin-top: 10px;
    width: 100%;
  }
}

.contact__box__form__tr__textarea {
  vertical-align: top;
}

.contact__box__form__send {
  font-size: 16px;
  background-color: #fff;
  width: 180px;
  height: 45px;
  color: #000;
  font-family: "Ryumin Regular KL";
  letter-spacing: 0.1rem;
  text-indent: 0.1rem;
  display: block;
  margin: 30px auto 0 auto;
  border: 1px solid transparent;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact__box__form__send:hover {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
}

.access-page {
  padding: 200px 0 90px 0;
  color: #fff;
  background-image: url(/wp-content/uploads/2022/01/access-back.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 760px) {
  .access-page {
    padding-top: 32%;
  }
}

.access-page::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#18171d), color-stop(#2c2652), to(#18171d));
  background: linear-gradient(#18171d, #2c2652, #18171d);
  z-index: -2;
  opacity: 0.5;
}

.access-page__inner {
  width: 85%;
  margin: 0 auto;
}

@media screen and (min-width: 1700px) {
  .access-page__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .access-page__inner {
    width: 90%;
  }
}

.access-page__img {
  max-width: 840px;
  height: auto;
  margin: 0 auto;
}

.access-page__img img {
  width: 100%;
  height: auto;
}

.access-page__img p {
  text-align: center;
  width: 156px;
  height: 41px;
  border: 1px solid #fff;
  margin: 90px auto 220px auto;
}

@media screen and (max-width: 760px) {
  .access-page__img p {
    margin: 20% auto 42% auto;
  }
}

.access-page__img p a {
  font-size: 16px;
  display: block;
  font-family: "Ryumin Regular KL";
  line-height: 41px;
  letter-spacing: 1.5px;
  background-color: transparent;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.access-page__img p a:hover {
  background-color: #fff;
  color: #000;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.access-page h1 {
  font-size: 3.5rem;
  font-family: "Ryumin Regular KL";
  text-align: center;
  padding: 0 2%;
}

.access-page ul {
  margin: 96px 0 103px 0;
}

.access-page ul li {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  text-align: center;
  padding: 0 2%;
}

.access-page ul li:nth-child(even) {
  margin: 18px 0;
}

.access-page ul li a {
  -webkit-transition: all .4s;
  transition: all .4s;
}

.access-page ul li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.access-page__info {
  border: 1px solid #fff;
  background-color: transparent;
  width: 755px;
  padding: 68px 2%;
  margin: 0 auto;
}

@media screen and (max-width: 1000px) {
  .access-page__info {
    width: 100%;
  }
}

@media screen and (max-width: 760px) {
  .access-page__info {
    padding: 15% 0;
  }
}

.access-page__info__car img {
  width: 33px;
  height: auto;
}

.access-page__info__train {
  padding-left: 3px;
}

.access-page__info__train img {
  width: 28px;
  height: auto;
}

.access-page__info div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 8%;
}

@media screen and (max-width: 760px) {
  .access-page__info div {
    padding: 0 3%;
  }
}

.access-page__info div:first-child {
  margin-bottom: 40px;
}

.access-page__info div figure {
  display: block;
  margin-right: 20px;
}

.access-page__info div figure img {
  display: block;
}

.access-page__info div p {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  letter-spacing: 2.3px;
}

.service-page__ttl {
  padding: 182px 0;
}

@media screen and (max-width: 760px) {
  .service-page__ttl {
    padding-top: 38%;
    padding-bottom: 30%;
  }
}

.service-page__ttl h3 {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  margin: 0 auto 115px auto;
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
  line-height: 38px;
  color: #fff;
  padding: 0 3%;
  height: 325px;
  max-width: 265px;
  width: 265px;
}

@media screen and (max-width: 600px) {
  .service-page__ttl h3 {
    width: 213px;
  }
}

.service-page__ttl img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1700px) {
  .service-page__ttl img {
    height: 900px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.service-page__main {
  padding: 90px 0 75px 0;
  background-image: url(/wp-content/uploads/2022/01/service-page-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
  z-index: 1;
  color: #fff;
}

.service-page__main::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(30%, #000), to(#0000));
  background: linear-gradient(#000 30%, #0000);
  z-index: -2;
  opacity: 0.5;
}

.service-page__main__inner {
  width: 90%;
  margin: 0 auto;
}

@media screen and (min-width: 1700px) {
  .service-page__main__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 1000px) {
  .service-page__main__inner {
    width: 95%;
  }
}

@media screen and (max-width: 760px) {
  .service-page__main__inner {
    width: 90%;
  }
}

.service-page__main__inner h2 {
  width: 300px;
  height: 60px;
  text-align: center;
  font-size: 3rem;
  font-family: "Ryumin Regular KL";
  margin: 0 auto;
  border: 1px solid #fff;
  line-height: 60px;
}

.service-page__main__sub {
  font-size: 2rem;
  text-align: center;
  letter-spacing: 1.5px;
  margin: 80px 0 50px 0;
}

@media screen and (max-width: 760px) {
  .service-page__main__sub {
    text-align: left;
    margin-top: 18%;
    margin-bottom: 25%;
  }
}

.service-page__main__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 950px) {
  .service-page__main__flex {
    display: block;
  }
}

.service-page__main__flex__ttl {
  margin-top: 38px;
  margin-right: 20px;
  letter-spacing: 2px;
}

@media screen and (max-width: 950px) {
  .service-page__main__flex__ttl {
    text-align: center;
    margin-top: 10%;
	  margin-right: 0px;
  }
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__ttl {
    text-align: left;
  }
}

.service-page__main__flex__ttl h4 {
  font-size: 2.6rem;
  font-family: "Ryumin Regular KL";
}

.service-page__main__flex__ttl p {
  font-size: 2rem;
  font-family: "Ryumin Regular KL";
}

.service-page__main__flex__menu table {
  border-spacing: 0 40px;
	border: none;
}

@media screen and (max-width: 950px) {
  .service-page__main__flex__menu table {
    margin: 0 auto;
  }
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__menu table {
    margin: 0 auto 0 0;
  }
}

.service-page__main__flex__menu table tr {
  vertical-align: top;
	border: none;
}

.service-page__main__flex__menu table tr th {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
	border: none;
}

.service-page__main__flex__menu table tr td {
	border: none;
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__menu table tr th {
    display: block;
    text-align: left;
    padding-bottom: 3px;
  }
}

.service-page__main__flex__menu table tr .th-pt {
  padding-top: 4px;
}

.service-page__main__flex__menu table tr .letter-spring-th {
  letter-spacing: 42px;
  text-indent: 42px;
	white-space:nowrap;
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__menu table tr .letter-spring-th {
    text-indent: 0px;
  }
}

.service-page__main__flex__menu table tr .letter-spring-th__02 {
  letter-spacing: 3px;
  text-indent: 3px;
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__menu table tr .letter-spring-th__02 {
    text-indent: 0px;
  }
}

@media screen and (max-width: 760px) {
  .service-page__main__flex__menu table tr td {
    display: block;
  }
}

.service-page__main__flex__menu table tr td p {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  margin-bottom: 10px;
  letter-spacing: 1.6px;
}

.service-page__main__flex__menu table tr td p .span-fs-l {
  font-size: 2.4rem;
}

.service-page__main__flex__menu table tr td p .span-space {
  padding: 0 23px;
}

.service-page__paper {
  margin-top: 131px;
}

@media screen and (max-width: 1000px) {
  .service-page__paper {
    margin-top: 5%;
  }
}

.service-page__paper__box {
  display: -ms-grid;
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 40px;
}

@media screen and (max-width: 1250px) {
  .service-page__paper__box {
    gap: 15px;
  }
}

@media screen and (max-width: 1020px) {
  .service-page__paper__box {
    gap: 40px 5%;
  }
}

@media screen and (max-width: 600px) {
  .service-page__paper__box {
    gap: 40px 5%;
  }
}

.service-page__paper__box__01 {
  -ms-grid-columns: 200px 200px 200px 200px 200px;
      grid-template-columns: 200px 200px 200px 200px 200px;
  margin-bottom: 60px;
}

@media screen and (max-width: 1250px) {
  .service-page__paper__box__01 {
    -ms-grid-columns: 20% 20% 20% 20% 20%;
        grid-template-columns:  20% 20% 20% 20% 20%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 1020px) {
  .service-page__paper__box__01 {
    width: auto;
    -ms-grid-columns: 20% 20% 20% 20%;
        grid-template-columns: 20% 20% 20% 20%;
  }
}

@media screen and (max-width: 800px) {
  .service-page__paper__box__01 {
    width: auto;
    -ms-grid-columns: 30% 30% 30%;
        grid-template-columns: 30% 30% 30%;
  }
}

@media screen and (max-width: 600px) {
  .service-page__paper__box__01 {
    -ms-grid-columns:50% 50%;
        grid-template-columns: 50% 50%;
  }
}


.service-page__paper__item {
  width: 200px;
  margin: 0 auto;
}

@media screen and (max-width: 1250px) {
  .service-page__paper__item {
    max-width: 200px;
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 600px) {
  .service-page__paper__item {
    max-width: 100%;
  }
}

.service-page__paper__item div img {
  width: 100%;
  height: auto;
}

.service-page__paper__item h4, .service-page__paper__item h5 {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  text-align: center;
}

.service-page__paper__item h4 {
  margin: 25px 5px 15px 5px;
}

@media screen and (max-width: 600px) {
  .service-page__paper__item h4 {
    margin: 5% 1% 2% 1%;
  }
}

.service-page__btn {
  width: 240px;
  height: 50px;
  text-align: center;
  margin: 150px auto 180px auto;
}

@media screen and (max-width: 760px) {
  .service-page__btn {
    margin: 10% auto 30% auto;
  }
}

.service-page__btn a {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  display: block;
  color: #000;
  line-height: 50px;
  background-color: #fff;
  overflow: hidden;
  position: relative;
  z-index: 1;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.service-page__btn a .top {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
}

.service-page__btn a .right {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  top: 0;
  right: 0;
  content: "";
  height: 100%;
  width: 1px;
  display: block;
}

.service-page__btn a .bottom {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  bottom: 0;
  right: 0;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
}

.service-page__btn a .left {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  height: 100%;
  width: 1px;
}

.service-page__btn a:hover {
  background-color: transparent;
  color: #fff;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.service-page__btn a:hover .top {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  content: "";
}

.service-page__btn a:hover .right {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.service-page__btn a:hover .bottom {
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.service-page__btn a:hover .left {
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.service-page__envelope {
  margin-top: 70px;
}

@media screen and (max-width: 600px) {
  .service-page__envelope {
    margin-top: 5%;
  }
}

.service-page__envelope__box {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 200px 200px 200px;
      grid-template-columns: 200px 200px 200px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 50px;
}

@media screen and (max-width: 760px) {
  .service-page__envelope__box {
    -ms-grid-columns: 200px 200px;
        grid-template-columns: 200px 200px;
    gap: 40px 10%;
  }
}

@media screen and (max-width: 600px) {
  .service-page__envelope__box {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    gap: 40px 5%;
  }
}

.service-page__envelope__item img {
  width: 100%;
  height: auto;
}

.service-page__envelope__item h4 {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  text-align: center;
  margin-top: 20px;
}

.service-page__shop {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 950px) {
  .service-page__shop {
    display: block;
  }
}

.service-page__shop__ttl h4 {
  font-size: 2.6rem;
  font-family: "Ryumin Regular KL";
  letter-spacing: 2px;
}

@media screen and (max-width: 950px) {
  .service-page__shop__ttl h4 {
    text-align: center;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 760px) {
  .service-page__shop__ttl h4 {
    text-align: left;
  }
}

.service-page__shop__menu table {
  width: 590px;
  margin-left: 168px;
	border:none!important;
}

.service-page__shop__menu table tr,th,td {
	border: none!important;
}

@media screen and (max-width: 950px) {
  .service-page__shop__menu table {
    width: 545px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (max-width: 760px) {
  .service-page__shop__menu table {
    width: 100%;
    margin-left: 0;
  }
}

.service-page__shop__menu table tr td p {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  line-height: 28px;
}

.service-page__color {
  margin: 95px auto 0 auto;
  max-width: 1200px;
}

@media screen and (max-width: 600px) {
  .service-page__color {
    margin-top: 18%;
  }
}

.service-page__color__grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 50px 5%;
}

@media screen and (max-width: 1200px) {
  .service-page__color__grid {
    gap: 50px 3.5%;
  }
}

@media screen and (max-width: 1000px) {
  .service-page__color__grid {
    gap: 50px 5%;
  }
}

@media screen and (max-width: 760px) {
  .service-page__color__grid {
    gap: 40px 6%;
  }
}

.service-page__color__grid__item div {
  width: 100px;
  height: 100px;
  border-radius: 50px;
  margin: 0 auto;
}

@media screen and (max-width: 500px) {
  .service-page__color__grid__item div {
    width: 90px;
    height: 90px;
  }
}

.service-page__color__grid__item h6 {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  text-align: center;
  margin-top: 15px;
}

.service-page__color__grid__item .color-box-01 {
  background-color: #fff;
}

.service-page__color__grid__item .color-box-02 {
  background-color: #000;
}

.service-page__color__grid__item .color-box-03 {
  background-color: #fc4ff4;
}

.service-page__color__grid__item .color-box-04 {
  background-color: #f99a1c;
}

.service-page__color__grid__item .color-box-05 {
  background-color: #5eef5e;
}

.service-page__color__grid__item .color-box-06 {
  background-color: #4f4f4f;
}

.service-page__color__grid__item .color-box-07 {
  background-color:#fffe52;
}

.service-page__color__grid__item .color-box-08 {
  background-color: #f469bc;
}

.service-page__color__grid__item .color-box-09 {
  background-color: #d3d3d3;
}

.service-page__color__grid__item .color-box-10 {
  background-color: #f9d98a;
}

.service-page__color__grid__item .color-box-11 {
  background-color: #00a0e9;
}

.service-page__color__grid__item .color-box-12 {
  background-color: #e4007f;
}

.service-page__color__grid__item .color-box-13 {
  background-color: #fff100;
}

.service-page__color__grid .empty-item {
  display: none;
}

@media screen and (max-width: 1000px) {
  .service-page__color__grid .empty-item {
    display: block;
    width: 100px;
  }
}

@media screen and (max-width: 500px) {
  .service-page__color__grid .empty-item {
    width: 90px;
  }
}

.service-page__color__txt {
  font-size: 14px;
  font-family: "Ryumin Regular KL";
  text-align: right;
  margin-top: 25px;
  margin-bottom: 150px;
}

@media screen and (max-width: 760px) {
  .service-page__color__txt {
    margin-top: 0;
    text-align: left;
    margin-bottom: 30%;
  }
}

.service-page__kappan {
  margin-top: 160px;
}

@media screen and (max-width: 760px) {
  .service-page__kappan {
    margin-top: 20%;
  }
}

.service-page__kappan__box {
  text-align: center;
}

@media screen and (max-width: 760px) {
  .service-page__kappan__box {
    text-align: left;
  }
}

.service-page__kappan__box .kappan-price {
  font-size: 2.6rem;
  font-family: "Ryumin Regular KL";
  letter-spacing: 15px;
  text-indent: 15px;
  margin-bottom: 18px;
}

@media screen and (max-width: 760px) {
  .service-page__kappan__box .kappan-price {
    text-indent: 0px;
  }
}

.service-page__kappan__box .kappan-price__02 {
  font-size: 2.6rem;
  font-family: "Ryumin Regular KL";
  letter-spacing: 1.4px;
}

.service-page__kappan__box .kappan-price__02 span {
  font-size: 16px;
}

.service-page__kappan__box .kappan-price__txt {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  letter-spacing: 1.4px;
}

.service-page__kappan .box-02 {
  margin: 30px 0 60px 0;
}

.service-page__kappan .service-page__btn {
  margin-top: 60px;
  margin-bottom: 30px;
}

.reserve-page {
  background-image: url(/wp-content/uploads/2022/01/reserve-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  position: relative;
  z-index: 1;
  color: #fff;
  padding: 175px 0 100px 0;
}

@media screen and (max-width: 760px) {
  .reserve-page {
    padding-top: 22%;
  }
}

.reserve-page::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#000), color-stop(rgba(0, 0, 0, 0.44)), to(#000));
  background: linear-gradient(#000, rgba(0, 0, 0, 0.44), #000);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

.reserve-page__inner {
  width: 90%;
  margin: 0 auto;
}

@media screen and (min-width: 1700px) {
  .reserve-page__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 1000px) {
  .reserve-page__inner {
    width: 95%;
  }
}

@media screen and (max-width: 760px) {
  .reserve-page__inner {
    width: 90%;
  }
}

.reserve-page__table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 760px) {
  .reserve-page__table {
    display: block;
  }
}

.reserve-page__table .table-card {
  margin-right: 8%;
}

@media screen and (max-width: 760px) {
  .reserve-page__table .table-card {
    margin-right: 0%;
    margin-bottom: 10%;
  }
}

.reserve-page__table div h4 {
  font-size: 2.6rem;
  font-family: "Ryumin Regular KL";
  letter-spacing: 1.5px;
  margin-bottom: -20px;
}

@media screen and (max-width: 760px) {
  .reserve-page__table div h4 {
    margin-bottom: -30px;
  }
}

.reserve-page__table div table {
  border-spacing: 0 40px;
}

.reserve-page__table div table tr {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  letter-spacing: 1.5px;
}

.reserve-page__table div table tr th {
  vertical-align: top;
  white-space: nowrap;
}

@media screen and (max-width: 760px) {
  .reserve-page__table div table tr th {
    display: block;
    text-align: left;
  }
}

.reserve-page__table div table tr .th-pt {
  padding-top: 10px;
}

.reserve-page__table div table tr .letter-spring-th {
  letter-spacing: 42px;
}

.reserve-page__table div table tr .letter-spring-th__02 {
  letter-spacing: 3px;
  text-align: left;
}

.reserve-page__table div table tr td {
  letter-spacing: 2px;
}

@media screen and (max-width: 760px) {
  .reserve-page__table div table tr td {
    display: block;
  }
}

.reserve-page__table div table tr td .span-fs-l {
  font-size: 2.6rem;
}

.reserve-page__air {
  margin-top: 50px;
  margin-bottom: 75px;
}

.single {
  color: #fff;
  padding: 200px 0 150px 0;
  font-size:16px;
  font-family: "Ryumin Regular KL";
}

@media screen and (max-width: 760px) {
  .single {
    padding: 38% 0 20% 0;
  }
}

.single__inner .breadcrumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px;
  margin-left: 5%;
  margin-right: 3%;
}

@media screen and (max-width: 760px) {
  .single__inner .breadcrumb {
    margin-left: 3%;
  }
}

.single__inner .breadcrumb li {
  font-size: 1.5rem;
  margin-right: 20px;
}

.single__inner .breadcrumb li:last-child {
  color: #c1c1c1;
}

.single__inner .breadcrumb li a {
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.single__inner .breadcrumb li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.single__inner .breadcrumb li a::before {
  content: "/";
  position: absolute;
  right: -13px;
}

.single__box {
  position: relative;
}

.single__ttl {
  font-size: 2.6rem;
  letter-spacing: 1.8px;
  word-break: break-all;
  margin-left: 5%;
  margin-right: 3%;
}

.wp-block-separator {
	margin-left: auto;
	margin-right: auto;
}

.is-style-default {
	width: 25%;
}

@media screen and (max-width: 760px) {
  .single__ttl {
    margin-left: 3%;
  }
}

.single__time {
  font-size: 14px;
  letter-spacing: 1px;
  padding: 15px 0 10px 0;
  margin-left: 5%;
  margin-right: 3%;
}

@media screen and (max-width: 760px) {
  .single__time {
    margin-left: 3%;
  }
}

.single__border {
  width: 90%;
  height: 1px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
}

@media screen and (max-width: 760px) {
  .single__border {
    width: 95%;
  }
}

.single__content {
  margin: 100px auto;
  width: 85%;
  line-height: 32px;
  word-break: break-all;
}

@media screen and (min-width: 1700px) {
  .single__content {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .single__content {
    width: 95%;
  }
}

.single__content pre {
  white-space: pre-wrap;
}

.single__content img {
  width: 100%;
  height: auto;
}

.single__content h2, .single__content h3, .single__content h4, .single__content h5, .single__content h6 {
  margin-bottom: 30px;
}

.single__content p {
  margin-bottom: 20px;
}

.single__content .wp-block-buttons {
  margin: 50px 0;
}

.single__next-prev {
  padding: 0 3%;
}

.single__next-prev ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 760px) {
  .single__next-prev ul li {
    padding: 10px 15px;
    border: 1px solid #fff;
  }
}

.single__next-prev ul li:nth-child(1) {
  margin-right: 8%;
}

.single__next-prev ul li a {
  position: relative;
}

.single__next-prev ul li a::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

@media screen and (max-width: 760px) {
  .single__next-prev ul li a::before {
    display: none;
  }
}

.single__next-prev ul li .prev-a::before {
  top: 3%;
  left: -15%;
  -webkit-transform: rotate(130deg);
          transform: rotate(130deg);
  -webkit-transition: all .4s;
  transition: all .4s;
}

.single__next-prev ul li .prev-a:hover::before {
  left: -21%;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.single__next-prev ul li .next-a::before {
  top: 3%;
  right: -15%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all .4s;
  transition: all .4s;
}

.single__next-prev ul li .next-a:hover::before {
  right: -21%;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.ctg {
  color: #fff;
}

.ctg__fv {
  background-image: url(/wp-content/uploads/2022/01/news-top-img.jpg);
	  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  height: 100vh;
  position: relative;
	z-index: 1;
}

.gallery__fv {
background-image: url(/wp-content/uploads/2022/03/gallery-fv.jpg)!important;
}

.gallery__fv::before {
	background: linear-gradient(to right, #50505080, #231807 50%)!important;
}

.ctg__fv::before {
  content: "";
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#3e3b2080), color-stop(50%, #342204));
  background: linear-gradient(to right, #3e3b2080, #342204 50%);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.8;
  z-index: -2;
}

.ctg__fv p {
  font-family: "Ryumin Regular KL";
  font-size: 1.7rem;
  padding-left: 5%;
  padding-right: 2%;
  margin-bottom: -10px;
	padding-top: 85vh;
}

.ctg__fv h2 {
  font-size: 4.6rem;
  font-family: "Ryumin Regular KL";
  padding-left: 4.5%;
  padding-right: 2%;
}

@media screen and (max-width: 760px) {
  .ctg__fv h2 {
    font-size: 3.8rem;
  }
	.ctg__fv p {
      padding-top: 75vh;
	}
}

.ctg__fv__border {
  width: 70%;
  min-width: 890px;
  height: 1px;
  background-color: #fff;
}

@media screen and (max-width: 1000px) {
  .ctg__fv__border {
    min-width: 95%;
    width: 95%;
  }
}

.ctg__wrapper {
  padding: 100px 0 80px 0;
}

@media screen and (max-width: 760px) {
  .ctg__wrapper {
    padding-top: 20%;
  }
}

.ctg__wrapper__inner {
  width: 90%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 28% 28% 28%;
   justify-content: space-between;
   gap: 10% 0;
}

.ctg__img {
	margin-bottom: 16px;
	overflow: hidden;
}

.ctg__img a {
	display: block;
}

.ctg__img a img {
	width: 100%;
	height: auto;
	object-fit:cover;
	vertical-align: bottom;
	transition: transform .6s cubic-bezier(.16,.5,.43,1);
}

.ctg__img a:hover img {
	transform: scale(1.1,1.1);
	 transition: transform .6s cubic-bezier(.16,.5,.43,1);
}

@media screen and (min-width: 1700px) {
  .ctg__wrapper__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .ctg__wrapper__inner {
    width: 95%;
	display: block;
  }
	.ctg__img {
		width: 165px;
		min-width: 165px;
		margin-bottom: 0px;
	}
}

@media screen and (max-width: 400px) {
	.ctg__img {
	width: 125px;
	min-width: 125px;
}
}

@media screen and (max-width: 760px) {
  .ctg__box {
    display: flex;
	  margin-bottom: 32px;
  }
	.ctg__box div {
		margin-left: 5%;
	}
}

.ctg__time {
  font-size: 16px;
  font-family: "Ryumin Light KL";
  margin-right: 10%;
  width: 137px;
}

@media screen and (max-width: 760px) {
  .ctg__time {
    margin-bottom: 5px;
  }
}

.ctg__ttl {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
}

.ctg__ttl a {
  -webkit-transition: all .4s;
  transition: all .4s;
}

.ctg__ttl a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.ctg .nav-links ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.ctg .nav-links ul li {
  font-size: 16px;
}

.ctg .nav-links ul li:nth-child(even) {
  margin: 0 30px;
}

.ctg .nav-links ul li a {
  -webkit-transition: all .4s;
  transition: all .4s;
}

.ctg .nav-links ul li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.ctg .nav-links ul li span {
  border-bottom: 1px solid #fff;
  padding-bottom: 3px;
}

.privacy {
  padding-top: 150px;
  color: #fff;
}

@media screen and (max-width: 760px) {
  .privacy {
    padding-top: 20%;
  }
}

.privacy__inner {
  width: 90%;
  margin: 0 auto;
}

@media screen and (min-width: 1700px) {
  .privacy__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .privacy__inner {
    width: 95%;
  }
}

.privacy__inner table {
  border-spacing: 50px;
  width: 1200px;
  margin: 0 auto;
}

@media screen and (max-width: 1400px) {
  .privacy__inner table {
    width: 100%;
  }
}

@media screen and (max-width: 1000px) {
  .privacy__inner table {
    border-spacing: 40px;
  }
}

@media screen and (max-width: 760px) {
  .privacy__inner table {
    border-spacing: 0px 60px;
  }
}

.privacy__inner table tr th {
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  white-space: nowrap;
}

@media screen and (max-width: 760px) {
  .privacy__inner table tr th {
    width: 100%;
    display: block;
    text-align: left;
    margin-bottom: 10px;
  }
}

.privacy__inner table tr td {
  font-size: 16px;
  font-family: "Ryumin Light KL";
  line-height: 30px;
}

@media screen and (max-width: 760px) {
  .privacy__inner table tr td {
    display: block;
  }
}

.online {
  padding-top: 150px;
  color: #fff;
}

.online p {
  font-size: 2rem;
  padding: 0 3%;
}

.not-page {
  padding-top: 200px;
  color: #fff;
  font-family: "Ryumin Light KL";
}

@media screen and (max-width: 760px) {
  .not-page {
    padding-top: 40%;
  }
}

.not-page__inner {
  width: 85%;
  margin: 0 auto;
}

@media screen and (min-width: 1700px) {
  .not-page__inner {
    max-width: 1400px;
  }
}

@media screen and (max-width: 760px) {
  .not-page__inner {
    width: 95%;
  }
}

.not-page__inner h2 {
  font-size: 2rem;
  margin-bottom: 20px;
}

.not-page__inner p {
  font-size: 16px;
}

.not-page__inner .error_url {
  margin-bottom: 30px;
}

.not-page__btn {
  border: 1px solid #fff;
  width: 200px;
  height: 50px;
  text-align: center;
  background-color: #fff;
}

.not-page__btn a {
  display: block;
  line-height: 50px;
  color: #000;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.not-page__btn a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact {
  padding: 200px 0;
}

@media screen and (max-width: 760px) {
  .contact {
    padding: 25% 0;
  }
}

.contact__inner {
  width: 500px;
  margin: 0 auto;
}

@media screen and (max-width: 600px) {
  .contact__inner {
    width: 80%;
  }
}

.contact__inner__border {
  width: 100%;
  height: 1px;
  background-color: #fff;
}

.contact__inner h5 {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #fff;
  font-size: 2rem;
  font-family:"Ryumin Regular KL";
  margin: 18% auto 15% auto;
  line-height: 3.5rem;
  letter-spacing: 1.1px;
  max-width: 100px;
  width: 100px;
  height: 385px;
}

.contact__inner__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20%;
}

.contact__inner__btn p {
  width: 220px;
  text-align: center;
  height: 50px;
}

@media screen and (max-width: 600px) {
  .contact__inner__btn p {
    width: 180px;
  }
}

@media screen and (max-width: 600px) {
  .contact__inner__btn p:nth-child(1) {
    margin-right: 7%;
  }
}

.contact__inner__btn p a {
  font-size: 16px;
  line-height: 50px;
  background-color: #fff;
  color: #000;
  display: block;
  font-family: "Ryumin Regular KL";
  overflow: hidden;
  position: relative;
  z-index: 0;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.contact__inner__btn p a .top {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
}

.contact__inner__btn p a .right {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: right top;
          transform-origin: right top;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  top: 0;
  right: 0;
  content: "";
  height: 100%;
  width: 1px;
  display: block;
}

.contact__inner__btn p a .bottom {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  bottom: 0;
  right: 0;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
}

.contact__inner__btn p a .left {
  position: absolute;
  z-index: -1;
  -webkit-transition: -webkit-transform 500ms;
  transition: -webkit-transform 500ms;
  transition: transform 500ms;
  transition: transform 500ms, -webkit-transform 500ms;
  background: #fff;
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
  bottom: 0;
  left: 0;
  content: "";
  display: block;
  height: 100%;
  width: 1px;
}

.contact__inner__btn p a:hover {
  background-color: #000;
  color: #fff;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.contact__inner__btn p a:hover .top {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  content: "";
}

.contact__inner__btn p a:hover .right {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.contact__inner__btn p a:hover .bottom {
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.contact__inner__btn p a:hover .left {
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}

.contact__inner__tel {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  height: 70px;
  text-align: center;
}

.contact__inner__tel a {
  font-family: "Ryumin Regular KL";
  font-size: 2rem;
  display: block;
  line-height: 70px;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact__inner__tel a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.contact__inner__txt {
  color: #fff;
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  text-align: center;
  margin: 5% 0 3% 0;
}

.contact__inner__info {
  color: #fff;
  font-size: 16px;
  font-family: "Ryumin Regular KL";
  text-align: center;
}

.footer {
  background-image: url(/wp-content/uploads/2022/01/washi-img.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 60px 0 37px 0;
}

.footer__inner {
  width: 730px;
  margin: 0 auto;
}

@media screen and (max-width: 760px) {
  .footer__inner {
    width: 90%;
  }
	.contact__inner__txt {
		font-size: 14px;
	}
	.contact__inner__info {
		font-size: 14px;
	}
}

.footer__inner__logo {
  width: 245px;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 760px) {
  .footer__inner__logo {
    width: 180px;
  }
}

.footer__inner .menu-footer-container {
  margin: 45px 0 35px 0;
}

.footer__inner .menu-footer-container ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 760px) {
  .footer__inner .menu-footer-container ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.footer__inner .menu-footer-container ul li {
  position: relative;
}

@media screen and (max-width: 760px) {
  .footer__inner .menu-footer-container ul li {
    line-height: 28px;
  }
}

.footer__inner .menu-footer-container ul li:nth-child(even) {
  margin: 0 20px;
}

.footer__inner .menu-footer-container ul li a {
  color: #000;
  font-family: "Ryumin Light KL";
  font-size: 14px;
  display: block;
  position: relative;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner .menu-footer-container ul li a:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner .menu-footer-container ul li:not(:last-child) a::before {
  content: "｜";
  color: #000;
  position: absolute;
  top: 52%;
  right: -16px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.footer__inner__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 760px) {
  .footer__inner__btn {
    display: block;
  }
}

.footer__inner__btn p {
  background-color: #000;
  width: 198px;
  height: 26px;
  text-align: center;
  -webkit-transition: all .4s;
  transition: all .4s;
  border: 1px solid transparent;
}

@media screen and (max-width: 760px) {
  .footer__inner__btn p {
    margin-right: auto;
    margin-left: auto;
  }
}

.footer__inner__btn p:hover {
  background-color: #fff;
  -webkit-transition: all .4s;
  transition: all .4s;
  border: 1px solid #000;
}

.footer__inner__btn p a {
  font-size: 14px;
  line-height: 26px;
  display: block;
  font-family: "Ryumin Light KL";
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner__btn p a:hover {
  color: #000;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner__txt {
  font-size: 16px;
  text-align: center;
  font-family: "Ryumin Light KL";
  margin: 46px 0 20px 0;
  letter-spacing: 1px;
}

.footer__inner__border {
  width: 400px;
  height: 1px;
  background-color: #000;
  margin: 0 auto;
}

@media screen and (max-width: 760px) {
  .footer__inner__border {
    width: 280px;
  }
}

.footer__inner__info {
  margin: 21px 0 41px 0;
}

.footer__inner__info li p {
  font-size: 18px;
  text-align: center;
  font-family: "Ryumin Light KL";
  letter-spacing: 2px;
}

.footer__inner__info li p a {
	color: #000;
}

.footer__inner__sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-bottom: 40px;
}

.footer__inner__sns li:nth-child(even) {
  margin: 0 34px;
}

.footer__inner__sns li p {
  font-size: 18px;
  letter-spacing: 2px;
  font-family: "Ryumin Light KL";
  white-space: nowrap;
}

.footer__inner__sns li a {
	display: block;
}

.footer__inner__sns li a i {
  font-size: 3.5rem;
  color: #000;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner__sns li a i:hover {
  opacity: .6;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.footer__inner__sns .svg-inline--fa.fa-w-14 {
	color: #000;
}

.footer__inner__sns .svg-inline--fa.fa-w-16 {
	color: #000;
}

.footer__inner__ozlogo {
  width: 187px;
  margin: 0 auto;
  display: block;
}

.footer__copy {
  background-color: #fff;
  text-align: center;
  font-size: 11px;
  font-family: "Ryumin Regular KL";
  color: #000;
  padding: 8px 0;
}

@media screen and (max-width: 760px) {
  .footer__copy {
    font-size: 1.1rem;
  }
}

.single__content table,td,th{
border: 1px solid #fff;
}
.single__content ul li {
list-style: inside;
}

@media screen and (max-width: 760px) {
.single__content table td,th{
display: block;
}
} 

/* 体験サンプルモーダルウィンドウ */
.sample__box {
margin-top: 35px;
}

.sample__ttl  {
font-size: 18px!important;
margin-bottom: 15px;
}

.gallery_area {
	display: grid;
	grid-template-columns: 150px 150px;
	justify-content: space-between;
	gap: 10px;
}

.gallery_area div img {
	width: 100%;
	height:150px;
	object-fit: cover;
}

@media screen and (max-width:1100px) {
	.gallery_area {
		grid-template-columns: 150px;
	}
}

@media screen and (max-width:950px) {
	.gallery_area {
		grid-template-columns: 150px 150px;
		justify-content: center;
	}
}

@media screen and (max-width:760px) {
	.gallery_area {
		justify-content: left;
	}
}

@media screen and (max-width:350px) {
	.gallery_area {
		grid-template-columns: 1fr 1fr;
	}
	.gallery_area div img {
		height: auto;
	}
}
.footer__inner__sns .svg-inline--fa {
    color: #000;
    height: 30px;
}

/*# sourceMappingURL=style.css.map */