@charset "UTF-8";
html {
  font-size: 12.5px;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  width: 100%;
}

@media only screen and (max-width: 1600px) {
  html {
    font-size: 10px;
  }
}
@media only screen and (max-width: 1300px) {
  html {
    font-size: 0.6944444444vw;
  }
}
@media only screen and (max-width: 834px) {
  html {
    font-size: 1.6vw;
  }
}
@media only screen and (max-width: 520px) {
  html {
    font-size: 2.6666666667vw;
  }
}
html body {
  width: 100%;
  background-color: #fff;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  text-align: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

@media only screen and (max-width: 834px) {
  html body {
    font-size: 1.4rem;
    line-height: 2;
  }
}
html main::after,
html .header__logo-button-title::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 9998;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

html main.fade::after,
html .header__logo-button-title.fade::after {
  opacity: 1;
}

.none {
  display: none;
}

a {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}

a:visited {
  color: inherit;
}

@media only screen and (max-width: 834px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: auto;
}

p {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
}

@media only screen and (max-width: 834px) {
  p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
li {
  list-style: none;
}

.wrapper1280 {
  max-width: 128rem;
  padding: 0 6rem;
  margin: 0 auto;
}

@media only screen and (max-width: 834px) {
  .wrapper1280 {
    max-width: none;
    padding: 0 2rem;
    margin: 0 auto;
  }
}
.wrapper1280.daily {
  overflow: hidden;
}

.wrapper928 {
  max-width: 92.8rem;
  padding: 0 9rem;
  margin: 0 auto;
}

@media only screen and (max-width: 834px) {
  .wrapper928 {
    max-width: none;
    padding: 0 2rem;
    margin: 0 auto;
  }
}
.header {
  background-color: rgba(255, 255, 255, 0);
  position: absolute;
  width: 100%;
  z-index: 9999;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@media only screen and (max-width: 834px) {
  .header {
    background-color: rgba(255, 255, 255, 0);
  }
}
.header__sub {
  border-bottom: solid 0.1rem rgba(230, 230, 230, 0.5);
  background: unset;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  height: 6rem;
}

@media only screen and (max-width: 834px) {
  .header__sub {
    border-bottom: none;
    height: 7rem;
  }
}
.header__logo {
  z-index: 1;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 834px) {
  .header__logo {
    background-image: none;
    width: 12rem;
  }
}
.header__logo-button {
  display: block;
  height: 100%;
  width: 100%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@media only screen and (max-width: 834px) {
  .header__logo-button {
    padding-left: 2.4rem;
    padding-right: 2.4rem;
  }
}
.header__logo-button-title {
  height: 100%;
  width: 100%;
  padding-left: 4rem;
  padding-right: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 1.6rem;
  letter-spacing: 0.1rem;
  color: #fff;
}

@media only screen and (max-width: 834px) {
  .header__logo-button-title {
    width: 7rem;
    padding-left: 0;
    padding-right: 0;
    font-size: 1.4rem;
    letter-spacing: 0.4rem;
  }
}
.header__logo-button-title img {
  width: 8rem;
}

.header__logo-button:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.header__right {
  padding-left: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100%;
  width: 100%;
  color: #fff;
  border-left: solid 0.1rem rgba(230, 230, 230, 0.5);
  position: relative;
}

@media only screen and (max-width: 834px) {
  .header__right {
    border-left: none;
    position: relative;
    padding-left: 2rem;
  }
  .header__right::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 1.2rem;
    width: 0.1rem;
    background-color: #fff;
  }
}
.header__right .title {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #fff;
}

@media only screen and (max-width: 834px) {
  .header__right .title {
    font-size: 1.4rem;
  }
}
.header__right .contact__wrapper {
  height: 100%;
  width: 18.6rem;
}

@media only screen and (max-width: 834px) {
  .header__right .contact__wrapper {
    display: none;
  }
}
.header__right .contact__wrapper a {
  height: 100%;
  width: 100%;
  background-color: #239da8;
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.4rem;
  padding: 0 0rem;
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.header__right .contact__wrapper a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.header__right .contact__wrapper img {
  width: 1.8rem;
  min-width: 1.8rem;
}

.header__right-lang {
  height: 100%;
  width: 18.6rem;
  cursor: pointer;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: width 0.1s linear;
  transition: width 0.1s linear;
  background-color: rgba(255, 255, 255, 0);
  border-left: solid 0.1rem rgba(230, 230, 230, 0.5);
}

.header__right-lang::after {
  background: rgba(0, 0, 0, 0.3);
  content: "";
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  -webkit-transition: visibility 0.3s, opacity 0.3s;
  transition: visibility 0.3s, opacity 0.3s;
  visibility: hidden;
  width: 100%;
  z-index: -1;
}

.header__right-lang.active::after {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

@media only screen and (max-width: 834px) {
  .header__right-lang {
    display: none;
  }
}
.header__right-lang.active {
  background: #fff;
  -webkit-transition: width 0.1s linear;
  transition: width 0.1s linear;
  width: 26rem;
}

.header__right-lang-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(255, 255, 255, 0);
  position: relative;
}

.header__right-lang-inner .lang-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.6rem;
}

.header__right-lang-inner .lang-head .lang-img {
  width: 1.8rem;
  height: 1.8rem;
}

.header__right-lang-inner .lang-head .lang-ttl {
  display: block;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  color: #fff;
  font-weight: 400;
  padding-bottom: 0.2rem;
  -webkit-transition: width 0.5s linear;
  transition: width 0.5s linear;
}

@media only screen and (max-width: 834px) {
  .header__right-lang-inner .lang-head .lang-ttl {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.header__right-lang-inner .lang-head .lang-ttl.active {
  color: #333;
  -webkit-transition: width 0.5s linear;
  transition: width 0.5s linear;
}

.header__right-lang-inner .lang-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: -1rem;
}

.header__right-lang-inner .lang-list .lang-item {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  list-style: none;
}

.header__right-lang-inner .lang-list .lang-item.active {
  display: block;
}

.header__right-lang-inner .lang-list .lang-item span > a {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 1rem;
  background: #239da8;
  font-size: 1.2rem;
  line-height: 1;
  height: 2rem;
  padding-bottom: 0.1rem;
  width: 3.4rem;
  pointer-events: none;
  z-index: 1;
  position: relative;
  cursor: pointer;
}

.header__right-lang-inner .lang-list .lang-item:not(.current) {
  display: none;
  -webkit-transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
  transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
}

.header__right-lang-inner .lang-list .lang-item:not(.current).active {
  display: block;
  -webkit-transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
  transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
}

.header__right-lang-inner .lang-list .lang-item:not(.current) span > a {
  background: #eee;
  color: #333;
  pointer-events: auto;
}

.header.is-animation {
  height: 6rem;
}

.header__main {
  height: 6rem;
}

.header__main-content {
  height: 100%;
}

.header__main-content-inner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 1.2rem;
}

.header__main-content-inner-items {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #333;
  font-size: 1.6rem;
  font-weight: 700;
}

@media only screen and (max-width: 834px) {
  .header__main-content-inner-items {
    display: none;
  }
}
.header__main-content-inner-items .partition {
  color: #fff;
}

.header__main-content-inner-items .item {
  height: 100%;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  border-bottom: none;
  padding: 0 2.2rem;
}

.header__main-content-inner-items .item:hover {
  background-color: #239da8;
  color: #fff;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 1;
}

.header__main-content-inner-items .item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  height: 100%;
}

.header__main-content-inner-items .item a span {
  height: 1rem;
  width: 1rem;
  background-color: #fff;
  border-radius: 50%;
  display: inline-block;
  margin-top: 0.3rem;
}

.header__main-content-inner-items .item a span.external-link {
  background-color: unset;
  border-radius: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  margin-top: 0rem;
  margin-bottom: 0.2rem;
}

.header__main-content-inner-items .item a span.external-link img {
  height: 1.2rem;
  width: 1.2rem;
}

.header__main-content-inner-items .item.is-current span {
  background-color: #239da8;
}

.header__main-content-inner-items .item div {
  display: inline-block;
  line-height: 2;
  position: relative;
  color: #fff;
}

.header__main-content-inner-items .item div span {
  position: absolute;
  bottom: -0.4rem;
  left: 0;
  right: 0;
  width: 100%;
  height: 0.1rem;
  background-image: -webkit-gradient(linear, left top, right top, from(#333), color-stop(0.1rem, #333), color-stop(0.1rem, transparent), color-stop(0.3rem, transparent));
  background-image: linear-gradient(to right, #333, #333 0.1rem, transparent 0.1rem, transparent 0.3rem);
  background-size: 0.3rem 0.1rem;
  background-repeat: repeat-x;
}

.header__fixed-nav {
  display: none;
}

@media only screen and (max-width: 834px) {
  .header__fixed-nav {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: -8rem;
    -webkit-box-shadow: 0 0.5rem 2rem 0 rgba(15, 5, 0, 0.15);
    box-shadow: 0 0.5rem 2rem 0 rgba(15, 5, 0, 0.15);
    height: 15rem;
    bottom: calc(env(safe-area-inset-bottom) - 8rem);
    -webkit-transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    color: #333;
    background-color: #fff;
    font-size: 1.2rem;
    line-height: 1.6rem;
    z-index: 100;
  }
  .header__fixed-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 7rem;
    margin-right: 16.67%;
  }
  .header__fixed-nav-item {
    display: block;
    height: 100%;
    width: 100%;
    z-index: 1;
    text-align: center;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    background-color: #fff;
  }
  .header__fixed-nav-item > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .header__fixed-nav-item > a span {
    height: 1rem;
    width: 1rem;
    border-radius: 50%;
    background-image: url(../../assets/images/icon/mail.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    margin: 0 auto;
    padding-bottom: 0.4rem;
  }
  .header__fixed-nav-item > a div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media only screen and (max-width: 834px) and (max-width: 834px) {
  .header__fixed-nav-item > a div {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 834px) {
  .header__fixed-nav-item > a.is-current {
    background-color: #f5f8fa;
    color: #239da8;
    border-top: solid 0.4rem #239da8;
  }
  .header__fixed-nav-item.is-current {
    background-color: #f5f8fa;
    color: #239da8;
    border-top: solid 0.4rem #239da8;
  }
}
.header__menu {
  display: none;
}

@media only screen and (max-width: 834px) {
  .header__menu {
    display: block;
    position: fixed;
    background-color: #239da8;
    border: 0;
    bottom: env(safe-area-inset-bottom);
    right: 0;
    color: #fff;
    cursor: pointer;
    height: 7rem;
    -webkit-transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    width: 16.67%;
    z-index: 100;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    text-transform: none;
  }
  .header__menu.active {
    z-index: 9999;
    height: 8rem;
    width: 8rem;
    bottom: 2rem;
    right: 1rem;
    border-radius: 50%;
    -webkit-transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    background-color: #fff;
    color: #239da8;
  }
  .header__menu.active span {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .header__menu.active span::after {
    opacity: 1;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    color: #333;
    content: "閉じる";
    font-size: 1.2rem;
  }
  .header__menu.active span i {
    opacity: 0;
  }
  .header__menu.active::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    top: -1.4rem;
    background: #239da8;
    height: 0.2rem;
    margin: auto;
    width: 2rem;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 1;
  }
  .header__menu.active::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    top: -1.4rem;
    background: #239da8;
    height: 0.2rem;
    margin: auto;
    width: 2rem;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 1;
  }
}
.header__menu span {
  position: absolute;
  z-index: 11;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2.7rem;
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  top: 1.6rem;
  left: 0;
  right: 0;
  text-align: center;
}

.header__menu span::after {
  content: "Menu";
  position: absolute;
  bottom: -0.8rem;
  left: 0;
  color: #fff;
  display: block;
  font-size: 1rem;
  font-weight: 500;
  opacity: 1;
  height: auto;
  width: 100%;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.header__menu span i {
  display: block;
  border-radius: 50%;
  background-color: #fff;
  height: 0.4rem;
  width: 0.4rem;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  margin: 0.2rem 0.1rem;
}

.header__menu::before {
  opacity: 0;
  -webkit-transition: visibility 0.3s, opacity 0.3s;
  transition: visibility 0.3s, opacity 0.3s;
}

.header__menu::after {
  opacity: 0;
  -webkit-transition: visibility 0.3s, opacity 0.3s;
  transition: visibility 0.3s, opacity 0.3s;
}

.header__gnav {
  position: fixed;
  top: 0;
  bottom: 0;
  left: auto;
  right: -100%;
  -webkit-transition: right 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
  transition: right 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
  z-index: 200;
  width: calc(100% - 6rem);
  max-width: 40rem;
}

.header__gnav.active {
  right: 0;
}

.header__gnav-inner {
  background: #239da8;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  position: absolute;
  overflow: hidden;
  z-index: 1;
  visibility: visible;
  overflow-y: auto;
  margin-left: auto;
  opacity: 1;
}

.header__gnav-inner nav.gnav {
  margin-left: 2.4rem;
  margin-right: 2.4rem;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  padding-top: 2rem;
}

.header__gnav-inner nav.gnav .gnav__lang {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  gap: 1rem;
  border-radius: 0.2rem;
  background: #57b5bd;
  padding: 1.6rem 1.4rem;
  font-size: 1.2rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header__gnav-inner nav.gnav .gnav__lang img {
  width: 1.6rem;
  height: 1.6rem;
}

.header__gnav-inner nav.gnav .gnav__lang .lang__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.4rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__gnav-inner nav.gnav .gnav__lang .lang__title p {
  font-size: 1.2rem;
  font-weight: 400;
}

.header__gnav-inner nav.gnav .gnav__lang .lang__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.6rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__gnav-inner nav.gnav .gnav__lang .lang__label span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 3.5rem;
  height: 2rem;
  font-size: 1.2rem;
  border-radius: 2rem;
  background-color: #dbdbdb;
  color: #737373;
  overflow: hidden;
}

.header__gnav-inner nav.gnav .gnav__lang .lang__label .is-current {
  background-color: #239da8;
  color: #fff;
  pointer-events: none;
  width: 100%;
  text-align: center;
}

.header__gnav-inner nav.gnav .gnav__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.6rem;
}

.header__gnav-inner nav.gnav .gnav__logo a {
  display: inline-block;
  width: 8rem;
  font-size: 1.4rem;
  line-height: 1.5;
  color: #fff;
  letter-spacing: 0.22rem;
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.header__gnav-inner nav.gnav .gnav__logo span {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #fff;
  font-size: 1.2rem;
  padding-bottom: 0.5rem;
}

@media only screen and (max-width: 834px) {
  .header__gnav-inner nav.gnav .gnav__logo span {
    font-size: 1.4rem;
  }
}
.header__gnav-inner nav.gnav .gnav__logo span::before {
  content: "";
  display: inline-block;
  height: 1.2rem;
  width: 0.1rem;
  background-color: #fff;
  margin-right: 1rem;
}

.header__gnav-inner nav.gnav .gnav__nav {
  position: relative;
  padding-top: 2.4rem;
  padding-bottom: 5.4rem;
}

.header__gnav-inner nav.gnav .gnav__nav-title {
  border-top: 0.1rem solid #fff;
}

.header__gnav-inner nav.gnav .gnav__nav-title.last-item {
  border-bottom: 0.1rem solid #fff;
}

.header__gnav-inner nav.gnav .gnav__nav-title a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  color: #fff;
  padding-top: 2rem;
  padding-bottom: 2rem;
  position: relative;
  width: 100%;
}

@media only screen and (max-width: 834px) {
  .header__gnav-inner nav.gnav .gnav__nav-title a {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.header__gnav-inner nav.gnav .gnav__nav-title a .link-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  border: 0.1rem solid #fff;
}

.header__gnav-inner nav.gnav .gnav__nav-title a .link-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
  -ms-transform: translate(-50%, -50%) rotate(270deg);
  transform: translate(-50%, -50%) rotate(270deg);
  width: 0.8rem;
}

.header__gnav-inner nav.gnav .gnav__nav-privacy a {
  display: inline-block;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-size: 1rem;
  color: #fff;
  border-bottom: 0.1rem solid #fff;
}

@media only screen and (max-width: 834px) {
  .header__gnav-inner nav.gnav .gnav__nav-privacy a {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.header__gnav-inner nav.gnav .gnav__nav-copyright p {
  font-size: 1rem;
  color: #fff;
  padding-top: 1.4rem;
  padding-bottom: 3.6rem;
}

.header__gnav-bg {
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
  -webkit-transition: visibility 0.5s, opacity 0.5s;
  transition: visibility 0.5s, opacity 0.5s;
  visibility: hidden;
  opacity: 0;
}

.header__gnav-bg.gnav-open {
  cursor: pointer;
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.header.is-current {
  color: #fff;
}

.header.is-current .header__logo-button-title {
  color: #333;
}

.header.is-current .header__right .header__right-lang {
  border-left: solid 0.1rem #e6e6e6;
}

.header.is-current .header__right .title {
  color: #333;
}

.header.is-current .header__right .header__right-lang-inner .lang-head .lang-ttl {
  color: #333;
}

.header.is-current .header__main .header__main-content-inner-items .item span {
  background-color: #dbdbdb;
}

.header.is-current .header__main .header__main-content-inner-items .item div {
  color: #333;
}

.header.is-current .header__main .header__main-content-inner-items .item span.external-link {
  background-color: initial;
}

.main__bg {
  position: fixed;
  z-index: -1;
  left: 0;
  top: -10rem;
  width: 100%;
  height: calc(100% + 10rem);
  opacity: 1;
  -webkit-transition: all 1.5s cubic-bezier(0.26, 0.06, 0, 1);
  transition: all 1.5s cubic-bezier(0.26, 0.06, 0, 1);
  -webkit-transition-property: opacity, top, -webkit-transform;
  transition-property: opacity, top, -webkit-transform;
  transition-property: opacity, transform, top;
  transition-property: opacity, transform, top, -webkit-transform;
}

@media only screen and (max-width: 834px) {
  .main__bg {
    height: 0;
    width: 120%;
    padding-bottom: 56.25%;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.main__bg .jsScrollFade {
  height: 100%;
}

.main__bg .video_wrapper,
.main__bg .img {
  width: 100%;
  opacity: 1;
  position: relative;
  height: 100%;
}

.main__bg .video_wrapper > video,
.main__bg .img > video {
  width: 100%;
}

@media only screen and (max-width: 834px) {
  .main__bg .video_wrapper,
  .main__bg .img {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
  }
}
.main__bg .video_wrapper video,
.main__bg .img video {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.main__bg .video_wrapper .bg-mesh,
.main__bg .img .bg-mesh {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../images/bg_mesh.png");
  display: none;
}

.main__bg .video_wrapper .bg-color,
.main__bg .img .bg-color {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(19, 46, 62, 0.5);
}

@media only screen and (max-width: 834px) {
  .main__bg::before {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: -7.4rem;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(33, 35, 38, 0)), to(#188994));
    background: linear-gradient(to bottom, rgba(33, 35, 38, 0), #188994);
  }
}
@media only screen and (max-width: 520px) {
  .main__bg::before {
    bottom: -4.6rem;
    left: 0;
    width: 120%;
  }
}
.mv {
  width: 100%;
  height: 100vh;
  max-height: 90rem;
}

@media only screen and (max-width: 834px) {
  .mv {
    max-height: 60rem;
    height: 60rem;
    background-color: #188994;
    position: relative;
    z-index: -1;
  }
}
@media only screen and (max-width: 520px) {
  .mv {
    max-height: 55rem;
  }
}
.mv__inner {
  background-color: rgba(70, 80, 87, 0.3);
  width: 100%;
  height: 100%;
  position: relative;
}

@media only screen and (max-width: 834px) {
  .mv__inner {
    background-color: rgba(70, 80, 87, 0.2);
  }
}
.mv__inner-title {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 400;
  max-width: 116rem;
  margin: 0 auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: relative;
  top: 50%;
}

.mv__inner-title-main {
  font-size: 12rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #fff;
  color: #fff;
  text-align: left;
  padding-top: 8rem;
  padding-left: 5rem;
}

@media only screen and (max-width: 834px) {
  .mv__inner-title-main {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .mv__inner-title-main {
    font-size: 4.2rem;
    white-space: nowrap;
    padding-top: 28%;
    padding-left: 2.4rem;
  }
}
.mv__inner-title p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  padding-top: 5rem;
  padding-left: 14rem;
  color: #fff;
  font-size: 2rem;
  line-height: 2.2;
}

@media only screen and (max-width: 834px) {
  .mv__inner-title p {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .mv__inner-title p {
    padding-top: 3rem;
    padding-left: 2.4rem;
    padding-right: 2.4rem;
    font-size: 1.3rem;
  }
}
.content-img {
  width: 36rem;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.content-text h2 .title-option {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  font-size: 2rem;
  color: #333;
  display: block;
  padding-bottom: 5rem;
}

@media only screen and (max-width: 834px) {
  .content-text h2 .title-option {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text h2 .title-option {
    position: relative;
    z-index: 1;
    font-size: 1.8rem;
  }
}
.content-text h2 .title-option::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  margin-right: 0.5rem;
  background-color: #239da8;
  -webkit-transform: translateY(-0.3rem);
  -ms-transform: translateY(-0.3rem);
  transform: translateY(-0.3rem);
}

.content-text h2 .title-section {
  display: block;
  padding-bottom: 5rem;
  font-size: 4.6rem;
  line-height: 1.4;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #333;
  position: relative;
  z-index: 0;
}

@media only screen and (max-width: 834px) {
  .content-text h2 .title-section {
    font-size: 3rem;
  }
}
.content-text h2 .title-section::before {
  content: "";
  position: absolute;
  top: -46%;
  left: 37%;
  font-size: 16rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #f1f2f3;
  font-size: 16rem;
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .content-text h2 .title-section::before {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text h2 .title-section::before {
    font-size: 10rem;
    top: -12rem;
    left: 6rem;
  }
}
.content-text h3 {
  position: relative;
  z-index: 0;
}

.content-text h3 .title-option {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  display: inline-block;
  padding-bottom: 0.6rem;
  margin-bottom: 5rem;
  line-height: 1;
  color: #239da8;
  font-size: 4rem;
}

@media only screen and (max-width: 834px) {
  .content-text h3 .title-option {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text h3 .title-option {
    display: block;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
    margin: 0 auto;
    font-size: 3rem;
    border-bottom: none;
    position: relative;
  }
  .content-text h3 .title-option::before {
    content: "";
    position: absolute;
    bottom: -1.4rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 4rem;
    height: 0.1rem;
    background-color: #239da8;
  }
}
.content-text h3 .title-section {
  display: block;
  font-size: 4.6rem;
  line-height: 1.4;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #333;
  font-size: 5rem;
  line-height: 1.1;
  padding-bottom: 6rem;
}

@media only screen and (max-width: 834px) {
  .content-text h3 .title-section {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text h3 .title-section {
    font-size: 3rem;
    padding-top: 10rem;
    padding-bottom: 5rem;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 520px) {
  .content-text h3 .title-section {
    padding-top: 6rem;
  }
}
.content-text h3 .title-section::before {
  content: "World-Class Quality";
  position: absolute;
  top: -4rem;
  left: 20.6rem;
  font-size: 16rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #f1f2f3;
  font-size: 23rem;
  z-index: -1;
  color: #fff;
  white-space: nowrap;
}

@media only screen and (max-width: 834px) {
  .content-text h3 .title-section::before {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text h3 .title-section::before {
    font-size: 15rem;
    top: initial;
    bottom: 6rem;
    left: 12.2rem;
  }
}
@media only screen and (max-width: 520px) {
  .content-text h3 .title-section::before {
    left: 5.2rem;
    bottom: 3rem;
  }
}
.content-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  padding-bottom: 12rem;
}

@media only screen and (max-width: 834px) {
  .content-text p {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .content-text p {
    padding-bottom: 8rem;
  }
}
.policy-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 8rem;
}

@media only screen and (max-width: 834px) {
  .policy-flex {
    gap: 0;
  }
}
.policy-flex__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3rem;
}

.policy-flex__img img {
  width: 33rem;
  height: 48rem;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 0.4rem;
}

.policy-flex__img img.item01 {
  margin-top: 0;
}

.vision-flex__img {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.vision-flex__img img.item01 {
  margin-top: 0;
}

.vision-flex__img img.item02 {
  margin-top: 0;
  margin-left: 14rem;
}

.top-slogan {
  padding-top: 10rem;
  background-color: #fff;
  overflow: hidden;
  position: relative;
}

.top-slogan::before {
  content: "";
  position: absolute;
  background-color: #f1f2f3;
  bottom: 0;
  left: 0;
  height: 8rem;
  width: 100%;
}

.top-slogan__inner {
  max-width: 95rem;
  margin: 0 auto;
}

.top-slogan__inner-message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10rem;
}

@media only screen and (max-width: 834px) {
  .top-slogan__inner-message {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
@media only screen and (max-width: 834px) {
  .top-slogan__inner-message .content-img {
    display: none;
  }
}
.top-slogan__inner-message .content-text .title-section::before {
  content: "SLOGAN";
}

@media only screen and (max-width: 834px) {
  .top-slogan__inner-message .content-text {
    width: 100%;
    background-image: url(../../assets/images/img_map_world.png);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
  }
}
.top-slogan__sub {
  background-color: #fff;
}

.top-slogan__sub .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.top-slogan__sub .swiper-slide {
  width: 25.4rem !important;
}

@media only screen and (max-width: 520px) {
  .top-slogan__sub .swiper-slide {
    width: 16.4rem !important;
  }
}
.top-slogan__sub .swiper-slide img {
  height: 38.2rem;
  width: 100%;
  aspect-ratio: 2/3;
  border-radius: 0.4rem;
}

@media only screen and (max-width: 834px) {
  .top-slogan__sub .swiper-slide img {
    width: 20rem;
  }
}
@media only screen and (max-width: 520px) {
  .top-slogan__sub .swiper-slide img {
    height: 24.8rem;
    width: 100%;
  }
}
.top-policy {
  background-color: #fff;
  padding: 28rem 0 0;
  background-color: #f1f2f3;
  overflow: hidden;
}

@media only screen and (max-width: 834px) {
  .top-policy {
    padding-top: 18rem;
  }
}
@media only screen and (max-width: 520px) {
  .top-policy {
    padding-top: 14rem;
  }
}
.top-policy__introduction-inner-message .content-text h2 {
  position: relative;
}

.top-policy__introduction-inner-message .content-text h2 .title-option {
  padding-bottom: 15rem;
}

@media only screen and (max-width: 834px) {
  .top-policy__introduction-inner-message .content-text h2 .title-option {
    display: none;
  }
}
.top-policy__introduction-inner-message .content-text h2 .title-section {
  text-align: center;
  padding-bottom: 12rem;
}

@media only screen and (max-width: 520px) {
  .top-policy__introduction-inner-message .content-text h2 .title-section {
    padding-bottom: 4rem;
    font-size: 2.4rem;
  }
}
.top-policy__introduction-inner-message .content-text h2::before {
  content: "OUR PHILOSOPHY";
  position: absolute;
  top: 4%;
  left: 68%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 16rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #f1f2f3;
  font-size: 23rem;
  color: #eaeaea;
  white-space: nowrap;
}

@media only screen and (max-width: 834px) {
  .top-policy__introduction-inner-message .content-text h2::before {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__introduction-inner-message .content-text h2::before {
    font-size: 14rem;
    top: 12%;
    left: 94%;
  }
}
@media only screen and (max-width: 520px) {
  .top-policy__introduction-inner-message .content-text h2::before {
    left: 165%;
  }
}
.top-policy__introduction-inner-message .content-text p {
  text-align: center;
  font-size: 2rem;
}

.top-policy__introduction-inner-message .content-text p .content-text-em {
  color: #239da8;
}

.top-policy__mission {
  padding: 12rem 0 10rem;
}

@media only screen and (max-width: 834px) {
  .top-policy__mission {
    padding: 10rem 0 6rem;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__mission-inner .content-text .policy-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__mission-inner .content-text .policy-flex h3 .title-option .pc {
    display: none;
  }
}
.top-policy__mission-inner .content-text .policy-flex h3 .size-custom {
  font-size: 10rem;
}

.top-policy__mission-inner .content-text .policy-flex p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .top-policy__mission-inner .content-text .policy-flex p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__mission-inner .content-text .policy-flex p {
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__mission-inner .content-text .policy-flex__img {
    display: none;
  }
}
.top-policy__vision {
  z-index: 0;
}

@media only screen and (max-width: 834px) {
  .top-policy__vision {
    background-image: none;
    background-color: #f1f2f3;
  }
}
.top-policy__vision-bg {
  position: absolute;
  top: left;
  height: 100%;
  width: 100%;
  background-color: rgba(23, 23, 23, 0.7);
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .top-policy__vision-bg {
    background-color: initial;
  }
}
.top-policy__vision-inner {
  padding: 8rem 0;
}

@media only screen and (max-width: 834px) {
  .top-policy__vision-inner {
    padding: 5rem 0 0;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__vision-inner .policy-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.top-policy__vision-inner .policy-flex .content-img {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: auto;
}

.top-policy__vision-inner .policy-flex .content-img .policy-flex__img {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.top-policy__vision-inner .policy-flex .content-img .policy-flex__img img {
  width: 42rem;
  height: 24rem;
  border-radius: 0.4rem;
}

.top-policy__vision-inner .policy-flex .content-text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.top-policy__vision-inner .policy-flex .content-text h3 .title-section {
  font-size: 5rem;
  line-height: 1.5;
  font-weight: 700;
}

@media only screen and (max-width: 834px) {
  .top-policy__vision-inner .policy-flex .content-text h3 .title-section {
    color: #333;
    font-size: 3rem;
  }
}
.top-policy__vision-inner .policy-flex .content-text h3 .title-section::before {
  display: none;
}

.top-policy__vision-inner .policy-flex .content-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .top-policy__vision-inner .policy-flex .content-text p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__vision-inner .policy-flex .content-text p {
    color: #333;
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__vision-inner .policy-flex__img {
    display: none;
  }
}
.top-policy__value {
  padding: 8rem 0 12rem;
}

@media only screen and (max-width: 834px) {
  .top-policy__value {
    background-color: #f1f2f3;
    padding: 12rem 0 10rem;
  }
}
.top-policy__value-inner .content-text .policy-flex {
  gap: 6rem;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0;
  }
}
.top-policy__value-inner .content-text .policy-flex h3 {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex h3 {
    width: 100%;
  }
}
.top-policy__value-inner .content-text .policy-flex h3 .title-section {
  font-size: 5rem;
  line-height: 1.5;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex h3 .title-section {
    font-size: 3rem;
  }
}
.top-policy__value-inner .content-text .policy-flex h3 .title-section::before {
  display: none;
}

.top-policy__value-inner .content-text .policy-flex .value-border {
  width: 0.1rem;
  height: 12.3rem;
  margin-top: 8.9rem;
  margin-left: 0.4rem;
  background-color: #dbdbdb;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex .value-border {
    display: none;
  }
}
.top-policy__value-inner .content-text .policy-flex p {
  padding-top: 8.6rem;
  padding-bottom: 8rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-text .policy-flex p {
    padding-top: 0;
    padding-bottom: 4rem;
  }
}
.top-policy__value-inner .content-img {
  width: 100%;
}

.top-policy__value-inner .content-img .policy-flex {
  display: block;
}

.top-policy__value-inner .content-img .policy-flex__img {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: initial;
}

@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-img .policy-flex__img {
    gap: 2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.top-policy__value-inner .content-img .policy-flex__img img {
  width: 100%;
  height: 35rem;
  border-radius: 0.4rem;
}

@media only screen and (max-width: 520px) {
  .top-policy__value-inner .content-img .policy-flex__img img {
    height: 14.3rem;
  }
}
.section-access {
  overflow: hidden;
  background-color: #fff;
  padding: 16rem 0;
}

@media only screen and (max-width: 834px) {
  .section-access {
    padding: 14rem 0 8rem;
    background-color: #fff;
  }
}
.section-access__contents {
  max-width: 106rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  gap: 6.4rem;
}

@media only screen and (max-width: 834px) {
  .section-access__contents {
    display: block;
    padding-top: 0rem;
    padding-bottom: 2.7rem;
  }
}
.section-access__contents .content-img {
  width: 58.9rem;
  aspect-ratio: 3/2;
  background-image: url("../../assets/images/access-new.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
}

@media only screen and (max-width: 834px) {
  .section-access__contents .content-img {
    width: 100%;
  }
}
.section-access__contents .content-text {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
}

@media only screen and (max-width: 834px) {
  .section-access__contents .content-text {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-top: 7rem;
  }
}
@media only screen and (max-width: 520px) {
  .section-access__contents .content-text {
    padding-top: 7rem;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}
.section-access__contents .content-text-inner h2 {
  font-size: 16rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #f1f2f3;
  position: absolute;
  top: -11.4rem;
  right: 0rem;
  color: #f1f2f3;
  font-size: 20rem;
  line-height: 1.1;
}

@media only screen and (max-width: 834px) {
  .section-access__contents .content-text-inner h2 {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .section-access__contents .content-text-inner h2 {
    font-size: 10rem;
    top: -45.4rem;
    right: initial;
    left: 2rem;
    color: #f1f2f3;
  }
}
@media only screen and (max-width: 520px) {
  .section-access__contents .content-text-inner h2 {
    font-size: 10rem;
    top: -29.2rem;
    right: -2.3rem;
    left: initial;
    color: #f1f2f3;
  }
}
.section-access__contents .content-text-inner table tr th {
  width: 10.4rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-weight: 700;
}

@media only screen and (max-width: 834px) {
  .section-access__contents .content-text-inner table tr th {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-access__contents .content-text-inner table tr td {
  padding-bottom: 1.8rem;
  line-height: 1.7;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.section-access__contents .content-text-inner table tr td .google_map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -moz-column-gap: 0.5rem;
  -webkit-column-gap: 0.5rem;
  column-gap: 0.5rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #337ab7;
  text-decoration: underline;
}

.section-access__contents .content-text-inner table tr td .google_map img {
  width: 2rem;
  height: 2rem;
}

.footer {
  background-color: #242d31;
  position: relative;
  color: #fff;
}

@media only screen and (max-width: 834px) {
  .footer {
    padding-bottom: 11rem;
  }
}
.footer__container {
  padding-top: 8rem;
  padding-bottom: 2.4rem;
}

.footer__container-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 2.4rem;
}

@media only screen and (max-width: 834px) {
  .footer__container-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 0;
  }
}
.footer__container-box-company {
  width: 42rem;
}

@media only screen and (max-width: 834px) {
  .footer__container-box-company {
    width: 100%;
    max-width: 42rem;
  }
}
.footer__container-box-company-name {
  font-weight: 500;
  width: 13.4rem;
  height: auto;
  margin-bottom: 3.8rem;
  display: inline-block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.footer__container-box-company-name :hover {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 0.5;
}

@media only screen and (max-width: 834px) {
  .footer__container-box-company-name {
    width: 13.4rem;
    margin-bottom: 2.8rem;
  }
}
.footer__container-box-anker {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 2.4rem;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  border-bottom: solid 0.1rem rgba(100, 100, 100, 0.9);
}

@media only screen and (max-width: 834px) {
  .footer__container-box-anker {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0 0;
    padding-top: 0rem;
    padding-bottom: 5.4rem;
    border-bottom: none;
  }
}
.footer__container-box-anker .partition {
  display: none;
}

.footer__container-box-anker-item {
  list-style: none;
}

@media only screen and (max-width: 834px) {
  .footer__container-box-anker-item {
    display: block;
    padding: 2.6rem 0;
    width: 100%;
    border-bottom: solid 0.1rem #f1f2f3;
  }
  .footer__container-box-anker-item:last-child {
    border-bottom: none;
  }
}
.footer__container-box-anker-item a {
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.footer__container-box-anker-item a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.footer__container-box-anker-item a .external-link {
  width: 1.2rem;
  height: 1.2rem;
  margin-left: 0.4rem;
}

.footer__container-box-anker-item a .external-link img {
  width: 100%;
  height: 100%;
  margin-bottom: 0.8rem;
}

.footer__container-box-anker-item img {
  width: 3rem;
  height: auto;
}

.footer__container-box-anker-item-circle {
  height: 1rem;
  width: 1rem;
  background-color: #fff;
  border-radius: 5rem;
  margin-right: 0.4rem;
}

@media only screen and (max-width: 834px) {
  .footer__container-box-anker-item-circle {
    height: 0.8rem;
    width: 0.8rem;
    margin-right: 0.8rem;
  }
}
.footer__container-box-anker-item.is-current .footer__container-box-anker-item-circle {
  background-color: #239da8;
}

.footer__container-box-anker-item-name {
  font-size: 1.4rem;
  line-height: 2.2;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 500;
  color: #fff;
  display: inline-block;
  word-break: keep-all;
  white-space: nowrap;
}

@media only screen and (max-width: 834px) {
  .footer__container-box-anker-item-name {
    line-height: 2rem;
  }
}
.footer__container-information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 3.6rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #fff;
  text-align: right;
}

@media only screen and (max-width: 834px) {
  .footer__container-information {
    border-top: none;
    padding-top: 3.4rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: left;
    gap: 1.6rem;
  }
}
.footer__container-information .copyRight {
  color: #b7b7b7;
}

.footer .privacyPoricy {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.footer .privacyPoricy:hover {
  opacity: 0.6;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.lower-mv {
  height: 55rem;
  max-height: 55rem;
}

@media only screen and (max-width: 834px) {
  .lower-mv {
    max-height: 70vh;
    height: 42rem;
  }
}
.lower-mv .mv-about {
  background-image: url(../../assets/images/AdobeStock_498231018_Preview.jpeg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .mv-study {
  background-image: url(../../assets/images/AdobeStock_649801569_Preview.jpeg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .mv-daily {
  background-image: url(../../assets/images/mv-daily.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .mv-contact {
  background-image: url(../../assets/images/AdobeStock_633456429_Preview.jpeg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .mv-hq {
  background-image: url(../../assets/images/quality04.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .mv-office {
  background-image: url(../../assets/images/ourOffice05.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.lower-mv .main__bg {
  top: -15rem;
  height: calc(100% + 10rem);
}

@media only screen and (max-width: 834px) {
  .lower-mv .main__bg {
    padding-bottom: 0;
  }
}
.lower-mv .main__bg .video_wrapper {
  height: 100%;
}

@media only screen and (max-width: 834px) {
  .lower-mv .main__bg .video_wrapper {
    width: 100%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    padding-bottom: 0;
    left: 50%;
  }
}
.lower-mv .main__bg .video_wrapper img {
  height: 100%;
}

@media only screen and (max-width: 834px) {
  .lower-mv .main__bg::before {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: -7.4rem;
    width: 100%;
    height: 100%;
    background: none;
  }
}
@media only screen and (max-width: 834px) {
  .lower-mv .mv__inner {
    padding-left: 2rem;
    padding-right: 2rem;
    background-color: rgba(0, 0, 0, 0);
  }
}
.lower-title {
  top: initial;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.lower-title-main {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  font-size: 5rem;
  color: #fff;
  padding-top: 40rem;
  padding-left: 0;
}

@media only screen and (max-width: 834px) {
  .lower-title-main {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .lower-title-main {
    font-size: 3rem;
    padding-top: 30rem;
  }
}
@media only screen and (max-width: 520px) {
  .lower-title-main {
    font-size: 3rem;
    padding-top: 28rem;
  }
  .lower-title-main-daily {
    font-size: 2.6rem;
  }
}
.lower-title-main::before {
  content: "";
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  background-color: #239da8;
  border-radius: 50%;
  margin-bottom: 1rem;
}

@media only screen and (max-width: 834px) {
  .lower-title-main::before {
    width: 1rem;
    height: 1rem;
    margin-bottom: 0.5rem;
    margin-right: 0.2rem;
  }
}
.content-body {
  background-color: #fff;
}

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

@media only screen and (max-width: 834px) {
  .content-body__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 0;
  }
}
.content-body__text-wrapper {
  background-color: #fff;
  padding-top: 10rem;
  max-width: 80.6rem;
}

@media only screen and (max-width: 834px) {
  .content-body__text-wrapper {
    padding-top: 7rem;
    padding-left: 0;
    padding-right: 0;
  }
}
.content-body__text-wrapper h2 {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  padding-bottom: 5rem;
}

@media only screen and (max-width: 834px) {
  .content-body__text-wrapper h2 {
    font-size: 1.4rem;
  }
}
.side {
  min-width: 25rem;
  background-color: #fff;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  border-right: solid 0.1rem #dbdbdb;
  position: relative;
}

@media only screen and (max-width: 834px) {
  .side {
    border-right: none;
  }
}
.side-inner {
  padding-top: 10rem;
  position: sticky;
  top: 0;
  left: 0;
}

@media only screen and (max-width: 834px) {
  .side-inner {
    padding-top: 5rem;
  }
}
.side-title {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  background-color: #239da8;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  padding: 2.2rem 2.4rem;
  border-radius: 0.4rem 0 0 0;
}

@media only screen and (max-width: 834px) {
  .side-title {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .side-title {
    display: none;
  }
}
.side-text {
  padding-top: 1rem;
  padding-left: 2rem;
  background: -webkit-gradient(linear, left top, left bottom, from(#F7F6F5), to(#ffffff));
  background: linear-gradient(to bottom, #F7F6F5, #ffffff);
}

@media only screen and (max-width: 834px) {
  .side-text {
    padding: 0;
    border-radius: 0.4rem 0.4rem 0 0;
  }
}
.side-text__items {
  position: relative;
}

@media only screen and (max-width: 834px) {
  .side-text__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.side-text__items::before {
  content: "";
  position: absolute;
  top: 2.8rem;
  left: 0;
  height: auto;
  width: 0.1rem;
  background-color: #dbdbdb;
  bottom: 2.8rem;
}

@media only screen and (max-width: 834px) {
  .side-text__items::before {
    display: none;
  }
}
.side-text__item {
  padding: 2rem 0 2rem 2rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .side-text__item {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .side-text__item {
    width: 50%;
    text-align: center;
    padding-left: 0;
  }
}
.side-text__item a {
  position: relative;
}

.side-text__item .nav-circle {
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 50%;
  background-color: #239da8;
  position: relative;
  top: 0.2rem;
  margin-left: 0.1rem;
}

.side-text__item .nav-circle img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 0.8rem;
  height: 0.8rem;
  -o-object-fit: contain;
  object-fit: contain;
}

.annotation {
  font-size: 1rem;
}

.top-border {
  padding-top: 5rem;
  position: relative;
}

.top-border::before,
.top-border::after {
  width: 0.8rem;
}

.top-border::before {
  background: #239da8;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  height: 0.1rem;
}

.top-border::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  height: 0.1rem;
  background: #dbdbdb;
  right: 0;
  width: calc(100% - 1.8rem);
}

.privacy-mv {
  height: auto;
  max-height: none;
  background-color: #fff;
  padding-left: 2rem;
  padding-right: 2rem;
}

.privacy-mv .main__bg {
  height: auto;
  position: static;
}

.privacy-mv .main__bg::before {
  display: none;
}

.privacy-mv .main__bg img {
  display: none;
}

@media only screen and (max-width: 834px) {
  .privacy-mv .main__bg {
    display: none;
  }
}
.privacy-mv .mv__inner {
  background-color: #fff;
}

.privacy-mv h1 {
  padding-top: 24.6rem;
  padding-bottom: 6rem;
}

@media only screen and (max-width: 834px) {
  .privacy-mv h1 {
    padding-top: 20rem;
  }
}
.privacy-mv p {
  padding-top: 0;
  padding-left: 0;
  padding-bottom: 9rem;
  max-width: 87.4rem;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-size: 1.4rem;
}

@media only screen and (max-width: 834px) {
  .privacy-mv p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-col {
  padding-bottom: 14rem;
  position: relative;
  z-index: 0;
}

.section-col .decoration {
  position: absolute;
  bottom: 12.4rem;
  left: -12.4rem;
  font-size: 14rem;
  line-height: 1;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 800;
  color: #f1f2f3;
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .section-col .decoration {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .section-col .decoration {
    display: none;
  }
}
.section-col h2 {
  font-size: 3rem;
  line-height: 1.3;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #333;
  padding-bottom: 6rem;
}

@media only screen and (max-width: 834px) {
  .section-col h2 {
    font-size: 3rem;
  }
}
.section-col p {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .section-col p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-col p.whoweare {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .section-col p.whoweare {
    font-size: 1.4rem;
  }
}
.section-col .col-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 834px) {
  .section-col .col-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.section-col .col-inner__img {
  width: 38.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  aspect-ratio: 3/2;
  border-radius: 0.4rem;
}

@media only screen and (max-width: 834px) {
  .section-col .col-inner__img {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}
.section-col .col-inner.whoweare {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.section-col tr th {
  width: 16.8rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
  padding: 2rem 0;
}

@media only screen and (max-width: 834px) {
  .section-col tr th {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .section-col tr th {
    width: 11rem;
  }
}
.section-col tr td {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 400;
  padding: 2rem 0;
}

@media only screen and (max-width: 834px) {
  .section-col tr td {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-study {
  padding-bottom: 0;
}

.section-study__item {
  padding-bottom: 5rem;
}

@media only screen and (max-width: 834px) {
  .section-study__item {
    padding-bottom: 6rem;
  }
}
.section-study__item.last-item {
  padding-bottom: 0;
}

.section-study__item:nth-of-type(odd) .col-inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

@media only screen and (max-width: 834px) {
  .section-study__item:nth-of-type(odd) .col-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.section-study__text {
  margin-bottom: 9rem;
  line-height: 1.8;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .section-study__text {
    font-size: 1.4rem;
  }
}
.section-study .study-h2 {
  padding-bottom: 5rem;
}

@media only screen and (max-width: 834px) {
  .section-study .study-h2 {
    padding-top: 6rem;
  }
}
.section-study .study-inner {
  gap: 6.4rem;
}

@media only screen and (max-width: 834px) {
  .section-study .study-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    gap: 2.4rem;
  }
}
.section-study .study-img {
  width: 42.8rem;
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 834px) {
  .section-study .study-img {
    width: 100%;
  }
}
.section-study .study-img img {
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.section-study p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.study-body {
  padding-bottom: 15rem;
}

.section-history__inner-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.section-history__inner .history-calendar {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #239da8;
  font-size: 4.6rem;
  font-weight: 300;
  line-height: 1;
  width: 17rem;
  padding-top: 1.5rem;
}

@media only screen and (max-width: 834px) {
  .section-history__inner .history-calendar {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .section-history__inner .history-calendar {
    font-size: 4rem;
    width: 13rem;
  }
}
.section-history__inner .history-description {
  border-left: solid 0.2rem #239da8;
}

@media only screen and (max-width: 834px) {
  .section-history__inner .history-description {
    width: calc(100% - 13rem);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}
.section-history__inner .history-description tr {
  position: relative;
}

@media only screen and (max-width: 834px) {
  .section-history__inner .history-description tr {
    display: block;
  }
}
.section-history__inner .history-description tr th {
  padding: 0.5rem 0 0.5rem 5rem;
  width: 17.2rem;
}

.section-history__inner .history-description tr td {
  padding: 0.5rem 0;
}

@media only screen and (max-width: 834px) {
  .section-history__inner .history-description tr th {
    width: 100%;
    display: block;
    padding-left: 3.2rem;
    padding-bottom: 0rem;
  }
}
.section-history__inner .history-description tr th::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.7rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background-color: #239da8;
}

@media only screen and (max-width: 834px) {
  .section-history__inner .history-description tr th::before {
    top: 4.5rem;
  }
}
@media only screen and (max-width: 834px) {
  .section-history__inner .history-description tr td {
    padding-left: 3.2rem;
    padding-top: 0;
  }
}
.section-about p {
  padding-bottom: 5rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
}

@media only screen and (max-width: 834px) {
  .section-about p {
    font-size: 1.4rem;
  }
}
.section-about__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

@media only screen and (max-width: 834px) {
  .section-about__link {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.section-about__link-button {
  cursor: pointer;
  min-width: 33rem;
}

@media only screen and (max-width: 520px) {
  .section-about__link-button {
    width: 100%;
    min-width: 100%;
  }
}
.section-about__link-button a {
  display: block;
  background: linear-gradient(107deg, #1EBCCA 20.56%, #239DA8 64.85%);
  padding: 2.4rem 8.8rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #fff;
  border-radius: 0.4rem;
  position: relative;
  letter-spacing: 0.128rem;
}

@media only screen and (max-width: 834px) {
  .section-about__link-button a {
    font-size: 1.4rem;
  }
}
.section-about__link-button a .link-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 0.1rem solid #fff;
}

.section-about__link-button a .link-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
  -ms-transform: translate(-50%, -50%) rotate(270deg);
  transform: translate(-50%, -50%) rotate(270deg);
  width: 0.8rem;
}

.daily-body .content-body__text-wrapper {
  max-width: 96rem;
}

@media only screen and (max-width: 834px) {
  .daily-body .content-body__text-wrapper {
    max-width: 100%;
  }
}
.about-body .content-body__text-wrapper {
  max-width: 88rem;
}

@media only screen and (max-width: 834px) {
  .about-body .content-body__text-wrapper {
    max-width: 100%;
  }
}
.bar_base {
  position: relative;
}

.bar_base::after {
  position: absolute;
  content: "";
  background-color: rgba(35, 157, 168, 0.1);
  width: 1rem;
  height: 90%;
  top: 35rem;
  right: -9rem;
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .bar_base::after {
    top: 52rem;
    right: 0;
  }
}
.time_bace {
  position: relative;
}

.time_bace.teatime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
  margin-top: 12rem;
  margin-bottom: 9rem;
}

@media only screen and (max-width: 834px) {
  .time_bace.teatime {
    display: block;
  }
}
.time_bace.teatime .seen_title {
  text-align: right;
  margin-top: 0;
  margin-right: 0;
}

@media only screen and (max-width: 834px) {
  .time_bace.teatime .seen_title {
    text-align: left;
  }
}
.time_bace.lesson {
  margin-top: -5rem;
}

.time_bace.lesson .seen_title {
  margin-left: -14rem;
}

@media only screen and (max-width: 834px) {
  .time_bace.lesson .seen_title {
    margin-left: -2rem;
  }
}
.time {
  position: absolute;
  top: 0;
  right: 0;
  color: rgba(35, 157, 168, 0.1);
  text-align: right;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 8rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1;
  padding-right: 6rem;
}

@media only screen and (max-width: 834px) {
  .time {
    font-size: 5rem;
    top: -8rem;
    right: 9rem;
    padding-right: 4.5rem;
  }
}
.time::after {
  position: absolute;
  content: "";
  background-color: rgba(35, 157, 168, 0.1);
  width: 12rem;
  height: 0.4rem;
  top: 60%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  margin-left: 2rem;
}

@media only screen and (max-width: 834px) {
  .time::after {
    margin-left: 0.5rem;
  }
}
.section-daily h2 {
  position: relative;
  text-align: center;
  padding-bottom: 10rem;
}

@media only screen and (max-width: 834px) {
  .section-daily h2 {
    font-size: 1.8rem;
    padding-bottom: 6rem;
  }
}
.section-daily h2::before {
  content: "Daily Life ";
  position: absolute;
  width: -moz-max-content;
  width: -webkit-max-content;
  width: max-content;
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 10rem;
  font-weight: 700;
  line-height: 1.1;
  color: rgba(234, 234, 234, 0.4);
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -45%);
  -ms-transform: translate(-50%, -45%);
  transform: translate(-50%, -45%);
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .section-daily h2::before {
    font-size: 5rem;
  }
}
.section-daily .compornent {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  gap: 2rem;
  margin-bottom: 7rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .compornent {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3rem;
    margin-bottom: 14rem;
  }
}
.section-daily .compornent.rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

@media only screen and (max-width: 834px) {
  .section-daily .compornent.rev {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    gap: 6rem;
  }
}
@media only screen and (max-width: 520px) {
  .section-daily .compornent.rev {
    gap: 3rem;
  }
}
.section-daily .compornent.rev.seen8 {
  gap: 6rem;
  margin-bottom: 10rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .compornent p {
    font-size: 1.6rem;
  }
}
.section-daily .pola {
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  background: var(--Photo, #FFFCF9);
  -webkit-box-shadow: 0.4rem 0.4rem 1.6rem 0px rgba(30, 30, 30, 0.15);
  box-shadow: 0.4rem 0.4rem 1.6rem 0px rgba(30, 30, 30, 0.15);
  padding: 1.6rem 1.6rem 6rem 1.6rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .pola {
    width: 100%;
    height: auto;
    max-width: 40rem;
  }
}
.section-daily .pola img {
  width: 45rem;
  height: 30rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .pola img {
    width: 100%;
    height: auto;
  }
}
.section-daily .seen_title {
  color: rgba(35, 157, 168, 0.1);
  font-family: "Cormorant Garamond", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 13rem;
  font-weight: 700;
  line-height: 1;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen_title {
    font-size: 8rem;
  }
}
.section-daily .seen_title.lunch {
  margin-top: -3rem;
  margin-left: -2rem;
  margin-bottom: 0;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen_title.lunch {
    font-size: 8rem;
  }
}
@media only screen and (max-width: 520px) {
  .section-daily .seen1 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.section-daily .seen1 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 2rem;
  margin-bottom: 2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen1 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 1.6rem;
  }
}
.section-daily .seen1 .pola {
  -webkit-transform: rotate(8deg);
  -ms-transform: rotate(8deg);
  transform: rotate(8deg);
}

.section-daily .seen2 .pola {
  -webkit-transform: rotate(-5.1deg);
  -ms-transform: rotate(-5.1deg);
  transform: rotate(-5.1deg);
}

.section-daily .seen2 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -0.5rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen2 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
.section-daily .seen3 {
  margin-bottom: 10rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen3 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.section-daily .seen3 .pola {
  -webkit-transform: rotate(4.72deg);
  -ms-transform: rotate(4.72deg);
  transform: rotate(4.72deg);
}

.section-daily .seen3 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen3 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
.section-daily .seen4 {
  gap: 7rem;
}

.section-daily .seen4 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen4 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
@media only screen and (max-width: 834px) {
  .section-daily .seen4 {
    gap: 3rem;
    margin-bottom: 4rem;
  }
}
.section-daily .seen4 .pola {
  -webkit-transform: rotate(7deg);
  -ms-transform: rotate(7deg);
  transform: rotate(7deg);
  margin-left: -10rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen4 .pola {
    margin-left: 0;
  }
}
.section-daily .seen4 p {
  margin-top: 9rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen4 p {
    margin-top: 0;
  }
}
.section-daily .seen5 {
  gap: 0;
}

.section-daily .seen5 .pola.left {
  -webkit-transform: rotate(2.96deg);
  -ms-transform: rotate(2.96deg);
  transform: rotate(2.96deg);
  margin-right: -2rem;
  z-index: 1;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen5 .pola.left {
    margin-right: 0;
  }
}
.section-daily .seen5 .pola.right {
  -webkit-transform: rotate(-4.57deg);
  -ms-transform: rotate(-4.57deg);
  transform: rotate(-4.57deg);
  margin-top: 3rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen5 .pola.right {
    margin-top: 0;
  }
}
.section-daily .seen6 {
  margin-top: 6rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen6 {
    margin-top: 3rem;
  }
}
.section-daily .seen6 .pola {
  -webkit-transform: rotate(-7.33deg);
  -ms-transform: rotate(-7.33deg);
  transform: rotate(-7.33deg);
  margin-left: -5rem;
}

.section-daily .seen6 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen6 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
@media only screen and (max-width: 834px) {
  .section-daily .seen6 .pola {
    margin-left: 0;
  }
}
@media only screen and (max-width: 834px) {
  .section-daily .seen7 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}
.section-daily .seen7 .pola {
  -webkit-transform: rotate(6.48deg);
  -ms-transform: rotate(6.48deg);
  transform: rotate(6.48deg);
}

.section-daily .seen7 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen7 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
.section-daily .seen8 {
  gap: 9rem;
}

.section-daily .seen8 .pola {
  -webkit-transform: rotate(-14.16deg);
  -ms-transform: rotate(-14.16deg);
  transform: rotate(-14.16deg);
  margin-left: 4rem;
}

.section-daily .seen8 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-left: -2rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen8 p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-left: initial;
  }
}
.section-daily .seen9 {
  position: relative;
  text-align: center;
}

.section-daily .seen9 p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  margin-bottom: 11rem;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen9 p {
    font-size: 1.6rem;
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    margin-bottom: 8rem;
  }
}
.section-daily .seen9 .pola {
  margin: auto;
}

.section-daily .seen9 .seen_title {
  position: absolute;
  top: 14rem;
  right: -17rem;
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .section-daily .seen9 .seen_title {
    top: 52rem;
    right: 0;
  }
}
.section-contactForm {
  background-color: #fff;
  padding-bottom: 12rem;
}

.mail-form__container {
  max-width: 71rem;
  margin: 0 auto;
  padding-top: 10rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container {
    padding-top: 5rem;
  }
}
.mail-form__container form {
  display: block;
}

.mail-form__container form table {
  display: block;
  padding-bottom: 5rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.mail-form__container form tbody {
  display: block;
}

.mail-form__container form tr {
  display: block;
  padding: 2.8rem 2rem;
  background-color: #f8f8f8;
  margin-bottom: 2rem;
  border-radius: 0.4rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form tr {
    padding: 3.4rem 1.4rem 2.8rem;
  }
}
.mail-form__container form tr.last-tr {
  padding-bottom: 3rem;
  border-bottom: solid 0.2rem #f0f0f0;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form tr.last-tr {
    padding-bottom: 4rem;
  }
}
.mail-form__container form th {
  display: inline-block;
  max-width: 28rem;
  width: 100%;
  vertical-align: top;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.6;
}

.mail-form__container form th:not(.no_required):after {
  content: "必須";
  display: inline-block;
  margin-left: 0.8rem;
  position: relative;
  bottom: 0.2rem;
  left: 0;
  padding: 0 0.8rem 0.2rem;
  background-color: #ef0c0c;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.6;
  border-radius: 0.2rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form th:not(.no_required):after {
    position: relative;
    bottom: 0;
    left: 0.8rem;
  }
}
.mail-form__container form th.none-required::after {
  display: none;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form th {
    padding-bottom: 1rem;
  }
}
.mail-form__container form td {
  display: inline-block;
  width: 100%;
  margin-top: 1rem;
}

.mail-form__container form td input,
.mail-form__container form td textarea,
.mail-form__container form td select {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  display: block;
  height: 5rem;
  width: 100%;
  border: solid #d9d9d9 0.1rem;
  border-radius: 0.4rem;
  background-color: #fff;
  padding-left: 2rem;
  letter-spacing: 0.2rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form td input,
  .mail-form__container form td textarea,
  .mail-form__container form td select {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .mail-form__container form td input,
  .mail-form__container form td textarea,
  .mail-form__container form td select {
    width: 100%;
    height: 4rem;
    padding-left: 1.4rem;
  }
}
.mail-form__container form td input::-moz-placeholder,
.mail-form__container form td textarea::-moz-placeholder,
.mail-form__container form td select::-moz-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-webkit-input-placeholder,
.mail-form__container form td textarea::-webkit-input-placeholder,
.mail-form__container form td select::-webkit-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-moz-placeholder,
.mail-form__container form td textarea::-moz-placeholder,
.mail-form__container form td select::-moz-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input:-ms-input-placeholder,
.mail-form__container form td textarea:-ms-input-placeholder,
.mail-form__container form td select:-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-ms-input-placeholder,
.mail-form__container form td textarea::-ms-input-placeholder,
.mail-form__container form td select::-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-webkit-input-placeholder,
.mail-form__container form td textarea::-webkit-input-placeholder,
.mail-form__container form td select::-webkit-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-moz-placeholder,
.mail-form__container form td textarea::-moz-placeholder,
.mail-form__container form td select::-moz-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input:-ms-input-placeholder,
.mail-form__container form td textarea:-ms-input-placeholder,
.mail-form__container form td select:-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-ms-input-placeholder,
.mail-form__container form td textarea::-ms-input-placeholder,
.mail-form__container form td select::-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-webkit-input-placeholder, .mail-form__container form td textarea::-webkit-input-placeholder, .mail-form__container form td select::-webkit-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-moz-placeholder, .mail-form__container form td textarea::-moz-placeholder, .mail-form__container form td select::-moz-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input:-ms-input-placeholder, .mail-form__container form td textarea:-ms-input-placeholder, .mail-form__container form td select:-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::-ms-input-placeholder, .mail-form__container form td textarea::-ms-input-placeholder, .mail-form__container form td select::-ms-input-placeholder {
  color: #c3cdd6;
}

.mail-form__container form td input::placeholder,
.mail-form__container form td textarea::placeholder,
.mail-form__container form td select::placeholder {
  color: #c3cdd6;
}

.mail-form__container form td textarea {
  height: 16rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.mail-form__container form .privacy-box__label {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.mail-form__container form .privacy-box__label-input {
  display: inline-block;
}

.mail-form__container form .privacy-box__label span {
  font-weight: 700;
}

.mail-form__container form .privacy-box__label span::after {
  content: "必須";
  display: inline-block;
  margin-left: 0.8rem;
  position: relative;
  bottom: 0.2rem;
  left: 0;
  padding: 0 0.8rem 0.2rem;
  background-color: #ef0c0c;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.6;
  border-radius: 0.2rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form .privacy-box__label span::after {
    position: relative;
    bottom: 0;
    margin-left: 0.2rem;
  }
}
.mail-form__container form .privacy-box p {
  padding-top: 0.8rem;
  text-align: center;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-weight: 600;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form .privacy-box p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .mail-form__container form .privacy-box p {
    text-align: center;
  }
}
.mail-form__container form .privacy-box p a {
  color: #606060;
  text-decoration: underline;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  font-weight: 400;
}

.mail-form__container form .privacy-box p a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.mail-form__container form .mail-form__button {
  position: relative;
  max-width: 33rem;
  width: 100%;
  margin: 8rem auto 0;
}

.mail-form__container form .mail-form__button input {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  cursor: pointer;
  background: linear-gradient(107deg, #1EBCCA 20.56%, #239DA8 64.85%);
  padding: 3rem 0;
  width: 100%;
  display: block;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-weight: 600;
  letter-spacing: 0.1rem;
  color: #fff;
  border: none;
  border-radius: 0.4rem;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form .mail-form__button input {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .mail-form__container form .mail-form__button input {
    font-size: 1.6rem;
  }
}
.mail-form__container form .mail-form__button input:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.mail-form__container form .mail-form__button .link-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 2.2rem;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 50%;
  border: 0.1rem solid #fff;
}

.mail-form__container form .mail-form__button .link-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
  -ms-transform: translate(-50%, -50%) rotate(270deg);
  transform: translate(-50%, -50%) rotate(270deg);
  width: 56%;
}

@media only screen and (max-width: 834px) {
  .mail-form__container form th {
    display: block;
    font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2;
    color: #333;
    font-weight: 500;
  }
}
@media only screen and (max-width: 834px) and (max-width: 834px) {
  .mail-form__container form th {
    font-size: 1.4rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 834px) {
  .mail-form__container form td {
    display: block;
  }
  .mail-form__container form textarea {
    display: block;
    width: 100%;
  }
}
.page-privacy {
  padding-top: 26rem;
  padding-bottom: 5rem;
  color: #333;
}

.section-privacy {
  background-color: #fff;
}

@media only screen and (max-width: 834px) {
  .section-privacy {
    padding-bottom: 0rem;
  }
}
.section-privacy__contents {
  max-width: 88rem;
  margin: 0 auto;
  padding-bottom: 10rem;
}

.section-privacy__contents-border {
  height: 0.3rem;
  width: 100%;
  background-color: #e9f2f8;
  position: relative;
}

.section-privacy__contents-border::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 0.3rem;
  width: 2rem;
  background-color: #239da8;
}

.section-privacy__contents-item {
  padding-bottom: 7rem;
}

@media only screen and (max-width: 834px) {
  .section-privacy__contents-item {
    padding-bottom: 6rem;
  }
}
.section-privacy__contents-item h2 {
  font-size: 4.6rem;
  line-height: 1.4;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #333;
  font-size: 3rem;
  line-height: 1.3;
  color: #181818;
  padding-bottom: 3.8rem;
  font-weight: 500;
  letter-spacing: 0.2rem;
}

@media only screen and (max-width: 834px) {
  .section-privacy__contents-item h2 {
    font-size: 3rem;
  }
}
@media only screen and (max-width: 834px) {
  .section-privacy__contents-item h2 {
    font-size: 2.4rem;
    padding-bottom: 4rem;
  }
}
.section-privacy__contents-item h2.top-border {
  padding-top: 7rem;
}

.section-privacy__contents-item p {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  line-height: 2.2;
  font-size: 1.4rem;
  font-weight: 500;
  color: #181818;
}

@media only screen and (max-width: 834px) {
  .section-privacy__contents-item p {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-privacy__contents-item h3,
.section-privacy__contents-item li,
.section-privacy__contents-item span {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  line-height: 2.2;
  font-size: 1.4rem;
  font-weight: 500;
  color: #181818;
}

@media only screen and (max-width: 834px) {
  .section-privacy__contents-item h3,
  .section-privacy__contents-item li,
  .section-privacy__contents-item span {
    font-size: 1.4rem;
    line-height: 2;
  }
}
.section-privacy__contents-item li {
  list-style: inside;
}

.section-thanks {
  background-color: #fff;
  padding-top: 22rem;
  padding-bottom: 8rem;
}

@media only screen and (max-width: 834px) {
  .section-thanks {
    padding-top: 16rem;
    padding-bottom: 2rem;
  }
}
.section-thanks__heading h1 {
  color: #333;
  font-size: 3rem;
  line-height: 1.4;
  font-weight: 600;
  letter-spacing: 0.1rem;
  padding-bottom: 4rem;
  text-align: center;
}

@media only screen and (max-width: 834px) {
  .section-thanks__heading h1 {
    font-size: 2.4rem;
  }
}
.section-thanks__heading p {
  font-size: 1.6rem;
  line-height: 2;
  max-width: 88rem;
  padding-bottom: 16rem;
}

@media only screen and (max-width: 834px) {
  .section-thanks__heading p {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: 0;
    padding-bottom: 10rem;
  }
}
.section-thanks__heading a {
  display: inline-block;
  padding: 1.2rem 6rem 1.2rem 6.2rem;
  background-color: #239da8;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  border-radius: 0.2rem;
  position: relative;
  margin: 1.8rem auto 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

@media only screen and (max-width: 834px) {
  .section-thanks__heading a {
    font-size: 1.6rem;
    padding: 1.2rem 6rem 1.2rem 6.2rem;
    border-radius: 0.2rem;
    margin-top: 1.8rem;
  }
}
.section-thanks__heading a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.8rem;
  height: 1rem;
  width: 1rem;
  border-right: 0.3rem solid #fff;
  border-bottom: 0.3rem solid #fff;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  -ms-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}

@media only screen and (max-width: 834px) {
  .section-thanks__heading a::before {
    right: 1.8rem;
    height: 1rem;
    width: 1rem;
    border-right: 0.3rem solid #239da8;
    border-bottom: 0.3rem solid #239da8;
  }
}
.section-thanks__heading a:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.notfound p {
  padding-bottom: 6rem;
}

.notfound .section-about__link {
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  margin-bottom: 12rem;
  text-align: center;
}

.hq-body {
  overflow: hidden;
}

.hq-body .content-text {
  width: 100%;
}

.hq-body .content-text h2 .title-section {
  text-align: center;
  margin-bottom: 8rem;
  padding-top: 10rem;
  padding-bottom: 0;
  font-size: 6.6rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .content-text h2 .title-section {
    font-size: 3rem;
    padding-top: 5rem;
    margin-bottom: 5rem;
  }
}
.hq-body .content-text h2 .title-section::before {
  content: "Shenzhen YHLO";
  display: block;
  position: absolute;
  color: rgba(234, 234, 234, 0.4);
  text-align: center;
  font-family: Cormorant Garamond;
  font-size: 20rem;
  font-style: normal;
  font-weight: 700;
  line-height: 22rem;
  width: 100%;
  height: auto;
  top: 3rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: -1;
}

@media only screen and (max-width: 834px) {
  .hq-body .content-text h2 .title-section::before {
    font-size: 5rem;
    top: -5rem;
  }
}
.hq-body p {
  display: block;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  margin: auto;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  font-size: 2.4rem;
  margin-bottom: 8rem;
  padding: 0.6rem 0rem;
}

.hq-body p span {
  font-family: "Noto Serif SC", "Noto Sans SC", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

@media only screen and (max-width: 834px) {
  .hq-body p {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .hq-body p {
    margin-bottom: 4rem;
  }
}
.hq-body p.siteArea {
  font-size: 1.6rem;
  border-top: none;
  border-bottom: none;
  text-align: right;
  width: 100%;
  line-height: 1.5;
  margin-bottom: 6.4rem;
}

.hq-body .section-about__link {
  margin-bottom: 20.4rem;
}

@media only screen and (max-width: 834px) {
  .hq-body p.siteArea {
    font-size: 1.2rem;
    margin-bottom: 3rem;
    line-height: 1;
  }
  .hq-body .section-about__link {
    margin-bottom: 16rem;
  }
}
.hq-body .free_layout {
  display: block;
  margin-bottom: 15.6rem;
  position: relative;
}

@media only screen and (max-width: 520px) {
  .hq-body .free_layout {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 834px) {
  .hq-body .free_layout {
    grid-template-rows: auto 1.8rem auto auto auto 1.8rem auto;
  }
}
.hq-body .free_layout img {
  z-index: 1;
  position: relative;
}

.hq-body .free_layout .transparent_01 {
  position: relative;
  width: 73.9rem;
  height: 49.4rem;
  margin: 0 auto 40.5rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .transparent_01 {
    width: 32rem;
    height: 21.4rem;
    margin-bottom: 30rem;
  }
}
.hq-body .free_layout .transparent_01bg {
  position: absolute;
  top: -8.1rem;
  right: -26.1rem;
  width: 96.5rem;
  height: 72.6rem;
  z-index: 0;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .transparent_01bg {
    width: 43rem;
    height: 31.7rem;
    top: 5.1rem;
    left: -1rem;
    right: auto;
  }
}
.hq-body .free_layout .transparent_02 {
  position: relative;
  width: 70.8rem;
  height: 46.9rem;
  margin: 0 auto;
  margin-bottom: 9rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .transparent_02 {
    width: 100%;
    height: initial;
    margin-bottom: 0;
  }
}
.hq-body .free_layout .transparent_02bg {
  position: absolute;
  top: -5.5rem;
  left: 3.9rem;
  width: 116.9rem;
  height: 64.1rem;
  z-index: 0;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .transparent_02bg {
    width: 56.7rem;
    height: 31rem;
    top: initial;
    left: -18rem;
  }
}
.hq-body .free_layout .transparent_03 {
  position: relative;
  width: 88rem;
  margin: 0 auto;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .hq_03 {
    width: 31.3rem;
    height: 20.5rem;
    margin-bottom: 14rem;
    left: 5rem;
  }
}
@media only screen and (max-width: 834px) {
  .hq-body .free_layout .hq_03 {
    left: 9rem;
  }
}
@media only screen and (max-width: 520px) {
  .hq-body .free_layout .hq_03 {
    left: 5rem;
  }
}
.hq-body .free_layout .layout.hq_02 {
  margin-bottom: 12.5rem;
  position: absolute;
  top: 38.4rem;
  left: -30rem;
  width: 53.5rem;
  height: 37.6rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .layout.hq_02 {
    top: 19.3rem;
    left: -10.6rem;
    width: 23.4rem;
    height: 19rem;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 520px) {
  .hq-body .free_layout .layout.hq_02 {
    left: -3.6rem;
  }
}
.hq-body .free_layout .layout.hq_04 {
  position: relative;
  top: 0;
  right: -11.6rem;
  width: 57.2rem;
  height: 38rem;
  display: block;
  margin-right: 0;
  margin-left: auto;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .layout.hq_04 {
    width: 31rem;
    height: 25rem;
    right: -20rem;
    margin-right: initial;
    margin-left: initial;
  }
}
@media only screen and (max-width: 520px) {
  .hq-body .free_layout .layout.hq_04 {
    width: 26rem;
    height: 21.5rem;
    right: -10rem;
  }
}
.hq-body .free_layout .layout.hq_05 {
  margin-top: -5.6rem;
  width: 74.5rem;
  height: 49.4rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .free_layout .layout.hq_05 {
    margin-top: -2rem;
    width: 30.3rem;
    height: 18.5rem;
    margin-bottom: 0rem;
    left: 2rem;
  }
}
@media only screen and (max-width: 520px) {
  .hq-body .free_layout .layout.hq_05 {
    left: initial;
    margin-bottom: 7.4rem;
  }
}
.hq-body .content-body__wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.hq-body .content-body__wrapper .img_layout:nth-of-type(1) img {
  width: 62.9rem;
  height: 94.5rem;
  margin-bottom: 16.2rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .content-body__wrapper .img_layout:nth-of-type(1) img {
    margin-bottom: 6rem;
  }
}
@media only screen and (max-width: 834px) {
  .hq-body .content-body__wrapper .img_layout:nth-of-type(1) img {
    width: 100%;
    height: auto;
  }
}
.hq-body .content-body__wrapper .img_layout:nth-of-type(2) img {
  width: 77.5rem;
  height: 51.8rem;
  margin-bottom: 0rem;
}

.hq-body .content-body__wrapper .img_layout2 img {
  width: 77.5rem;
  height: auto;
  margin-bottom: 0rem;
}

.hq-body .content-body__wrapper .img_layout2:nth-of-type(2) img {
  width: 77.5rem;
  height: auto;
  margin-bottom: 0rem;
}

@media only screen and (max-width: 834px) {
  .hq-body .content-body__wrapper .img_layout:nth-of-type(2) img {
    width: 100%;
    height: auto;
  }
  .hq-body .content-body__wrapper .img_layout2 img {
    width: 100%;
    height: auto;
  }
  .hq-body .content-body__wrapper .img_layout2:nth-of-type(2) img {
    width: 100%;
    height: auto;
  }
}
.ouroffice-body {
  overflow: hidden;
  padding-bottom: 4rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body {
    padding-bottom: initial;
  }
}
.ouroffice-body__video {
  padding-top: 10rem;
  padding-bottom: 8.4rem;
  width: 74rem;
  margin: 0 auto;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body__video {
    width: 100%;
  }
}
.ouroffice-body__video video {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.ouroffice-body__video p {
  text-align: center;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  font-size: 1.4rem;
  padding-top: 1rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body__video p {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .ouroffice-body__video p {
    padding-top: 0.4rem;
  }
}
.ouroffice-body__button {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-bottom: 14rem;
}

@media only screen and (max-width: 520px) {
  .ouroffice-body__button {
    padding-bottom: 10rem;
  }
}
@media only screen and (max-width: 834px) {
  .ouroffice-body__button a {
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: center;
  }
}
.ouroffice-body__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.ouroffice-body__flex-img {
  border-radius: 0.4rem;
  overflow: hidden;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.ouroffice-body__flex-text h2 {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  font-size: 7rem;
  line-height: 120%;
  color: #239da8;
  padding-bottom: 4rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body__flex-text h2 {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 834px) {
  .ouroffice-body__flex-text h2 {
    font-size: 4.2rem;
  }
}
.ouroffice-body .location {
  padding-bottom: 14rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .location {
    padding-bottom: 6rem;
  }
}
.ouroffice-body .location-img {
  width: 73.3rem;
  height: 38.2rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 4rem;
  background-image: url(../../assets/images/ourOffice01.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .location-img {
    width: 92%;
    height: auto;
    aspect-ratio: 166/81;
    margin-right: initial;
    margin-left: -2rem;
    background-size: 102% auto;
  }
}
.ouroffice-body .location-text h2 {
  padding-top: 8rem;
  text-align: left;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .location-text h2 {
    text-align: left;
  }
}
.ouroffice-body .location-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: left;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .location-text p {
    font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    text-align: left;
  }
}
.ouroffice-body .nature {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  padding-bottom: 10.6rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .nature {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 12rem;
  }
}
.ouroffice-body .nature-img {
  width: 81.4rem;
  height: 39.2rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: -13.8rem;
  margin-left: 5rem;
  background-image: url(../../assets/images/ourOffice02.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .nature-img {
    width: 101%;
    height: auto;
    aspect-ratio: 1/0.598;
    margin-right: -4%;
    margin-left: auto;
    background-size: 110% 110%;
    margin-bottom: 7.8rem;
  }
}
.ouroffice-body .nature-text h2 {
  text-align: left;
}

.ouroffice-body .nature-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: left;
}

.ouroffice-body .privately01 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding-bottom: 10.6rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 3.8rem;
  }
}
.ouroffice-body .privately01-img {
  width: 65.6rem;
  height: 32.9rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: -16rem;
  margin-right: 12.4rem;
  background-image: url(../../assets/images/ourOffice07.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately01-img {
    width: 86%;
    height: auto;
    aspect-ratio: 1/0.588;
    margin-right: initial;
    margin-left: -2rem;
    background-size: 130% 130%;
  }
}
@media only screen and (max-width: 834px) {
  .ouroffice-body .privately01-text {
    display: none;
  }
}
.ouroffice-body .privately01-text h2 {
  text-align: left;
}

.ouroffice-body .privately01-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: left;
}

.ouroffice-body .privately02 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  padding-bottom: 12.5rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately02 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 9rem;
  }
}
.ouroffice-body .privately02-img {
  width: 94.2rem;
  height: 46.4rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: -5.3rem;
  background-image: url(../../assets/images/ourOffice06.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately02-img {
    width: 98%;
    height: auto;
    aspect-ratio: 1/0.598;
    margin-right: -2rem;
    margin-left: auto;
    background-size: 130% 130%;
    margin-bottom: 7.8rem;
  }
}
.ouroffice-body .privately02-text {
  display: none;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately02-text {
    display: block;
  }
}
.ouroffice-body .privately02-text p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: left;
}

.ouroffice-body .privately03 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 9.2rem;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately03 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.ouroffice-body .privately03-img01 {
  width: 49.2rem;
  height: 32.8rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: -5.1rem;
  background-image: url(../../assets/images/ourOffice03.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately03-img01 {
    width: 74%;
    height: auto;
    aspect-ratio: 1/0.649;
    margin-right: initial;
    margin-left: -2rem;
    background-size: 130% 130%;
  }
}
.ouroffice-body .privately03-img02 {
  width: 72rem;
  height: 46.6rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-top: 9.5rem;
  margin-right: -5.3rem;
  background-image: url(../../assets/images/ourOffice04.webp);
}

@media only screen and (max-width: 834px) {
  .ouroffice-body .privately03-img02 {
    width: 91%;
    height: auto;
    aspect-ratio: 1/0.942;
    margin-top: 3.8rem;
    margin-right: -2rem;
    margin-left: auto;
    width: 100%;
    background-size: 120% 120%;
  }
}
.ouroffice-body__variety {
  padding-bottom: 9rem;
}

.ouroffice-body__variety p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: center;
}

@media only screen and (max-width: 834px) {
  .ouroffice-body__variety p {
    text-align: left;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
}
#scroll-top {
  position: fixed;
  background-color: #239da8;
  opacity: 1;
  bottom: 5rem;
  padding: 2rem 2.4rem 1.6rem;
  height: 6.4rem;
  width: 6.4rem;
  right: 4.2rem;
  z-index: 100;
  border-radius: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-shadow: 0px 0px 0px 0px #fff inset, 0px 0px 0.8rem 0.2rem rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 0px 0px #fff inset, 0px 0px 0.8rem 0.2rem rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 834px) {
  #scroll-top {
    bottom: 12rem;
    right: 1rem;
    height: 5rem;
    width: 5rem;
  }
}
#scroll-top::after {
  position: absolute;
  content: "";
  background-image: url(../../assets/images/arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 2rem;
  height: 2rem;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%) rotate(180deg);
  transform: translate(-50%, -50%) rotate(180deg);
  -webkit-transform: translate(-50%, -50%), rotate(180deg);
}

@media only screen and (max-width: 834px) {
  #scroll-top::after {
    height: 1.6rem;
    width: 1.6rem;
  }
}
#scroll-top a {
  text-decoration: none;
  color: #fff;
}

#scroll-top:hover {
  opacity: 0.5;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.domain::before {
  content: "@";
}

.pc {
  display: block;
}

.rep-sp {
  display: none;
}

@media only screen and (max-width: 834px) {
  .pc {
    display: none;
  }
  .rep-sp {
    display: block;
  }
}
.pc.kaigyo {
  display: block;
}

@media only screen and (max-width: 834px) {
  .pc.kaigyo {
    display: none;
  }
}
.tablet {
  display: none;
}

@media only screen and (max-width: 834px) {
  .tablet {
    display: block;
  }
}
.tablet__inline {
  display: inline;
}

.sp {
  display: none;
}

@media only screen and (max-width: 520px) {
  .sp {
    display: block;
  }
}
.hoverOpacity {
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
  opacity: 1;
}

.hoverOpacity:hover {
  opacity: 0.7;
  -webkit-transition: 0.5s all;
  transition: 0.5s all;
}

.scrolldown2 {
  position: absolute;
  bottom: 0;
  left: 6rem;
  z-index: 1;
}

@media only screen and (max-width: 834px) {
  .scrolldown2 {
    display: none;
  }
}
.scrolldown2 span {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%);
  -ms-transform: translate(-50%);
  transform: translate(-50%);
  bottom: 8rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

@media only screen and (max-width: 834px) {
  .scrolldown2 span {
    font-size: 1.4rem;
  }
}
.scrolldown2:before {
  content: "";
  position: absolute;
  bottom: 1.4rem;
  left: -0.6rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #fff;
  -webkit-animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
  animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}

@-webkit-keyframes circlemove {
  0% {
    bottom: 6rem;
  }
  100% {
    bottom: 1rem;
  }
}
@keyframes circlemove {
  0% {
    bottom: 6rem;
  }
  100% {
    bottom: 1rem;
  }
}
@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
.scrolldown2:after {
  content: "";
  position: absolute;
  bottom: 1.4rem;
  left: -0.2rem;
  width: 0.2rem;
  height: 5rem;
  background: #fff;
}

@media only screen and (max-width: 834px) {
  .top-slogan__inner-message {
    position: relative;
  }
  .top-slogan__inner-message .content-img {
    display: block;
    position: absolute;
    z-index: 1;
    top: 68%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  .top-slogan__inner-message .content-text {
    position: relative;
    z-index: 2;
  }
  .top-slogan:before {
    display: none;
  }
  .top-slogan .content-text h2 .title-section {
    text-align: center;
  }
  .top-slogan .content-text p {
    max-width: 300px;
    margin: 0 auto;
    padding-bottom: 0rem;
  }
  .top-policy__mission {
    padding: 8rem 0 2rem;
  }
  .top-policy__value {
    padding: 9rem 0 10rem;
  }
  .about-body .content-body__text-wrapper .section-col {
    padding-bottom: 7rem;
  }
}
@media only screen and (max-width: 520px) {
  .top-policy {
    padding-top: 10rem;
  }
}
.section-study__link-button {
  cursor: pointer;
  min-width: 33rem;
}

.section-study__link-button a {
  display: block;
  background: linear-gradient(107deg, #1EBCCA 20.56%, #239DA8 64.85%);
  padding: 2.4rem 8.8rem;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #333;
  color: #fff;
  border-radius: 0.4rem;
  position: relative;
  letter-spacing: 0.128rem;
  text-align: center;
}

.section-study__link-button a em {
  font-style: normal;
  font-size: 0.8em;
  display: block;
}

.section-study__link-button a .link-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  border: 0.1rem solid #fff;
}

.section-study__link-button a .link-arrow img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(270deg);
  -ms-transform: translate(-50%, -50%) rotate(270deg);
  transform: translate(-50%, -50%) rotate(270deg);
  width: 0.8rem;
}

.recruit-body__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-bottom: 14rem;
}

.section-recruit__inner-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.recruit-body .section-col tr th {
  -moz-text-align-last: justify;
  text-align-last: justify;
  display: block;
  width: 10.8rem;
  white-space: nowrap;
}

.recruit-body .section-col tr td {
  padding: 2rem 0 2rem 4rem;
}

.recruit-body .section-about p {
  font-weight: 400;
}

.recruit-body .content-text h2 {
  padding-bottom: 10rem;
}

.recruit-body .content-text h2 .title-section {
  position: relative;
  text-align: center;
  padding: 5rem 0 0rem 0;
}

.recruit-body .content-text h2 .title-section:before {
  white-space: nowrap;
  content: "JOIN US";
  display: block;
  position: absolute;
  color: #f1f2f3;
  text-align: center;
  font-family: "Zen Old Mincho";
  font-size: 20rem;
  font-style: normal;
  font-weight: 700;
  line-height: 22rem;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -1;
  text-transform: uppercase;
}

.recruit-body .content-text p {
  max-width: 820px;
  margin: auto;
}

.recruit-body .content-body__text-wrapper {
  max-width: 88rem;
}

.recruit-body .col-inner-text {
  text-align: center;
  padding-bottom: 3rem;
  padding-top: 7rem;
}

.recruit-body .section-col p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.recruit-body .recruit-body__button {
  padding-bottom: 0rem;
}

.recruit-body .litbox-wrap-box {
  display: none;
}

.recruit-body .col-items {
  padding-top: 3rem;
  display: grid;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: clamp(10px, -31.0637px + 5.7325vw, 100px);
  grid-template-columns: 1fr 1fr;
}

.recruit-body .col-items .item {
  position: relative;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
}

.recruit-body .col-items .item .po-left {
  top: -3rem;
  left: -3rem;
  position: absolute;
  z-index: 3;
  background-color: #999;
  border-radius: 50%;
  width: 8rem;
  height: 8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3;
  white-space: nowrap;
}

.recruit-body .col-items .item .img {
  position: relative;
  overflow: hidden;
}

.recruit-body .col-items .item .img::before {
  content: "";
  display: block;
  padding-top: 73%;
}

.recruit-body .col-items .item .img:after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  content: "";
  width: 100%;
  height: 60%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(1%, rgba(253, 253, 253, 0)), to(rgb(19, 46, 62)));
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(253, 253, 253, 0) 1%, rgb(19, 46, 62) 100%);
}

.recruit-body .col-items .item .img .bg_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.recruit-body .col-items .item .img .bg_img img {
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.6s 0s ease;
  transition: -webkit-transform 0.6s 0s ease;
  transition: transform 0.6s 0s ease;
  transition: transform 0.6s 0s ease, -webkit-transform 0.6s 0s ease;
}

.recruit-body .col-items .item .text-con {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
  color: #fff;
  padding: clamp(5px, 1.6561px + 0.9554vw, 20px);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  white-space: nowrap;
}

.recruit-body .col-items .item .text-con .jp {
  font-size: clamp(1.2rem, 9.3248px + 0.7643vw, 2.4rem);
}

.recruit-body .col-items .item .text-con .en {
  font-size: clamp(1.2rem, 11.1083px + 0.2548vw, 1.6rem);
  text-decoration: underline;
  text-transform: uppercase;
}

.recruit-body .col-items .item.recruit-click {
  cursor: pointer;
}

.recruit-body .col-items .item.recruit-click .po-left {
  background-color: #239da8;
}

.recruit-body .col-items .item.recruit-click:hover .img .bg_img img {
  -webkit-transform: scale(1.05, 1.05);
  -ms-transform: scale(1.05, 1.05);
  transform: scale(1.05, 1.05);
}

.litbox-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  background-color: #239da8;
  z-index: 10000;
  -webkit-transition: visibility 0.5s, opacity 0.5s;
  transition: visibility 0.5s, opacity 0.5s;
  visibility: hidden;
  opacity: 0;
  height: 100vh;
  font-family: "Zen Old Mincho", sans-serif;
}

.litbox-wrap.show {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.litbox-wrap .litbox-inner {
  padding-top: 30px;
  max-width: 900px;
  margin: auto;
}

.litbox-wrap .litbox-inner-wrap {
  padding: clamp(20px, 13.3121px + 1.9108vw, 50px);
  color: #fff;
  overflow-y: auto;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
  overflow-y: auto;
}

.litbox-wrap .litbox-inner-wrap::-webkit-scrollbar {
  display: none;
}

.litbox-wrap .col1-box {
  overflow-y: auto;
}

.litbox-wrap .close {
  top: clamp(20px, 13.3121px + 1.9108vw, 50px);
  right: clamp(20px, 13.3121px + 1.9108vw, 50px);
  width: 30px;
  height: 30px;
  cursor: pointer;
  margin: auto;
  margin-right: 0;
  position: absolute;
}

.litbox-wrap .close:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: -1.4rem;
  background: #fff;
  height: 0.2rem;
  margin: auto;
  width: 30px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.litbox-wrap .close:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  top: -1.4rem;
  background: #fff;
  height: 0.2rem;
  margin: auto;
  width: 30px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.litbox-wrap h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  white-space: nowrap;
  font-size: 4rem;
  line-height: 1.3;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #fff;
  padding: 5rem 0;
  font-size: 46px;
  font-size: clamp(26px, 21.5414px + 1.2739vw, 46px);
}

.litbox-wrap h2::before {
  content: "";
  display: block;
  width: 50%;
  height: 1px;
  background-color: #fff;
}

.litbox-wrap h2 span {
  padding: 0 20px;
}

.litbox-wrap h2::after {
  content: "";
  display: block;
  width: 50%;
  height: 1px;
  background-color: #fff;
}

.litbox-wrap h3 {
  font-size: 3.2rem;
  line-height: 1.3;
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 700;
  color: #fff;
  padding-bottom: 2rem;
  font-size: 36px;
  font-size: clamp(18px, 13.9873px + 1.1465vw, 36px);
}

.litbox-wrap h4 {
  position: relative;
  font-size: clamp(14px, 12.6624px + 0.3822vw, 20px);
}

.litbox-wrap h4::before {
  content: "";
  display: block;
  background-color: #96cfd4;
  width: 2.2em;
  height: 0.6em;
  position: absolute;
  z-index: -1;
  top: 0.2em;
  left: 0;
}

.litbox-wrap ul,
.litbox-wrap p {
  font-family: "Zen Old Mincho", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2;
  color: #fff;
  padding-bottom: 1rem;
  font-size: 20px;
  font-size: clamp(14px, 12.6624px + 0.3822vw, 20px);
}

.litbox-wrap .col1 {
  margin-bottom: 4rem;
}

.section-recruit__inner .recruit-description {
  border-left: solid 0.2rem #239da8;
}

.section-recruit__inner .recruit-description p {
  position: relative;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
  padding: 0.8rem 0 0.8rem 2rem;
}

.section-recruit__inner .recruit-description p a {
  text-decoration: underline;
  color: #188994;
}

.section-recruit__inner .recruit-description p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -0.7rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background-color: #239da8;
}

@media only screen and (max-width: 834px) {
  .recruit-body .section-col tr th {
    width: 8.8rem;
  }
  .recruit-body .section-col tr td {
    padding: 2rem 0 2rem 2rem;
  }
  .section-study__link-button a {
    padding-left: 1rem;
    padding-right: 1rem;
    text-align: center;
    font-size: 1.4rem;
  }
  .ssection-recruit__inner .recruit-description {
    width: calc(100% - 13rem);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  .recruit-body .content-text h2 .title-section {
    font-size: 2.2rem;
    padding-top: 1rem;
  }
  .recruit-body .content-text h2 {
    padding-bottom: 3rem;
  }
  .recruit-body .content-text h2 .title-section:before {
    font-size: 5rem;
  }
  .recruit-body .section-col {
    padding-bottom: 8rem;
  }
  .recruit-body .section-col h2 {
    padding-bottom: 2rem;
  }
  .litbox-wrap h2 {
    padding: 2rem 0;
  }
  .litbox-wrap h3 {
    padding-bottom: 1rem;
  }
  .litbox-wrap .col1 {
    margin-bottom: 2rem;
  }
  .recruit-body .col-items {
    padding-top: 1rem;
    gap: clamp(50px, 38.8535px + 3.1847vw, 100px);
    grid-template-columns: 1fr;
    width: 90%;
    margin: 0 auto;
  }
  .recruit-body .col-items .item .po-left {
    top: -2rem;
    left: -2rem;
    width: 6rem;
    height: 6rem;
    font-size: 1rem;
  }
  .recruit-body .col-items .item .text-con {
    padding: 1rem;
  }
  .recruit-body .col-items .item .text-con .jp {
    font-size: 1.6rem;
  }
  .recruit-body .col-items .item .text-con .en {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 520px) {
  .section-study__link-button {
    width: 100%;
    min-width: 100%;
  }
}
body.hide {
  height: 100vh;
  overflow: hidden;
}