@charset "UTF-8";
/* ================================================
 * メディアクエリ
 * ============================================= */
/* ================================================
 * フォントの読み込み
 * ============================================= */
@font-face {
  font-family: "Noto Sans JP";
  src: url("../fonts/NotoSansJP/NotoSansJP-VariableFont_wght.ttf") format("truetype");
}
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/CormorantGaramond/CormorantGaramond-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Cormorant Garamond";
  src: url("../fonts/CormorantGaramond/CormorantGaramond-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Zen Old Mincho";
  src: url("../fonts/zenoldmincho/ZenOldMincho-Regular.ttf") format("truetype");
  font-weight: 400;
}
@font-face {
  font-family: "Zen Old Mincho";
  src: url("../fonts/zenoldmincho/ZenOldMincho-Bold.ttf") format("truetype");
  font-weight: 700;
}
@font-face {
  font-family: "Noto Sans SC";
  src: url("../fonts/NotoSansSC/NotoSansSC-VariableFont_wght.ttf") format("truetype");
}
@font-face {
  font-family: "Noto Serif SC";
  src: url("../fonts/NotoSerifSC/NotoSerifSC-Regular.otf") format("truetype");
  font-weight: 400;
}
@font-face {
  font-family: "Noto Serif SC";
  src: url("../fonts/NotoSerifSC/NotoSerifSC-Bold.otf") format("truetype");
  font-weight: 700;
}
/* ================================================
 * フォント
 * ============================================= */
/* ================================================
 * カラー
 * ============================================= */
/* ================================================
 *  common
 * ============================================= */
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: #ffffff;
  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: #333333;
  text-align: left;
  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; /* 初期値 : 透過状態 */ /* アニメーション時間は 0.4秒 */
  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;
}

/* 1040px + 90px + 90px */
.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;
  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: flex;
  align-items: center;
  justify-content: space-between;
  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: flex;
  align-items: 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%;
  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: flex;
  align-items: 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;
  transition: all 0.5s;
}
.header__right {
  padding-left: 2.4rem;
  display: flex;
  align-items: center;
  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;
    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: #333333;
  color: #ffffff;
}
@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: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  padding: 0 0rem;
  position: relative;
  transition: all 0.5s;
}
.header__right .contact__wrapper a:hover {
  opacity: 0.5;
  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;
  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;
  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: rgb(255, 255, 255);
  transition: width 0.1s linear;
  width: 26rem;
}
.header__right-lang-inner {
  display: flex;
  align-items: 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: flex;
  align-items: 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: #333333;
  color: #ffffff;
  font-weight: 400;
  padding-bottom: 0.2rem;
  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;
  transition: width 0.5s linear;
}
.header__right-lang-inner .lang-list {
  display: flex;
  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: flex;
  align-items: 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;
  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;
  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: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 1.2rem;
}
.header__main-content-inner-items {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #333333;
  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%;
  transition: all 0.5s;
  border-bottom: none;
  padding: 0 2.2rem;
}
.header__main-content-inner-items .item:hover {
  background-color: #239DA8;
  color: #ffffff;
  transition: all 0.5s;
  opacity: 1;
}
.header__main-content-inner-items .item a {
  display: flex;
  align-items: 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: #ffffff;
  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: fit-content;
  height: -moz-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: #ffffff;
}
.header__main-content-inner-items .item div span {
  position: absolute;
  bottom: -0.4rem;
  left: 0;
  right: 0;
  width: 100%;
  height: 0.1rem;
  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;
    box-shadow: 0 0.5rem 2rem 0 rgba(15, 5, 0, 0.15);
    height: 15rem;
    bottom: calc(env(safe-area-inset-bottom) - 8rem);
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    color: #333333;
    background-color: #fff;
    font-size: 1.2rem;
    line-height: 1.6rem;
    z-index: 100;
  }
  .header__fixed-nav-list {
    display: flex;
    height: 7rem;
    margin-right: 16.67%;
  }
  .header__fixed-nav-item {
    display: block;
    height: 100%;
    width: 100%;
    z-index: 1;
    text-align: center;
    flex: 1 1 auto;
    background-color: #ffffff;
  }
  .header__fixed-nav-item > a {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    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: flex;
    align-items: 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;
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    width: 16.67%;
    z-index: 100;
    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%;
    transition: all 0.5s cubic-bezier(0.43, 0.05, 0.17, 1);
    background-color: #ffffff;
    color: #239DA8;
  }
  .header__menu.active span {
    top: 50%;
    transform: translateY(-50%);
  }
  .header__menu.active span::after {
    opacity: 1;
    transition: all 0.3s ease-out;
    color: #333333;
    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;
    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;
    transform: rotate(-45deg);
    opacity: 1;
  }
}
.header__menu span {
  position: absolute;
  z-index: 11;
  display: flex;
  height: 2.7rem;
  width: 100%;
  justify-content: 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%;
  transition: all 0.3s ease-out;
}
.header__menu span i {
  display: block;
  border-radius: 50%;
  background-color: #fff;
  height: 0.4rem;
  width: 0.4rem;
  transition: all 0.3s ease-out;
  margin: 0.2rem 0.1rem;
}
.header__menu::before {
  opacity: 0;
  transition: visibility 0.3s, opacity 0.3s;
}
.header__menu::after {
  opacity: 0;
  transition: visibility 0.3s, opacity 0.3s;
}
.header__gnav {
  position: fixed;
  top: 0;
  bottom: 0;
  left: auto;
  right: -100%;
  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: fit-content;
  padding-top: 2rem;
}
.header__gnav-inner nav.gnav .gnav__lang {
  display: flex;
  color: #FFF;
  gap: 1rem;
  border-radius: 0.2rem;
  background: #57B5BD;
  padding: 1.6rem 1.4rem;
  font-size: 1.2rem;
  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: flex;
  gap: 0.4rem;
  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: flex;
  gap: 0.6rem;
  align-items: center;
}
.header__gnav-inner nav.gnav .gnav__lang .lang__label span {
  display: flex;
  flex-direction: column;
  justify-content: 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: flex;
  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: #333333;
  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: flex;
  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: #333333;
  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%;
  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%;
  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: #333333;
  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;
  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: #ffffff;
}
.header.is-current .header__logo-button-title {
  color: #333333;
}
.header.is-current .header__right .header__right-lang {
  border-left: solid 0.1rem #E6E6E6;
}
.header.is-current .header__right .title {
  color: #333333;
}
.header.is-current .header__right .header__right-lang-inner .lang-head .lang-ttl {
  color: #333333;
}
.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: #333333;
}
.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;
  transition: all 1.5s cubic-bezier(0.26, 0.06, 0, 1);
  transition-property: opacity, transform, top;
}
@media only screen and (max-width: 834px) {
  .main__bg {
    height: 0;
    width: 120%;
    padding-bottom: 56.25%;
    top: 0;
    left: 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");
}
.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: 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;
  max-width: 116rem;
  margin: 0 auto;
  transform: translateY(-50%);
  position: relative;
  top: 50%;
  pointer-events: auto;
}
.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: #ffffff;
  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: #333333;
  padding-top: 5rem;
  padding-left: 14rem;
  color: #ffffff;
  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;
    font-size: 1.3rem;
  }
}

/* top共通部分まとめ */
.content-img {
  width: 36rem;
  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: #333333;
  font-size: 2rem;
  color: #333333;
  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;
  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: #333333;
  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: #333333;
  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: 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%;
    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: #333333;
  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: #333333;
  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: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 8rem;
}
@media only screen and (max-width: 834px) {
  .policy-flex {
    gap: 0;
  }
}
.policy-flex__img {
  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;
}
.policy-flex__img img.item02 {
  margin-top: 12rem;
}

.vision-flex__img {
  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: 12rem;
  width: 100%;
}
.top-slogan__inner {
  max-width: 95rem;
  margin: 0 auto;
}
.top-slogan__inner-message {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10rem;
}
@media only screen and (max-width: 834px) {
  .top-slogan__inner-message {
    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 {
  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%;
  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 {
    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: "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: #333333;
}
@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 {
    flex-direction: column-reverse;
  }
}
.top-policy__vision-inner .policy-flex .content-img {
  flex: 1;
  width: auto;
}
.top-policy__vision-inner .policy-flex .content-img .policy-flex__img {
  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 {
  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: #333333;
    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: "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: #333333;
}
@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: #333333;
    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 {
    flex-direction: column;
    gap: 0;
  }
}
.top-policy__value-inner .content-text .policy-flex h3 {
  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: "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: #333333;
}
@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 {
  justify-content: space-between;
  gap: initial;
}
@media only screen and (max-width: 834px) {
  .top-policy__value-inner .content-img .policy-flex__img {
    gap: 2rem;
    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 {
  background-color: #ffffff;
  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: flex;
  justify-content: center;
  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.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  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: flex;
  align-items: end;
}
@media only screen and (max-width: 834px) {
  .section-access__contents .content-text {
    justify-content: center;
    padding-top: 7rem;
  }
}
@media only screen and (max-width: 520px) {
  .section-access__contents .content-text {
    padding-top: 7rem;
    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: "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: #333333;
  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: flex;
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
  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: flex;
  justify-content: space-between;
  padding-bottom: 2.4rem;
}
@media only screen and (max-width: 834px) {
  .footer__container-box {
    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;
  transition: all 0.5s;
}
.footer__container-box-company-name :hover {
  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: flex;
  gap: 0 2.4rem;
  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 {
    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: flex;
  align-items: center;
  transition: all 0.5s;
}
.footer__container-box-anker-item a:hover {
  opacity: 0.5;
  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: #ffffff;
  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: #ffffff;
  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: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 3.6rem;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #ffffff;
  text-align: right;
}
@media only screen and (max-width: 834px) {
  .footer__container-information {
    border-top: none;
    padding-top: 3.4rem;
    flex-direction: column;
    text-align: left;
    gap: 1.6rem;
  }
}
.footer__container-information .copyRight {
  color: #B7B7B7;
}
.footer .privacyPoricy {
  transition: all 0.5s;
}
.footer .privacyPoricy:hover {
  opacity: 0.6;
  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%;
    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: transparent;
  }
}

.lower-title {
  top: initial;
  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: #333333;
  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::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: flex;
  justify-content: center;
}
@media only screen and (max-width: 834px) {
  .content-body__wrapper {
    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: #333333;
  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;
  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: #333333;
  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: 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: flex;
    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: #333333;
}
@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%;
  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: #333333;
  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: 7.4rem;
  left: -12.4rem;
  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;
  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: #333333;
  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: #333333;
}
@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: #333333;
}
@media only screen and (max-width: 834px) {
  .section-col p.whoweare {
    font-size: 1.4rem;
  }
}
.section-col .col-inner {
  display: flex;
  gap: 4rem;
  align-items: center;
}
@media only screen and (max-width: 834px) {
  .section-col .col-inner {
    flex-direction: column-reverse;
  }
}
.section-col .col-inner__img {
  width: 36.6rem;
  height: 24.4rem;
  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 {
  align-items: flex-start;
}
.section-col tr th {
  width: 16.8rem;
  /* 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: #333333;
  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: "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: #333333;
  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 {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 834px) {
  .section-study__item:nth-of-type(odd) .col-inner {
    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: #333333;
}
@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 {
    flex-direction: column;
    align-items: start;
    gap: 2.4rem;
  }
}
.section-study .study-img {
  width: 42.8rem;
  height: auto;
  display: flex;
  align-items: 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: 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: #333333;
  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);
    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: 3rem 0 3rem 5rem;
  width: 17.2rem;
}
@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;
  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: #333333;
}
@media only screen and (max-width: 834px) {
  .section-about p {
    font-size: 1.4rem;
  }
}
.section-about__link {
  display: flex;
  justify-content: flex-end;
}
@media only screen and (max-width: 834px) {
  .section-about__link {
    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: #333333;
  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%;
  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%;
  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%;
  }
}

.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: flex;
  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%;
  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: 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%;
  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: flex;
  justify-content: space-around;
  align-items: center;
  align-self: stretch;
  gap: 2rem;
  margin-bottom: 7rem;
}
@media only screen and (max-width: 834px) {
  .section-daily .compornent {
    flex-direction: column;
    gap: 3rem;
    margin-bottom: 14rem;
  }
}
.section-daily .compornent.rev {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 834px) {
  .section-daily .compornent.rev {
    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: fit-content;
  background: var(--Photo, #FFFCF9);
  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 {
    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 {
  transform: rotate(8deg);
}
.section-daily .seen2 .pola {
  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 {
    flex-direction: column-reverse;
  }
}
.section-daily .seen3 .pola {
  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 {
  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 {
  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 {
  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 {
  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 {
    flex-direction: column-reverse;
  }
}
.section-daily .seen7 .pola {
  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 {
  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: #333333;
  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::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: block;
  text-align: center;
}
.mail-form__container form .privacy-box__label-input {
  display: inline-block;
  width: 100%;
  margin-bottom: 2rem;
}
.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: "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: #333333;
  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;
  transition: all 0.5s;
  font-weight: 400;
}
.mail-form__container form .privacy-box p a:hover {
  opacity: 0.5;
  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 {
  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-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  color: #333333;
  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;
  transition: all 0.5s;
}
.mail-form__container form .mail-form__button .link-arrow {
  position: absolute;
  top: 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%;
  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: #333333;
    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: #333333;
}


.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: #333333;
  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: #333333;
  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: #333333;
  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: #333333;
  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: #ffffff;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  border-radius: 0.2rem;
  position: relative;
  margin: 1.8rem auto 0;
  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 #ffffff;
  border-bottom: 0.3rem solid #ffffff;
  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;
  transition: all 0.5s;
}

.notfound p {
  padding-bottom: 6rem;
}
.notfound .section-about__link {
  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%;
  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: 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: #333333;
  font-size: 2.4rem;
  margin-bottom: 8rem;
  padding: 0.6rem 0rem;
}
@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: 20.4rem;
}
@media only screen and (max-width: 834px) {
  .hq-body p.siteArea {
    font-size: 1.2rem;
    margin-bottom: 16rem;
    line-height: 1;
  }
}
.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 {
  flex-direction: column;
  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;
}
@media only screen and (max-width: 834px) {
  .hq-body .content-body__wrapper .img_layout: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: #333333;
  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 {
  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: flex;
}
@media only screen and (max-width: 834px) {
  .ouroffice-body__flex {
    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: #333333;
  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;
  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 {
  flex-direction: row-reverse;
  padding-bottom: 10.6rem;
}
@media only screen and (max-width: 834px) {
  .ouroffice-body .nature {
    flex-direction: column;
    padding-bottom: 12rem;
  }
}
.ouroffice-body .nature-img {
  width: 81.4rem;
  height: 39.2rem;
  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 {
  flex-direction: row;
  padding-bottom: 10.6rem;
}
@media only screen and (max-width: 834px) {
  .ouroffice-body .privately01 {
    flex-direction: column;
    padding-bottom: 3.8rem;
  }
}
.ouroffice-body .privately01-img {
  width: 65.6rem;
  height: 32.9rem;
  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 {
  flex-direction: row-reverse;
  padding-bottom: 12.5rem;
}
@media only screen and (max-width: 834px) {
  .ouroffice-body .privately02 {
    flex-direction: column;
    padding-bottom: 9rem;
  }
}
.ouroffice-body .privately02-img {
  width: 94.2rem;
  height: 46.4rem;
  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 .privately03 {
  flex-direction: row;
  justify-content: space-between;
  padding-bottom: 9.2rem;
}
@media only screen and (max-width: 834px) {
  .ouroffice-body .privately03 {
    flex-direction: column;
  }
}
.ouroffice-body .privately03-img01 {
  width: 49.2rem;
  height: 32.8rem;
  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;
  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: fit-content;
    margin: 0 auto;
  }
}

/* return to top */
#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%;
  align-items: center;
  justify-content: center;
  display: flex;
  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%;
  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;
  transition: all 0.5s;
}

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

.pc {
  display: block;
}
@media only screen and (max-width: 834px) {
  .pc {
    display: none;
  }
}
.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 {
  transition: 0.5s all;
  opacity: 1;
}
.hoverOpacity:hover {
  opacity: 0.7;
  transition: 0.5s all;
}

/* スクロール誘導のエフェクト */
/*スクロールダウン全体の場所*/
.scrolldown2 {
  /*描画位置※位置は適宜調整してください*/
  position: absolute;
  bottom: 0;
  left: 6rem;
  z-index: 1;
}
@media only screen and (max-width: 834px) {
  .scrolldown2 {
    display: none;
  }
}

/*Scrollテキストの描写*/
.scrolldown2 span {
  /*描画位置*/
  position: absolute;
  left: 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: #333333;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05rem;
  /*縦書き設定*/
  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;
  /*丸の動き1.6秒かけて透過し、永遠にループ*/
  animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove {
  0% {
    bottom: 6rem;
  }
  100% {
    bottom: 1rem;
  }
}
/*上から下にかけて丸が透過→不透明→透過する*/
@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;
}/*# sourceMappingURL=style.css.map */