@charset "UTF-8";
a:link {
  text-decoration: none;
  color: #1a1a1a;
}

a:visited {
  color: #1a1a1a;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
  cursor: pointer;
  transition: 0.5s;
}
a:hover img {
  transition: 0.5s;
  opacity: 0.8;
}

/* ==========================================================================
Object
========================================================================== */
/* ボタン
----------------------------------------------------------------- */
@keyframes btnHover {
  0% {
    transform: translate3d(-101%, 0, 0);
  }
  30% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(101%, 0, 0);
  }
}
@keyframes btnHover-Ie {
  0% {
    transform: translate3d(-101%, 0, 0);
  }
  100% {
    transform: translate3d(101%, 0, 0);
  }
}
@keyframes btnHoverIconBg {
  0% {
    background-color: #74b708;
  }
  30% {
    background-color: #2d2d2d;
  }
  50% {
    background-color: #2d2d2d;
  }
  100% {
    background-color: #74b708;
  }
}
@keyframes btnHoverIconBorder {
  0% {
    border-color: #2d2d2d;
  }
  30% {
    border-color: #8ac9c4;
  }
  50% {
    border-color: #8ac9c4;
  }
  100% {
    border-color: #2d2d2d;
  }
}
.c-button {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  box-sizing: border-box;
  border-radius: 4px;
}

@media only screen and (max-width: 47.9375em) {
  .c-button {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-button {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-button {
    padding-top: 10px;
    padding-right: 16px;
    padding-bottom: 10px;
    padding-left: 16px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button {
    transition: transform 1s 1s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 1s 1s ease;
    padding-top: 11px;
    padding-right: 12px;
    padding-bottom: 9px;
    padding-left: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .browser-is-ie .c-button {
    padding-top: 13px;
    padding-bottom: 9px;
  }
}
.browser-is-safari .c-button {
  z-index: 1;
}

@media print, screen and (min-width: 64em) {
  .c-button {
    transition: background-color 0.7s ease;
  }
}
.c-button > span {
  position: relative;
}
.c-button .c-arrow {
  align-self: center;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  flex: 0 0 auto;
}

@media print, screen and (min-width: 64em) {
  .c-button > span {
    transition: color 0.7s ease;
  }
}
.browser-is-ie .c-button .c-arrow {
  top: -2px;
}

.c-button:hover:after {
  transform: translate3d(0, 0, 0);
}
.c-button > * {
  position: relative;
  z-index: 1;
}

@media print, screen and (min-width: 64em) {
  .c-button:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #74b708;
    transform: translate3d(-101%, 0, 0);
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
  .c-button.-form:hover .c-arrow {
    background-color: #fff;
  }
  .c-button.-form:hover .c-arrow:before {
    border-color: #74b708;
  }
}
@media print, screen and (min-width: 64em) {
  .browser-is-ie .c-button {
    overflow: hidden;
    -webkit-backface-visiblity: hidden;
  }
}
.browser-is-ie .c-button:hover:after {
  transform: translate3d(0, 0, 0);
}

.c-button.-center {
  margin: 0 auto;
}
.c-button.-w_250 {
  width: 250px;
}
.c-button.-w_280 {
  width: 280px;
}
.c-button.-w_fit {
  width: -moz-fit-content;
  width: fit-content;
}
.c-button.-contact {
  background-color: #1a1a1a;
}
.c-button.-contact > span {
  color: #fff;
}
.c-button.-contact > .c-arrow {
  background-color: #74b708;
}
.c-button.-contact > .c-arrow:before {
  border-color: #1a1a1a;
}
.c-button.-contact:hover:after {
  transform: translate3d(0, 0, 0);
}
.c-button.-contact.-f_bk {
  background-color: #74b708;
}
.c-button.-contact.-f_bk > span {
  color: #1a1a1a;
}
.c-button.-contact.-f_bk > .c-arrow {
  background-color: #1a1a1a;
}
.c-button.-contact.-f_bk > .c-arrow:before {
  border-color: #74b708;
}
.c-button.-contact.-f_bk:hover > .c-arrow {
  background-color: #1a1a1a;
}
.c-button.-contact.-f_bk:hover > .c-arrow:before {
  border-color: #74b708;
}
.c-button.-document {
  background-color: #74b708;
  padding-top: 13px;
  padding-bottom: 10px;
}
.c-button.-document > span {
  color: #fff;
  white-space: nowrap;
}
.c-button.-document > .c-arrow {
  background-color: #fff;
}
.c-button.-document > .c-arrow:before {
  border-color: #74b708;
}
.c-button.-small {
  padding-top: 6px;
  padding-right: 11px;
  padding-bottom: 4px;
  padding-left: 11px;
}
.c-button.-small > span {
  font-size: 0.8125rem;
}
.c-button.-small > .c-arrow {
  top: -1px;
  margin-right: 3px;
  width: 9px;
  height: 9px;
}
.c-button.-small > .c-arrow::before {
  width: 4px;
  height: 4px;
  left: calc(50% - 2.5px);
  top: calc(50% - 2px);
}

/* お問い合わせ */
@media only screen and (max-width: 47.9375em) {
  .c-button.-contact {
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-contact.-f_bk:after {
    background-color: #8ac9c4;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
/* 資料ダウンロード */
@media print, screen and (min-width: 64em) {
  .c-button.-document:after {
    background-color: #8ac9c4;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 48em) {
  .c-button.-document.-online {
    width: 250px;
  }
}
/* 小さいサイズ */
@media screen and (min-width: 1136px) {
  .c-button.-small > .c-arrow::before {
    width: 5px;
    height: 5px;
    left: 20%;
    top: 30%;
  }
}
@media screen and (min-width: 1136px) {
  .c-button.-small > .c-arrow {
    top: -1px;
    width: 11px;
    height: 11px;
    margin-right: 4px;
  }
}
.browser-is-ie .c-button.-small {
  padding-top: 6px;
  padding-bottom: 3px;
}
.browser-is-ie .c-button.-large {
  padding-top: 20px;
  padding-right: 40px;
  padding-left: 40px;
  padding-bottom: 13px;
}

/* 大きいサイズ */
@media print, screen and (min-width: 64em) {
  .c-button.-large {
    padding-top: 17px;
    padding-right: 11px;
    padding-bottom: 15px;
    padding-left: 11px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-large > span {
    font-size: 1.125rem;
  }
}
.c-button.-large > .c-arrow {
  margin-right: 10px;
}
.c-button.-main {
  background-color: #1a1a1a;
}
.c-button.-main > span {
  color: #fff;
}
.c-button.-main > .c-arrow {
  background-color: #74b708;
}
.c-button.-main > .c-arrow:before {
  border-color: #1a1a1a;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s 0.1s;
}

@media print, screen and (min-width: 64em) {
  .c-button.-main {
    padding-top: 12px;
    padding-bottom: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-main:hover:after {
    transform: translate3d(0, 0, 0);
  }
  .c-button.-main:hover > .c-arrow {
    background-color: #fff;
  }
  .c-button.-main:hover > .c-arrow:before {
    border-color: #74b708;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
}
.browser-is-ie .c-button.-main:hover {
  background-color: #1a1a1a;
}
.browser-is-ie .c-button.-main:hover:after {
  transform: translate3d(0, 0, 0);
}

.c-button.-wh {
  background-color: #fff;
  border: 1px solid #c8cccf;
}
.c-button.-wh:after {
  display: none;
}

button.c-button {
  border: none;
  text-align: left;
  cursor: pointer;
}

.c-button.-form {
  background-color: #1a1a1a;
  line-height: 1;
  font-weight: bold;
  border-radius: 4px;
}
.c-button.-form > span {
  color: #fff;
}
.c-button.-form .c-arrow {
  background-color: #74b708;
}
.c-button.-form .c-arrow:before {
  border-color: #1a1a1a;
}
.c-button.-form.-disabled {
  background-color: #d6d6d4;
  box-shadow: none;
  cursor: default;
  pointer-events: none;
}
.c-button.-form.-disabled > span {
  color: #fff;
}
.c-button.-form.-disabled .c-arrow {
  background-color: #fff;
}
.c-button.-form.-disabled .c-arrow:before {
  border-color: #d6d6d4;
}
.c-button.-form.-disabled:hover {
  color: #fff;
}
.c-button.-form.-disabled:hover > span:after {
  transform: translate(0, -50%) rotate(45deg);
}
.c-button.-form.-disabled:after {
  display: none;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.c-button.-download {
  background-color: #1a1e23;
  padding-top: 13px;
  padding-bottom: 10px;
}
.c-button.-download > span {
  color: #fff;
}
.c-button.-download > .c-download {
  margin-right: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .c-button.-form {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-button.-form {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-form {
    font-size: 1rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-button.-form {
    padding-top: 11px;
    padding-right: 14px;
    padding-bottom: 11px;
    padding-left: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-form {
    padding-top: 13px;
    padding-right: 16px;
    padding-bottom: 13px;
    padding-left: 20px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-button.-form .c-arrow {
    width: 16px;
    height: 16px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-button.-form .c-arrow {
    width: 16px;
    height: 16px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-button-block__button .c-button.-form {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .f-button-block__button .c-button.-form {
    width: 250px;
    margin: 0 auto;
  }
}
/* ダウンロードボタン
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .c-button.-download:hover .c-download {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015.605%2013.182%22%3E\a%20%20%20%20%20%20%3Cg%20fill%3D%22%23fff%22%3E\a%20%20%20%20%20%20%20%20%3Cpath%20data-name%3D%22パス%2047134%22%20d%3D%22M7.424%208.217a.453.453%200%2000.756%200l2.731-3.6a.3.3%200%2000-.261-.525H9.604a.514.514%200%2001-.513-.513V.61a.611.611%200%2000-.61-.61H7.123a.611.611%200%2000-.61.61v2.969A.514.514%200%20016%204.092H4.954a.3.3%200%2000-.261.526z%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cpath%20data-name%3D%22パス%2047135%22%20d%3D%22M13.569%207.754v3.392H2.035V7.754H0v4.652a.776.776%200%2000.775.775h14.054a.776.776%200%2000.775-.775V7.754z%22%2F%3E\a%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%3C%2Fsvg%3E");
  }
}
/* コンテンツブロックの区切り
----------------------------------------------------------------- */
.c-block {
  padding-top: 1px;
  margin-top: -1px;
  width: 100%;
  position: relative;
}

.c-block__inner {
  position: relative;
  z-index: 1;
  max-width: 1400px;
  box-sizing: border-box;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  margin-right: auto;
  margin-left: auto;
}
.c-block__inner.-detail {
  max-width: 1160px;
}
.c-block__inner.-contact {
  max-width: 1000px;
}
.c-block__inner.-contact.-thanks {
  text-align: center;
}

@media print, screen and (min-width: 64em) {
  .c-block__inner {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-block__inner.-contact {
    margin-top: 50px;
  }
}
.c-block.-fill, .c-block.-user {
  background-color: #f3f6f6;
}
.c-block.-fill-maincolor {
  background-color: #1a1a1a;
}
.c-block.-fill-right {
  background-color: #f2f5f4;
}
.c-block.-oh {
  overflow: hidden;
}

@media print, screen and (min-width: 48em) {
  .c-block.-fill-transparent {
    background: linear-gradient(#f3f6f6 87.5%, transparent 0%);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-fill-transparent {
    background-color: #f3f6f6;
    padding-bottom: 34px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-last {
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block.-last {
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-last120 {
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block.-last120 {
    padding-bottom: 120px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-last60-xs {
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-user {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block.-user {
    padding-top: 94px;
    padding-bottom: 100px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block.-has_pb {
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block.-has_pb {
    padding-bottom: 76px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block__button {
    width: 150px;
    margin-top: 24px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block__button {
    width: 250px;
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-block__button.-sp_full {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .c-block__button.-w_300 {
    width: 300px;
    margin-top: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-block.-home .c-block__inner {
    padding-bottom: 52px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-block.-home .c-block__inner {
    padding-bottom: 128px;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1420px) {
  .c-block.-home .c-block__inner {
    padding-right: 100px;
    padding-left: 100px;
  }
}
/* サブ見出し
----------------------------------------------------------------- */
.c-sub-title {
  position: relative;
  display: inline-block;
  font-family: Times New Roman, sans-serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: #74b708;
}
.c-sub-title:after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% + 10px);
  width: 20px;
  height: 1px;
  background-color: #d7b596;
  opacity: 0.5;
}
.c-sub-title.-no_line {
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}
.c-sub-title.-no_line:after {
  display: none;
}
.c-sub-title.-type_charm {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}
.c-sub-title.-type_charm::after {
  display: none;
}
.c-sub-title.-card-sub {
  font-size: 1rem;
  font-weight: 500;
}

@media print, screen and (min-width: 64em) {
  .c-sub-title {
    font-size: 1.125rem;
    padding-bottom: 1px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sub-title.-no_line {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-sub-title.-no_line {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-sub-title.-no_line {
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-sub-title.-no_line {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sub-title.-type_charm {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-sub-title.-type_charm {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-sub-title.-type_charm {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-sub-title.-type_charm {
    font-size: 1.125rem;
  }
}
/* カードのサブタイトル */
@media print, screen and (max-width: 63.9375em) {
  .c-sub-title.-card-sub {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-sub-title.-card-sub {
    margin-top: 26px;
  }
}
/* 見出し（ベース）
----------------------------------------------------------------- */
/* 左に縦線のある見出し */
.c-heading-2 {
  position: relative;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}
.c-heading-2.-center {
  text-align: center;
}
.c-heading-2.-type_b {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-2 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-heading-2 {
    font-size: 1.625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-2 {
    font-size: 2.25rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2.-type_b {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2.-type_b {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
/* タイトル付き見出し */
.c-heading-2-1 {
  position: relative;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}
.c-heading-2-1.-center {
  text-align: center;
}
.c-heading-2-1 span {
  display: block;
  font-size: 1.25rem;
  color: #74b708;
  margin-bottom: 11px;
  font-family: futura-pt, "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: 500;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-2-1 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2-1 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-heading-2-1 {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-2-1 {
    font-size: 2.25rem;
  }
}
.c-heading-3 {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}

@media print, screen and (max-width: 63.9375em) {
  .c-heading-3 {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-3 {
    font-size: 1.75rem;
  }
}
.c-sub-title + .c-heading-3 {
  margin-top: 8px;
}

.c-heading-3.-center {
  text-align: center;
}
.c-heading-3.-has_sub > span {
  display: block;
  font-weight: normal;
  font-size: 1rem;
}

@media print, screen and (max-width: 63.9375em) {
  .c-heading-3.-has_sub {
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-3.-has_sub {
    display: flex;
    align-items: baseline;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-3.-has_sub > span {
    margin-left: 10px;
  }
}
/* ケータリング */
@media only screen and (max-width: 47.9375em) {
  .c-heading-3.-sp_18 {
    font-size: 1.125rem;
    margin-top: 23px;
  }
}
/* サービス成功の秘訣 */
@media only screen and (max-width: 47.9375em) {
  .c-heading-3.-sp_20 {
    font-size: 1.25rem;
  }
}
.c-heading-4 {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 1.125rem;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 {
    font-size: 1.375rem;
  }
}
.c-sub-title + .c-heading-4 {
  margin-top: 8px;
}

.c-heading-4.-center {
  text-align: center;
}
.c-heading-4.-gothic {
  font-weight: bold;
}
.c-heading-4.-has_note span {
  color: #e00000;
  font-size: 0.875rem;
}
.c-heading-4 .-sub {
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-4.-gothic {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4.-gothic {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4.-has_note {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4.-has_note span {
    display: block;
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4.-has_note span {
    margin-left: 12px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4.-type_b {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4.-type_b {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 .-sub {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 .-sub {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.c-heading-5 {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5.-type_b {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5.-type_b {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.c-heading-6 {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}
.c-heading-6.-gothic {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-6 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6.-gothic {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6.-gothic {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.c-heading-7 {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-7 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-7 {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-7 {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-7 {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-7.-type_b {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-7.-type_b {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.c-heading-cta {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-cta {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-cta {
    font-size: 1.625rem;
  }
}
.c-heading-bold {
  font-size: 1rem;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-heading-bold.-carry {
    margin-top: 10px;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-bold.-carry {
    margin-top: 16px;
  }
}
.c-heading-error-sub {
  text-align: center;
  display: block;
  color: #74b708;
  font-family: Times New Roman, sans-serif;
  font-weight: bold;
}

@media print, screen and (max-width: 63.9375em) {
  .c-heading-error-sub {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-error-sub {
    font-size: 1.25rem;
  }
}
.c-heading-error {
  text-align: center;
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 47.9375em) {
  .c-heading-error {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-error {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-error {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-error {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-error {
    font-size: 2.625rem;
  }
}
.c-heading-sub {
  font-weight: bold;
  font-size: 1.125rem;
  color: #74b708;
}
.c-heading-sub.-roman {
  font-family: Times New Roman, sans-serif;
}

/* 文章
----------------------------------------------------------------- */
.c-sentence {
  line-height: 1.75;
}
.c-sentence.-center {
  text-align: center;
}

@media only screen and (max-width: 47.9375em) {
  table + .c-sentence,
  .c-image + .c-sentence,
  .p-scrollable + .c-sentence {
    margin-top: 21px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-sentence,
  .c-image + .c-sentence,
  .p-scrollable + .c-sentence {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image + .c-sentence.-mt_s-sp {
    margin-top: 8px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery + .c-sentence {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery + .c-sentence {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-sentence,
  .c-heading-2-1 + .c-sentence {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-sentence,
  .c-heading-2-1 + .c-sentence {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-sentence {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-sentence {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-sentence {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-sentence {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-sentence {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-sentence {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-sentence {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-sentence {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-sentence {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-sentence {
    margin-top: 13px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-sentence {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-sentence {
    margin-top: 11px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-sentence,
  .c-list + .c-sentence {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-sentence,
  .c-list + .c-sentence {
    margin-top: 26px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-sentence.-mt_s,
  .c-list + .c-sentence.-mt_s {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-sentence.-mt_s,
  .c-list + .c-sentence.-mt_s {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-sentence {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-sentence {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-sentence {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-sentence {
    margin-top: 24px;
  }
}
/**
* 中央寄せ
*/
.c-sentence--lead {
  text-align: center;
}

/**
* 中央寄せ（TB以上）
*/
@media print, screen and (min-width: 48em) {
  .c-sentence.-center-S {
    text-align: center;
  }
}
/**
* 右寄せ
*/
.c-sentence--right {
  text-align: right;
}
.c-sentence--right.-small {
  font-size: 0.9375rem;
}

/**
 * 文字サイズ小
 */
@media print, screen and (min-width: 48em) {
  .c-sentence.-muted {
    font-size: 0.875rem;
    line-height: 1.75;
  }
}
/**
 * 文字サイズ極小
 */
.c-sentence.-size_xs {
  font-size: 0.75rem;
}

/**
 * PC文字サイズ小
 */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-large {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence.-large {
    font-size: 1.125rem;
    line-height: 1.75;
  }
}
/**
* リード文
*/
@media only screen and (max-width: 47.9375em) {
  .c-sentence--lead {
    text-align: left;
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--lead {
    margin-top: 24px;
    line-height: 1.75;
  }
}
.c-sentence--lead > br {
  display: none;
}
.c-sentence--lead.-align_left {
  text-align: left;
}

@media print, screen and (min-width: 64em) {
  .c-sentence--lead > br {
    display: block;
  }
}
/* relative */
.c-sentence.-relative {
  display: inline-block;
}

/**
* Google Maps 埋め込みの下部につく
*/
.c-sentence--caption {
  margin-top: 12px;
}

/**
* ケータリングなどイメージ画像のキャプション
*/
.c-sentence--cap {
  line-height: 1.75;
}
.c-sentence--cap.-red {
  line-height: 1.75;
  color: #ff0000;
  font-weight: bold;
}

@media print, screen and (max-width: 63.9375em) {
  .c-sentence--cap {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-sentence--cap {
    margin-top: 14px;
  }
}
/* 赤字特別なお知らせ */
@media print, screen and (max-width: 63.9375em) {
  .c-sentence--cap.-red {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-sentence--cap.-red {
    margin-top: 14px;
  }
}
/**
* 上マージンなし
*/
.c-sentence--no-margin {
  margin-top: 0;
}

/* 社員詳細 */
.c-sentence.-detail {
  margin-top: 20px;
}
.c-sentence.-gap {
  margin-top: 18px;
}
.c-sentence.-superior {
  margin-top: 37px;
}
.c-sentence.-mt20 {
  margin-top: 20px;
}
.c-sentence.-mt10 {
  margin-top: 10px;
}
.c-sentence.-access--cap {
  margin-top: 20px;
}
.c-sentence.-bold {
  font-weight: bold;
}
.c-sentence.-contact {
  margin-top: 6px;
  line-height: 1.75;
}
.c-sentence.-mincho {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}
.c-sentence.-red {
  color: #ff0000;
}

/* 社員詳細入社後に感じたギャップ */
/* アプリとエンジニア実際の事例を見る*/
/* SPのときフォントサイズ14 */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-sp14 {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence.-mt30 {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence.-mt30 {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-access--cap {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-bold {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence.-bold {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence.-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
/* 矢印アイコン
----------------------------------------------------------------- */
.c-arrow {
  position: relative;
  display: block;
  content: "";
  width: 16px;
  height: 16px;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 50%;
  background-color: #74b708;
}
.c-arrow:before {
  content: "";
}
.c-arrow.-inline {
  display: inline-block;
}
.c-arrow.-bottom:before {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  top: calc(50% - 4px);
  left: calc(50% - 3px);
  border-color: #fff;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
}
.c-arrow.-right:before {
  content: "";
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 2px 2px 0 0;
  transform: rotate(45deg);
  top: calc(50% - 3px);
  left: calc(50% - 4px);
  border-color: #fff;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  top: calc(50% - 3px);
}

@media print, screen and (min-width: 64em) {
  .c-arrow {
    transition: background-color 0.7s ease;
  }
}
@media print, screen and (min-width: 64em) {
  a:hover .c-arrow,
  button:hover .c-arrow {
    transition: background-color 0.2s ease;
  }
}
.browser-is-safari .c-arrow.-right:before {
  transition: none;
}

.c-arrow.-left:before {
  content: "";
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  transform: rotate(45deg);
  top: calc(50% - 3px);
  left: calc(50% - 2px);
  border-color: #fff;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  top: calc(50% - 3px);
}

/* 矢印が黒のもの */
.c-download {
  display: inline-block;
  width: 16px;
  height: 13px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015.605%2013.182%22%3E\a%20%20%20%20%20%20%3Cg%20fill%3D%22%236a9a96%22%3E\a%20%20%20%20%20%20%20%20%3Cpath%20data-name%3D%22パス%2047134%22%20d%3D%22M7.424%208.217a.453.453%200%2000.756%200l2.731-3.6a.3.3%200%2000-.261-.525H9.604a.514.514%200%2001-.513-.513V.61a.611.611%200%2000-.61-.61H7.123a.611.611%200%2000-.61.61v2.969A.514.514%200%20016%204.092H4.954a.3.3%200%2000-.261.526z%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cpath%20data-name%3D%22パス%2047135%22%20d%3D%22M13.569%207.754v3.392H2.035V7.754H0v4.652a.776.776%200%2000.775.775h14.054a.776.776%200%2000.775-.775V7.754z%22%2F%3E\a%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%3C%2Fsvg%3E");
}
.c-download.-right {
  margin-right: 8px;
}

/* リスト
----------------------------------------------------------------- */
.c-list {
  line-height: 1.75;
}
.c-list > li + li {
  margin-top: 6px;
}
.c-list.-link > li {
  border-bottom: 1px solid #dcdfe0;
  margin-top: -1px;
}
.c-list.-link > li:first-child {
  top: 1px solid #dcdfe0;
}
.c-list.-link > li > a {
  display: flex;
  align-items: baseline;
  position: relative;
  padding-top: 16px;
  padding-right: 24px;
  padding-bottom: 16px;
  font-size: 0.875rem;
  font-weight: bold;
}
.c-list.-link .c-arrow {
  margin-right: 8px;
  top: 0.15em;
}
.c-list.-outline > li > a {
  display: block;
  position: relative;
  padding-top: 16px;
  padding-right: 24px;
  padding-bottom: 16px;
  font-size: 0.875rem;
  font-weight: bold;
}
.c-list.-outline > li > a:after {
  position: absolute;
  top: calc(16px + 0.7em);
  right: 2px;
  content: "";
  width: 6px;
  height: 9px;
  background-size: cover;
  background-position: 0 0;
  background-repeat: no-repeat;
  display: inline-block;
  transform: rotate(90deg);
}
.c-list.-beginners > li > a {
  display: flex;
  align-items: baseline;
  position: relative;
  font-size: 0.875rem;
  font-weight: bold;
}
.c-list.-beginners .c-arrow {
  margin-right: 8px;
  top: 0.15em;
}

@media only screen and (max-width: 47.9375em) {
  table + .c-list,
  .c-image + .c-list,
  .p-scrollable + .c-list {
    margin-top: 21px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-list,
  .c-image + .c-list,
  .p-scrollable + .c-list {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image + .c-list.-mt_s-sp {
    margin-top: 8px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery + .c-list {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery + .c-list {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list,
  .c-heading-2-1 + .c-list {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list,
  .c-heading-2-1 + .c-list {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-list {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-list {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-list {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-list {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-list {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-list {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-list {
    margin-top: 13px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-list {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-list {
    margin-top: 11px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list,
  .c-list + .c-list {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list,
  .c-list + .c-list {
    margin-top: 26px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list.-mt_s,
  .c-list + .c-list.-mt_s {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list.-mt_s,
  .c-list + .c-list.-mt_s {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-list {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-list {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-list {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-list {
    margin-top: 24px;
  }
}
/* リンクリスト */
@media only screen and (max-width: 47.9375em) {
  table + .c-list.-link,
  .c-image + .c-list.-link,
  .p-scrollable + .c-list.-link {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-list.-link,
  .c-image + .c-list.-link,
  .p-scrollable + .c-list.-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-list.-link {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-list.-link {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list.-link {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-list.-link {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-list.-link {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list.-link {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-list.-link {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list.-link {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list.-link,
  .c-heading-2-1 + .c-list.-link {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list.-link,
  .c-heading-2-1 + .c-list.-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-list.-link {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-list.-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-list.-link {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-list.-link {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list.-link,
  .c-list + .c-list.-link {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list.-link,
  .c-list + .c-list.-link {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-list.-link {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-list.-link {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-list.-link {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-list.-link {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-list.-link {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-link {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-list.-link > li > a {
    padding-right: 32px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-list.-outline > li > a {
    padding-right: 32px;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-S-2-XS-1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-S-2-XS-1 > li {
    width: calc(50% - 10px);
  }
}
@media only screen and (max-width: 47.9375em) {
  table + .c-list.-beginners,
  .c-image + .c-list.-beginners,
  .p-scrollable + .c-list.-beginners {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-list.-beginners,
  .c-image + .c-list.-beginners,
  .p-scrollable + .c-list.-beginners {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-list.-beginners {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-list.-beginners {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list.-beginners {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-list.-beginners {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-list.-beginners {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list.-beginners {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-list.-beginners {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list.-beginners {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list.-beginners,
  .c-heading-2-1 + .c-list.-beginners {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list.-beginners,
  .c-heading-2-1 + .c-list.-beginners {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-list.-beginners {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-list.-beginners {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-list.-beginners {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-list.-beginners {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-list.-beginners,
  .c-list + .c-list.-beginners {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-list.-beginners,
  .c-list + .c-list.-beginners {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-list.-beginners {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-list.-beginners {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-list.-beginners {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-list.-beginners {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-list.-beginners {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-beginners {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.125rem;
    margin-bottom: -20px;
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-beginners > li {
    margin-top: 0;
    margin-bottom: 20px;
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-list.-beginners > li > a {
    font-size: 1rem;
  }
}
.c-list--center {
  text-align: center;
}

/**
 * 装飾付き（円）
 */
.c-list.-disc > li {
  position: relative;
  padding-left: 14px;
}
.c-list.-disc > li + li {
  margin-top: 3px;
}
.c-list.-disc > li:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  width: 6px;
  height: 6px;
  box-sizing: border-box;
  background-color: #c2cfc9;
  border-radius: 50%;
  top: 0.6em;
}
.c-list.-disc.-access > li:before {
  width: 4px;
  height: 4px;
  top: 0.7em;
}
.c-list.-disc.p-delivery-plan__list > li:before {
  background-color: #212121;
  width: 4px;
  height: 4px;
  top: 0.7em;
}
.c-list.-disc.-no_mt + .c-list.-disc.-no_mt {
  margin-top: 0;
}

/**
 * 装飾付き（数字）
 */
.c-list--decimal {
  list-style-type: decimal;
  list-style-position: inside;
  text-indent: -1em;
  padding-left: 1em;
}

@media only screen and (max-width: 47.9375em) {
  .c-list.-muted {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-muted {
    font-size: 0.875rem;
  }
}
/**
 * 文字サイズ小
 */
.c-list.-muted.-disc > li {
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .c-list.-muted.-disc > li:before {
    top: 0.4em;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-muted.-disc > li:before {
    top: 0.4em;
  }
}
.c-list--check li {
  position: relative;
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}
.c-list--check li:not(:first-of-type) {
  margin-top: 4px;
}
.c-list--check li:before {
  content: "";
  position: absolute;
  left: 4px;
  display: inline-block;
  box-sizing: border-box;
  transform: rotate(45deg);
}

@media only screen and (max-width: 47.9375em) {
  .c-list--check li {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-list--check li {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-list--check li {
    padding-left: 24px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list--check li {
    padding-left: 42px;
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-list--check li:before {
    top: 0.2em;
    width: 7px;
    height: 13px;
    border-color: #74b708;
    border-width: 0 2px 2px 0;
    border-style: solid;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list--check li:before {
    top: 0.45em;
    width: 13px;
    height: 19px;
    border-color: #74b708;
    border-width: 0 4px 4px 0;
    border-style: solid;
  }
}
.browser-is-ie .c-list--check li:before {
  top: 0.3em;
}

.c-list--check.c-list--reason > li {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: normal;
  color: #2d2d2d;
}

.c-list.-flex li {
  display: flex;
  align-items: baseline;
}
.c-list.-flex li > *:first-child {
  margin-right: 7px;
}

@media print, screen and (min-width: 48em) {
  .c-list.-annotation {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-list.-annotation.-mt_s {
    margin-top: 8px;
  }
}
/**
 * 装飾付き（注釈つき）
 * <li><span>※</span>テキスト</li>
 */
.c-list--no-margin {
  margin-top: 0;
}

.c-list--bold {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .c-list--bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-list--bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.c-list.-box {
  border: 1px solid #dcdfe0;
  padding-top: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
}
.c-list li .-mincho {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 47.9375em) {
  .c-list li .-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-list li .-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.c-link {
  display: flex;
  align-items: baseline;
  font-weight: bold;
}
.c-link .c-arrow {
  min-width: 16px;
  margin-right: 8px;
  top: 0.1em;
}
.c-link .c-arrow.-inline {
  margin-right: 3px;
}
.c-link .c-blank {
  min-width: 15px;
  margin-right: 8px;
  top: 0.1em;
}
.c-link .c-zoom {
  min-width: 20px;
  margin-right: 8px;
  top: 0.15em;
}
.c-link .c-print {
  min-width: 15px;
  margin-right: 8px;
  top: 0.1em;
}
.c-link.-inline {
  display: inline;
}
.c-link.-inline .c-blank {
  top: 0.05em;
}
.c-link.-inline.-personal span {
  padding-right: 9px;
  font-size: 1rem;
  font-weight: medium;
  text-decoration: underline;
}
.c-link.-normal {
  font-weight: normal;
}
.c-link.-center {
  align-items: center;
}
.c-link.-center .c-arrow {
  top: 0;
}
.c-link.-mt_10 {
  margin-top: 10px;
}
.c-link.-mt_16 {
  margin-top: 16px;
}
.c-link .c-arrow.-p_top0 {
  top: 0;
}

@media only screen and (max-width: 47.9375em) {
  .c-link {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-link {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block.-support .p-home-block__sec .c-link {
    line-height: 1.4;
  }
}
/* ドロップダウンで使用 */
@media screen and (min-width: 1024px) and (max-width: 1250px) {
  .c-link .c-arrow.-p_top0 {
    top: 0.1em;
  }
}
.p-cta-block__desc .c-link {
  margin-top: 5px;
}

.c-link.-underline {
  display: inline-block;
  position: relative;
}
.c-link.-underline::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  bottom: 5px;
  background-color: #000;
}
.c-link.-underline.-border_white::after {
  background-color: #fff;
}

@media print, screen and (min-width: 64em) {
  .c-link.-underline:hover {
    color: #8ac9c4;
  }
  .c-link.-underline:hover::after {
    background-color: #8ac9c4;
  }
}
@media print, screen and (min-width: 64em) {
  .c-link.-underline.-border_white:hover::after {
    background-color: #8ac9c4;
  }
}
th > .c-link {
  align-items: center;
}
th > .c-link .c-arrow {
  top: 0;
}

@media only screen and (max-width: 47.9375em) {
  th > .c-link {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  th > .c-link {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.c-note-number {
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}
.c-note-number > sup {
  font-size: 0.625rem;
  position: relative;
  top: 1px;
  line-height: 0;
}

@media only screen and (max-width: 47.9375em) {
  .c-note-number {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-note-number {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-note-number {
    font-size: 0.875rem;
  }
}
/* 複数カラム
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  table + .c-column,
  .c-image + .c-column,
  .p-scrollable + .c-column {
    margin-top: 21px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-column,
  .c-image + .c-column,
  .p-scrollable + .c-column {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image + .c-column.-mt_s-sp {
    margin-top: 8px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery + .c-column {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery + .c-column {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-column,
  .c-heading-2-1 + .c-column {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-column,
  .c-heading-2-1 + .c-column {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-column {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-column {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-column {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-column {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-column {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-column {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-column {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-column {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-column {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-column {
    margin-top: 13px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-column {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-column {
    margin-top: 11px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-column,
  .c-list + .c-column {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-column,
  .c-list + .c-column {
    margin-top: 26px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-column.-mt_s,
  .c-list + .c-column.-mt_s {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-column.-mt_s,
  .c-list + .c-column.-mt_s {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-column {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-column {
    margin-top: 44px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-column {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-column {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column {
    display: flex;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column__item + .c-column__item {
    margin-top: 30px;
  }
}
.c-column__item.-flex {
  flex: 1;
}

@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-flex-pc {
    flex: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column__item.-flex-pc {
    flex: 1;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-sp_mt-none {
    margin-top: 0;
  }
}
.c-column.-sp_reverse {
  display: flex;
}
.c-column.-S-3-XS-2 {
  flex-wrap: wrap;
}
.c-column.-mx_10 {
  margin-right: -10px;
  margin-left: -10px;
}
.c-column.-mx_10 > .c-column__item {
  margin-right: 10px;
  margin-left: 10px;
}
.c-column.-mx_30 {
  margin-right: -30px;
  margin-left: -30px;
}
.c-column.-mx_30 > .c-column__item {
  margin-right: 30px;
  margin-left: 30px;
}
.c-column.-mx_15 {
  margin-right: -15px;
  margin-left: -15px;
}
.c-column.-mx_15 > .c-column__item {
  margin-right: 15px;
  margin-left: 15px;
}
.c-column.-mx_20 {
  margin-right: -19px;
  margin-left: -20px;
}
.c-column.-mx_20 > .c-column__item {
  margin-left: 20px;
  margin-right: 19px;
}
.c-column.-room .c-column__item + .c-column__item {
  margin-top: 0;
}
.c-column.-space_between {
  justify-content: space-between;
}
.c-column.-S-3-XS-1.-mt_66 .c-column__item {
  margin-top: 66px;
}
.c-column.-access-carry .c-column__item.-w-66 {
  width: calc(66% - 60px);
  margin-right: 60px;
  box-sizing: border-box;
}
.c-column.-dropdown {
  display: flex;
  justify-content: center;
}
.c-column.-dropdown > a {
  color: #fff;
  margin-right: 36px;
  line-height: 1;
  white-space: nowrap;
}
.c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
  margin-top: 0;
  border-top: 1px solid #dcdfe0;
}
.c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:last-of-type, .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(2), .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(3) {
  border-bottom: 1px solid #dcdfe0;
}
.c-column.-eating_rule .c-column__item {
  margin-top: 30px;
}
.c-column.-article {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .c-column.-sp_reverse {
    flex-direction: column-reverse;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-sp_reverse {
    flex-direction: row;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .browser-is-ie .c-column.-sp_reverse {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-order-change {
    flex-direction: row-reverse;
  }
}
/**
 * XS…1列
 * S …2列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1 {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-2-XS-1 > .c-column__item:nth-child(0), .c-column.-S-2-XS-1 > .c-column__item:nth-child(1) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1 > .c-column__item {
    width: 50%;
  }
  .c-column.-S-2-XS-1 > .c-column__item:nth-child(0), .c-column.-S-2-XS-1 > .c-column__item:nth-child(1), .c-column.-S-2-XS-1 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
/* 折り返しなし */
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-XS-1.-n_rap {
    flex-wrap: nowrap;
  }
}
/**
 * XS…1列
 * S …3列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1 {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-1 > .c-column__item:nth-child(0), .c-column.-S-3-XS-1 > .c-column__item:nth-child(1) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1 > .c-column__item {
    width: 33.3%;
  }
  .c-column.-S-3-XS-1 > .c-column__item:nth-child(0), .c-column.-S-3-XS-1 > .c-column__item:nth-child(1), .c-column.-S-3-XS-1 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
/**
 * XS…2列
 * S …3列
 */
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-2 > .c-column__item {
    width: 50%;
  }
  .c-column.-S-3-XS-2 > .c-column__item:nth-child(0), .c-column.-S-3-XS-2 > .c-column__item:nth-child(1), .c-column.-S-3-XS-2 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-2 > .c-column__item {
    width: 33.3%;
  }
  .c-column.-S-3-XS-2 > .c-column__item:nth-child(0), .c-column.-S-3-XS-2 > .c-column__item:nth-child(1), .c-column.-S-3-XS-2 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
/**
 * XS…1列
 * M …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-M-4-XS-1 {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-M-4-XS-1 > .c-column__item {
    width: 33.3%;
  }
  .c-column.-M-4-XS-1 > .c-column__item:nth-child(0), .c-column.-M-4-XS-1 > .c-column__item:nth-child(1), .c-column.-M-4-XS-1 > .c-column__item:nth-child(2), .c-column.-M-4-XS-1 > .c-column__item:nth-child(3) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-M-4-XS-1 > .c-column__item {
    width: 25%;
  }
  .c-column.-M-4-XS-1 > .c-column__item:nth-child(0), .c-column.-M-4-XS-1 > .c-column__item:nth-child(1), .c-column.-M-4-XS-1 > .c-column__item:nth-child(2), .c-column.-M-4-XS-1 > .c-column__item:nth-child(3), .c-column.-M-4-XS-1 > .c-column__item:nth-child(4) {
    margin-top: 0;
  }
}
/**
 * XS…1列
 * S …2列
 * M …3列
 */
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-2-M-3-XS-1 {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-M-3-XS-1 {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-2-M-3-XS-1 > .c-column__item {
    width: 50%;
  }
  .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(0), .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(1), .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-S-2-M-3-XS-1 > .c-column__item {
    width: 33.3%;
    margin-top: 30px;
  }
  .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(0), .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(1), .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(2), .c-column.-S-2-M-3-XS-1 > .c-column__item:nth-child(3) {
    margin-top: 0;
  }
}
/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-2 {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-4-XS-2 > .c-column__item {
    width: 50%;
  }
  .c-column.-S-4-XS-2 > .c-column__item:nth-child(0), .c-column.-S-4-XS-2 > .c-column__item:nth-child(1), .c-column.-S-4-XS-2 > .c-column__item:nth-child(2) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-2 > .c-column__item {
    width: 25%;
    margin-top: 30px;
  }
  .c-column.-S-4-XS-2 > .c-column__item:nth-child(0), .c-column.-S-4-XS-2 > .c-column__item:nth-child(1), .c-column.-S-4-XS-2 > .c-column__item:nth-child(2), .c-column.-S-4-XS-2 > .c-column__item:nth-child(3), .c-column.-S-4-XS-2 > .c-column__item:nth-child(4) {
    margin-top: 0;
  }
}
/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 > .c-column__item {
    width: 25%;
  }
  .c-column.-S-4-XS-1 > .c-column__item:nth-child(0), .c-column.-S-4-XS-1 > .c-column__item:nth-child(1), .c-column.-S-4-XS-1 > .c-column__item:nth-child(2), .c-column.-S-4-XS-1 > .c-column__item:nth-child(3), .c-column.-S-4-XS-1 > .c-column__item:nth-child(4) {
    margin-top: 0;
  }
}
/**
 * XS…2列
 * S …4列
 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-S-4-XS-1 > .c-column__item {
    width: 25%;
  }
  .c-column.-S-4-XS-1 > .c-column__item:nth-child(0), .c-column.-S-4-XS-1 > .c-column__item:nth-child(1), .c-column.-S-4-XS-1 > .c-column__item:nth-child(2), .c-column.-S-4-XS-1 > .c-column__item:nth-child(3), .c-column.-S-4-XS-1 > .c-column__item:nth-child(4) {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_10.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_10.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(33.3% - 20px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_10.-S-2-XS-1 > .c-column__item {
    width: calc(50% - 20px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-2-XS-1 > .c-column__item {
    width: calc(50% - 60px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-3-XS-1 {
    margin-top: -54px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-3-XS-1 > .c-column__item {
    width: calc(33.3% - 60px);
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(50% - 60px);
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_30.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(33.3% - 60px);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_30.-S-4-XS-2 {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_30.-S-4-XS-2 > .c-column__item {
    width: calc(50% - 60px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-4-XS-2 > .c-column__item {
    width: calc(25% - 60px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_30.-S-4-XS-1 > .c-column__item {
    width: calc(25% - 60px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-2-XS-1 > .c-column__item {
    width: calc(50% - 30px);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_15.-S-2-XS-2 {
    display: flex;
    flex-wrap: wrap;
    margin-top: -34px;
    margin-right: -7px;
    margin-left: -7px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-2-XS-2 {
    margin-top: -54px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_15.-S-2-XS-2 > .c-column__item {
    margin-top: 34px;
    margin-right: 7px;
    margin-left: 7px;
    width: calc(50% - 14px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-2-XS-2 > .c-column__item {
    margin-top: 54px;
    width: calc(50% - 30px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-3-XS-1 {
    margin-top: -54px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-3-XS-1 > .c-column__item {
    width: calc(33.3% - 30px);
    margin-top: 54px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_15.-S-3-XS-2 {
    display: flex;
    margin-top: -34px;
    margin-right: -7px;
    margin-left: -7px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-3-XS-2 {
    margin-top: -54px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_15.-S-3-XS-2 > .c-column__item {
    width: calc(50% - 14px);
    margin-top: 34px;
    margin-right: 7px;
    margin-left: 7px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-3-XS-2 > .c-column__item {
    width: calc(33.3% - 30px);
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(50% - 30px);
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_15.-S-2-M-3-XS-1 > .c-column__item {
    width: calc(33.3% - 30px);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_15.-S-4-XS-2 > .c-column__item {
    width: calc(50% - 30px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-S-4-XS-2 > .c-column__item {
    width: calc(25% - 30px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-M-4-XS-1 {
    margin-top: -38px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mx_15.-M-4-XS-1 > .c-column__item {
    width: calc(33.3% - 30px);
    margin-top: 38px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_15.-M-4-XS-1 > .c-column__item {
    width: calc(25% - 30px);
  }
}
/*

 XXX: 変ですが、右側は19px
*/
@media print, screen and (min-width: 48em) {
  .c-column.-mx_20.-S-3-XS-1 > .c-column__item {
    width: calc(33.3% - 39px);
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-mt_S-70 > .c-column__item {
    margin-top: 70px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mt_S-70.-document .c-column__item {
    margin-top: 70px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mt_S-70.-document .c-column__item:first-child {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column + .c-column {
    margin-top: 74px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-list .c-column__item {
    margin-top: 0;
  }
}
/**
 * 均等分
 */
@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-w_400px {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column__item.-w_400px {
    width: 400px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column__item.-w_500px {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column__item.-w_500px {
    width: 400px;
  }
}
@media print, screen and (min-width: 75em) {
  .c-column__item.-w_500px {
    width: 500px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-service .c-column__item + .c-column__item {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-layout {
    margin-top: 4px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-layout .c-column__item + .c-column__item {
    margin-top: 10px;
  }
}
/* アクセスの駅からの行き方で使用 */
@media print, screen and (min-width: 48em) {
  .c-column.-S-3-XS-1.-mt_66 {
    margin-top: -66px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-1.-mt_66 .c-column__item {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-access-carry {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .c-column.-access-carry {
    display: flex;
    flex-direction: row-reverse;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-access-carry .c-column__item.-w-66 {
    width: 100%;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1250px) {
  .c-column.-dropdown > a {
    font-size: 0.8125rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-dropdown > a {
    color: #1a1a1a;
    margin-left: 0px;
    margin-top: 10px;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1250px) {
  .c-column.-dropdown .p-dropdown-title {
    font-size: 1.25rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-dropdown {
    display: block;
    padding-top: 2px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_30.-S-4-XS-1.-measures .c-column__item + .c-column__item {
    margin-top: 20px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service {
    margin-top: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service {
    margin-top: -13px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
    display: flex;
    margin-top: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item {
    width: calc(33.3% - 40px);
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(2) {
    border-bottom: none;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-mx_30.-S-3-XS-1.p-other-service .c-column__item:nth-last-of-type(3) {
    border-bottom: none;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .c-column.-S-3-XS-1.-mx_30.-sp_mt0 .c-column__item {
    margin-top: 0;
  }
}
/* カード形式
----------------------------------------------------------------- */
.c-card {
  display: flex;
  width: 100%;
  position: relative;
}
.c-card > a:not(.c-card__link) {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-column .c-card {
  height: 100%;
}

.c-card.-block {
  display: block;
}
.c-card.-zoom .c-card__link {
  position: relative;
}
.c-card.-zoom .c-card__zoom {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  background: transparent;
  border: none;
  transition: color 0.1s 0s ease;
  cursor: pointer;
}
.c-card.-zoom .c-card__zoom:focus {
  outline: none;
}
.c-card.-zoom .c-card__zoom span {
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .c-card__link.-example {
    display: flex;
    flex-direction: column;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__link.-example .c-card__sec {
    margin-top: auto;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-zoom .c-card__link {
    padding-bottom: 42px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card.-zoom .c-card__zoom:hover {
    color: #8ac9c4;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card.-zoom .c-card__zoom span {
    display: none;
  }
}
.c-card__link {
  box-sizing: border-box;
  width: 100%;
  border-radius: 4px;
}
.c-card__link.-column > .c-card__sec {
  padding-top: 24px;
  margin-top: auto;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__link {
    position: relative;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__link {
    transition: box-shadow 0.7s ease;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__link:hover,
  a:hover + .c-card__link {
    transition: box-shadow 0.2s ease;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__link:hover .c-card__thumb > span,
  a:hover + .c-card__link .c-card__thumb > span {
    transform: scale(1.1);
    transition: transform 0.2s ease;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__link:hover .c-card__more > span,
  a:hover + .c-card__link .c-card__more > span {
    transition: color 0.2s ease;
    color: #8ac9c4;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__link:hover .c-card__more > .c-arrow,
  a:hover + .c-card__link .c-card__more > .c-arrow {
    transition: background-image 0.2s ease;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__link.-column {
    display: flex;
    flex-direction: column;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-article > .c-card__link {
    display: flex;
    flex-direction: column;
  }
}
.c-card.-article > .c-card__link > .c-card__image {
  width: 100%;
  position: relative;
  overflow: hidden;
  font-size: 0;
  padding-top: 62.5%;
}
.c-card.-article > .c-card__link > .c-card__image img {
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.c-card.-article > .c-card__link > .c-card__image + .c-card__title {
  display: flex;
  margin-top: 20px;
  line-height: 1.8;
}
.c-card.-article > .c-card__link .c-card__title .c-arrow {
  min-width: 16px;
  margin-right: 8px;
  margin-left: 0;
  top: 0.4em;
}
.c-card.-article:hover > .c-card__link .c-card__image img {
  transform: translate(-50%, -50%) scale(1.1);
}
.c-card.-article:hover > .c-card__link .c-card__title {
  color: #8ac9c4;
}

.c-card__body {
  box-sizing: border-box;
}
.c-card__body > *:first-child {
  margin-top: 0;
}
.c-card__body.-measures > *:first-child {
  margin-top: 30px;
}
.c-card__body.-measures .c-card__text {
  font-weight: normal;
  color: #1a1a1a;
  font-size: 1rem;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__body {
    padding: 24px 24px 22px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__body {
    padding: 40px 40px 40px 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__body.-measures {
    padding: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__body.-measures {
    padding: 0 60px 0 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card__body.-measures .c-card__title {
    font-size: 1.375rem;
    margin-top: 4px;
    line-height: 1.5;
  }
}
.c-card__image.-bg {
  width: 100%;
  position: relative;
  height: 0;
  padding-top: 75%;
}
.c-card__image.-bg > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.c-card__image.-service_1 span, .c-card__image.-service_2 span, .c-card__image.-service_3 span, .c-card__image.-service_4 span {
  background-position: center;
}

@media print, screen and (min-width: 48em) {
  .c-card__image.-service_1 {
    padding-top: 72px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__image.-service_1 span {
    background-size: 58px 51px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_1 span {
    background-size: 83px 72px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_2 {
    padding-top: 74px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__image.-service_2 span {
    background-size: 58px 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_2 span {
    background-size: 64px 76px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_3 {
    padding-top: 74px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__image.-service_3 span {
    background-size: 45px 52px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_3 span {
    background-size: 85px 66px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_4 {
    padding-top: 74px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__image.-service_4 span {
    background-size: 57px 52px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image.-service_4 span {
    background-size: 84px 74px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title.-measures {
    font-size: 1rem;
    margin-top: 20px;
  }
}
.c-card__title.-measures .-number {
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__title.-measures .-number {
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title.-measures .-number {
    margin-top: 6px;
  }
}
.c-card__text {
  font-weight: bold;
  color: #666;
  line-height: 1.5;
}
.c-card__text.-example {
  color: #000;
  font-weight: normal;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__text {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__text {
    margin-top: 8px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__text {
    margin-top: 16px;
    font-size: 1rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card__text.-example {
    margin-bottom: 16px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__text.-example {
    padding-bottom: 18px;
  }
}
.c-card__sub {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  font-family: Times New Roman, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1;
}
.c-card__sub:before, .c-card__sub:after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  width: 20px;
  height: 1px;
  background-color: currentColor;
  opacity: 0.5;
}
.c-card__sub:before {
  left: 0;
}
.c-card__sub:after {
  right: 0;
}

@media print, screen and (min-width: 48em) {
  .c-card__sub {
    padding-left: 30px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__sub:before {
    display: none;
  }
}
.c-card__title {
  font-weight: bold;
  color: #1a1a1a;
  line-height: 1.36;
  margin-top: 8px;
}
.c-card__title.-mincho {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}
.c-card__title > .c-arrow {
  top: 0;
  display: inline-block;
  margin-left: 5px;
}
.c-card__title > .c-link .c-arrow {
  top: 0;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__title {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__title {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__title.-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title.-mincho {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__image + .c-card__title {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__image + .c-card__title {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title.-small {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__title.-xsmall {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__sec {
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__sec {
    margin-top: 8px;
  }
}
.c-card__sec .c-sentence {
  line-height: 1.625;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__sec.-sp_mt20 {
    margin-top: 12px;
  }
}
.c-card__sec-flex {
  display: flex;
}

@media print, screen and (max-width: 63.9375em) {
  .c-card__sec-flex {
    justify-content: flex-start;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__sec-flex {
    justify-content: space-between;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card__sec-flex .c-card__sec-left {
    margin-right: 10px;
    flex: 1 1 auto;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__sec-flex .c-card__sec-right {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    margin-left: 10px;
  }
}
.c-card__table {
  margin-top: 30px;
}

.c-card__tag {
  margin-top: 4px;
  margin-left: -8px;
}
.c-card__tag .c-badge {
  margin-top: 8px;
  margin-left: 8px;
}

.c-card__button {
  display: flex;
  justify-content: center;
  width: 100%;
  padding-top: 6px;
  padding-bottom: 4px;
  margin-top: 22px;
  border: 1px solid #c8cccf;
  font-weight: bold;
  font-size: 1rem;
  border-radius: 3px;
  align-items: baseline;
}
.c-card__button .c-pdf,
.c-card__button .c-excel {
  position: relative;
  top: 4px;
  margin-right: 8px;
}
.c-card__button .c-blank,
.c-card__button .c-print {
  margin-right: 8px;
}
.c-card__button.-center {
  align-items: center;
}
.c-card__button.-w300 {
  max-width: 300px;
}
.c-card__button.-download {
  justify-content: start;
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 1px solid #c8cccf;
}
.c-card__button.-mt_95 {
  margin-top: 95px;
}

@media only screen and (max-width: 47.9375em) {
  .c-card__button {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card__button {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 64em) {
  .c-card__button.-w250 {
    width: 250px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card__button.-mt_95 {
    margin-top: 24px;
  }
}
a.c-card__link,
a + .c-card__link {
  background-color: #fff;
}

@media print, screen and (min-width: 48em) {
  .c-card.-text_center {
    text-align: center;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-service {
    text-align: center;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__link {
    display: flex;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__title {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-service .c-card__title {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card.-service .c-card__title {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card.-service .c-card__title {
    font-size: 1.25rem;
  }
}
.c-card.-service .c-card__body {
  padding: 0;
}
.c-card.-home-example .c-card__title {
  font-size: 1.125rem;
}
.c-card.-home-example .c-card__body {
  padding: 0;
  margin-top: 16px;
}
.c-card.-width-sub-title .c-card__title {
  margin-top: 4px;
}

@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__body {
    flex: 1;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-service .c-card__body {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__image {
    width: 80px;
    height: 100%;
    padding-top: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-card.-service .c-card__image > span {
    width: 58px;
    padding-top: 0;
    background-size: contain;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-home-example {
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .c-card.-home-example .c-card__title {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-home-example .c-card__body {
    margin-top: 24px;
  }
}
/* サブタイトルつきのカード */
/* 駅からの行き方 */
.c-column.-h_auto .c-card {
  height: auto;
}

.c-card__list > li {
  line-height: 1.4;
  font-size: 1rem;
}

.c-card__link.-catering {
  display: flex;
  flex-direction: column;
}
.c-card__link.-catering .c-card__sec {
  margin-bottom: auto;
  padding-top: 12px;
}
.c-card__link.-catering .c-card__sec::before {
  top: 12px;
}
.c-card__link.-justify-between {
  display: flex;
  flex-direction: column;
}
.c-card__link.-justify-between :nth-last-child(2) {
  margin-bottom: auto;
}

.c-card__sec-right-sub {
  line-height: 1.2;
}

.c-card.-access .c-card__text {
  font-weight: 500;
}

@media only screen and (max-width: 47.9375em) {
  .c-card.-access .c-card__text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-card.-access .c-card__text {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
/* セクション
----------------------------------------------------------------- */
@media print, screen and (max-width: 63.9375em) {
  .c-section-lead {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-lead {
    margin-top: 60px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-1,
  .p-cta-block.-detail {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-1,
  .p-cta-block.-detail {
    margin-top: 105px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-section-1.-sp_mt_large,
  .-sp_mt_large.p-cta-block.-detail {
    margin-top: 44px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-15 {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-15 {
    margin-top: 92px;
  }
}
.c-section-2 {
  padding-left: 29px;
  position: relative;
}
.c-section-2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background-color: #74b708;
  width: 5px;
  height: 100%;
}
.c-section-2--no-deco::before {
  content: none;
}

@media print, screen and (max-width: 63.9375em) {
  .c-section-2 {
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-2 {
    margin-top: 76px;
  }
}
.c-section-2.-p_test {
  page-break-before: always;
}

@media only screen and (max-width: 47.9375em) {
  .c-section-25 {
    margin-top: 32px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-25 {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-25 {
    margin-top: 55px;
  }
}
.c-section-25.-border {
  border-top: 1px solid #cbd5d2;
  padding-top: 35px;
  margin-top: 35px;
}

@media print, screen and (max-width: 63.9375em) {
  .c-section-3 {
    margin-top: 52px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-3 {
    margin-top: 59px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-3.-size_s-sp {
    margin-top: 10px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-35 {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-section-35 {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-35 {
    margin-top: 59px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-4 {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-4 {
    margin-top: 45px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-section-45 {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-section-45 {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-45 {
    margin-top: 32px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-5 {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-5 {
    margin-top: 32px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-6 {
    margin-top: 52px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-6 {
    margin-top: 92px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-7 {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-7 {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-section-7.-tb_mt0 {
    margin-top: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-section-8 {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-8 {
    margin-top: 23px;
  }
}
.c-section-9 {
  margin-top: 53px;
}

.c-section-10 {
  margin-top: 54px;
}
.c-section-10.-top {
  margin-top: 54px;
}

@media print, screen and (min-width: 64em) {
  .c-section-10 {
    margin-top: 92px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-section-10.-top {
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 75em) {
  .c-section-10.-top {
    margin-top: 92px;
  }
}
.c-section-11 {
  margin-top: 5px;
}

/* 別窓アイコン
----------------------------------------------------------------- */
.c-blank {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 13px;
}
.c-blank:after {
  position: absolute;
  display: inline-block;
  content: "";
  right: 0;
  top: 0;
  width: 11px;
  height: 9px;
  background-color: #74b708;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank:before {
  position: absolute;
  display: inline-block;
  content: "";
  bottom: 0;
  left: 0;
  width: 12px;
  height: 11px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  border-color: #74b708;
  border-radius: 0 0 0 2px;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank.-header {
  margin-left: 4px;
  top: 0;
  display: inline-block;
  position: relative;
  width: 13px;
  height: 11px;
}
.c-blank.-header:after {
  position: absolute;
  display: inline-block;
  content: "";
  right: 0;
  top: 0;
  width: 9px;
  height: 7px;
  background-color: #74b708;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank.-header:before {
  position: absolute;
  display: inline-block;
  content: "";
  bottom: 0;
  left: 0;
  width: 10px;
  height: 9px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  border-color: #74b708;
  border-radius: 0 0 0 2px;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank.-header::before {
  left: 2px;
}
.c-blank.-footer {
  margin-left: 4px;
  top: 0;
  display: inline-block;
  position: relative;
  width: 10px;
  height: 8px;
  margin-left: 0;
  margin-right: 4px;
}
.c-blank.-footer:after {
  position: absolute;
  display: inline-block;
  content: "";
  right: 0;
  top: 0;
  width: 7px;
  height: 4px;
  background-color: #74b708;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank.-footer:before {
  position: absolute;
  display: inline-block;
  content: "";
  bottom: 0;
  left: 0;
  width: 8px;
  height: 6px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  border-color: #74b708;
  border-radius: 0 0 0 2px;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.c-blank.-right {
  margin-right: 8px;
}

@media print, screen and (min-width: 64em) {
  .c-blank.-header {
    margin-left: 4px;
  }
  .c-blank.-header:after {
    position: absolute;
    display: inline-block;
    content: "";
    right: 0;
    top: 0;
    width: 9px;
    height: 7px;
    background-color: #fff;
    box-sizing: border-box;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
  .c-blank.-header:before {
    position: absolute;
    display: inline-block;
    content: "";
    bottom: 0;
    left: 0;
    width: 10px;
    height: 9px;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #fff;
    border-radius: 0 0 0 2px;
    box-sizing: border-box;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
  .c-blank.-header::before {
    left: 2px;
  }
}
/* 画像
 * 詳細ページに挿入する画像に指定する。
----------------------------------------------------------------- */
.c-image {
  display: block;
  position: relative;
}
.c-image > * {
  max-width: 100%;
}
.c-image img {
  display: block;
  margin: 0 auto;
  height: auto;
}
.c-image.-svg {
  position: relative;
  height: 0;
  padding-top: 50%;
}
.c-image.-svg > img {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.c-image.-radius > img {
  border-radius: 4px;
}
.c-image.-border > img {
  border: 2px solid #e5e5e5;
}
.c-image.-rot_180 {
  transform: rotate(180deg);
}
.c-image.-rot_90 {
  transform: rotate(90deg);
  position: relative;
  z-index: -1;
}
.c-image.-bg_white {
  background-color: #fff;
}

@media only screen and (max-width: 47.9375em) {
  .c-image img {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .c-image img {
    max-width: 100%;
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em) {
  table + .c-image,
  .c-image + .c-image,
  .p-scrollable + .c-image {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-image,
  .c-image + .c-image,
  .p-scrollable + .c-image {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-image {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-image {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-image {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-image {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-image {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-image {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-image {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-image {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-image,
  .c-heading-2-1 + .c-image {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-image,
  .c-heading-2-1 + .c-image {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-image {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-image {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-image {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-image {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-image,
  .c-list + .c-image {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-image,
  .c-list + .c-image {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-image {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-image {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-image {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-image {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-image.-radius-right > img {
    max-width: calc(100% + 100px);
    position: relative;
    right: 0;
    border-radius: 4px 0 0 4px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .c-image.-radius-right > img {
    border-radius: 4px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-image.-radius-left > img {
    max-width: calc(100% + 100px);
    position: relative;
    left: -100px;
    border-radius: 0 4px 4px 0;
  }
}
@media print, screen and (min-width: 87.5em) {
  .c-image.-radius-left > img {
    border-radius: 4px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image.-svg > img {
    width: auto;
    transform: scale(0.8);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image.-carriermodel {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-image.-carriermodel {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-5 + .c-imag {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-image.-mt_XS_30 {
    margin-top: 23px;
  }
}
/* 詳細ページのアンカーリンク
----------------------------------------------------------------- */
.c-outline {
  display: flex;
  flex-wrap: wrap;
}

@media only screen and (max-width: 47.9375em) {
  .c-outline {
    flex-direction: column;
  }
}
@media print, screen and (min-width: 48em) {
  .c-outline {
    margin-top: -10px;
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-outline__item {
    margin-top: 10px;
    margin-left: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-outline__item:not(:first-child) {
    margin-top: 12px;
  }
}
.c-outline__link {
  display: inline-block;
  align-items: center;
  position: relative;
  color: #1a1a1a;
  font-weight: bold;
  padding-left: 24px;
}
.c-outline__link .c-arrow {
  position: absolute;
  top: 0.3em;
  left: 0;
}

@media only screen and (max-width: 47.9375em) {
  .c-outline__link {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-outline__link {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.c-outline.-room {
  margin-top: 0;
  margin-left: -27px;
}
.c-outline.-room .c-outline__item {
  margin-top: 5px;
  margin-left: 27px;
  padding-top: 0px;
  padding-bottom: 5px;
}
.c-outline.-floormap .c-outline__item {
  box-sizing: border-box;
}
.c-outline.-floormap .c-outline__link {
  display: flex;
  justify-content: space-between;
}
.c-outline.-floormap .c-outline__link .c-arrow {
  top: 50%;
  transform: translateY(-40%);
}
.c-outline.-floormap .c-outline__left {
  display: inline-block;
}

@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap {
    display: block;
    margin: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .c-outline.-floormap {
    margin-top: -20px;
    margin-left: -60px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap .c-outline__item {
    border-width: 1px 0 0 0;
    border-color: #dcdfe0;
    border-style: solid;
  }
}
@media print, screen and (min-width: 64em) {
  .c-outline.-floormap .c-outline__item {
    border-width: 1px 0 1px 0;
    border-color: #dcdfe0;
    border-style: solid;
  }
}
@media print, screen and (min-width: 48em) {
  .c-outline.-floormap .c-outline__item {
    margin: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .c-outline.-floormap .c-outline__item {
    margin-top: 20px;
    margin-left: 60px;
    width: calc(50% - 60px);
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-outline.-floormap .c-outline__item:not(:first-child) {
    margin-top: 12px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap .c-outline__item:last-child {
    border-width: 1px 0 1px 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap .c-outline__link {
    padding-top: 13px;
    padding-bottom: 5px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-outline.-floormap .c-outline__link {
    padding-top: 24px;
    padding-bottom: 18px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-outline.-floormap .c-outline__right {
    width: 118px;
  }
  .c-outline.-floormap .c-outline__right img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .c-outline.-floormap .c-outline__right {
    width: 175px;
  }
  .c-outline.-floormap .c-outline__right img {
    width: 100%;
  }
}
.c-overlay {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.6);
  transition: all 0.3s;
  z-index: 1;
}
.c-overlay.-visible {
  visibility: visible;
  opacity: 0.75;
}

@media print, screen and (min-width: 64em) {
  .c-overlay {
    top: 55px;
  }
}
/* テーブル形式
----------------------------------------------------------------- */
.c-table {
  width: 100%;
  border-top: 1px solid #dcdfe0;
}
.c-table > tbody > tr:not(.c-thead-light),
.c-table > thead > tr:not(.c-thead-light) {
  border-bottom: 1px solid #dcdfe0;
}
.c-table > tbody > tr > th,
.c-table > thead > tr > th {
  white-space: nowrap;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  line-height: 1;
  vertical-align: top;
}
.c-table > tbody > tr > th span,
.c-table > thead > tr > th span {
  display: inline-block;
  font-size: 0.5625rem;
}
.c-table > tbody > tr > th.-lines span,
.c-table > thead > tr > th.-lines span {
  font-size: 1rem;
  font-weight: bold;
}
.c-table > tbody > tr > th.-lines span + span,
.c-table > thead > tr > th.-lines span + span {
  margin-top: 6px;
}
.c-table > tbody > tr > td,
.c-table > thead > tr > td {
  line-height: 1.5;
  width: 100%;
}
.c-table > tbody > tr > td .-attention,
.c-table > thead > tr > td .-attention {
  font-size: 0.875rem;
  color: #e00000;
}

@media only screen and (max-width: 47.9375em) {
  table + .c-table,
  .c-image + .c-table,
  .p-scrollable + .c-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .c-table,
  .c-image + .c-table,
  .p-scrollable + .c-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .c-table {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .c-table {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-table {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-table {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-table {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-table {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-table,
  .c-heading-2-1 + .c-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-table,
  .c-heading-2-1 + .c-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .c-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .c-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .c-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .c-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .c-table,
  .c-list + .c-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .c-table,
  .c-list + .c-table {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .c-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .c-table {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .c-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .c-table {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > th,
  .c-table > thead > tr > th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > th,
  .c-table > thead > tr > th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > th,
  .c-table > thead > tr > th {
    display: block;
    padding-top: 19px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > th,
  .c-table > thead > tr > th {
    padding-top: 18px;
    padding-bottom: 16px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > th.-lines span,
  .c-table > thead > tr > th.-lines span {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > th.-lines span,
  .c-table > thead > tr > th.-lines span {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > th.-lines span,
  .c-table > thead > tr > th.-lines span {
    display: inline-block;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > th.-lines span,
  .c-table > thead > tr > th.-lines span {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > th.-mincho,
  .c-table > thead > tr > th.-mincho {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > th.-mincho,
  .c-table > thead > tr > th.-mincho {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > td,
  .c-table > thead > tr > td {
    display: block;
    padding-top: 8px;
    padding-bottom: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > td,
  .c-table > thead > tr > td {
    padding-top: 14px;
    padding-bottom: 12px;
    padding-left: 38px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table > tbody > tr > td .-attention,
  .c-table > thead > tr > td .-attention {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > td .-attention,
  .c-table > thead > tr > td .-attention {
    margin-left: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table > tbody > tr > td.-example,
  .c-table > thead > tr > td.-example {
    padding-left: 25px;
  }
}
.c-thead-light {
  border-width: 1px 0 1px 0;
  border-color: #dcdfe0;
  border-style: solid;
}
.c-thead-light > th:first-of-type {
  padding-left: 20px;
  text-align: left;
}
.c-thead-light > th:nth-child(3) {
  padding-left: 10px;
}
.c-thead-light > th:last-of-type {
  padding-left: 46px;
}

.c-thead-light__sub {
  font-weight: 400;
  margin-left: 10px;
  font-size: 0.875rem;
}

/* アクセス */
.c-table.-access {
  margin-top: 20px;
}
.c-table.-access th {
  color: #1a1a1a;
  padding-bottom: 0;
  font-size: 1.375rem;
}
.c-table.-access td {
  display: block;
  padding-left: 0;
  font-weight: 600;
}
.c-table.-access td .c-sentence {
  font-weight: 500;
  font-size: 1rem;
}
.c-table.-access td ul li .-mita,
.c-table.-access td ul li .-metro-group {
  display: block;
  font-size: 1rem;
  font-weight: normal;
  margin-top: 6px;
}
.c-table.-access td ul li .-exit {
  position: relative;
  padding-left: 0;
  margin-right: 0;
  font-size: 1.5rem;
}
.c-table.-access td ul li span {
  position: relative;
  padding-left: 18px;
  margin-right: 20px;
}
.c-table.-access td ul li span::before {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  top: 0.35em;
  left: 0;
  box-sizing: border-box;
  border-radius: 50%;
}
.c-table.-access td ul li span.-tokaido::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #f68b1f;
  border-radius: 3px;
}
.c-table.-access td ul li span.-nanbu::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #fed628;
  border-radius: 3px;
}
.c-table.-access td ul li span.-keihintohoku::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #24bae8;
  border-radius: 3px;
}
.c-table.-access td ul li span.-keikyu::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #28ccfd;
  border-radius: 3px;
}
.c-table.-access td ul li span.-chuoh::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #f68b1f;
  border-radius: 3px;
}
.c-table.-access td ul li span.-soubu::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #fed628;
  border-radius: 3px;
}
.c-table.-access td ul li span.-nanboku::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #00ac9a;
  border-radius: 50%;
}
.c-table.-access td ul li span.-nanboku::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 0.4em;
  left: 0.2em;
  background-color: #fff;
  border-radius: 50%;
  z-index: 2;
}
.c-table.-access td ul li span.-marunouchi::before {
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #e60012;
  border-radius: 50%;
}
.c-table.-access td ul li span.-marunouchi::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 0.4em;
  left: 0.2em;
  background-color: #fff;
  border-radius: 50%;
  z-index: 2;
}
.c-table .c-table__block {
  display: block;
  margin-top: 6px;
}
.c-table .c-table__block span {
  display: block;
}
.c-table .c-table__block span + span {
  margin-top: 8px;
}
.c-table .c-table__block span.-note {
  display: block;
  position: relative;
  padding-left: 20px;
}
.c-table .c-table__block span.-note:before {
  position: absolute;
  content: "※";
  top: 0;
  left: -3px;
}
.c-table .c-table__block.-fee {
  display: flex;
}
.c-table .c-table__block.-fee .-value {
  display: flex;
  flex-direction: column;
}
.c-table .c-table__block.-limit {
  margin-top: 0;
}
.c-table .c-table__block.-limit .-bold {
  font-weight: bold;
}
.c-table .c-table__block.-limit + .c-table__block.-limit {
  margin-top: 32px;
}
.c-table.-train {
  width: auto;
  border: none;
}
.c-table.-train td {
  padding: 0;
}
.c-table.-train span.-from {
  display: block;
  padding-left: 50px;
}
.c-table.-train span.-time {
  display: block;
  padding-left: 20px;
  font-weight: bold;
}
.c-table.-train > tbody > tr:not(.c-thead-light),
.c-table.-train > thead > tr:not(.c-thead-light) {
  border: none;
}
.c-table.-train > tbody > tr > td,
.c-table.-train > thead > tr > td {
  width: auto;
  padding-top: 10px;
}
.c-table.-train .-line {
  display: flex;
}
.c-table.-train .-line span {
  position: relative;
  padding-left: 20px;
}
.c-table.-train .-line span.-chuoh::before {
  position: absolute;
  content: "";
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #f68b1f;
  border-radius: 3px;
}
.c-table.-train .-line span.-marunouchi::before {
  position: absolute;
  content: "";
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #e60012;
  border-radius: 50%;
}
.c-table.-train .-line span.-marunouchi::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 0.4em;
  left: 0.2em;
  background-color: #fff;
  border-radius: 50%;
  z-index: 2;
}
.c-table.-train .-line span.-soubu::before {
  position: absolute;
  content: "";
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #fed628;
  border-radius: 3px;
}
.c-table.-train .-line span.-nanboku::before {
  position: absolute;
  content: "";
  top: 0.2em;
  width: 14px;
  height: 14px;
  top: 0.2em;
  left: 0;
  background-color: #00ac9a;
  border-radius: 50%;
}
.c-table.-train .-line span.-nanboku::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 0.4em;
  left: 0.2em;
  background-color: #fff;
  border-radius: 50%;
  z-index: 2;
}
.c-table.-train .-line span + span {
  margin-left: 10px;
}

@media print, screen and (max-width: 63.9375em) {
  .c-table.-access tbody tr th {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access th {
    font-size: 1rem;
    padding-top: 22px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-access th {
    padding-top: 20px;
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-table.-access th {
    padding-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td {
    font-size: 0.875rem;
    padding-bottom: 14px;
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-access td {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .c-table.-access td {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-table.-access td .c-list + .c-list {
    margin-top: 10px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-table.-access td ul li .-mita,
  .c-table.-access td ul li .-metro-group {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-tokaido::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-nanbu::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-keihintohoku::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-keikyu::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-chuoh::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-soubu::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-nanboku::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-nanboku::after {
    top: 0.35em;
    left: 0.25em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-marunouchi::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-access td ul li span.-marunouchi::after {
    top: 0.35em;
    left: 0.25em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-5 + .c-table.-catering {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-table.-example {
    margin-top: 24px;
  }
}
/* 部屋と料金
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .c-table.-facility tr.-price {
    display: flex;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-facility.-room_data > tbody > tr > th,
  .c-table.-facility.-room_data > thead > tr > th {
    display: block;
    padding-top: 19px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-facility.-room_data > tbody > tr > th,
  .c-table.-facility.-room_data > thead > tr > th {
    padding-top: 24px;
    padding-bottom: 18px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-facility.-room_data > tbody > tr > td,
  .c-table.-facility.-room_data > thead > tr > td {
    padding-top: 8px;
    padding-bottom: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-facility.-room_data > tbody > tr > td,
  .c-table.-facility.-room_data > thead > tr > td {
    line-height: 1.9;
    padding-top: 18px;
    padding-bottom: 15px;
    padding-left: 38px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-facility.-room_price > tbody > tr > th,
  .c-table.-facility.-room_price > thead > tr > th {
    display: block;
    padding-top: 19px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-facility.-room_price > tbody > tr > th,
  .c-table.-facility.-room_price > thead > tr > th {
    padding-top: 24px;
    padding-bottom: 18px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-facility.-room_price > tbody > tr > td,
  .c-table.-facility.-room_price > thead > tr > td {
    padding-top: 8px;
    padding-bottom: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-table.-facility.-room_price > tbody > tr > td,
  .c-table.-facility.-room_price > thead > tr > td {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-facility.-room_price {
    border-top: none;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train {
    font-size: 0.875rem;
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train span.-from {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-chuoh::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-marunouchi::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-marunouchi::after {
    top: 0.35em;
    left: 0.25em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-soubu::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-nanboku::before {
    top: 0.125em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-table.-train .-line span.-nanboku::after {
    top: 0.35em;
    left: 0.25em;
  }
}
.c-badge {
  cursor: pointer;
  display: inline-block;
  border-radius: 3px;
  border: 1px solid #c8cccf;
  color: #1a1a1a;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.25;
  padding-top: 6px;
  padding-right: 10px;
  padding-bottom: 4px;
  padding-left: 10px;
  transition: all 0.2s ease;
}
.c-badge:hover, .c-badge.-current {
  background-color: #dff5e2;
  color: #2b7443;
  border: 1px solid #2b7443;
  transition: all 0.2s ease;
}

@media only screen and (max-width: 47.9375em) {
  .c-badge {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-badge {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-badge {
    font-size: 0.875rem;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
input:checked + .c-badge {
  background-color: #dff5e2;
  color: #2b7443;
  border: 1px solid #2b7443;
  transition: all 0.2s ease;
}

@media print, screen and (max-width: 63.9375em) {
  .c-badge span {
    position: relative;
    top: 1px;
  }
}
.c-pdf {
  display: inline-block;
  width: 15px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20id%3D%22レイヤー_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220%22%20y%3D%220%22%20viewBox%3D%220%200%2015.9%2019.4%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%3E.st1{fill%3A%23e31515}%3C%2Fstyle%3E%3Cg%20id%3D%22グループ_2656%22%20transform%3D%22translate%286%204%29%22%3E%3Cg%20id%3D%22グループ_2655%22%20transform%3D%22translate%28-.559%20-.682%29%22%3E%3Cpath%20id%3D%22パス_529%22%20d%3D%22M9.7%2016.1H-4.6c-.5%200-.8-.4-.8-.8V-2.5c0-.5.3-.8.8-.8H7.1c.2%200%20.4.1.5.2L10.2.7c.1.1.2.3.2.5v14c.1.5-.3.9-.7.9zM-4.6-2.5v17.8H9.7V1.2L7.1-2.5H-4.6z%22%20fill%3D%22%231a1a1a%22%2F%3E%3C%2Fg%3E%3Cpath%20id%3D%22パス_530_1_%22%20class%3D%22st1%22%20d%3D%22M6.4%206.5c-.8-.1-1.7.1-2.4.4C3.2%206%202.5%205%202%204c.6-2.2.5-3.6-.2-4C1.1-.3.5-.1.3.4c-.1.1-.4.6.1%202.2L1%204.1C.7%205%20.4%205.9%200%206.8c-.3.7-.6%201.3-.9%201.8-.9.3-1.7.8-2.4%201.4-.4.4-.6%201-.4%201.5.1.3.4.4.7.4.8%200%201.7-.8%202.7-2.6%201.4-.6%203-1.1%204-1.4.3.3.8.4%201.2.5.9.4%201.9.3%202.6-.3.3-.3.4-.7.2-1%200-.1-.3-.6-1.3-.6zm-9.3%204.7c0-.3%200-.5.2-.7.4-.3.8-.6%201.2-.8-.8%201.3-1.3%201.6-1.4%201.5zM.9.8c.1-.1.2-.1.3-.2h.1c.2.1.4.7.1%202.3-.1-.1-.1-.3-.2-.4C.8%201.4.9.9.9.8zM.3%208.2c.2-.3.3-.7.5-1.1.3-.8.5-1.4.8-2.1.4.8%201%201.5%201.6%202.2-.8.2-1.8.6-2.9%201zM7%207.7c-.5.4-1.2.4-1.8.1l-.6-.3c.6-.2%201.2-.2%201.8-.2.5%200%20.6.1.7.2s-.1.2-.1.2z%22%2F%3E%3Cpath%20class%3D%22st1%22%20d%3D%22M-2.9%2012.2c-.4%200-.7-.2-.8-.5-.2-.6%200-1.3.4-1.7.7-.6%201.5-1.1%202.4-1.4.3-.5.6-1.1.8-1.8.4-.8.7-1.7%201-2.6L.3%202.7C-.3.9%200%20.5.1.3c.3-.5%201-.8%201.6-.5.9.5%201%201.9.3%204.2.5%201%201.2%201.9%201.9%202.8.8-.3%201.6-.5%202.4-.4%201.1%200%201.4.5%201.5.8.2.4.1.9-.2%201.2-.8.7-1.9.8-2.8.4-.4-.2-.8-.4-1.2-.7-.6.2-2.3.7-3.9%201.3-.9%201.8-1.8%202.7-2.6%202.8zM1.2%200C.9%200%20.6.2.4.5s-.2%201%20.2%202L1.2%204v.2C.9%205.1.6%206%20.2%206.9l-.9%201.8v.1h-.1c-.9.3-1.7.8-2.4%201.4-.4.4-.5.9-.3%201.4.1.1.3%200%20.6.1.7%200%201.6-.8%202.5-2.5%201.7-.7%203.5-1.2%204-1.4h.1l.2-.1c.3.3.7.5%201.1.7.8.4%201.8.3%202.4-.3.2-.2.3-.6.2-.9%200-.1-.3-.5-1.2-.5-.8-.1-1.7%200-2.4.4h-.1L3.8%207C3%206.1%202.3%205.1%201.7%204v-.2c.6-1.9.6-3.3-.1-3.7-.2-.1-.3-.1-.4-.1zm-4.1%2011.4l-.1-.1c-.1-.3.1-.6.3-.9.4-.3.8-.6%201.2-.8l.5-.2-.3.4c-.8%201.2-1.3%201.6-1.6%201.6zm1-1.3c-.2.1-.9.4-.8.9.3-.1.6-.5.8-.9zM.3%208.3H0l.1-.2c.2-.4.4-.7.5-1.1.3-.7.6-1.4.8-2l.1-.3.2.3c.4.7.9%201.4%201.5%202.1l.2.2-.2.1c-.7.2-1.8.5-2.9.9zm1.3-2.9c-.2.5-.4%201.1-.7%201.7-.1.3-.2.5-.3.8.8-.3%201.7-.6%202.3-.8C2.4%206.6%202%206%201.6%205.4zM6%208.1c-.3%200-.6-.1-.9-.2l-.6-.3-.3-.2.3-.1c.6-.2%201.2-.2%201.8-.2.5%200%20.8.2.8.3v.1h.3l-.4.3c-.3.2-.6.3-1%20.3zm-1-.5c.3.2%201.8.3%201.9%200%200-.1-.2-.2-.5-.2-.9%200-1%20.1-1.4.2zM1.4%203.4L1.2%203c0-.2-.1-.3-.1-.5C.7%201.5.7.9.8.7c.1-.1.2-.2.4-.3h.2c.2.3.4%201%20.1%202.5l-.1.5zM1%20.9s-.1.4.3%201.4c.2-1.1%200-1.5-.1-1.6-.1-.1-.2%200-.2.2z%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
.c-pdf.-right.-inline {
  margin-right: 8px;
}
.c-pdf.-white {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20id%3D%22レイヤー_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220%22%20y%3D%220%22%20viewBox%3D%220%200%2015.9%2019.4%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%3E.st0{fill%3A%23fff}.st1{fill%3A%23e31515}%3C%2Fstyle%3E%3Cg%20id%3D%22グループ_23255%22%20transform%3D%22translate%28-227%20-5837%29%22%3E%3Cpath%20id%3D%22パス_529%22%20class%3D%22st0%22%20d%3D%22M241.7%205855.8h-13.5c-.4%200-.7-.3-.7-.7v-16.8c0-.4.3-.7.7-.7h11c.2%200%20.4.1.5.2l2.5%203.6c.1.1.2.3.2.5v13.2c0%20.4-.3.7-.7.7z%22%2F%3E%3Cg%20id%3D%22グループ_20452%22%20transform%3D%22translate%28221.559%205833.682%29%22%3E%3Cg%20id%3D%22グループ_2656%22%20transform%3D%22translate%286%204%29%22%3E%3Cg%20id%3D%22グループ_2655%22%20transform%3D%22translate%28-.559%20-.682%29%22%3E%3Cpath%20id%3D%22パス_529-2%22%20class%3D%22st0%22%20d%3D%22M15.1%2019.4H.8c-.5%200-.8-.4-.8-.8V.8C0%20.3.3%200%20.8%200h11.7c.2%200%20.4.1.5.2L15.6%204c.1.1.2.3.2.5v14c.1.5-.3.9-.7.9zM.8.8v17.8h14.3V4.5L12.5.8H.8z%22%2F%3E%3C%2Fg%3E%3Cpath%20id%3D%22パス_530_1_%22%20class%3D%22st1%22%20d%3D%22M11.8%209.8c-.8-.1-1.7.1-2.4.4-.8-.9-1.5-1.9-2-2.9.6-2.2.5-3.6-.2-4-.7-.3-1.3-.1-1.5.4-.1.1-.4.6.1%202.2l.6%201.5c-.3.9-.6%201.8-1%202.7-.3.7-.6%201.3-.9%201.8-.9.3-1.7.8-2.4%201.4-.4.4-.6%201-.4%201.5.1.3.4.4.7.4.8%200%201.7-1%202.7-2.8%201.4-.6%203-1.1%204-1.4.3.3.8.6%201.2.7.9.4%201.9.3%202.6-.3.3-.3.4-.7.2-1%200-.1-.3-.6-1.3-.6zm-9.3%204.7c0-.3%200-.5.2-.7.4-.3.8-.6%201.2-.8-.8%201.3-1.3%201.6-1.4%201.5zM6.3%204.1c.1-.1.2-.1.3-.2h.1c.2.1.4.7.1%202.3-.1-.1-.1-.3-.2-.4-.4-1.1-.3-1.6-.3-1.7zm-.6%207.4c.2-.3.3-.7.5-1.1.3-.8.5-1.4.8-2.1.4.8%201%201.5%201.6%202.2-.8.2-1.8.6-2.9%201zm6.7-.5c-.5.4-1.2.4-1.8.1l-.6-.3c.6-.2%201.2-.2%201.8-.2.5%200%20.6.1.7.2s-.1.2-.1.2z%22%2F%3E%3Cpath%20class%3D%22st1%22%20d%3D%22M2.5%2015.5c-.4%200-.7-.2-.8-.5-.2-.6-.1-1.3.4-1.7.7-.6%201.5-1.1%202.4-1.4.3-.7.5-1.3.8-1.9.4-.8.7-1.7%201-2.6l-.6-1.5c-.6-1.7-.3-2.1-.2-2.3.3-.5%201-.8%201.6-.5.9.5%201%201.9.3%204.2.5%201%201.2%201.9%201.9%202.8.8-.3%201.6-.5%202.4-.4%201.1%200%201.4.5%201.5.8.2.4.1.9-.2%201.2-.8.7-1.9.8-2.8.4-.4-.2-.8-.4-1.2-.7-1.1.3-2.6.8-3.9%201.3-.9%201.8-1.8%202.7-2.6%202.8zM6.6%203.3c-.3%200-.6.2-.8.5-.2.3-.2%201%20.2%202l.6%201.5v.2c-.3.9-.6%201.8-1%202.7L4.7%2012v.1h-.1c-.9.3-1.7.8-2.4%201.4-.4.4-.5.9-.3%201.4.1.1.3.2.6.3.7%200%201.6-1%202.5-2.7%201.3-.5%203-1.1%204-1.4h.1l.2-.1c.3.3.7.5%201.1.7.8.4%201.8.3%202.4-.3.2-.2.3-.6.2-.9%200-.1-.3-.5-1.2-.5-.8-.1-1.7%200-2.4.4h-.1l-.1-.1c-.8-.9-1.5-1.9-2.1-3v-.2c.6-1.9.6-3.3-.1-3.7-.2-.1-.3-.1-.4-.1zM2.5%2014.7h-.1v-.1c-.1-.3.1-.6.3-.9.4-.3.8-.6%201.2-.8l.5-.2-.3.4c-.8%201.2-1.3%201.6-1.6%201.6zm1-1.3c-.2.1-.4.3-.6.5-.1.1-.2.2-.2.4.1-.1.4-.3.8-.9zm2.2-1.8h-.3l.1-.2c.2-.4.4-.7.5-1.1.3-.7.6-1.4.8-2l.1-.3.2.3c.4.7.9%201.4%201.5%202.1l.2.2-.2.1c-.7.2-1.8.5-2.9.9zM7%208.7c-.2.5-.4%201.1-.7%201.7-.1.3-.2.5-.3.8.8-.3%201.7-.6%202.3-.8-.5-.5-.9-1.1-1.3-1.7zm4.4%202.7c-.3%200-.6-.1-.9-.2l-.6-.3-.3-.2.3-.1c.6-.2%201.2-.2%201.8-.2.5%200%20.8.2.8.3v.1h.3l-.4.3c-.3.2-.6.3-1%20.3zm-1-.5c.1%200%20.2.1.3.1.5.3%201.1.2%201.6-.1v-.1s-.2-.1-.5-.1c-.5%200-1%20.1-1.4.2zM6.8%206.7l-.2-.4c0-.2-.1-.3-.1-.5-.4-1-.4-1.6-.3-1.8.1-.1.2-.2.4-.3h.2c.2.3.4%201%20.1%202.5l-.1.5zm-.4-2.5s-.1.4.3%201.4c.2-1.1%200-1.5-.1-1.6l-.2.2z%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

.c-zoom {
  display: inline-block;
  position: relative;
  width: 15px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.374%22%20height%3D%2217.374%22%20viewBox%3D%220%200%2017.374%2017.374%22%3E\a%20%20%20%20%3Cg%20id%3D%22_24px%22%20data-name%3D%2224px%22%20transform%3D%22translate%28-2.627%20-2.627%29%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M14.986%2C13.547h-.758l-.268-.259a6.242%2C6.242%2C0%2C1%2C0-.671.671l.259.268v.758l4.794%2C4.785%2C1.429-1.429Zm-5.753%2C0a4.315%2C4.315%2C0%2C1%2C1%2C4.315-4.315A4.309%2C4.309%2C0%2C0%2C1%2C9.233%2C13.547Z%22%20transform%3D%22translate%28-0.123%20-0.123%29%22%20fill%3D%22%236a9a96%22%20stroke%3D%22%236a9a96%22%20stroke-width%3D%220.5%22%2F%3E\a%20%20%20%20%3C%2Fg%3E\a%20%20%3C%2Fsvg%3E\a%20%20");
}

.c-print {
  display: inline-block;
  width: 20px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20id%3D%22_24px_2_%22%20data-name%3D%2224px%20%282%29%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M19%2C8H5a3%2C3%2C0%2C0%2C0-3%2C3v6H6v4H18V17h4V11A3%2C3%2C0%2C0%2C0%2C19%2C8ZM16%2C19H8V14h8Zm3-7a1%2C1%2C0%2C1%2C1%2C1-1A1%2C1%2C0%2C0%2C1%2C19%2C12ZM18%2C3H6V7H18Z%22%20fill%3D%22%236a9a96%22%2F%3E\a%20%20%20%20%3Cpath%20d%3D%22M0%2C0H24V24H0Z%22%20fill%3D%22none%22%2F%3E\a%20%20%3C%2Fsvg%3E\a%20%20");
}

/* Googlemapをレスポンシブ化するクラス
----------------------------------------------------------------- */
/* 以下HTLから */
.c-map {
  margin-top: 40px;
}

@media only screen and (max-width: 47.9375em) {
  .c-map {
    margin-top: 20px;
  }
}
.c-map__wrap {
  height: 0;
  overflow: hidden;
  padding-bottom: 74.25%;
  position: relative;
}
.c-map__wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.c-map__zoom {
  display: block;
  font-weight: 500;
  margin-top: 22px;
}

@media only screen and (max-width: 47.9375em) {
  .c-map__zoom {
    font-weight: bold;
    font-size: 0.875rem;
    margin-top: 22px;
  }
}
.c-map__access {
  margin-top: 30px;
}

.c-map__train {
  margin-top: 18px;
}

.c-close {
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  top: 0.1em;
  width: 16px;
  height: 16px;
  margin-right: 7px;
  background-color: #74b708;
  border-radius: 50%;
}
.c-close:before, .c-close:after {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 2px;
  background-color: #fff;
  content: "";
}
.c-close:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-close:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.c-annotation {
  position: relative;
  margin-top: 4px;
}
.c-annotation:first-child {
  margin-top: 0;
}
.c-annotation:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
}
.c-annotation span {
  display: block;
  font-weight: bold;
}
.c-annotation + .c-annotation {
  margin-top: 4px;
}
.c-annotation + .c-annotation:first-child {
  margin-top: 0;
}
.c-annotation.-pd_none {
  padding-left: 0;
}
.c-annotation.-pd_none::before {
  display: none;
}
.c-annotation.-nomark {
  padding-left: 0;
}
.c-annotation.-nomark:before {
  display: none;
}
.c-annotation.-red {
  color: #f94141;
}
.c-annotation.-red2 {
  color: #ef0b0b;
}

@media only screen and (max-width: 47.9375em) {
  .c-annotation {
    padding-left: 15px;
    font-size: 0.875rem;
    line-height: 1.4;
  }
}
@media print, screen and (min-width: 48em) {
  .c-annotation {
    padding-left: 15px;
    font-size: 0.875rem;
    line-height: 1.6;
  }
}
@media only screen and (max-width: 47.9375em) {
  * + .c-annotation {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  * + .c-annotation {
    margin-top: 13px;
  }
}
/* ==========================================================================
* モディファイア
========================================================================== */
/* SPで太字
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-annotation.-sp_bold {
    font-weight: bold;
  }
}
/* 無印
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_large {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_xl {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-annotation.-sp_mt-large {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-annotation.-mt_medium {
    margin-top: 17px;
  }
}
/* ロゴ
----------------------------------------------------------------- */
.c-logo {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
}
.c-logo > img {
  display: block;
  width: 100%;
  height: auto;
}
.c-logo > span {
  white-space: nowrap;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-size: 0.75rem;
  font-weight: bold;
  margin-left: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .c-logo > span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .c-logo > span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .c-logo > span {
    font-size: 0.875rem;
  }
}
.c-logo_facility {
  width: 149px;
  height: auto;
  margin-top: 23px;
}
.c-logo_facility img {
  width: 100%;
  display: block;
}

.c-lined-full-img {
  position: relative;
  z-index: 0;
}
.c-lined-full-img::after {
  display: block;
  content: "";
  height: 28px;
}

@media print, screen and (min-width: 48em) {
  .c-lined-full-img::after {
    background-color: #fff;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 71.4285714286vw;
    height: 60px;
  }
}
.c-lined-full-img__img {
  display: block;
  width: 100%;
  height: auto;
}

.c-pin {
  isolation: isolate;
}

.c-pin__head {
  z-index: 1;
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding-top: calc(100% - 4px);
  border: 2px solid #74b708;
  border-radius: 50%;
  background-color: #fff;
}

.c-pin__body {
  z-index: 0;
  width: 2px;
  height: 100%;
  background-color: #c8cccf;
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  transform: translateX(-50%);
}

.c-pin.-last .c-pin__body {
  display: none;
}
.c-pin.-type_charm .c-pin__body {
  top: 8px;
}

.c-row.-lv1 {
  margin-top: 4px;
}
.c-row.-lv2 {
  margin-top: 8px;
}
.c-row.-lv3 {
  margin-top: 12px;
}
.c-row.-lv3.-w_250 {
  width: 250px;
}
.c-row.-lv4 {
  margin-top: 20px;
}
.c-row.-lv5 {
  margin-top: 26px;
}
.c-row.-lv6 {
  margin-top: 40px;
}
.c-row.-lv7 {
  margin-top: 84px;
}

@media print, screen and (min-width: 48em) {
  .c-row.-pc_lv1 {
    margin-top: 4px;
  }
  .c-row.-pc_lv2 {
    margin-top: 8px;
  }
  .c-row.-pc_lv3 {
    margin-top: 12px;
  }
  .c-row.-pc_lv4 {
    margin-top: 20px;
  }
  .c-row.-pc_lv5 {
    margin-top: 26px;
  }
  .c-row.-pc_lv6 {
    margin-top: 40px;
  }
  .c-row.-pc_lv7 {
    margin-top: 84px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-row.-sp_lv1 {
    margin-top: 4px;
  }
  .c-row.-sp_lv2 {
    margin-top: 8px;
  }
  .c-row.-sp_lv3 {
    margin-top: 12px;
  }
  .c-row.-sp_lv4 {
    margin-top: 20px;
  }
  .c-row.-sp_lv5 {
    margin-top: 26px;
  }
  .c-row.-sp_lv6 {
    margin-top: 40px;
  }
  .c-row.-sp_lv7 {
    margin-top: 84px;
  }
}
.c-excel {
  display: inline-block;
  width: 15px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.876%22%20height%3D%2215.506%22%20viewBox%3D%220%200%2015.876%2015.506%22%3E\a%20%20%20%20%20%20%3Cg%20id%3D%22ダウンロード%22%20transform%3D%22translate%28-14353.855%2015630.072%29%22%3E\a%20%20%20%20%20%20%3Crect%20id%3D%22長方形_873980%22%20data-name%3D%22長方形%20873980%22%20width%3D%2216.313%22%20height%3D%2214.053%22%20transform%3D%22translate%2814354.718%20-15628.511%29%22%20fill%3D%22%23fff%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20id%3D%22パス_1114900%22%20data-name%3D%22パス%201114900%22%20d%3D%22M14.059%2C14.2H11.535V12.934h2.524Zm0%2C.721H11.535v1.262h2.524Zm0-5.951H11.535v1.262h2.524Zm0%2C1.983H11.535v1.263h2.524Zm0%2C5.951H11.535v1.262h2.524ZM15.8%2C19.386c-.075.377-.523.384-.824.4H9.371v1.623H8.252L0%2C19.965V7.347L8.3%2C5.9h1.07V7.34h5.414a1.657%2C1.657%2C0%2C0%2C1%2C.9.173%2C1.657%2C1.657%2C0%2C0%2C1%2C.18.912l-.008%2C9.386a8.231%2C8.231%2C0%2C0%2C1-.06%2C1.577ZM6.611%2C16.559c-.5-1.009-1-2.012-1.5-3.021q.735-1.474%2C1.455-2.955-.614.029-1.226.075c-.3.741-.66%2C1.462-.9%2C2.228-.221-.723-.515-1.419-.784-2.124q-.6.032-1.19.069c.418.923.863%2C1.834%2C1.269%2C2.762-.478.9-.925%2C1.815-1.388%2C2.722.395.017.789.032%2C1.184.038.281-.718.631-1.408.876-2.14a21.281%2C21.281%2C0%2C0%2C0%2C.9%2C2.263Q5.961%2C16.523%2C6.611%2C16.559Zm8.4-8.362H9.371v.77h1.443v1.262H9.371v.718h1.443v1.266H9.371v.721h1.443V14.2H9.371v.721h1.443v1.262H9.371v.72h1.443V18.16H9.371v.834H15.01Z%22%20transform%3D%22translate%2814353.855%20-15635.972%29%22%20fill%3D%22%23618e4d%22%2F%3E\a%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%3C%2Fsvg%3E");
}

.p-banner {
  display: flex;
  max-width: 690px;
}

.p-banner__title {
  position: relative;
  background-color: #ead145;
  font-weight: bold;
  display: flex;
  align-items: center;
}
.p-banner__title::after {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  top: 0;
  background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, #ead145 50.5%) no-repeat top left/100% 50%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #ead145 50.5%) no-repeat bottom right/100% 50%;
}

@media only screen and (max-width: 47.9375em) {
  .p-banner__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-banner__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-banner__title {
    line-height: 1.5;
    font-size: 0.9375rem;
    padding-left: 16px;
    padding-right: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-banner__title {
    font-size: 1.25rem;
    padding-left: 20px;
    padding-right: 10px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-banner__title::after {
    right: -14px;
    width: 12px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-banner__title::after {
    right: -18px;
    width: 16px;
  }
}
.p-banner__text {
  line-height: 1.4;
  border: 2px solid #ead145;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 47.9375em) {
  .p-banner__text {
    font-size: 0.75rem;
    padding-left: 30px;
    padding-right: 18px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-banner__text {
    padding-left: 34px;
    padding-right: 28px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 0.875rem;
  }
}
/* グロナビのメインメニュー
----------------------------------------------------------------- */
.p-main-menu {
  padding-right: 4.6875%;
  padding-left: 4.6875%;
}

@media print, screen and (max-width: 69.6875em) {
  .p-main-menu {
    padding-top: 50px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu {
    height: 100%;
    display: flex;
    position: static;
    padding-top: 3px;
    padding-right: 0;
    padding-left: 0;
  }
}
@media screen and (max-width: 1420px) {
  .p-main-menu {
    padding-top: 6px;
  }
}
input:checked + label + .p-main-menu {
  transition: 0.2s ease;
  transform: translateX(0);
}

.p-main-menu .c-arrow,
.p-main-menu .c-toggle {
  width: 16px;
  height: 16px;
}

.p-main-menu__item {
  border-bottom: 1px solid #dcdfe0;
  white-space: nowrap;
}
.p-main-menu__item:first-child {
  padding-left: 0;
}
.p-main-menu__item > button {
  padding: 0;
  margin: 0;
  background-color: transparent;
  border: none;
}
.p-main-menu__item > a,
.p-main-menu__item > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.875rem;
  font-weight: bold;
  color: #1a1a1a;
  line-height: 1.75;
  height: 100%;
}
.p-main-menu__item.-dropdown > button {
  position: relative;
}
.p-main-menu__item.-dropdown > button span:after {
  content: "";
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  top: calc(50% - 5px);
  left: calc(50% - 4px);
  border-color: #fff;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  left: auto;
  right: 2px;
  transition: transform 0.2s;
}
.p-main-menu__item.-dropdown.is-active > button span:after {
  content: "";
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-width: 2px 0 0 2px;
  transform: rotate(45deg);
  top: calc(50% - 5px);
  left: calc(50% - 4px);
  border-color: #fff;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  left: auto;
  right: 2px;
}

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item {
    position: relative;
    border-bottom: none;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item a,
  .p-main-menu__item button {
    padding-right: 3px;
    padding-left: 3px;
  }
}
@media screen and (min-width: 1136px) {
  .p-main-menu__item a,
  .p-main-menu__item button {
    padding-right: 5px;
    padding-left: 5px;
  }
}
@media screen and (min-width: 1420px) {
  .p-main-menu__item a,
  .p-main-menu__item button {
    padding-right: 9px;
    padding-left: 9px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    transition: color 0s;
    color: #fff;
  }
}
@media screen and (max-width: 1120px) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-size: 0.6875rem;
  }
}
@media screen and (min-width: 1121px) and (max-width: 1420px) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-size: 0.6875rem;
  }
}
@media screen and (min-width: 1421px) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-size: 0.875rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-menu__item > a,
  .p-main-menu__item > button {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item > a:hover,
  .p-main-menu__item > button:hover {
    color: #8ac9c4;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .browser-is-safari .p-main-menu__item > a,
  .browser-is-safari .p-main-menu__item > button {
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 75em) {
  .browser-is-safari .p-main-menu__item > a,
  .browser-is-safari .p-main-menu__item > button {
    font-size: 0.6875rem;
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__item.-dropdown > button {
    padding-left: 0;
    width: 100%;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item.-dropdown > button {
    padding-right: 15px;
    padding-left: 9px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-main-menu__item.-dropdown > button {
    padding-right: 24px;
    padding-left: 9px;
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__item.-dropdown > button span {
    padding-right: 18px;
    position: relative;
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__item.-dropdown > button span:after {
    border-color: #1a1a1a;
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__item.-dropdown.is-active > button span:after {
    border-color: #1a1a1a;
  }
}
.p-main-menu__toggle-area {
  box-sizing: border-box;
  height: auto;
}
.p-main-menu__toggle-area.is-animation {
  transition: height 0.2s ease;
}

@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__toggle-area {
    overflow: hidden;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    z-index: -100000;
    position: absolute;
    top: calc(100% - 10px);
    left: 5px;
    transform: translate(0, -10px);
    box-shadow: 0 0 0 0 rgba(61, 99, 120, 0.1);
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  }
}
@media print, screen and (min-width: 75em) {
  .p-main-menu__toggle-area {
    left: 9px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__item.-active .p-main-menu__toggle-area,
  .p-main-menu__toggle-area:hover {
    visibility: visible;
    opacity: 1;
    transform: translate(0, 0);
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 6px 5px 6px;
    border-color: transparent transparent #1a1a1a transparent;
    top: -5px;
    left: 20px;
    transform: translate(0, 0);
  }
}
@media print, screen and (max-width: 69.6875em) {
  .p-main-menu__toggle-area ul {
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul {
    background-color: #2d2d2d;
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-menu__toggle-area ul li a {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-menu__toggle-area ul li a {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul li a {
    display: block;
    white-space: nowrap;
    padding-top: 7px;
    padding-bottom: 6px;
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__toggle-area ul li a:hover {
    background-color: #575757;
  }
}
.p-main-menu__child.-lv1 {
  color: #fff;
}

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu__child.-lv1 a {
    color: #fff;
    width: 188px;
    text-align: right;
    font-size: 1.5rem;
  }
}
/* SP・TB時に表示するメニューの開閉ボタン
----------------------------------------------------------------- */
.p-main-menu-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: 60px;
  height: 60px;
  padding-top: 15px;
  padding-right: 14px;
  padding-bottom: 8px;
  padding-left: 14px;
  box-sizing: border-box;
  background-color: #1a1a1a;
  position: fixed;
  bottom: 40px;
  right: 0;
  z-index: 60000;
  border-radius: 10px 0 0 10px;
  box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15);
}
.p-main-menu-button:focus {
  outline: none;
}

@media print, screen and (min-width: 69.6875em) {
  .p-main-menu-button {
    display: none;
  }
}
.p-main-menu-button__icon {
  margin-right: auto;
  margin-left: auto;
}

.p-main-menu-button__text::before {
  font-size: 0.625rem;
  white-space: nowrap;
  font-weight: bold;
  color: #fff;
  text-align: center;
  content: "メニュー";
}

@media only screen and (max-width: 47.9375em) {
  .p-main-menu-button__text::before {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-menu-button__text::before {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-main-menu-button.-active .p-main-menu-button__text::before {
  content: "閉じる";
}

.p-main-menu-button__text.-en::before {
  content: "MENU";
}

.p-main-menu-button.-active .p-main-menu-button__text.-en::before {
  content: "CLOSE";
}

.p-cta-menu {
  display: flex;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  flex-direction: column-reverse;
}

@media print, screen and (min-width: 48em) {
  .p-cta-menu {
    margin-top: 20px;
    flex-direction: row;
    align-items: center;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-menu {
    padding-bottom: 50vh;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-cta-menu {
    padding-top: 13px;
    padding-right: 0;
    padding-bottom: 13px;
    padding-left: 20px;
    margin-top: 0;
  }
}
@media screen and (max-width: 1420px) {
  .p-cta-menu {
    padding-top: 15px;
  }
}
@media screen and (min-width: 1420px) {
  .p-cta-menu {
    margin-top: 0;
    margin-left: 1px;
  }
}
.p-cta-menu__form {
  margin-top: 20px;
}
.p-cta-menu__form > a {
  height: 48px;
}
.p-cta-menu__form .c-button.-small > span {
  white-space: nowrap;
}

@media print, screen and (min-width: 69.6875em) {
  .p-cta-menu__form > a {
    height: auto;
  }
}
@media print, screen and (min-width: 48em) {
  .p-cta-menu__form {
    width: calc(50% - 20px);
    margin-top: 0px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-cta-menu__form {
    width: 85px;
  }
}
@media screen and (min-width: 1136px) {
  .p-cta-menu__form {
    width: 96px;
  }
}
@media screen and (min-width: 1421px) {
  .p-cta-menu__form {
    width: 120px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-cta-menu__form .c-button.-small {
    padding-right: 8px;
    padding-left: 8px;
  }
}
@media screen and (min-width: 1420px) {
  .p-cta-menu__form .c-button.-small {
    padding-right: 11px;
    padding-left: 11px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-cta-menu__form .c-button.-small > span {
    font-size: 0.625rem;
  }
}
@media screen and (min-width: 1420px) {
  .p-cta-menu__form .c-button.-small > span {
    font-size: 0.6875rem;
  }
}
.p-cta-block:not(.-detail) {
  background-color: rgba(26, 30, 35, 0.88);
  color: #fff;
  position: relative;
}
.p-cta-block.-detail .p-cta-block__content {
  background-color: #f3f6f6;
}

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block:not(.-detail) {
    padding-top: 40px;
    padding-right: 4.6875%;
    padding-bottom: 40px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block:not(.-detail) {
    overflow: hidden;
    padding-top: 56px;
    padding-right: 100px;
    padding-bottom: 93px;
    padding-left: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block:not(.-detail):after {
    font-family: Times New Roman, sans-serif;
    content: "Contact";
    position: absolute;
    font-size: 9.375rem;
    top: -84px;
    left: -5px;
    font-weight: normal;
    color: #2a2d32;
    z-index: 0;
    font-feature-settings: "palt";
    letter-spacing: -5px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-cta-block__content {
    padding-top: 20px;
    padding-right: 4.6875%;
    padding-bottom: 20px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__content {
    padding-top: 56px;
    padding-right: 30px;
    padding-bottom: 52px;
    padding-left: 50px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-contact {
    padding-right: 50px;
    border-right: 1px solid #c8cccf;
    width: 64%;
  }
}
.browser-is-ie .p-cta-block.-detail .p-cta-block__item.-contact, .browser-is-ie .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__desc {
  white-space: wrap;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-document {
    padding-left: 50px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__desc {
    width: 250px;
  }
}
.p-cta-block.-detail .c-heading-cta {
  font-size: 1.375rem;
  color: #333;
}
.p-cta-block.-detail .p-cta-block__desc {
  font-weight: normal;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__desc {
    margin-top: 15px;
  }
}
.browser-is-ie .p-cta-block.-detail .p-cta-block__desc {
  width: 450px;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__desc.-full {
    margin-top: 34px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-top: 25px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__action {
    margin-left: -24px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__action .p-cta-block__button {
    margin-top: 20px;
  }
}
@media screen and (min-width: 1350px) {
  .p-cta-block.-detail .p-cta-block__action .p-cta-block__button {
    margin-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__item.-contact .p-cta-block__action, .p-cta-block.-detail .p-cta-block__item.-document .p-cta-block__action {
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-cta-block__button {
    max-width: 250px;
    margin-top: 0;
    margin-left: 24px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-cta-block__button > .c-button {
    width: 60%;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-cta-block__button > .c-button {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-tel-mod {
    margin-left: 24px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-tel-mod::before {
    top: 0.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-tel-mod::before {
    top: 0.2em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-tel-mod.-en .p-tel-mod__number {
    font-size: 2.125rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block.-detail .p-tel-mod.-en::before {
    top: 0.5em;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block.-detail .p-tel-mod__number {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block__content {
    padding-top: 18px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-cta-block__content {
    max-width: 1200px;
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: 40px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__content-inner {
    display: flex;
    justify-content: space-between;
  }
}
.p-cta-block__item {
  box-sizing: border-box;
}
.p-cta-block__item.-document {
  margin-top: 24px;
}
.p-cta-block__item .c-heading-cta {
  color: #74b708;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block__item {
    box-sizing: border-box;
    width: 100%;
    position: relative;
    z-index: 1;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block__item.-contact {
    padding-bottom: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__item.-contact {
    flex: 1;
    width: 100%;
    max-width: 640px;
  }
}
@media print, screen and (min-width: 64em) {
  .browser-is-ie .p-cta-block__item.-contact {
    flex: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__item.-document {
    position: relative;
    width: 100%;
    max-width: 320px;
    margin-top: 0;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1355px) {
  .p-cta-block__item.-document {
    width: 50%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block__item .c-heading-cta {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__item .c-heading-cta {
    font-size: 1.125rem;
  }
}
.p-cta-block__desc {
  /* PC折り返しなし */
}
.p-cta-block__desc.-flex .p-cta-block__link {
  color: #fff;
}

@media print, screen and (max-width: 63.9375em) {
  .p-cta-block__desc {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__desc {
    font-weight: normal;
    width: 100%;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__desc.-mt_26 {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__desc.-pc_nowrap {
    white-space: nowrap;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__desc.-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1355px) {
  .p-cta-block__desc.-flex {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .p-cta-block__desc.-flex .p-cta-block__link {
    flex-shrink: 0;
  }
  .p-cta-block__desc.-flex .p-cta-block__link:hover {
    color: #8ac9c4;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__action {
    display: flex;
    align-items: center;
    margin-top: 10px;
    margin-left: -28px;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1355px) {
  .p-cta-block__action {
    display: block;
  }
}
.p-cta-block__item.-contact .p-cta-block__action {
  margin-top: 36px;
}

.p-cta-block__button {
  margin-top: 20px;
}
.p-cta-block__button .c-button .c-arrow {
  top: -1px;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block__button {
    width: 320px;
    box-sizing: border-box;
    margin-top: 20px;
    margin-left: 28px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-cta-block__button .c-button {
    width: 40%;
    margin: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-cta-block__button .c-button {
    width: 100%;
  }
}
.browser-is-ie .p-cta-block__button {
  width: auto;
}

@media print, screen and (min-width: 64em) {
  .p-cta-block__button.-mt_l {
    margin-top: 20px;
  }
}
.p-cta-block__tel {
  margin-top: 16px;
  line-height: 1;
  padding-left: 27px;
  position: relative;
}
.p-cta-block__tel:before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 17px;
  height: 17px;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%231a1a1a%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E");
}

@media print, screen and (min-width: 64em) {
  .p-cta-block__tel {
    padding-left: 38px;
    margin-top: 20px;
    margin-left: 28px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__tel:before {
    width: 24px;
    height: 24px;
    top: 0.9em;
  }
}
.p-cta-block__number {
  font-family: Times New Roman, sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  /* -（ハイフン） */
}

@media print, screen and (min-width: 64em) {
  .p-cta-block__number {
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__number > span {
    position: relative;
    top: -2px;
  }
}
.p-cta-block__hours {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 0.75rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-cta-block__hours {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-cta-block__hours {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block__hours {
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-detail .p-contact-box-2 .p-contact-box__desc {
    margin-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-cta-block.-full .p-cta-block__item.-contact {
    max-width: 780px;
    padding-right: 100px;
    border-right: 1px solid #212121;
  }
  .p-cta-block.-full .p-cta-block__item.-contact .p-cta-block__action {
    margin-top: 10px;
    justify-content: space-between;
  }
  .browser-is-ie .p-cta-block.-full .p-cta-block__item.-contact {
    width: 500px;
  }
  .p-cta-block.-full .p-cta-block__item.-document {
    max-width: 457px;
    padding-left: 60px;
  }
  .browser-is-ie .p-cta-block.-full .p-cta-block__item.-document {
    max-width: 500px;
  }
}
/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-home-block__wrap {
  background-color: #1a1a1a;
  position: relative;
  z-index: 0;
}

@media print, screen and (min-width: 64em) {
  .p-home-block {
    position: relative;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block:last-of-type .p-home-block__box {
    padding-bottom: 46px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-mt_1 {
    margin-top: 90px;
  }
}
.p-home-block.-overflow_inherit {
  overflow: inherit;
}

.p-home-block__box {
  clear: both;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__box {
    padding-top: 16px;
    padding-right: 4.6875%;
    padding-bottom: 0px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__box {
    position: relative;
    z-index: 10;
    padding-top: 65px;
    padding-bottom: 65px;
    width: 75vw;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__box.-pb_sp {
    padding-bottom: 32px;
  }
}
.p-home-block__name {
  position: relative;
  z-index: 1;
  color: #74b708;
}
.p-home-block__name span.-ja {
  display: block;
  font-weight: bold;
  font-size: 1.125rem;
}
.p-home-block__name span.-en {
  display: block;
  font-family: "Prata", serif;
  font-size: 1.125rem;
  line-height: 1;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__name {
    line-height: 1.5;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__name span.-ja {
    font-size: 1.125rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__name span.-en {
    font-size: 0.9375rem;
  }
}
.p-home-block__title {
  margin-top: 1px;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  position: relative;
  z-index: 400;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__title {
    font-size: 1.25rem;
    line-height: 1.5;
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title {
    font-size: 1.75rem;
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__title br {
    display: none;
  }
}
@media screen and (max-width: 1199px) {
  .p-home-block__title br {
    display: none;
  }
}
@media screen and (min-width: 1300px) {
  .p-home-block__title br {
    display: block;
  }
}
.p-home-block__link {
  display: inline-block;
  font-weight: bold;
  font-size: 1rem;
}
.p-home-block__link > i {
  display: inline-block;
  margin-right: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__link {
    width: 100%;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__link {
    padding-left: 100px;
    margin-top: 15px;
  }
}
.p-home-block__half2-text .p-home-block__link {
  margin-top: 18px;
}

@media print, screen and (min-width: 64em) {
  .p-home-block__link.-button_flex {
    display: flex;
    width: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__link.-button_flex .p-home-block__button {
    margin-right: 10px;
  }
}
.p-home-block__subtitle {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center;
}
.p-home-block__subtitle + .c-image {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__subtitle {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__subtitle {
    font-size: 1rem;
  }
}
.p-home-block__lead {
  margin-top: 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__lead {
    line-height: 1.625;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__lead {
    font-size: 1.125rem;
  }
}
.p-home-block__visual {
  display: block;
}
.p-home-block__visual img {
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__visual {
    margin-top: 46px;
    position: relative;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__visual {
    position: relative;
    z-index: 20;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__visual img {
    width: 75vw;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__visual img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__visual.-mt_1 {
    margin-top: 100px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__visual.-mt_sp_0 {
    margin-top: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__visual::after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__visual::after {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    height: 50%;
    background-color: #f3f6f6;
    width: 100%;
    top: 50%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__sec {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__sec {
    margin-top: 48px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__sec.-mt_0 {
    margin-top: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__sec.-mt_0 {
    margin-top: 48px;
  }
}
.p-home-block__panel {
  position: relative;
  display: flex;
  justify-content: center;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__panel {
    padding-top: 38px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__panel {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
.p-home-block__button {
  margin-right: auto;
  margin-left: auto;
}
.p-home-block__button.-left {
  margin-right: 0;
  margin-left: 0;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__button {
    margin-top: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__button {
    width: 250px;
    margin-top: 64px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__button + .p-home-block__button {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__button.-measures {
    width: 400px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__button.-mt_l-sp {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block.-support .p-home-block__button {
    margin-top: 40px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__name {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__name {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title,
  .p-home-block__lead {
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title,
  .p-home-block__lead {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title.-center,
  .p-home-block__lead.-center {
    text-align: center;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__title br,
  .p-home-block__lead br {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title br,
  .p-home-block__lead br {
    display: block;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__title br.-pc,
  .p-home-block__lead br.-pc {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__title br.-pc,
  .p-home-block__lead br.-pc {
    display: block;
  }
}
.p-home-block__bg-text {
  font-family: "Prata", serif;
  position: absolute;
  font-weight: normal;
  line-height: 0.65;
  font-size: 18.75rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  color: #000;
  z-index: -1;
  user-select: none;
}

.p-home-block__bg {
  position: absolute;
  background-color: #f3f6f6;
  display: block;
  content: "";
  z-index: -1;
  height: 100%;
  width: 100%;
  top: -1px;
  left: 0;
}
.p-home-block__bg .p-home-block__bg-text {
  font-size: 9vw;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  color: #c5d9d2;
  bottom: 0px;
  right: 0px;
  white-space: nowrap;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__bg {
    display: none;
  }
}
@media screen and (min-width: 1024) and (max-width: 1390px) {
  .p-home-block__bg .p-home-block__bg-text {
    font-size: 7.5rem;
  }
}
.browser-is-ie .p-home-block__bg .p-home-block__bg-text {
  width: 65vw;
}

.p-home-block__bg.-overflow_inherit {
  overflow: inherit;
}
.p-home-block__bg.-design .p-home-block__bg-text {
  bottom: -46px;
}

.p-home-block.-feature {
  position: relative;
}
.p-home-block.-feature::after {
  display: none;
}
.p-home-block.-feature .p-home-block__bg-text {
  right: -13px;
  bottom: -47px;
}
.p-home-block.-location .p-home-block__bg-text > img {
  width: 33.31vw;
  vertical-align: bottom;
  position: relative;
  bottom: -0.05vw;
}
.p-home-block.-near_the_station .p-home-block__bg-text > img {
  width: 59.5vw;
  vertical-align: bottom;
  position: relative;
  bottom: -0.05vw;
  right: -2px;
}
.p-home-block.-space_design .p-home-block__bg-text > img {
  width: 51.31vw;
  vertical-align: bottom;
  position: relative;
  bottom: -2vw;
}
.p-home-block.-presentation .p-home-block__bg-text > img {
  width: 46.375vw;
  vertical-align: bottom;
  position: relative;
  bottom: -0.05vw;
  right: -2px;
}
.p-home-block.-lounge .p-home-block__bg-text > img {
  width: 28.625vw;
  vertical-align: bottom;
  position: relative;
  bottom: -2vw;
}
.p-home-block.-fill {
  background-color: #f3f6f6;
}
.p-home-block.-right {
  position: relative;
}
.p-home-block.-right .p-home-block__visual::after {
  left: 0%;
  width: 75vw;
}
.p-home-block.-left {
  position: relative;
}
.p-home-block.-left .p-home-block__visual::after {
  right: 0;
  width: 75vw;
}
.p-home-block.-half2 {
  background-color: #fff;
}
.p-home-block.-half2 .p-home-block__box {
  box-sizing: border-box;
  width: 100%;
  padding-top: 0;
  padding-bottom: 118px;
}

@media print, screen and (min-width: 64em) {
  .p-home-block.-feature {
    padding-top: 128px;
    padding-bottom: 95px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-right {
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-right .p-home-block__visual {
    top: 0;
    right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-left {
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-left .p-home-block__visual {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-left .p-home-block__box {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-left .p-home-block__box .p-home-block__name,
  .p-home-block.-left .p-home-block__box .p-home-block__title,
  .p-home-block.-left .p-home-block__box .p-home-block__lead {
    width: 58vw;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-left .p-home-block__box .p-home-block__bg {
    width: 75vw;
    left: auto;
    right: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-half2 .p-home-block__box {
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__half2-inner {
    display: flex;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__half2-item {
    width: 50%;
  }
}
.p-home-block__half2-img {
  width: 100%;
}
.p-home-block__half2-img > img {
  width: 100%;
  vertical-align: bottom;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__half2-text {
    padding-top: 16px;
    padding-right: 4.6875%;
    padding-bottom: 33px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__half2-text {
    padding-top: 35px;
  }
}
.p-home-block__logo-list {
  display: grid;
  -ms-grid-rows: auto 54px 1fr;
  -ms-grid-columns: 25% 0 25% 0 25% 0 25%;
  grid-template: "logo1 logo2 logo3 logo4" auto "logo5 logo6 logo7 logo8" 1fr/25% 25% 25% 25%;
  gap: 54px 0;
}
.p-home-block__logo-list li {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-home-block__logo-list li:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: logo1;
}
.p-home-block__logo-list li:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: logo2;
}
.p-home-block__logo-list li:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  grid-area: logo3;
}
.p-home-block__logo-list li:nth-child(4) {
  -ms-grid-row: 1;
  -ms-grid-column: 7;
  grid-area: logo4;
}
.p-home-block__logo-list li:nth-child(5) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: logo5;
}
.p-home-block__logo-list li:nth-child(6) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: logo6;
}
.p-home-block__logo-list li:nth-child(7) {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
  grid-area: logo7;
}
.p-home-block__logo-list li:nth-child(8) {
  -ms-grid-row: 3;
  -ms-grid-column: 7;
  grid-area: logo8;
}
.p-home-block__logo-list li img {
  max-width: 100px;
  width: 100%;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__logo-list {
    -ms-grid-rows: auto 27px 1fr 27px 1fr;
    -ms-grid-columns: 33% 0 33% 0 33%;
    grid-template: "logo1 logo2 logo3" auto "logo4 logo5 logo6" 1fr "logo7 logo8 logo9" 1fr/33% 33% 33%;
    gap: 27px 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__logo-list li:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-home-block__logo-list li:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-home-block__logo-list li:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .p-home-block__logo-list li:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .p-home-block__logo-list li:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .p-home-block__logo-list li:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  .p-home-block__logo-list li:nth-child(7) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .p-home-block__logo-list li:nth-child(8) {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
}
.p-home-block__sentence {
  margin-top: 30px;
}
.p-home-block__sentence:first-child {
  margin-top: 0;
}

/* サービス以下
----------------------------------------------------------------- */
.p-home-block__inner {
  box-sizing: border-box;
  max-width: 1200px;
  box-sizing: border-box;
  margin-right: 100px;
  margin-left: 100px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__inner {
    padding-top: 58px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    padding-bottom: 40px;
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block__inner {
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__name.-center {
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-service {
    padding-top: 110px;
    padding-bottom: 120px;
  }
}
.p-home-block.-service .p-home-block__title {
  color: #1a1a1a;
  position: relative;
  z-index: 1;
}
.p-home-block.-example {
  z-index: 0;
}
.p-home-block.-example .p-home-block__title {
  color: #1a1a1a;
}
.p-home-block.-redevelopment .p-home-block__name {
  text-align: left;
}
.p-home-block.-redevelopment .p-home-block__title {
  position: relative;
  z-index: 1;
  color: #1a1a1a;
  text-align: left;
}
.p-home-block.-redevelopment .c-image > img {
  width: 100%;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-service .p-home-block__title {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-service .p-home-block__title {
    margin-top: 6px;
    text-align: center;
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-example {
    padding-top: 110px;
    padding-bottom: 118px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-example .p-home-block__inner {
    padding-top: 48px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-example .p-home-block__title {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-example .p-home-block__title {
    margin-top: 6px;
    text-align: center;
    font-size: 2.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-example .p-home-block__title:after {
    content: "";
    height: 170px;
    width: 466px;
    color: #c5d9d2;
    display: block;
    position: absolute;
    z-index: -1;
    background-image: url("/img/bg_case.svg");
    background-repeat: no-repeat;
    padding-top: 0;
    top: 56px;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
  }
  .browser-is-ie .p-home-block.-example .p-home-block__title:after {
    top: 0;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block.-example .p-home-block__title:after {
    font-size: 11.875rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-example .p-home-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block.-redevelopment {
    padding-bottom: 120px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment {
    padding-bottom: 230px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block.-redevelopment {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block.-redevelopment .p-home-block__inner {
    max-width: 1400px;
    position: relative;
    padding-top: 120px;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 100em) {
  .p-home-block.-redevelopment .p-home-block__inner {
    max-width: 1400px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column {
    margin-left: -5.5%;
    align-items: center;
    justify-content: space-between;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item.-w_400px {
    padding-top: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item {
    margin-left: 8%;
    position: relative;
    z-index: 10;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item {
    margin-left: 5.5%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item.-support-right {
    flex: 0 1 800px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column + .c-column {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column + .c-column {
    margin-top: 120px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item + .c-column__item {
    margin-top: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item.-sp_side {
    flex: 0 1 auto;
    width: 48%;
    margin-right: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column .c-column__item.-sp_side {
    box-sizing: border-box;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column.-sp_reverse {
    justify-content: space-between;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column.-sp_reverse:nth-child(odd) .c-column__item:nth-child(2) {
    flex: 0 1 auto;
    width: 48%;
    margin-right: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column.-sp_reverse:nth-child(odd) .c-column__item:nth-child(2) {
    width: 100%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column.-sp_reverse:nth-child(even) .c-column__item:nth-child(2) {
    flex: 0 1 auto;
    width: 48%;
    margin-right: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block.-redevelopment .p-home-block__inner .c-column.-sp_reverse:nth-child(even) .c-column__item:nth-child(2) {
    width: 100%;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block.-redevelopment .p-home-block__name {
    margin-top: 17px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__name {
    padding: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__name:after {
    content: "";
    width: 40vw;
    max-width: 636px;
    padding-top: 250px;
    background-image: url("/img/bg_redevelopment.svg");
    background-repeat: no-repeat;
    background-size: contain;
    color: #f0f5f3;
    display: block;
    position: absolute;
    z-index: -1;
    font-size: 11.75vw;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    top: -90px;
    left: -11px;
    line-height: 1;
    font-weight: normal;
    font-size: 10rem;
  }
}
@media print, screen and (min-width: 100em) {
  .p-home-block.-redevelopment .p-home-block__name:after {
    width: 636px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__name:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__name.-support:after {
    content: "";
    padding-top: 160px;
    width: 35.75vw;
    background-image: url("/img/bg_support.svg");
    background-repeat: no-repeat;
    background-size: contain;
    left: auto;
    left: 0;
    top: -20px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block.-redevelopment .p-home-block__name.-support:after {
    max-width: 541px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__title {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__title {
    font-size: 1.75rem;
    padding: 0;
    line-height: 1.45;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block.-redevelopment .p-home-block__title {
    font-size: 2.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__sec {
    margin-top: 34px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-redevelopment .p-home-block__sec.-mt-large {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-redevelopment .p-home-block__sec.-mt-large {
    margin-top: 60px;
  }
}
.p-home-block__title.-case br {
  display: none;
}

@media screen and (min-width: 1250px) {
  .p-home-block__title.-case br {
    display: block;
  }
}
.p-home-block.-news {
  background-color: #fff;
}
.p-home-block.-news .p-home-block__box {
  padding-top: 64px;
  padding-bottom: 0;
  width: 100%;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-news .p-home-block__box {
    padding-top: 30px;
    box-sizing: border-box;
  }
}
.p-home-block__news-inner {
  background-color: #f3f6f6;
  width: 100%;
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-inner {
    box-sizing: border-box;
    padding-top: 20px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 16px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-inner {
    padding-top: 30px;
    padding-bottom: 55px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-text {
    padding-top: 16px;
    padding-bottom: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-text {
    margin-right: auto;
    padding-top: 21px;
    padding-right: 25px;
    padding-bottom: 20px;
    padding-left: 25px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-home-block__news-text {
    max-width: 1400px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-text .c-link {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__news-text .c-link {
    font-size: 1.125rem;
  }
}
.p-home-block__news-text .c-link.-no-link {
  pointer-events: none;
}
.p-home-block__news-text a:hover {
  color: #74b708;
}
.p-home-block__news-text.-top_30 {
  margin-top: 30px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-sentence {
    margin-top: 11px;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-sentence {
    margin-top: 14px;
    line-height: 1.5;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-title-block {
    padding-top: 0px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__news-title-block {
    padding-top: 22px;
    padding-bottom: 24px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-title-block {
    padding-top: 52px;
    padding-bottom: 34px;
  }
}
.p-home-block__news-title-block.-top {
  max-width: 960px;
  padding-top: 21px;
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 20px;
  margin-right: auto;
  margin-left: auto;
}
.p-home-block__news-title-block.-top .p-home-block__news-title {
  text-align: left;
  color: #000;
  margin-top: 12px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-title-block.-top {
    padding: 0;
    margin-bottom: 26px;
  }
}
.p-home-block__news-title {
  color: #74b708;
  font-weight: bold;
  text-align: center;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-title {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__news-title {
    font-size: 1.25rem;
  }
}
.p-home-block__news-img {
  display: block;
  max-width: 960px;
  background: #fff;
  box-sizing: border-box;
  transition: all 0.2s ease;
  position: relative;
}
.p-home-block__news-img img {
  transition: all 0.2s ease;
  display: block;
}
.p-home-block__news-img.-gold:hover::before {
  border: #cdaa2c solid 5px;
}
.p-home-block__news-img.-skyblue:hover::before {
  border: #3fcad8 solid 5px;
}

@media print, screen and (min-width: 64em) {
  .p-home-block__news-img {
    margin: 0 auto;
    overflow: hidden;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-img img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-img img {
    height: 100%;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-img:hover {
    box-shadow: 0 0 20px rgba(5, 23, 0, 0.3);
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-img:hover img {
    transform: scale(1.02, 1.02);
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-img:hover::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: #ef753f solid 5px;
    z-index: 3;
    box-sizing: border-box;
    transition: all 0.2s ease;
    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block__news-img + .p-home-block__news-img {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-img + .p-home-block__news-img {
    margin-top: 30px;
  }
}
.p-home-block__news-youtube {
  margin-left: 25px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-youtube {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 50px;
    margin-left: 0px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-youtube iframe {
    position: absolute;
    top: -40px;
  }
}
@media print, screen and (max-width: 400px) {
  .p-home-block__news-youtube iframe {
    top: -70px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-colmun2 {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__news-colmun2 {
    display: flex;
    justify-content: space-between;
    max-width: 960px;
    margin-top: 34px;
    margin-right: auto;
    margin-left: auto;
  }
}
.p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
  display: block;
  position: relative;
}
.p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
  display: block;
  margin-top: 12px;
  transition: all 0.2s ease;
}
.p-home-block__news-colmun2 .p-home-block__news-colmun2__item.-skyblue:hover::before {
  border: #3fcad8 solid 5px;
}

@media print, screen and (min-width: 48em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
    width: calc(50% - 12px);
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item {
    height: 338px;
    overflow: hidden;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover {
    box-shadow: 0 0 20px rgba(5, 23, 0, 0.3);
  }
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover img {
    transform: scale(1.02, 1.02);
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item:hover::before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: #ef753f solid 5px;
    z-index: 3;
    box-sizing: border-box;
    transition: all 0.2s ease;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
    margin-right: 12px;
    width: 100%;
    height: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block__news-colmun2 .p-home-block__news-colmun2__item img {
    margin-top: 0px;
  }
}
.p-home-block.-caption {
  width: 100%;
  background-color: #2d2d2d;
}
.p-home-block.-caption .p-home-block__box {
  width: 100%;
  padding-top: 74px;
  padding-bottom: 0;
  box-sizing: border-box;
}

.p-home-block__news-contact-block {
  max-width: 960px;
  margin-top: 36px;
  margin-right: auto;
  margin-left: auto;
}

/* ホーム > セクションごとのセンター背景文字
----------------------------------------------------------------- */
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-back_letter .p-home-block__name::before {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-back_letter .p-home-block__name::before {
    font-family: Times New Roman, sans-serif;
    color: #e5ecee;
    display: block;
    position: absolute;
    z-index: -1;
    font-size: 9.375rem;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
    font-weight: normal;
    font-feature-settings: "palt";
    letter-spacing: -4px;
    white-space: nowrap;
  }
}
/* ホーム > 部屋と料金
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-home-block.-facility .p-home-block__inner {
    padding-top: 24px;
    padding-bottom: 140px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-facility .p-home-block__name::before {
    content: "Rooms & Price";
    color: #f3f6f6;
  }
}
/* ホーム > ギャラリー
----------------------------------------------------------------- */
.p-home-block.-gallery {
  background-color: #f3f6f6;
}
.p-home-block.-access {
  background-color: #f3f6f6;
}
.p-home-block.-access.-map {
  background-color: #fff;
}

@media print, screen and (min-width: 64em) {
  .p-home-block.-gallery .p-home-block__inner {
    padding-top: 150px;
    padding-bottom: 160px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-gallery .p-home-block__name::before {
    content: "GALLERY";
  }
}
/* ホーム > サービス
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-home-block.-service .p-home-block__inner {
    padding-top: 110px;
    padding-bottom: 110px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-service .p-home-block__name::before {
    content: "Service";
    color: #f3f6f6;
  }
}
/* ホーム > アクセス
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-home-block.-access .p-home-block__inner {
    width: 900px;
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-access .p-home-block__inner:first-child {
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-access .p-home-block__inner:first-child {
    padding-top: 110px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.-access .p-home-block__inner:last-child {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-access .p-home-block__inner:last-child {
    padding-bottom: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-access .p-home-block__name::before {
    top: -10px;
    content: "ACCESS";
  }
}
/* 施設一覧にて使用 */
.p-home-block__sub-heading {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.125rem;
  color: #74b708;
}

@media print, screen and (min-width: 75em) {
  .p-home-block.-doc {
    padding-right: 100px;
    padding-left: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block.-doc .p-home-block__inner {
    padding-top: 53px;
    padding-bottom: 80px;
  }
}
.p-home-block.-doc .p-home-block__name,
.p-home-block.-doc .p-home-block__title,
.p-home-block.-doc .p-home-block__lead {
  padding: 0;
}

.p-home-panel-group {
  position: relative;
  box-shadow: 0 3px 10px 0 rgba(61, 99, 120, 0.15);
}

@media print, screen and (min-width: 64em) {
  .p-home-panel-group {
    width: 100%;
    max-width: 1200px;
  }
}
.p-home-panel {
  display: block;
  background-color: #fff;
  margin-right: auto;
  margin-left: auto;
}

.p-home-panel__content {
  grid-area: content;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-panel__content {
    padding-top: 20px;
    padding-right: 4.6875%;
    padding-bottom: 20px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__content {
    padding-top: 64px;
    padding-right: 9.375%;
    padding-bottom: 64px;
    padding-left: 9.375%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-panel__content {
    padding-top: 128px;
    padding-right: 60px;
    padding-bottom: 128px;
    padding-left: 60px;
  }
}
.p-home-panel__heading span.-en {
  position: relative;
  padding-right: 30px;
  font-family: Times New Roman, sans-serif;
  font-weight: 400;
  color: #74b708;
  line-height: 1;
}
.p-home-panel__heading span.-en:after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  width: 20px;
  height: 1px;
  right: 0;
  background-color: currentColor;
  opacity: 0.5;
}
.p-home-panel__heading span.-ja {
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-panel__heading span.-en {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-panel__heading span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__heading span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-panel__heading span.-ja {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__heading span.-ja {
    font-size: 1.625rem;
  }
}
.p-home-panel__description {
  line-height: 1.625;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-panel__description {
    margin-top: 4px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__description {
    margin-top: 32px;
    font-weight: bold;
    font-size: 1.125rem;
  }
}
@media only screen and (min-width: 48em) and (max-width: 47.9375em) {
  .p-home-panel__description {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .p-home-panel__description {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-home-panel__more {
  display: flex;
  font-weight: bold;
}
.p-home-panel__more .c-arrow {
  margin-right: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-panel__more {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__more {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-panel__more {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__more {
    margin-top: 34px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-panel__more .c-arrow {
    top: 0.4em;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__more .c-arrow {
    top: 0.3em;
  }
}
.p-home-panel__thumb {
  grid-area: thumb;
  position: relative;
}
.p-home-panel__thumb > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-panel__thumb {
    width: 100%;
    padding-top: 75%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel__thumb {
    width: 100%;
    height: 100%;
    min-height: 73%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel:nth-child(odd) {
    display: grid;
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "content thumb" 1fr/1fr 1fr;
  }
  .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-panel:nth-child(odd) {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 460px 1fr;
    grid-template: "content thumb" 1fr/460px 1fr;
  }
  .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-panel:nth-child(even) {
    display: grid;
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 1fr;
    grid-template: "thumb content" 1fr/1fr 1fr;
  }
  .p-home-panel:nth-child(even) > .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-home-panel:nth-child(even) > .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-panel:nth-child(even) {
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 1fr 460px;
    grid-template: "thumb content" 1fr/1fr 460px;
  }
  .p-home-panel:nth-child(even) > .p-home-panel__content {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .p-home-panel:nth-child(even) > .p-home-panel__thumb {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}
/* カレンダー jquery-ui datepickerのスタイル
----------------------------------------------------------------- */
.ui-datepicker {
  width: 17em;
  padding: 0.2em 0.2em 0;
  display: none;
}
.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}
.ui-datepicker .ui-datepicker-next {
  right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
  right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
  width: 45%;
}
.ui-datepicker table {
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}
.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}
.ui-datepicker td {
  border: 0;
  padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: center;
  text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

/* with multiple calendars */
.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: right;
}
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: 0.5em;
  top: 0.3em;
}

/* カスタマイズ
----------------------------------------------------------------- */
.sss-date {
  border: 1px solid #cccccc;
  padding-top: 12px;
  padding-right: 14px;
  padding-left: 16px;
  padding-bottom: 12px;
  padding-top: 15px;
  padding-bottom: 15px;
  border-radius: 4px;
  position: relative;
}
.sss-date.-focus {
  border-color: #7a9ede;
  outline: none;
}
.sss-date::after {
  content: "";
  width: 20px;
  height: 20px;
  background-color: red;
  display: block;
  position: absolute;
}

.sss-data-flex {
  display: flex;
}

.sss-date__block {
  position: relative;
}

.sss-date__icon {
  width: 16px;
  height: 16px;
  display: block;
  position: absolute;
  background-image: url("/sss-gui/img/icon_calendar.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  top: 17px;
  right: 17px;
}

.sss-date-fromto {
  margin-top: 14px;
  margin-right: 14px;
  margin-left: 14px;
}

.ui-widget {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
}
.ui-widget.ui-widget-content {
  border: 1px solid #000;
  left: 0;
  max-width: 100%;
}

.ui-widget-content {
  background-color: #f2f2f2;
  opacity: 0.95;
  color: #000;
  width: 370px;
  box-sizing: border-box;
  position: relative;
  padding-top: 10px;
  padding-right: 16px;
  padding-left: 16px;
  padding-bottom: 0px;
  border-radius: 4px;
}
.ui-widget-content:before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 6.5px 7px 6.5px;
  border-color: transparent transparent #f2f2f2 transparent;
  position: absolute;
  top: -7px;
  left: 20px;
}
.ui-widget-content:after {
  content: "";
  width: 8px;
  height: 8px;
  border: 1px solid;
  border-color: #000 #000 transparent transparent;
  transform: rotate(-45deg);
  position: absolute;
  top: -5px;
  left: 22px;
}

.ui-widget-header {
  border: none;
  color: #000;
  font-size: 0.9375rem;
  font-weight: bold;
  background: none;
}

.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
  background: none;
}

.ui-button:hover .ui-icon, .ui-button:focus .ui-icon {
  background: none;
}

.ui-widget-header .ui-icon,
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover {
  background: none;
}

/* 前へ次へボタン */
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  width: 10px;
  height: 10px;
  top: 10px;
  border-radius: 0;
}

.ui-datepicker-next {
  border-top: 2px solid #74b708;
  border-right: 2px solid #74b708;
  transform: rotate(45deg);
}
.ui-datepicker-next.ui-state-hover, .ui-datepicker-next.ui-widget-content .ui-state-hover, .ui-datepicker-next.ui-widget-header .ui-state-hover {
  border-top: 2px solid #8ac9c4;
  border-right: 2px solid #8ac9c4;
  border-left: none;
  border-bottom: none;
  transform: rotate(45deg);
  background: none;
}

/* prev */
.ui-datepicker-prev {
  border-top: 2px solid #74b708;
  border-right: 2px solid #74b708;
  transform: rotate(-135deg);
}
.ui-datepicker-prev.ui-state-hover, .ui-datepicker-prev.ui-widget-content .ui-state-hover, .ui-datepicker-prev.ui-widget-header .ui-state-hover {
  border-top: 2px solid #8ac9c4;
  border-right: 2px solid #8ac9c4;
  border-left: none;
  border-bottom: none;
  transform: rotate(-135deg);
  background: none;
}

.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}

.ui-datepicker-next.ui-datepicker-next-hover {
  right: 2px;
}

.ui-datepicker.ui-datepicker-prev-hover {
  left: 2px;
}

.ui-datepicker-prev.ui-state-disabled {
  border-top: 2px solid #6685ba;
  border-right: 2px solid #6685ba;
  cursor: default;
  pointer-events: none;
}

.ui-datepicker-title {
  font-size: 0.9375rem;
}

.ui-datepicker-calendar {
  font-size: 0.9375rem;
}
.ui-datepicker-calendar thead tr {
  border-bottom: 1px solid #000;
}
.ui-datepicker-calendar thead td {
  padding: 0;
}
.ui-datepicker-calendar tbody {
  /* todayをホバーしたときは青丸のホバーを出さない */
}
.ui-datepicker-calendar tbody tr {
  margin-top: 10px;
}
.ui-datepicker-calendar tbody td a:hover {
  transition: all 0.2s ease;
}
.ui-datepicker-calendar tbody td a:hover::before {
  content: "";
  width: 36px;
  height: 36px;
  border-radius: 50%;
  top: 0px;
  left: 50%;
  display: block;
  position: absolute;
  z-index: -1;
  transform: translateX(-50%);
}
.ui-datepicker-calendar tbody td.ui-datepicker-week-end {
  padding-right: 0;
}
.ui-datepicker-calendar tbody .ui-datepicker-today a:hover {
  transition: all 0.2s ease;
}
.ui-datepicker-calendar tbody .ui-datepicker-today a:hover::before {
  display: none;
}

.ui-datepicker td span,
.ui-datepicker td a {
  padding-right: 0px;
  padding-left: 0px;
}

/* 本日の日付
----------------------------------------------------------------- */
.ui-datepicker-today {
  background: none;
  border: none;
  position: relative;
  z-index: 1;
  color: #74b708;
  font-weight: bold;
}
.ui-datepicker-today::before {
  content: "";
  width: 36px;
  height: 36px;
  border-radius: 50%;
  top: 11px;
  left: 50%;
  display: block;
  position: absolute;
  z-index: -1;
  transform: translateX(-50%);
}
.ui-datepicker-today:hover a::before {
  display: none;
}
.ui-datepicker-today .ui-state-default,
.ui-datepicker-today .ui-widget-content .ui-state-default,
.ui-datepicker-today .ui-widget-header .ui-state-default,
.ui-datepicker-today .ui-button {
  color: #74b708;
}
.ui-datepicker-today html .ui-button.ui-state-disabled:hover, .ui-datepicker-today html .ui-button.ui-state-disabled:active {
  color: #74b708;
}

/* デフォルトの日付 */
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button {
  background: none;
  border: none;
  color: #000;
  font-size: 1rem;
  text-decoration: underline;
  position: relative;
  margin-top: 6px;
}

html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
  background: none;
  border: none;
  color: #000;
  font-size: 1rem;
  text-decoration: underline;
  position: relative;
  margin-top: 6px;
}

.ui-datepicker-today .ui-state-default,
.ui-datepicker-today .ui-widget-content .ui-state-default,
.ui-datepicker-today .ui-widget-header .ui-state-default,
.ui-datepicker-today .ui-button {
  color: #74b708;
}
.ui-datepicker-today html .ui-button.ui-state-disabled:hover, .ui-datepicker-today html .ui-button.ui-state-disabled:active {
  color: #74b708;
}

.sss-append_datepicker,
.sss-append_datepicker_from,
.sss-append_datepicker_to {
  position: relative;
}

/* 選択不可のときの色 */
.ui-datepicker-unselectable.ui-state-disabled .ui-state-default {
  color: #6685ba;
  text-decoration: none;
  pointer-events: none;
}

/* カレンダーを随時インプットエリアの下に付けるための記述 */
.ui-datepicker {
  top: 40px !important;
  left: 0 !important;
}

.ui-datepicker-trigger {
  display: none;
}

.f-calendar-group {
  position: relative;
  width: 100%;
  display: flex;
  align-items: baseline;
}

@media only screen and (max-width: 47.9375em) {
  .f-calendar.f-input-text {
    font-size: 1rem;
    transform: scale(0.8);
    padding-top: 14px;
    padding-right: 14px;
    padding-left: 14px;
    padding-bottom: 14px;
    max-width: 134px;
    outline: none;
  }
}
.p-caption {
  width: 100%;
  max-width: 1400px;
  background-color: #fff;
}
.p-caption.-border {
  background-color: #fff;
  border: 1px solid #dcdfe0;
}

@media print, screen and (min-width: 48em) {
  .p-caption {
    display: flex;
  }
}
@media print, screen and (min-width: 64em) {
  .p-caption {
    width: 100%;
  }
}
@media print, screen and (min-width: 75em) {
  .p-caption {
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 48em) {
  .p-caption.-home {
    max-width: 940px;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-caption .p-caption__text {
    font-size: 1.0625rem;
  }
}
.p-caption__lead {
  box-sizing: border-box;
}
.p-caption__lead .c-link {
  font-size: 1.125rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-caption__lead {
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-caption__lead {
    flex: 1;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 26px;
    padding-bottom: 26px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-caption__lead {
    padding-left: 30px;
    padding-right: 30px;
  }
}
.p-caption__text {
  display: block;
  margin-top: 14px;
}

@media only screen and (max-width: 47.9375em) {
  .p-caption__text {
    font-size: 0.875rem;
  }
}
/* コピーライト
----------------------------------------------------------------- */
.p-copyright {
  margin-top: 30px;
  display: block;
  color: #fff;
}
.p-copyright.-form {
  margin-top: 0;
  text-align: center;
  color: #2d2d2d;
}

@media only screen and (max-width: 47.9375em) {
  .p-copyright {
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-copyright {
    font-size: 0.75rem;
  }
}
.p-hamburger {
  display: block;
  border: none;
  z-index: 10000;
  position: relative;
  width: 20px;
  height: 12px;
  padding: 0;
  background-color: transparent;
  cursor: pointer;
}
.p-hamburger span {
  display: block;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  position: absolute;
  top: 5px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: ease all 0.2s;
}
.p-hamburger:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: ease transform 0.2s;
}
.p-hamburger:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: ease transform 0.2s;
}

@media print, screen and (min-width: 64em) {
  .p-hamburger span {
    display: none;
  }
}
.p-main-menu-button.-active .p-hamburger span {
  transform: rotate(-45deg);
}
.p-main-menu-button.-active .p-hamburger:before {
  transform: translateY(5px) rotate(-45deg);
}
.p-main-menu-button.-active .p-hamburger:after {
  transform: translateY(-5px) rotate(45deg);
}

@media print, screen and (max-width: 63.9375em) {
  .p-main-menu-button.-active .p-hamburger span {
    opacity: 0;
    background-color: #fff;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-menu-button.-active .p-hamburger:before {
    background-color: #fff;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-menu-button.-active .p-hamburger:after {
    background-color: #fff;
  }
}
/* ページトップリンク
----------------------------------------------------------------- */
.p-page-top {
  padding-right: 4.6875%;
  padding-bottom: 16px;
  padding-left: 4.6875%;
}
.p-page-top > a {
  display: flex;
  align-items: center;
}
.p-page-top > a::before {
  box-sizing: border-box;
  display: block;
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
  transform: translate(0, 100%);
  transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease;
  content: "";
}
.p-page-top > a::after {
  content: "";
  display: block;
  position: absolute;
  width: 13px;
  height: 13px;
  left: 50%;
  top: 20px;
  transform: translate(-50%) rotate(-45deg);
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  z-index: 30;
}

@media print, screen and (max-width: 63.9375em) {
  .p-page-top {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-top {
    background-color: #74b708;
    display: block;
    padding: 0;
    opacity: 0;
    position: fixed;
    bottom: 20px;
    width: 50px;
    height: 50px;
    z-index: 10;
    visibility: hidden;
    transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease;
    transform: translateY(10px);
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16);
    right: 40px;
    bottom: 20px;
    border-radius: 4px;
    overflow: hidden;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-top > a {
    display: block;
    height: 100%;
    box-sizing: border-box;
    overflow: hidden;
    width: 100%;
    height: 100%;
    padding-top: 12px;
    background-color: #74b708;
    border-radius: 4px;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-top > a:hover:before {
    transform: translate(0, 0);
    z-index: 20;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-top.is-active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
  }
}
/* パンくずリスト
----------------------------------------------------------------- */
.p-breadcrumbs {
  width: 100%;
  padding-top: 13px;
  z-index: 4;
  display: none;
}

@media print, screen and (min-width: 69.6875em) {
  .p-breadcrumbs {
    display: flex;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-breadcrumbs {
    padding-right: 0;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-breadcrumbs__inner {
    box-sizing: border-box;
    display: flex;
    overflow: hidden;
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: auto;
    margin-left: auto;
  }
}
.p-breadcrumbs__item {
  position: relative;
  font-size: 0.75rem;
  color: #2d2d2d;
  white-space: nowrap;
}
.p-breadcrumbs__item > a {
  transition: color 0.1s 0s ease;
  color: #2d2d2d;
}
.p-breadcrumbs__item br {
  display: none;
}
.p-breadcrumbs__item small {
  font-size: 0.8125rem;
  display: inline;
}
.p-breadcrumbs__item:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
}
.p-breadcrumbs__item:last-child:after {
  display: none;
}
.p-breadcrumbs__item:after {
  content: "";
  display: inline-block;
  box-sizing: border-box;
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 1px 1px 0 0;
  margin-left: 8px;
  border-color: #1a1a1a;
  transform: translate(0, 0) rotate(45deg);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  top: -0.1em;
  margin-right: 10px;
  margin-left: 5px;
}

@media print, screen and (min-width: 48em) {
  .p-breadcrumbs__item > a:hover {
    color: #8ac9c4;
    text-decoration: underline;
  }
}
.p-breadcrumbs.-on_visual {
  position: absolute;
}
.p-breadcrumbs.-on_visual .p-breadcrumbs__item {
  color: #fff;
}
.p-breadcrumbs.-on_visual .p-breadcrumbs__item > a {
  color: #fff;
}
.p-breadcrumbs.-on_visual .p-breadcrumbs__item > a:hover {
  color: #fff;
}
.p-breadcrumbs.-on_visual .p-breadcrumbs__item:after {
  border-color: #fff;
}
.p-breadcrumbs.-absolute, .p-breadcrumbs.-form {
  position: absolute;
  background-color: transparent;
}
.p-breadcrumbs.-absolute .p-breadcrumbs__item, .p-breadcrumbs.-form .p-breadcrumbs__item, .p-breadcrumbs.-absolute .p-breadcrumbs__item > a, .p-breadcrumbs.-form .p-breadcrumbs__item > a, .p-breadcrumbs.-absolute .p-breadcrumbs__item > a:hover, .p-breadcrumbs.-form .p-breadcrumbs__item > a:hover {
  color: #2d2d2d;
}
.p-breadcrumbs.-absolute .p-breadcrumbs__item:after {
  opacity: 0.5;
  border-color: #2d2d2d;
}
.p-breadcrumbs.-form {
  position: static;
}
.p-breadcrumbs.-form .p-breadcrumbs__item:after {
  opacity: 0.5;
  border-color: #2d2d2d;
}

/* カテトップページのメインビジュアル
----------------------------------------------------------------- */
.p-page-visual {
  position: relative;
}

@media print, screen and (min-width: 48em) {
  .p-page-visual {
    height: 200px;
  }
}
.p-page-visual__image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.p-page-visual__image > img {
  width: 100%;
  height: auto;
}

@media print, screen and (min-width: 48em) {
  .p-page-visual__image {
    position: absolute;
    top: calc(50% - 20px);
    left: 50%;
    height: calc(100% - 40px);
    transform: translate3d(-50%, -50%, 0);
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-visual__image > img {
    min-width: 1400px;
  }
}
.p-page-visual__inner {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1400px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
}

@media print, screen and (min-width: 48em) {
  .p-page-visual__inner {
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-visual__inner {
    padding-right: 100px;
    padding-left: 100px;
  }
}
.p-page-visual__title {
  display: inline-block;
  font-weight: bold;
  background: linear-gradient(transparent 70%, #74b708 0%);
}
.p-page-visual__title > .-disc {
  font-size: 1.125rem;
  font-weight: bold;
  padding-left: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .p-page-visual__title {
    margin-top: 24px;
    margin-right: 4.6875%;
    margin-bottom: 24px;
    margin-left: 4.6875%;
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-visual__title {
    margin-top: 140px;
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-visual__title > .-disc {
    font-size: 0.875rem;
  }
}
.p-page-visual__content {
  position: relative;
  box-sizing: border-box;
  max-width: 1200px;
  font-weight: bold;
}
.p-page-visual__content:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100%;
  background-color: #1a1a1a;
  z-index: -1;
}

@media only screen and (max-width: 47.9375em) {
  .p-page-visual__content {
    width: 100%;
    padding-top: 24px;
    padding-right: 4.6875%;
    padding-bottom: 24px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-visual__content {
    padding-top: 40px;
    padding-bottom: 40px;
    width: calc(100% - 100px);
    padding-right: 100px;
    transform: translate3d(0, 40px, 0);
  }
}
.p-select {
  display: inline-block;
  position: relative;
}
.p-select > select {
  position: relative;
  z-index: 1;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  line-height: 1.5;
  color: #2d2d2d;
  padding-top: 5px;
  padding-right: 32px;
  padding-bottom: 3px;
  padding-left: 14px;
  background: transparent;
  cursor: pointer;
  border-style: solid;
  border-radius: 4px;
  border-color: #e3e3e0;
  font-size: 0.875rem;
  font-weight: bold;
}
.p-select > select::-ms-expand {
  display: none;
}
.p-select:after {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  top: calc(50% - 5px);
  left: calc(50% - 4px);
  border-color: #2d2d2d;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  backface-visibility: hidden;
  content: "";
  left: auto;
  right: 15px;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-select,
  .c-image + .p-select,
  .p-scrollable + .p-select {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-select,
  .c-image + .p-select,
  .p-scrollable + .p-select {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-select {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-select {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-select {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-select {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-select {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-select {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-select {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-select {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-select,
  .c-heading-2-1 + .p-select {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-select,
  .c-heading-2-1 + .p-select {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-select {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-select {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-select {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-select {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-select,
  .c-list + .p-select {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-select,
  .c-list + .p-select {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-select {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-select {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-select {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-select {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-select > select {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-select > select {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-select > select {
    height: 44px;
  }
}
.success .p-select {
  background: #fff;
}

.error .p-select select {
  border-color: #f75961;
}

@media print, screen and (min-width: 48em) {
  .f-select--size_50per {
    width: 50%;
  }
}
/* レンタル備品の表
----------------------------------------------------------------- */
.p-equipment-table {
  border-collapse: collapse;
  margin-top: 30px;
  width: 100%;
  border-bottom: 1px solid #dcdfe0;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-equipment-table,
  .c-image + .p-equipment-table,
  .p-scrollable + .p-equipment-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-equipment-table,
  .c-image + .p-equipment-table,
  .p-scrollable + .p-equipment-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-equipment-table {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-equipment-table {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-equipment-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-equipment-table {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-equipment-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-equipment-table {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-equipment-table {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-equipment-table {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-equipment-table,
  .c-heading-2-1 + .p-equipment-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-equipment-table,
  .c-heading-2-1 + .p-equipment-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-equipment-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-equipment-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-equipment-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-equipment-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-equipment-table,
  .c-list + .p-equipment-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-equipment-table,
  .c-list + .p-equipment-table {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-equipment-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-equipment-table {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-equipment-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-equipment-table {
    margin-top: 14px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table {
    display: table;
  }
}
.browser-is-ie .p-equipment-table {
  flex-direction: column;
  align-items: center;
}

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__head {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__head {
    display: table-row-group;
    border-width: 1px 0 1px 0;
    border-color: #dcdfe0;
    border-style: solid;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__head .p-equipment-table__row .p-equipment-table__header:first-of-type {
    padding-left: 20px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__body {
    display: table-row-group;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-equipment-table__body .p-equipment-table__row:first-child {
    margin-top: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__body .p-equipment-table__row {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__body .p-equipment-table__row:nth-child(even) {
    background-color: #e5ecee;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__row {
    display: table-row;
  }
}
.p-equipment-table__header {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  line-height: 1;
  font-weight: bold;
}
.p-equipment-table__header span {
  display: inline-block;
  font-size: 0.5625rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-equipment-table__header {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-equipment-table__header {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__header {
    display: table-cell;
    vertical-align: middle;
    padding-top: 18px;
    padding-bottom: 16px;
  }
}
.browser-is-ie .p-equipment-table__header {
  white-space: nowrap;
}

.p-equipment-table__data {
  line-height: 1.5;
}

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data {
    display: flex;
    flex-wrap: wrap;
    font-size: 0.75rem;
    border-bottom: 1px solid #dcdfe0;
    padding-top: 9px;
    padding-bottom: 9px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data {
    box-sizing: border-box;
    display: table-cell;
    vertical-align: middle;
    padding-top: 13px;
    padding-right: 20px;
    padding-bottom: 13px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data:before {
    width: 106px;
    white-space: nowrap;
    display: block;
    font-feature-settings: "palt" 1;
    letter-spacing: 0.01em;
    font-weight: bold;
  }
}
@media only screen and (max-width: 63.9375em) and (max-width: 47.9375em) {
  .p-equipment-table__data:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) and (min-width: 48em) {
  .p-equipment-table__data:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-name {
    width: 280px;
    padding-left: 20px;
  }
}
.browser-is-ie .p-equipment-table__data.-name {
  display: block;
}

@media print, screen and (min-width: 64em) {
  .browser-is-ie .p-equipment-table__data.-name.-facility {
    width: 480px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-category {
    width: 100px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-category:before {
    content: "カテゴリ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-maker {
    display: flex;
    flex-wrap: nowrap;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-maker {
    width: 230px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-maker:before {
    content: "メーカー／仕様";
    width: 106px;
    min-width: 106px;
  }
}
.p-equipment-table__data.-maker span {
  font-size: 0.8125rem;
  display: block;
  margin-top: 4px;
}

@media only screen and (max-width: 47.9375em) {
  .p-equipment-table__data.-maker span {
    font-size: 0.75rem;
    padding-left: 80px;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-partNumber {
    width: 150px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-partNumber:before {
    content: "料金／1日・1台";
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-price {
    width: 150px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-price:before {
    content: "料金／1日";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-price.-en:before {
    content: "Pricing/day";
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-number {
    width: 140px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-number:before {
    content: "数量";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-number.-en:before {
    content: "Quantity";
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-table__data.-remarks {
    width: 110px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-table__data.-remarks:before {
    content: "備考";
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-equipment-table {
    margin-top: 5px;
  }
}
/* レンタル備品の備品名
----------------------------------------------------------------- */
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-title {
    display: flex;
    align-items: center;
  }
}
.p-equipment-title > img {
  width: 100px;
  height: auto;
}

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title > img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-title > img {
    vertical-align: top;
  }
}
.browser-is-ie .p-equipment-title > img {
  width: auto;
  height: auto;
  display: block;
  max-width: 100px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title > span {
    display: flex;
    margin-top: 9px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-equipment-title > span {
    display: inline-block;
    margin-left: 20px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title > span:before {
    display: block;
    width: 106px;
    min-width: 106px;
    content: "備品名";
    white-space: nowrap;
    font-feature-settings: "palt" 1;
    letter-spacing: 0.01em;
    font-weight: bold;
  }
}
@media only screen and (max-width: 63.9375em) and (max-width: 47.9375em) {
  .p-equipment-title > span:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) and (min-width: 48em) {
  .p-equipment-title > span:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-equipment-title.-en > span:before {
    content: "Name";
  }
}
.p-scrollable {
  overflow-x: auto;
  box-shadow: -10px 0 10px -10px rgba(61, 99, 120, 0.25) inset, 10px 0 10px -10px rgba(61, 99, 120, 0.15) inset;
  margin-top: 30px;
}

@media print, screen and (min-width: 87.5em) {
  .p-scrollable {
    box-shadow: none;
  }
}
/* カテトップページのメインビジュアル
----------------------------------------------------------------- */
.p-detail-visual {
  position: relative;
  display: flex;
  align-items: center;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
}
.p-detail-visual:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0, transparent 100%);
}

@media print, screen and (max-width: 63.9375em) {
  .p-detail-visual {
    z-index: 0;
    height: 150px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-visual {
    height: 230px;
    padding-right: 100px;
    padding-left: 100px;
  }
}
.p-detail-visual__inner {
  position: relative;
  z-index: 2;
  width: 100%;
}

@media print, screen and (min-width: 64em) {
  .p-detail-visual__inner {
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
  }
}
.p-detail-visual__title {
  display: inline-block;
  font-weight: bold;
  color: #fff;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-visual__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-visual__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-detail-visual__title {
    font-size: 1.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-visual__title {
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 75em) {
  .p-detail-visual__title.-pc-size_l {
    font-size: 2.8125rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-visual__title.-sp-size_s {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-visual__title.-pc_size_xl {
    font-size: 2.875rem;
  }
}
.p-detail-visual__sub {
  display: block;
  color: #fff;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-visual__sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-visual__sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-detail-visual__sub {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-visual__sub {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-visual__sub.-sp-size_s {
    font-size: 0.875rem;
    line-height: 1.2;
    margin-top: 5px;
  }
}
.p-detail-visual__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media print, screen and (min-width: 64em) {
  body:not(.browser-is-ie) .p-sitemap {
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 112px 60px 150px 60px 2fr;
    grid-template: "fm1-1 fm1-2 fm1-3"/112px 150px 2fr;
    gap: 60px;
  }
}
.p-sitemap a {
  color: #fff;
}

@media print, screen and (min-width: 64em) {
  .p-sitemap a:hover {
    opacity: 0.8;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap {
    display: grid;
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 4.64286vw 1fr 4.64286vw 1fr;
    grid-template: "fm2-1 fm2-2 fm2-3"/1fr 1fr 1fr;
    gap: 4.64286vw;
  }
}
@media print, screen and (min-width: 87.5em) {
  .browser-is-ie .p-sitemap {
    -ms-grid-rows: auto;
    -ms-grid-columns: 1fr 65px 1fr 65px 1fr;
    grid-template: "fm2-1 fm2-2 fm2-3"/1fr 1fr 1fr;
    gap: 65px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group > li {
    line-height: 1.25;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sitemap__group > li {
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 64em) {
  .p-sitemap__group > li {
    line-height: 1.25;
  }
}
.p-sitemap__group > li + li {
  margin-top: 8px;
}

@media print, screen and (min-width: 48em) {
  .p-sitemap__group > li + li {
    margin-top: 14px;
  }
}
.browser-is-ie .p-sitemap__group > li {
  width: 200px;
}

.p-sitemap__group.-lv1 > li > a {
  font-weight: bold;
  font-size: 0.875rem;
}
.p-sitemap__group.-lv1 > li > a > .c-blank {
  margin-right: 8px;
}
.p-sitemap__group.-lv2 > li > a {
  display: flex;
  font-size: 0.875rem;
}
.p-sitemap__group.-lv2 > li > a:before {
  margin-right: 8px;
  content: "-";
  font-size: 0.75rem;
  color: #74b708;
}

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1 > li > a {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv1 > li > a {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1 > li + li {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv1 > li + li {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(1) {
    grid-area: fm1-1;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    grid-area: fm2-1;
  }
}
@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(2) {
    grid-area: fm1-2;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    grid-area: fm2-2;
  }
}
@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(3) {
    grid-area: fm1-3;
  }
}
@media print, screen and (min-width: 64em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    grid-area: fm2-3;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
}
@media print, screen and (min-width: 87.5em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
}
@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(4) {
    grid-area: fm1-4;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(4) {
    grid-area: fm2-4;
  }
}
@media print, screen and (min-width: 48em) {
  body:not(.browser-is-ie) .p-sitemap__group.-lv1:nth-child(5) {
    grid-area: fm1-5;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-sitemap__group.-lv1:nth-child(5) {
    grid-area: fm2-5;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1 + .p-sitemap__group.-lv1 {
    margin-top: 16px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv1.-mt_l > li + li {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv1.-mt_l > li + li {
    margin-top: 34px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv2 {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sitemap__group.-lv2 {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sitemap__group.-lv2 > li > a {
    font-size: 0.6875rem;
  }
}
.p-sitemap__mini-head {
  display: block;
  color: #fff;
  font-size: 0.75rem;
}

.p-company-info__logo {
  display: block;
  width: 236px;
}
.p-company-info__logo img {
  display: block;
}
.p-company-info__logo .-text {
  position: relative;
  display: flex;
  width: 100%;
  padding-top: 25px;
  color: #fff;
  font-size: 1.03rem;
  font-weight: 600;
  align-items: center;
  font-feature-settings: "palt" 1;
}
.p-company-info__logo .-text:before {
  position: absolute;
  content: "";
  top: 16px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #fff;
}
.p-company-info__logo .-text .-big {
  margin-left: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-company-info__logo .-text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-company-info__logo .-text {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-company-info__logo .-text {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-company-info__list {
  margin-top: 28px;
  color: #fff;
  font-size: 0.75rem;
}
.p-company-info__list.-opa {
  margin-top: 48px;
}
.p-company-info__list.-opa li {
  font-size: 0.75rem;
}
.p-company-info__list li {
  color: #fff;
  font-size: 0.75rem;
}
.p-company-info__list li > a {
  color: #fff;
}

@media only screen and (max-width: 47.9375em) {
  .p-company-info__list {
    font-size: 0.75rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-company-info__list li {
    line-height: 1.8;
  }
}
@media print, screen and (min-width: 48em) {
  .p-company-info__list li {
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 64em) {
  .p-company-info__list li {
    line-height: 1.8;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-company-info__list br {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .p-company-info__list br {
    display: none;
  }
}
.p-company-info__sub {
  display: block;
  margin-bottom: 13px;
  font-weight: bold;
  font-size: 0.75rem;
  color: #fff;
}

@media only screen and (max-width: 47.9375em) {
  .p-company-info__sub {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-company-info__sub {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-info-owner {
  display: block;
}

.p-info-owner__inner {
  box-sizing: border-box;
  margin-right: auto;
  margin-left: auto;
  padding-top: 25px;
  padding-right: 4.6875%;
  padding-bottom: 20px;
  padding-left: 4.6875%;
}

@media print, screen and (min-width: 48em) {
  .p-info-owner__inner {
    display: flex;
  }
}
@media print, screen and (min-width: 64em) {
  .p-info-owner__inner {
    max-width: 1400px;
    padding-top: 25px;
    padding-right: 100px;
    padding-bottom: 25px;
    padding-left: 100px;
  }
}
.p-info-owner__head {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  align-self: center;
  font-size: 1.125rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__head {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__head {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__head {
    white-space: nowrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-info-owner__image {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__image {
    display: flex;
    align-items: center;
    position: relative;
    margin-left: 45px;
    padding-left: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-info-owner__image {
    margin-left: 90px;
    padding-left: 60px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__image:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #e1e1e0;
  }
}
.p-info-owner__image > img {
  display: block;
}

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__body {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__body {
    margin-left: 60px;
  }
}
.p-info-owner__name {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-info-owner__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__name {
    font-size: 1.125rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-info-owner__address {
    margin-top: 5px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-info-owner__address {
    font-size: 0.875rem;
  }
}
.p-info-owner:not(.-home) {
  display: none;
}

.p-page-title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 2.625rem;
}
.p-page-title.-third-detail .p-page-title__top {
  display: block;
  font-size: 1.125rem;
  color: #74b708;
}
.p-page-title.-article {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 1.875rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-page-title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-page-title {
    font-size: 1.875rem;
    padding-top: 12px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title {
    font-size: 1.25rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-page-title.-third-detail {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-title.-third-detail {
    font-size: 2.625rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title.-third-detail .p-page-title__deco {
    display: block;
    font-weight: bold;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-page-title.-third-detail .p-page-title__deco {
    font-size: 1.75rem;
    display: inline-block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title.-article {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title.-article {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title.-article {
    font-size: 2.8125rem;
  }
}
.p-contact-box {
  box-sizing: border-box;
  background-color: #f7f7f6;
  padding-top: 20px;
  padding-right: 4.6875%;
  padding-bottom: 4.6875%;
  padding-left: 20px;
}

@media print, screen and (min-width: 64em) {
  .p-contact-box {
    width: 550px;
    padding-top: 24px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 30px;
  }
}
.p-contact-box__title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.375rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-contact-box__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-contact-box__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-contact-box__desc {
  margin-top: 4px;
}

.browser-is-ie .p-contact-box__desc {
  font-weight: bold;
}

.p-contact-box__action {
  margin-top: 22px;
}

@media print, screen and (min-width: 75em) {
  .p-contact-box__action {
    display: flex;
    justify-content: space-between;
  }
}
.p-contact-box__button {
  margin-top: 20px;
}

@media print, screen and (min-width: 75em) {
  .p-contact-box__button {
    flex: 1;
    margin-top: 0;
    margin-left: 20px;
    max-width: 230px;
  }
}
.p-contact-box-2 {
  box-sizing: border-box;
  background-color: #f2f5f4;
  display: flex;
  align-items: center;
  padding-top: 20px;
  padding-right: 4.6875%;
  padding-bottom: 4.6875%;
  padding-left: 20px;
}
.p-contact-box-2 .p-contact-box__desc {
  margin-top: 4px;
  margin-right: 30px;
  width: calc(42% - 30px);
  font-weight: 600;
}

@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 {
    padding-top: 24px;
    padding-right: 30px;
    padding-bottom: 26px;
    padding-left: 30px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 {
    display: block;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 {
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 30px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box__desc {
    font-size: 1.125rem;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box__desc {
    font-size: 1rem;
    width: 100%;
    line-height: 1.5;
    padding-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box__desc {
    font-size: 1.25rem;
    margin-right: 30px;
  }
}
.browser-is-ie .p-contact-box-2 .p-contact-box__desc {
  font-weight: bold;
}

@media print, screen and (min-width: 64em) {
  .browser-is-ie .p-contact-box-2 .p-contact-box__desc {
    margin-right: 20px;
    width: 340px;
  }
}
.p-contact-box-2 .p-contact-box__desc .browser-is-edge {
  font-weight: bold;
}
.p-contact-box-2 .p-contact-box-2__inner {
  flex: 1;
  display: flex;
  align-items: center;
}
.p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
  margin-top: 20px;
  white-space: nowrap;
}
.p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
  display: flex;
  align-items: baseline;
}

@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner {
    display: block;
    padding-right: 20px;
    padding-left: 20px;
    align-items: baseline;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner {
    display: block;
    padding-right: 0;
    padding-left: 0;
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-contact-box__button {
    flex: 1;
    margin-top: 0;
    margin-left: 20px;
    max-width: 230px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
    padding-left: 20px;
    margin-top: 7px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
    margin-right: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box {
    margin-right: 30px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
    display: flex;
    align-items: baseline;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box a {
    display: block;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__number {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__number {
    font-size: 1.25rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
    font-size: 0.875rem;
    margin-left: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
    font-size: 0.625rem;
    margin-top: 6px;
    white-space: nowrap;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod.-box .p-tel-mod__hours {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .c-button {
    padding-right: 24px;
    padding-left: 24px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .c-button {
    padding-right: 24px;
    padding-left: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod {
    width: auto;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
    top: 0.5em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
    width: 14px;
    height: 14px;
    top: 0.3em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-contact-box-2 .p-contact-box-2__inner .p-tel-mod::before {
    top: 0.5em;
  }
}
.p-tel-mod {
  position: relative;
  line-height: 1;
  padding-left: 27px;
}
.p-tel-mod:before {
  content: "";
  position: absolute;
  top: 0.1em;
  left: 0;
  width: 17px;
  height: 17px;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%231a1a1a%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E");
}

@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-tel-mod,
  .c-list + .p-tel-mod {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-tel-mod,
  .c-list + .p-tel-mod {
    margin-top: 26px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod + .c-sentence,
  .p-tel-mod + .c-list {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod + .c-sentence,
  .p-tel-mod + .c-list {
    margin-top: 12px;
  }
}
.p-tel-mod__number {
  display: flex;
  font-family: futura-pt, sans-serif;
  font-weight: 500;
  /* -（ハイフン） */
}
.p-tel-mod__number > span {
  position: relative;
  top: -2px;
}

@media only screen and (max-width: 47.9375em) {
  .p-tel-mod__number > span {
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod__number > span {
    margin-right: 1px;
    margin-left: 1px;
  }
}
.p-tel-mod__hours {
  margin-top: 4px;
  letter-spacing: 0;
  font-weight: bold;
  white-space: nowrap;
}

@media only screen and (max-width: 47.9375em) {
  .p-tel-mod__hours {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod__hours {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod__hours {
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 75em) {
  .p-tel-mod__hours {
    font-size: 0.75rem;
  }
}
.p-tel-mod.-header {
  margin-top: 20px;
  margin-left: 18px;
  margin-top: 0px;
  font-size: 1.1875rem;
}
.p-tel-mod.-header::before {
  top: 2px;
}
.p-tel-mod.-header:hover a {
  color: #2d2d2d;
}
.p-tel-mod.-cta {
  margin-top: 12px;
}
.p-tel-mod.-cta:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%23fff%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E");
}
.p-tel-mod.-cta .p-tel-mod__number {
  font-size: 2.625rem;
  color: #fff;
}
.p-tel-mod.-cta .p-tel-mod__hours {
  color: #fff;
}
.p-tel-mod.-box .p-tel-mod__number {
  /* -（ハイフン） */
}
.p-tel-mod.-box .p-tel-mod__number > span {
  position: relative;
  top: -4px;
  margin-right: 3px;
  margin-left: 4px;
}
.p-tel-mod.-box .p-tel-mod__hours {
  font-size: 0.875rem;
}
.p-tel-mod.-detail .p-tel-mod__number {
  /* -（ハイフン） */
}
.p-tel-mod.-detail .p-tel-mod__number > span {
  position: relative;
  top: -5px;
  margin-right: 1px;
  margin-left: 1px;
}
.p-tel-mod.-home {
  display: flex;
  align-items: center;
}
.p-tel-mod.-home:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216.72%22%20height%3D%2216.72%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M18.8%2014.5a10.629%2010.629%200%200%201-3.279-.52.908.908%200%200%200-.938.223l-1.458%201.83a14.1%2014.1%200%200%201-6.4-6.344l1.811-1.543a.948.948%200%200%200%20.223-.946%2010.359%2010.359%200%200%201-.52-3.279.928.928%200%200%200-.92-.921H4.105C3.6%203%203%203.223%203%203.92a15.932%2015.932%200%200%200%2015.8%2015.8.975.975%200%200%200%20.92-1.1v-3.2a.928.928%200%200%200-.92-.92z%22%20transform%3D%22translate%28-3%20-3%29%22%20fill%3D%22%231a1a1a%22%20%3E%3C%2Fpath%3E\a%20%20%20%20%3C%2Fsvg%3E");
}
.p-tel-mod.-home a {
  color: #2d2d2d;
}
.p-tel-mod.-home .p-tel-mod__number {
  /* -（ハイフン） */
}
.p-tel-mod.-home .p-tel-mod__number > span {
  position: relative;
  top: -3px;
  margin-right: 1px;
  margin-left: 1px;
}
.p-tel-mod.-home .p-tel-mod__hours {
  margin-left: 5px;
}
.p-tel-mod.-contact {
  margin-top: 8px;
  padding-left: 35px;
}
.p-tel-mod.-contact::before {
  width: 21px;
  height: 21px;
}
.p-tel-mod.-contact > a {
  display: flex;
}
.p-tel-mod.-contact .p-tel-mod__number {
  font-size: 2.125rem;
  letter-spacing: -0.04em;
}
.p-tel-mod.-contact .p-tel-mod__hours {
  margin-top: auto;
  margin-bottom: 4px;
  margin-left: 8px;
  font-size: 1rem;
}
.p-tel-mod.-faq .p-tel-mod__number {
  /* -（ハイフン） */
}
.p-tel-mod.-faq .p-tel-mod__number > span {
  position: relative;
  top: -3px;
  margin-right: 1px;
  margin-left: 1px;
  font-size: 1.375rem;
}
.p-tel-mod.-faq .p-tel-mod__hours {
  margin-left: -5px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-header {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-header {
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-header {
    padding-left: 14px;
    margin-left: 10px;
  }
}
@media screen and (min-width: 1136px) {
  .p-tel-mod.-header {
    padding-left: 20px;
    margin-left: 18px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-tel-mod.-header {
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-header::before {
    width: 10px;
    height: 10px;
  }
}
@media screen and (min-width: 1136px) {
  .p-tel-mod.-header::before {
    width: 12px;
    height: 12px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-header .p-tel-mod__number {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-header .p-tel-mod__number {
    font-size: 1.1875rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-header .p-tel-mod__hours {
    font-size: 1.09375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-cta {
    padding-left: 38px;
    margin-top: 20px;
    margin-left: 28px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-cta:before {
    width: 24px;
    height: 24px;
    top: 1em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-cta:before {
    width: 24px;
    height: 24px;
    top: 0.7em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-cta .p-tel-mod__number {
    font-size: 2.625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-cta .p-tel-mod__hours {
    font-size: 1.0625rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-cta.-en:before {
    top: 0.5em;
    width: 20px;
    height: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-cta.-en .p-tel-mod__number {
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-box {
    padding-left: 34px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-box:before {
    width: 21px;
    height: 21px;
    top: 0.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-box .p-tel-mod__number {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail {
    margin-left: 25px;
    padding-left: 34px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail:before {
    width: 21px;
    height: 21px;
    top: 0.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail .p-tel-mod__number {
    font-size: 2rem;
    letter-spacing: -0.5px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-detail .p-tel-mod__hours {
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-home {
    padding-left: 30px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-home {
    padding-left: 20px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-home:before {
    width: 12px;
    height: 12px;
    top: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-home:before {
    width: 18px;
    height: 18px;
    top: auto;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-home .p-tel-mod__number {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-home .p-tel-mod__number {
    font-size: 1.5625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-home .p-tel-mod__number {
    font-size: 2rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-tel-mod.-home .p-tel-mod__hours {
    font-size: 0.75rem;
    margin-top: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-home .p-tel-mod__hours {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 100em) {
  .p-tel-mod.-home .p-tel-mod__hours {
    white-space: nowrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-contact.-en > a {
    flex-direction: column;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-contact.-en .p-tel-mod__hours {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-faq {
    padding-left: 25px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-faq:before {
    width: 14px;
    height: 14px;
    top: 0.25em;
    left: 3px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod.-faq:before {
    width: 14px;
    height: 14px;
    top: 0.25em;
    left: 3px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod.-faq > a {
    display: flex;
    align-items: baseline;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-tel-mod.-faq .p-tel-mod__number {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-tel-mod.-faq .p-tel-mod__number {
    font-size: 1.4375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-tel-mod.-faq .p-tel-mod__hours {
    font-size: 0.8125rem;
    margin-left: 8px;
  }
}
.p-mail-mod {
  position: relative;
  line-height: 1;
  padding-left: 27px;
}
.p-mail-mod:before {
  content: "";
  position: absolute;
  top: 0.1em;
  left: 0;
  width: 17px;
  height: 17px;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2216%22%20viewBox%3D%220%200%2020%2014%22%3E%3Cg%20transform%3D%22translate%28-262.934%20-15288%29%22%3E%3Crect%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%221%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M1%2C1V13H19V1H1M1%2C0H19a1%2C1%2C0%2C0%2C1%2C1%2C1V13a1%2C1%2C0%2C0%2C1-1%2C1H1a1%2C1%2C0%2C0%2C1-1-1V1A1%2C1%2C0%2C0%2C1%2C1%2C0Z%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3Cpath%20d%3D%22M-10917.293-1487.994a.5.5%2C0%2C0%2C1-.312-.109l-9.4-7.506.623-.781%2C9.1%2C7.261%2C9.372-7.265.613.79-9.684%2C7.506A.5.5%2C0%2C0%2C1-10917.293-1487.994Z%22%20transform%3D%22translate%2811190.131%2016784.785%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-mail-mod,
  .c-list + .p-mail-mod {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-mail-mod,
  .c-list + .p-mail-mod {
    margin-top: 26px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod + .c-sentence,
  .p-mail-mod + .c-list {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod + .c-sentence,
  .p-mail-mod + .c-list {
    margin-top: 12px;
  }
}
.p-mail-mod__number {
  display: flex;
  font-family: Times New Roman, sans-serif;
  font-weight: bold;
  /* -（ハイフン） */
}
.p-mail-mod__number > span {
  position: relative;
  top: -2px;
}

@media only screen and (max-width: 47.9375em) {
  .p-mail-mod__number > span {
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod__number > span {
    margin-right: 1px;
    margin-left: 1px;
  }
}
.p-mail-mod__hours {
  margin-top: 4px;
  letter-spacing: 0;
  font-weight: bold;
  white-space: nowrap;
}

@media only screen and (max-width: 47.9375em) {
  .p-mail-mod__hours {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod__hours {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod__hours {
    font-size: 0.625rem;
  }
}
@media print, screen and (min-width: 75em) {
  .p-mail-mod__hours {
    font-size: 0.75rem;
  }
}
.p-mail-mod.-header {
  margin-top: 20px;
  margin-left: 18px;
  margin-top: 0px;
  font-size: 1.1875rem;
}
.p-mail-mod.-header::before {
  top: 2px;
}
.p-mail-mod.-header:hover a {
  color: #2d2d2d;
}
.p-mail-mod.-cta {
  margin-top: 12px;
}
.p-mail-mod.-cta:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2216%22%20viewBox%3D%220%200%2020%2014%22%3E%3Cg%20transform%3D%22translate%28-262.934%20-15288%29%22%3E%3Crect%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%221%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M1%2C1V13H19V1H1M1%2C0H19a1%2C1%2C0%2C0%2C1%2C1%2C1V13a1%2C1%2C0%2C0%2C1-1%2C1H1a1%2C1%2C0%2C0%2C1-1-1V1A1%2C1%2C0%2C0%2C1%2C1%2C0Z%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3Cpath%20d%3D%22M-10917.293-1487.994a.5.5%2C0%2C0%2C1-.312-.109l-9.4-7.506.623-.781%2C9.1%2C7.261%2C9.372-7.265.613.79-9.684%2C7.506A.5.5%2C0%2C0%2C1-10917.293-1487.994Z%22%20transform%3D%22translate%2811190.131%2016784.785%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
.p-mail-mod.-cta .p-mail-mod__number {
  font-size: 2.625rem;
  color: #fff;
}
.p-mail-mod.-cta .p-mail-mod__hours {
  color: #fff;
}
.p-mail-mod.-box .p-mail-mod__number {
  /* -（ハイフン） */
}
.p-mail-mod.-box .p-mail-mod__number > span {
  position: relative;
  top: -4px;
  margin-right: 3px;
  margin-left: 4px;
}
.p-mail-mod.-box .p-mail-mod__hours {
  font-size: 0.875rem;
}
.p-mail-mod.-detail .p-mail-mod__number {
  /* -（ハイフン） */
}
.p-mail-mod.-detail .p-mail-mod__number > span {
  position: relative;
  top: -5px;
  margin-right: 1px;
  margin-left: 1px;
}
.p-mail-mod.-home {
  display: flex;
  align-items: center;
}
.p-mail-mod.-home:before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2216%22%20viewBox%3D%220%200%2020%2014%22%3E%3Cg%20transform%3D%22translate%28-262.934%20-15288%29%22%3E%3Crect%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%221%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20d%3D%22M1%2C1V13H19V1H1M1%2C0H19a1%2C1%2C0%2C0%2C1%2C1%2C1V13a1%2C1%2C0%2C0%2C1-1%2C1H1a1%2C1%2C0%2C0%2C1-1-1V1A1%2C1%2C0%2C0%2C1%2C1%2C0Z%22%20transform%3D%22translate%28262.934%2015288%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3Cpath%20d%3D%22M-10917.293-1487.994a.5.5%2C0%2C0%2C1-.312-.109l-9.4-7.506.623-.781%2C9.1%2C7.261%2C9.372-7.265.613.79-9.684%2C7.506A.5.5%2C0%2C0%2C1-10917.293-1487.994Z%22%20transform%3D%22translate%2811190.131%2016784.785%29%22%20fill%3D%22%232d2d2d%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}
.p-mail-mod.-home a {
  color: #2d2d2d;
}
.p-mail-mod.-home .p-mail-mod__number {
  /* -（ハイフン） */
}
.p-mail-mod.-home .p-mail-mod__number > span {
  position: relative;
  top: -3px;
  margin-right: 1px;
  margin-left: 1px;
}
.p-mail-mod.-home .p-mail-mod__hours {
  margin-left: 5px;
}
.p-mail-mod.-contact {
  margin-top: 8px;
  padding-left: 35px;
}
.p-mail-mod.-contact::before {
  width: 21px;
  height: 21px;
}
.p-mail-mod.-contact > a {
  display: flex;
}
.p-mail-mod.-contact .p-mail-mod__number {
  font-size: 2.125rem;
  letter-spacing: -0.04em;
}
.p-mail-mod.-contact .p-mail-mod__hours {
  margin-top: auto;
  margin-bottom: 4px;
  margin-left: 8px;
  font-size: 1rem;
}
.p-mail-mod.-faq .p-mail-mod__number {
  /* -（ハイフン） */
}
.p-mail-mod.-faq .p-mail-mod__number > span {
  position: relative;
  top: -3px;
  margin-right: 1px;
  margin-left: 1px;
  font-size: 1.375rem;
}
.p-mail-mod.-faq .p-mail-mod__hours {
  margin-left: -5px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-header {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-header {
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-header {
    padding-left: 14px;
    margin-left: 10px;
  }
}
@media screen and (min-width: 1136px) {
  .p-mail-mod.-header {
    padding-left: 20px;
    margin-left: 18px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-mail-mod.-header {
    padding-left: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-header::before {
    width: 10px;
    height: 10px;
  }
}
@media screen and (min-width: 1136px) {
  .p-mail-mod.-header::before {
    width: 12px;
    height: 12px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-header .p-mail-mod__number {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-header .p-mail-mod__number {
    font-size: 1.1875rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-header .p-mail-mod__hours {
    font-size: 1.09375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-cta {
    padding-left: 38px;
    margin-top: 20px;
    margin-left: 28px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-cta:before {
    width: 24px;
    height: 24px;
    top: 1em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-cta:before {
    width: 24px;
    height: 24px;
    top: 0.7em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-cta .p-mail-mod__number {
    font-size: 2.625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-cta .p-mail-mod__hours {
    font-size: 1.0625rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-cta.-en:before {
    top: 0.5em;
    width: 20px;
    height: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-cta.-en .p-mail-mod__number {
    font-size: 2.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-box {
    padding-left: 34px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-box:before {
    width: 21px;
    height: 21px;
    top: 0.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-box .p-mail-mod__number {
    font-size: 1.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-detail {
    margin-left: 25px;
    padding-left: 34px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-detail:before {
    width: 21px;
    height: 21px;
    top: 0.5em;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-detail .p-mail-mod__number {
    font-size: 2rem;
    letter-spacing: -0.5px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-detail .p-mail-mod__hours {
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-home {
    padding-left: 30px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-home {
    padding-left: 20px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-home:before {
    width: 12px;
    height: 12px;
    top: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-home:before {
    width: 18px;
    height: 18px;
    top: auto;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-home a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1 1 auto;
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 100em) {
  .p-mail-mod.-home a {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    flex-wrap: nowrap;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-home .p-mail-mod__number {
    font-size: 1.5625rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-home .p-mail-mod__number {
    font-size: 1.5625rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-home .p-mail-mod__number {
    font-size: 2rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-mail-mod.-home .p-mail-mod__hours {
    font-size: 0.75rem;
    margin-top: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-home .p-mail-mod__hours {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 100em) {
  .p-mail-mod.-home .p-mail-mod__hours {
    white-space: nowrap;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-contact.-en > a {
    flex-direction: column;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-contact.-en .p-mail-mod__hours {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-faq {
    padding-left: 25px;
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-faq:before {
    width: 18px;
    height: 16px;
    top: 0.3em;
    left: 0px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod.-faq:before {
    width: 18px;
    height: 16px;
    top: 0.3em;
    left: 0px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod.-faq > a {
    display: flex;
    align-items: baseline;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-mail-mod.-faq .p-mail-mod__number {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-mail-mod.-faq .p-mail-mod__number {
    font-size: 1.4375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-mail-mod.-faq .p-mail-mod__hours {
    font-size: 0.8125rem;
    margin-left: 8px;
  }
}
.p-gallery {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-gallery,
  .c-image + .p-gallery,
  .p-scrollable + .p-gallery {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-gallery,
  .c-image + .p-gallery,
  .p-scrollable + .p-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-gallery {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-gallery {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-gallery {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-gallery {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-gallery {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-gallery {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-gallery {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-gallery {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-gallery,
  .c-heading-2-1 + .p-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-gallery,
  .c-heading-2-1 + .p-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-gallery,
  .c-list + .p-gallery {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-gallery,
  .c-list + .p-gallery {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-gallery {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-gallery {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-gallery {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-gallery {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-gallery__inner {
  position: relative;
}

.p-gallery__main {
  position: relative;
  width: 100%;
}
.p-gallery__main.-wide {
  padding-top: 41.666%;
}
.p-gallery__main > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0;
}
.p-gallery__main > span:nth-child(1) {
  background-image: url("/img/main/img_01.jpg");
}
.p-gallery__main > span:nth-child(2) {
  background-image: url("/img/main/img_02.jpg");
}
.p-gallery__main > span:nth-child(3) {
  background-image: url("/img/main/img_03.jpg");
}
.p-gallery__main > span:nth-child(4) {
  background-image: url("/img/main/img_04.jpg");
}
.p-gallery__main > span:nth-child(5) {
  background-image: url("/img/main/img_05.jpg");
}
.p-gallery__main > span.-current {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 1;
  z-index: 1;
}

@media print, screen and (min-width: 64em) {
  .p-gallery__main {
    background: linear-gradient to bottom, #afcc5b, #fff;
  }
}
.p-gallery__item {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0;
}
.p-gallery__item:first-of-type {
  position: relative;
}
.p-gallery__item:not(:first-of-type) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-gallery__item.-current {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 1;
  z-index: 1;
}
.p-gallery__item > img {
  width: 100%;
  vertical-align: bottom;
}

@media only screen and (max-width: 47.9375em) {
  .p-gallery__text {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery__text {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery__text {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery__text {
    margin-top: 13px;
  }
}
.p-gallery__caption {
  width: 100%;
  background-color: #1a1a1a;
  display: block;
  position: absolute;
  bottom: 0;
  color: #fff;
  line-height: 30px;
  padding: 4px 20px 2px 20px;
  box-sizing: border-box;
  font-size: 0.875rem;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .p-gallery__caption {
    font-size: 0.75rem;
  }
}
.browser-is-ie .p-gallery__caption {
  padding: 6px 20px 0px 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav {
    display: flex;
    padding-top: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__nav {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
    margin-right: -5px;
  }
}
.p-gallery__nav > li {
  position: relative;
  width: 100px;
  margin-right: 10px;
  cursor: pointer;
}
.p-gallery__nav > li:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: #000;
  opacity: 0.5;
  border: 3px solid transparent;
  transition: all 0.1s linear;
}
.p-gallery__nav > li > img {
  display: block;
  width: 100%;
  height: auto;
}
.p-gallery__nav > li:hover:before, .p-gallery__nav > li.-current:before {
  opacity: 1;
  border-color: #74b708;
  background-color: transparent;
}
.p-gallery__nav.-under-main {
  margin-top: 20px;
  margin-right: -11px;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.p-gallery__nav.-under-main > li {
  width: 6px;
  height: 6px;
  margin-right: 12px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav > li {
    width: 6px;
    height: 6px;
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav > li:before {
    opacity: 1;
    background-color: #dddddd;
    border-radius: 50%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__nav > li > img {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__nav.-start {
    justify-content: flex-start;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery__nav.-under-main > li {
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__nav.-under-main > li {
    width: calc(8.32% - 11px);
    margin-right: 11px;
    margin-bottom: 10px;
    height: 100%;
  }
}
.p-gallery__panel {
  position: absolute;
  z-index: 50000;
  bottom: 0;
  left: 0;
  background-color: #fff;
  padding-top: 25px;
  padding-right: 40px;
  padding-left: 100px;
  box-sizing: border-box;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__panel {
    position: relative;
    bottom: 0;
    right: 0;
    padding-top: 0px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__panel {
    max-width: 612px;
    padding-right: 40px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 1400px) {
  .p-gallery__panel {
    max-width: 68%;
    width: auto;
  }
}
.browser-is-ie .p-gallery__panel {
  box-sizing: border-box;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery__panel.u-fade2 {
    opacity: 0;
    visibility: hidden;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__panel.is-active {
    visibility: visible;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__panel.-en {
    max-width: 800px;
  }
}
@media print, screen and (min-width: 1420px) {
  .p-gallery__panel.-en {
    max-width: 65%;
  }
}
.p-gallery__panel-inner {
  display: block;
}

@media print, screen and (min-width: 75em) {
  .p-gallery__panel-inner {
    display: flex;
  }
}
.p-gallery__heading {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 1.6;
  margin-right: 30px;
  color: #2d2d2d;
}
.p-gallery__heading > span {
  color: #74b708;
}
.p-gallery__heading.-en {
  font-family: "Noto Serif JP", serif;
}

@media only screen and (max-width: 47.9375em) {
  .p-gallery__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__heading {
    padding-top: 28px;
    margin-right: 0;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__heading {
    margin-right: 10px;
  }
}
@media print, screen and (min-width: 1400px) {
  .p-gallery__heading {
    margin-right: 14px;
    font-size: 1rem;
    margin-right: 30px;
    padding-top: 15px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1400px) {
  .p-gallery__heading {
    position: absolute;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action {
    margin-top: 3px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__action {
    display: flex;
    flex-grow: 1;
  }
}
@media print, screen and (max-width: 1420px) {
  .p-gallery__action {
    align-items: flex-end;
  }
}
@media print, screen and (min-width: 100em) {
  .p-gallery__action {
    flex-shrink: 1;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action .c-button {
    padding-top: 10px;
    padding-bottom: 11px;
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__action .c-button {
    box-sizing: border-box;
    margin-left: 26px;
    width: auto;
    padding-top: 12px;
    padding-right: 40px;
    padding-left: 40px;
    padding-bottom: 10px;
  }
  .browser-is-ie .p-gallery__action .c-button {
    padding-top: 10px;
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1420px) {
  .p-gallery__action .c-button {
    margin-bottom: 6px;
  }
}
@media print, screen and (min-width: 100em) {
  .p-gallery__action .c-button {
    min-width: 230px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__action .c-button > span {
    font-size: 1rem;
    color: #fff;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__action.-en .c-button {
    margin-left: 80px;
  }
}
@media print, screen and (min-width: 1420px) {
  .p-gallery__action.-en .c-button {
    margin-left: 40px;
  }
}
.p-gallery.-top {
  position: relative;
  z-index: 1;
}
.p-gallery.-top .p-gallery__main {
  padding-top: 0;
}
.p-gallery.-top .p-gallery__main > span {
  background-position: 50% 50%;
}
.p-gallery.-top .p-gallery__main > span::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  opacity: 0.9;
  background: linear-gradient(to bottom, transparent, #000);
}
.p-gallery.-top .p-gallery__nav > li {
  position: relative;
  margin-right: 5px;
  cursor: pointer;
  overflow: hidden;
}
.p-gallery.-top .p-gallery__nav > li > img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: auto;
}

@media only screen and (max-width: 47.9375em) {
  .p-gallery.-top .p-gallery__main {
    height: 50vw;
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery.-top .p-gallery__main {
    height: 50vh;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-top .p-gallery__main {
    height: 88vh;
    min-height: 450px;
    max-height: 700px;
    box-sizing: border-box;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-top .p-gallery__main > span::after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-top .p-gallery__main > span::after {
    height: 560px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-top .p-gallery__nav {
    margin-top: 0;
    padding-left: 4.6875%;
    padding-top: 24px;
    justify-content: center;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-top .p-gallery__nav {
    position: absolute;
    margin-top: -22px;
    bottom: 20px;
    right: 20px;
    z-index: 2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-top .p-gallery__nav > li {
    width: 60px;
    height: 60px;
  }
}
/* SPでのNEXT / PREVボタン */
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__trigger {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__trigger {
    display: none;
  }
}
.p-gallery__trigger li {
  width: 24px;
  height: 36px;
}
.p-gallery__trigger button {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #000000;
  border: none;
  cursor: pointer;
}
.p-gallery__trigger button:before, .p-gallery__trigger button:after {
  display: block;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 2px;
  background-color: #fff;
  border-radius: 1px;
  content: "";
}
.p-gallery__trigger button.-left:before, .p-gallery__trigger button.-left:after {
  left: 45%;
}
.p-gallery__trigger button.-left:before {
  transform: translate(-50%, calc(-50% - 3px)) rotate(-45deg);
}
.p-gallery__trigger button.-left:after {
  transform: translate(-50%, calc(-50% + 3px)) rotate(45deg);
}
.p-gallery__trigger button.-right:before, .p-gallery__trigger button.-right:after {
  left: 55%;
}
.p-gallery__trigger button.-right:before {
  transform: translate(-50%, calc(-50% - 3px)) rotate(-135deg);
}
.p-gallery__trigger button.-right:after {
  transform: translate(-50%, calc(-50% + 3px)) rotate(135deg);
}

.p-gallery.-room, .p-gallery.-catering {
  background-color: transparent;
}
.p-gallery.-measures .p-gallery__nav {
  margin-top: 16px;
  position: relative;
}
.p-gallery.-measures .p-gallery__nav::before {
  content: "座席間隔";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  font-weight: bold;
}
.p-gallery.-measures .p-gallery__nav > li {
  width: auto;
}
.p-gallery.-measures .p-gallery__nav > li img {
  width: auto;
}
.p-gallery.-measures .p-gallery__nav > li::before {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.5);
}
.p-gallery.-measures .p-gallery__nav > li.-current::before {
  background-color: transparent;
  opacity: 1;
}
.p-gallery.-measures .p-gallery__nav > li.-current .-number {
  color: #74b708;
}
.p-gallery.-measures .p-gallery__nav > li .-number {
  font-weight: bold;
  color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  line-height: 0.8;
}

@media print, screen and (min-width: 64em) {
  .p-gallery.-room .p-gallery__nav {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery.-room {
    position: relative;
  }
  .p-gallery.-room .c-sentence.-room {
    position: absolute;
    bottom: -14px;
    right: 0;
  }
  .p-gallery.-room .c-sentence.-room .p-floor-map__nav-link {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  .p-gallery.-room .c-sentence.-room .p-floor-map__nav-link span {
    font-size: 0.875rem;
    font-weight: normal;
  }
  .p-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama {
    margin-left: 4px;
  }
  .p-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama::before {
    top: 2px;
    width: 19px;
    height: 19px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-catering .p-gallery__nav {
    margin-top: 16px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-catering .p-gallery__nav > li {
    width: 114px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures {
    background-color: transparent;
  }
}
@media print, screen and (min-width: 64em) {
  .c-heading-5 + .p-gallery.-measures {
    margin-top: 22px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures .p-gallery__nav {
    padding-top: 0;
    padding-left: 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-measures .p-gallery__nav {
    padding-left: 85px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-gallery.-measures .p-gallery__nav::before {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery.-measures .p-gallery__nav::before {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures .p-gallery__nav > li {
    height: 45px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-measures .p-gallery__nav > li {
    height: 57px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures .p-gallery__nav > li img {
    display: block;
    height: 45px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-measures .p-gallery__nav > li img {
    height: 57px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures .p-gallery__nav > li::before {
    border-radius: 0;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-measures .p-gallery__nav > li::before {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-measures .p-gallery__nav > li:hover::before {
    background-color: transparent;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-measures .p-gallery__nav > li .-number {
    font-size: 0.875rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-gallery__panorama {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery__panorama {
    position: absolute;
    bottom: 100px;
    right: 20px;
    z-index: 2;
    width: 320px;
  }
}
.p-gallery__panorama-inner {
  background-color: #1a1a1a;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  display: flex;
  align-items: center;
  transition: background-color 0.7s ease;
}
.p-gallery__panorama-inner:hover {
  background-color: #8ac9c4;
  transition: background-color 0.2s ease;
}
.p-gallery__panorama-inner:hover .p-gallery__panorama-text-name {
  color: #1a1a1a;
}

@media print, screen and (min-width: 64em) {
  .p-gallery__panorama-inner + .p-gallery__panorama-inner {
    margin-top: 10px;
  }
}
.p-gallery__panorama-img {
  width: 107px;
  height: 70px;
  margin-right: 20px;
  position: relative;
  overflow: hidden;
}
.p-gallery__panorama-img > img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}
.p-gallery__panorama-img::before {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2252.263%22%20height%3D%2254.028%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20stroke-width%3D%222%22%3E%3Cg%3E%3Cpath%20d%3D%22M13.535%2025.45a3.313%203.313%200%20013.313-3.312h0a3.313%203.313%200%20010%206.625h0a3.312%203.312%200%20013.312%203.312v-.191a3.313%203.313%200%2001-3.312%203.313h0a3.313%203.313%200%2001-3.313-3.313%22%2F%3E%3Cpath%20%20d%3D%22M29.747%2025.45a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312v6.434a3.313%203.313%200%20003.312%203.313h0a3.313%203.313%200%20003.312-3.313v-.248a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312%22%2F%3E%3Cpath%20d%3D%22M39.335%2031.884a3.313%203.313%200%2001-3.313%203.313h0a3.312%203.312%200%2001-3.312-3.313V25.45a3.312%203.312%200%20013.312-3.312h0a3.313%203.313%200%20013.313%203.312z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M42.127%2022.138v1.879%22%2F%3E%3C%2Fg%3E%3Cg%20stroke-width%3D%221.5%22%3E%3Cpath%20d%3D%22M2.299%2027.376A24.616%2024.616%200%200133.246%204.795%22%2F%3E%3Cpath%20d%3D%22M39.906%2049.413A24.6%2024.6%200%20013.14%2034.9%22%2F%3E%3Cpath%20d%3D%22M39.904%207.654a24.614%2024.614%200%20014.362%2038.272%22%2F%3E%3Cpath%20d%3D%22M30.857%201.035l2.39%203.76-4.111%202.31%22%2F%3E%3Cpath%20d%3D%22M48.72%2045.801l-4.454.12.127-4.711%22%2F%3E%3Cpath%20d%3D%22M1.017%2038.819l2.123-3.917%204.016%202.465%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
}
.p-gallery__panorama-img::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: #000;
  opacity: 0.3;
  border: 3px solid transparent;
  transition: all 0.1s linear;
}

.p-gallery__panorama-text .c-blank {
  margin-left: 10px;
}
.p-gallery__panorama-text .c-blank::after {
  width: 7px;
  height: 6px;
  right: 8px;
  top: 3px;
}
.p-gallery__panorama-text .c-blank::before {
  width: 7px;
  height: 6px;
  bottom: 1px;
  left: -3px;
}

.p-gallery__panorama-link {
  display: block;
}

.p-gallery__panorama-text-top,
.p-gallery__panorama-text-bottom,
.p-gallery__panorama-text-name {
  color: #fff;
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-gallery__panorama-text-top,
  .p-gallery__panorama-text-bottom,
  .p-gallery__panorama-text-name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-gallery__panorama-text-top,
  .p-gallery__panorama-text-bottom,
  .p-gallery__panorama-text-name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-gallery__panorama-text-top {
  font-size: 0.6875rem;
}

.p-gallery__panorama-text-bottom {
  line-height: 1.4;
  font-size: 0.9375rem;
}
.p-gallery__panorama-text-bottom span {
  font-size: 1.25rem;
}
.p-gallery__panorama-text-bottom .c-blank::before, .p-gallery__panorama-text-bottom .c-blank::after {
  transition: background-color 0.4s ease, border-color 0.2s ease;
}

.p-gallery__panorama-inner:hover .p-gallery__panorama-text-bottom .c-blank::before {
  border-color: #1a1a1a;
  transition: border-color 0.2s ease;
}
.p-gallery__panorama-inner:hover .p-gallery__panorama-text-bottom .c-blank::after {
  background-color: #1a1a1a;
  transition: background-color 0.2s ease;
}

.p-gallery__panorama-text-bottom .p-gallery__panorama-text-bottom__desc--en {
  font-size: 0.75rem;
  display: block;
}

.p-gallery__panorama-text-name {
  color: #74b708;
  font-size: 0.875rem;
  line-height: 1;
}

.p-gallery__panorama-sp {
  position: absolute;
  bottom: -20px;
  right: 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-gallery.-home {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-gallery.-home {
    margin-top: 60px;
  }
}
.p-vr-link {
  display: inline-block;
  font-weight: bold;
}
.p-vr-link > i {
  display: inline-block;
  vertical-align: middle;
  width: 27px;
  height: 27px;
  margin-top: -4px;
  margin-right: 8px;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2228.035%22%20height%3D%2228.964%22%3E\a%20%20%20%20%3Cg%20fill%3D%22none%22%20stroke%3D%22%230b1f40%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221.5%22%20transform%3D%22translate%281.017%201.035%29%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M257.168%2063.369a1.723%201.723%200%200%201%201.723-1.723%201.723%201.723%200%200%201%200%203.446%201.723%201.723%200%200%201%201.723%201.723v-.1a1.723%201.723%200%200%201-1.723%201.723%201.723%201.723%200%200%201-1.723-1.723%22%20transform%3D%22translate%28-250.657%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M272.739%2063.369a1.723%201.723%200%200%200-1.723-1.723%201.723%201.723%200%200%200-1.723%201.723v3.347a1.723%201.723%200%200%200%201.723%201.723%201.723%201.723%200%200%200%201.723-1.723v-.129a1.723%201.723%200%200%200-1.723-1.723%201.723%201.723%200%200%200-1.723%201.723%22%20transform%3D%22translate%28-257.794%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M284.864%2066.716a1.723%201.723%200%200%201-1.723%201.723%201.723%201.723%200%200%201-1.723-1.723v-3.347a1.723%201.723%200%200%201%201.723-1.723%201.723%201.723%200%200%201%201.723%201.723z%22%20transform%3D%22translate%28-264.932%20-50.669%29%22%2F%3E\a%20%20%20%20%20%20%3Cline%20y2%3D%22.977%22%20data-name%3D%22線%201%22%20transform%3D%22translate%2821.385%2010.977%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M242.959%2050.816a12.8%2012.8%200%200%201%2016.1-11.746%22%20transform%3D%22translate%28-242.292%20-37.114%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M263.147%2085.338a12.8%2012.8%200%200%201-19.125-7.549%22%20transform%3D%22translate%28-242.918%20-60.172%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M290.517%2043.328a12.8%2012.8%200%200%201%202.269%2019.906%22%20%20transform%3D%22translate%28-270.288%20-39.885%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M277.8%2034.957l1.243%201.956-2.137%201.2%22%20transform%3D%22translate%28-262.274%20-34.957%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M298.351%2088.156l-2.317.063.066-2.45%22%20transform%3D%22translate%28-273.536%20-64.869%29%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M241.337%2079.827l1.1-2.038%202.089%201.282%22%20transform%3D%22translate%28-241.337%20-60.172%29%22%2F%3E\a%20%20%20%20%3C%2Fg%3E\a%20%20%3C%2Fsvg%3E");
}

@media only screen and (max-width: 47.9375em) {
  .p-vr-link {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-vr-link {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-price-table {
  width: 100%;
}
.p-price-table tr {
  display: flex;
  align-items: end;
  justify-content: space-between;
}
.p-price-table tr:first-child td {
  padding-top: 0;
}
.p-price-table td {
  padding-top: 23px;
}
.p-price-table td:nth-child(2) {
  padding-left: 9px;
  text-align: right;
}
.p-price-table td .-note_tax {
  display: block;
  font-size: 0.75rem;
}
.p-price-table .-note {
  font-size: 0.875rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-price-table td {
    padding-top: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-price-table.-td_w_30 tr:first-child td {
    padding-top: 0;
    width: 30px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-price-table.-sp_2row td {
    display: block;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-price-table.-sp_2row td:nth-child(2) {
    padding-left: 0px;
    text-align: left;
  }
}
.p-benefit {
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 48em) {
  .p-benefit {
    margin-top: 18px;
    margin-left: -30px;
  }
}
.p-benefit__item {
  display: flex;
  align-items: center;
  font-weight: bold;
}
.p-benefit__item:before {
  display: inline-block;
  content: "";
  margin-right: 9px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.p-benefit__item.-audio:before {
  height: 28px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2227.958%22%20height%3D%2228.779%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M-1083.956%203749.031v-12.673a4.114%204.114%200%200%201-3.3-4.027%204.113%204.113%200%200%201%203.3-4.026v-6.436a.806.806%200%200%201%20.809-.808.805.805%200%200%201%20.808.808v6.436a4.1%204.1%200%200%201%203.3%204.02%204.113%204.113%200%200%201-3.3%204.026v12.679a.805.805%200%200%201-.808.809.806.806%200%200%201-.809-.808zm-1.678-16.7a2.488%202.488%200%200%200%202.487%202.486%202.488%202.488%200%200%200%202.486-2.486%202.488%202.488%200%200%200-2.486-2.486%202.488%202.488%200%200%200-2.487%202.486zm-8.167%2016.693v-5.884a4.114%204.114%200%200%201-3.295-4.027%204.114%204.114%200%200%201%203.295-4.026v-13.219a.806.806%200%200%201%20.809-.808.805.805%200%200%201%20.808.808v13.219a4.112%204.112%200%200%201%203.3%204.026%204.114%204.114%200%200%201-3.3%204.027v5.884a.805.805%200%200%201-.808.809.806.806%200%200%201-.808-.809zm-1.677-9.91a2.489%202.489%200%200%200%202.486%202.487%202.489%202.489%200%200%200%202.486-2.487%202.488%202.488%200%200%200-2.486-2.486%202.488%202.488%200%200%200-2.485%202.486zm-8.227%209.91v-12.666a4.114%204.114%200%200%201-3.3-4.027%204.113%204.113%200%200%201%203.3-4.026v-6.436a.805.805%200%200%201%20.808-.808.806.806%200%200%201%20.809.808v6.436a4.107%204.107%200%200%201%203.3%204.02%204.113%204.113%200%200%201-3.3%204.026v12.673a.806.806%200%200%201-.809.809.805.805%200%200%201-.803-.809zm-1.678-16.693a2.488%202.488%200%200%200%202.486%202.486%202.492%202.492%200%200%200%202.487-2.486%202.488%202.488%200%200%200-2.487-2.486%202.488%202.488%200%200%200-2.485%202.486z%22%20transform%3D%22translate%281107%20-3721.061%29%22%2F%3E\a%20%20%3C%2Fsvg%3E");
}
.p-benefit__item.-wifi:before {
  height: 19px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2227.309%22%20height%3D%2219.691%22%3E\a%20%20%20%20%3Cpath%20stroke%3D%22%23000%22%20stroke-width%3D%22.8%22%20d%3D%22M10.492%2016.124a3.166%203.166%200%200%201%203.162-3.163%203.167%203.167%200%200%201%203.163%203.163%203.167%203.167%200%200%201-3.163%203.163%203.167%203.167%200%200%201-3.162-3.163zm.965%200a2.2%202.2%200%200%200%202.2%202.2%202.2%202.2%200%200%200%202.2-2.2%202.2%202.2%200%200%200-2.2-2.2%202.2%202.2%200%200%200-2.199%202.2zm-5.239-3.946a.481.481%200%200%201%200-.682%2010.446%2010.446%200%200%201%207.436-3.076%2010.446%2010.446%200%200%201%207.437%203.076.482.482%200%200%201%200%20.682.482.482%200%200%201-.341.142.482.482%200%200%201-.341-.142%209.491%209.491%200%200%200-6.755-2.793A9.491%209.491%200%200%200%206.9%2012.178a.48.48%200%200%201-.341.142.48.48%200%200%201-.341-.139zM3.379%209.34a.484.484%200%200%201%200-.683%2014.549%2014.549%200%200%201%2020.55%200%20.484.484%200%200%201%200%20.683.483.483%200%200%201-.683%200%2013.579%2013.579%200%200%200-19.184%200%20.484.484%200%200%201-.341.142.486.486%200%200%201-.341-.139zM.542%206.502a.481.481%200%200%201%200-.682A18.416%2018.416%200%200%201%2013.654.397%2018.419%2018.419%200%200%201%2026.767%205.82a.482.482%200%200%201%200%20.682.484.484%200%200%201-.341.142.482.482%200%200%201-.341-.142%2017.46%2017.46%200%200%200-12.431-5.14%2017.459%2017.459%200%200%200-12.43%205.14.48.48%200%200%201-.341.142.48.48%200%200%201-.341-.139z%22%20%2F%3E\a%20%20%3C%2Fsvg%3E");
}
.p-benefit__item.-chair:before {
  height: 29px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2238.187%22%20height%3D%2228.779%22%3E\a%20%20%20%20%3Cpath%20d%3D%22M-1418.654%203749.839a1.465%201.465%200%200%201-1.168-.574%201.466%201.466%200%200%201-.262-1.275l.182-.7a2.778%202.778%200%200%201%202.688-2.079h.478v-14.045h-7.346a1.8%201.8%200%200%201-1.405-.668%201.8%201.8%200%200%201-.371-1.51%203.5%203.5%200%200%201%203.415-2.785h1.448a.771.771%200%200%201%20.772.771.771.771%200%200%201-.772.772h-1.448a1.95%201.95%200%200%200-1.9%201.552.269.269%200%200%200%20.055.226.27.27%200%200%200%20.21.1h20.076a.268.268%200%200%200%20.21-.1.269.269%200%200%200%20.056-.226%201.951%201.951%200%200%200-1.9-1.552h-11.732a.772.772%200%200%201-.772-.772.771.771%200%200%201%20.772-.771h11.732a3.5%203.5%200%200%201%203.415%202.785%201.806%201.806%200%200%201-.371%201.51%201.807%201.807%200%200%201-1.406.668h-7.345v14.045h.477a2.779%202.779%200%200%201%202.689%202.079l.181.7a1.469%201.469%200%200%201-.261%201.275%201.467%201.467%200%200%201-1.169.574zm.246-2.157l-.16.614h9.049l-.159-.614a1.235%201.235%200%200%200-1.2-.923h-6.34a1.234%201.234%200%200%200-1.19.923zm3.216-2.467h2.3v-14.045h-2.3zm-8.691%204.078l-.9-2.927h-10.582l-.9%202.927a.771.771%200%200%201-.737.546.787.787%200%200%201-.226-.034.771.771%200%200%201-.512-.964l2.521-8.236a5.656%205.656%200%200%201-2.284-1.275%205.659%205.659%200%200%201-1.819-3.687l-1.054-12.006a2.381%202.381%200%200%201%20.614-1.809%202.378%202.378%200%200%201%201.749-.769h.7a3.512%203.512%200%200%201%203.518%203.222l.76%208.669a1.47%201.47%200%200%200%201.472%201.349h6.586a3.832%203.832%200%200%201%203.828%203.827v.38a2.315%202.315%200%200%201-2.312%202.312h-1.412l1.39%204.54v.01l1.063%203.471a.771.771%200%200%201-.512.964.786.786%200%200%201-.226.034.77.77%200%200%201-.725-.544zm-11.006-4.47h9.637l-1.225-4h-7.186zm-3.729-21.951a.818.818%200%200%200-.214.63l1.053%2012.006a4.1%204.1%200%200%200%203.626%203.739%204.163%204.163%200%200%200%20.487.029h10.212a.77.77%200%200%200%20.769-.769v-.38a2.287%202.287%200%200%200-2.285-2.285h-6.586a3%203%200%200%201-3.009-2.756l-.76-8.669a1.979%201.979%200%200%200-1.981-1.815h-.7a.819.819%200%200%200-.612.27z%22%20transform%3D%22translate%281440.378%20-3721.061%29%22%2F%3E\a%20%20%3C%2Fsvg%3E");
}

@media only screen and (max-width: 47.9375em) {
  .p-benefit__item {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-benefit__item {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-benefit__item {
    width: 100%;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-benefit__item {
    margin-left: 30px;
    margin-top: 12px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-benefit__item:before {
    width: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-benefit__item.-audio:before {
    width: 29px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-benefit__item.-wifi:before {
    width: 27px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-benefit__item.-chair:before {
    width: 38px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-faq-module + .p-faq-module {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module + .p-faq-module {
    margin-top: 47px;
  }
}
.p-faq-module__q {
  position: relative;
  padding-left: 40px;
  font-weight: bold;
}
.p-faq-module__q:before {
  position: absolute;
  left: 0;
  content: "Q.";
  font-size: 1.875rem;
  line-height: 1;
  font-weight: 500;
  font-family: Times New Roman, sans-serif;
}

@media only screen and (max-width: 47.9375em) {
  .p-faq-module__q {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__q {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-faq-module__q {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__q {
    font-size: 1.5rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-faq-module__q:before {
    top: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__q:before {
    top: 0.2em;
  }
}
.p-faq-module__a {
  position: relative;
  line-height: 1.75;
  padding-left: 40px;
}
.p-faq-module__a:before {
  position: absolute;
  left: 3px;
  content: "A.";
  font-size: 1.875rem;
  line-height: 1;
  font-weight: 500;
  color: #74b708;
  font-family: Times New Roman, sans-serif;
}

@media only screen and (max-width: 47.9375em) {
  .p-faq-module__a {
    margin-top: 12px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__a {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-faq-module__a:before {
    top: -0.2em;
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__a:before {
    top: -0.1em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-faq-module__a br {
    display: none;
  }
}
.p-faq-module__link {
  position: relative;
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  margin-top: 14px;
  display: inline-block;
}
.p-faq-module__link > svg {
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 5px;
  height: 10px;
}
.p-faq-module__link > li {
  margin-top: 4px;
}
.p-faq-module__link > li:first-child {
  margin-top: 0;
}

@media only screen and (max-width: 47.9375em) {
  .p-faq-module__link {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-faq-module__link {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-faq-module__a__sub {
  position: relative;
  line-height: 1.75;
  padding-left: 40px;
}

.p-faq-module__tel {
  font-weight: bold;
  margin-top: 12px;
}

.p-faq-module__mail {
  font-weight: bold;
  margin-top: 8px;
}

.p-faq-module__cancel .-title {
  font-weight: bold;
}
.p-faq-module__cancel .-expire {
  display: inline-block;
  min-width: 340px;
}
.p-faq-module__cancel .-colon {
  display: inline-block;
  margin-left: 20px;
  margin-right: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-faq-module__cancel .-expire {
    display: block;
    min-width: auto;
  }
  .p-faq-module__cancel .-colon {
    display: none;
  }
}
.p-term__title {
  position: relative;
  padding-left: 25px;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.125rem;
}
.p-term__title:before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.896%22%20height%3D%2215.896%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M17.9%2010.391L9.5%202H2v7.505l8.387%208.395zM4.671%205.818a1.145%201.145%200%201%201%201.145-1.146%201.143%201.143%200%200%201-1.145%201.146z%22%20%20transform%3D%22translate%28-2%20-2%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
}

@media only screen and (max-width: 47.9375em) {
  .p-term__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-term__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-term__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 5px;
  margin-left: -10px;
}
.p-term__list > .c-badge {
  margin-top: 10px;
  margin-left: 10px;
}

.p-term.-has_border {
  padding-bottom: 60px;
  border-bottom: 1px solid #dcdfe0;
}

.p-step {
  display: flex;
}
.p-step.-row .p-step__number {
  padding-right: 24px;
  padding-left: 24px;
  text-align: left;
}

@media only screen and (max-width: 47.9375em) {
  .p-step {
    display: none;
  }
}
.p-step__item {
  flex: 1;
}
.p-step__item + .p-step__item .p-step__number {
  position: relative;
}
.p-step__item + .p-step__item .p-step__number:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -0.25em;
  bottom: -1px;
  width: 100%;
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212.313%22%20height%3D%2251.593%22%20viewBox%3D%220%200%2012.313%2051.593%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M0%2C0%2C25.421%2C10.308%2C50.842%2C0%22%20transform%3D%22translate%280.927%2051.218%29%20rotate%28-90%29%22%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
}
.p-step__item + .p-step__item .p-step__name {
  border-left: 1px solid #dcdfe0;
}

.p-step__link {
  display: flex;
  flex-direction: column;
}

.p-step__number {
  background-color: #1a1a1a;
  padding-top: 10px;
  padding-bottom: 10px;
  color: #74b708;
  font-family: Times New Roman, sans-serif;
  font-weight: 500;
  text-align: center;
}
.p-step__number > span {
  display: block;
  font-weight: bold;
  color: #fff;
}

@media only screen and (max-width: 47.9375em) {
  .p-step__number > span {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-step__number > span {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-step__name {
  display: flex;
  align-items: center;
  writing-mode: vertical-rl;
  height: 132px;
  margin-top: 15px;
  box-sizing: border-box;
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.25;
}

@media only screen and (max-width: 47.9375em) {
  .p-step__name {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-step__name {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-step-detail__item {
  margin-top: 64px;
}
.p-step-detail__item:last-child .p-step-detail__number:after {
  content: none;
}

@media print, screen and (max-width: 63.9375em) {
  .p-step-detail__item {
    margin-top: 35px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-step-detail__item {
    display: flex;
  }
}
.p-step-detail__number {
  position: relative;
  font-family: Times New Roman, sans-serif;
  font-weight: bold;
  font-size: 1.75rem;
  color: #74b708;
  line-height: 1.25;
}

@media print, screen and (min-width: 64em) {
  .p-step-detail__number {
    width: 148px;
    top: -2px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-step-detail__number:before {
    position: absolute;
    top: 0.45em;
    left: 94px;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #74b708;
    z-index: 1;
  }
}
@media print, screen and (min-width: 64em) {
  .p-step-detail__number:after {
    content: "";
    position: absolute;
    top: calc(0.45em + 5px);
    left: 98px;
    width: 2px;
    height: calc(100% + 64px);
    background-color: #c2cfc9;
  }
}
.p-step-detail__content {
  flex: 1;
}

@media only screen and (max-width: 47.9375em) {
  .p-step-detail__content {
    margin-top: 3px;
  }
}
.p-step-detail__important {
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-step-detail__important {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-step-detail__important {
    font-size: 1.125rem;
  }
}
.p-example__name {
  margin-top: 12px;
  font-weight: bold;
  font-size: 1.75rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-example__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-example__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-example__badge {
  margin-top: 6px;
}
.p-example__badge .c-badge + .c-badge {
  margin-left: 8px;
}

.p-example__lead {
  margin-top: 50px;
}

.p-example__visual {
  margin-top: 66px;
}

.p-example__data {
  margin-top: 50px;
}

.p-example__sub {
  font-size: 1.125rem;
  color: #74b708;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-example__sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-example__sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-example-table {
  margin-top: 7px;
}
.p-example-table th {
  font-weight: bold;
}
.p-example-table td {
  padding-left: 15px;
}
.p-example-table tr + tr th,
.p-example-table tr + tr td {
  padding-top: 2px;
}

@media only screen and (max-width: 47.9375em) {
  .p-example-table th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-example-table th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-location {
    padding-top: 13px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-location {
    padding-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-location__name {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-other-service {
    margin-top: 10px;
    padding-top: 7.25px;
    padding-bottom: 5px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-other-service {
    margin-top: 30px;
    padding-top: 15px;
    padding-bottom: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-other-service {
    padding-top: 20px;
    padding-bottom: 14px;
  }
}
.p-other-service__thumb {
  width: 30px;
  height: 34px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.p-other-service__thumb > img {
  max-width: 100%;
}

@media print, screen and (max-width: 63.9375em) {
  .p-other-service__thumb {
    margin-right: 15px;
  }
}
.p-other-service__title {
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-other-service__title {
    font-weight: normal;
  }
}
.p-voice {
  display: flex;
}
.p-voice + .p-voice {
  margin-top: 40px;
}

.p-voice__face {
  width: 94px;
}

.p-voice__content {
  flex: 1;
  padding-top: 33px;
  padding-right: 50px;
  padding-bottom: 35px;
  padding-left: 50px;
  background-color: #f7f7f6;
  border-radius: 4px;
}

.p-voice__title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.25rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-voice__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-voice__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-voice__meta {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2px;
  margin-left: -20px;
}
.p-voice__meta dl {
  display: flex;
  margin-left: 20px;
}
.p-voice__meta dt {
  font-weight: bold;
}
.p-voice__meta dd {
  margin-left: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-voice__meta dt {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-voice__meta dt {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-voice__desc {
  margin-top: 16px;
}

.p-sightseeing__head {
  display: flex;
}

.p-sightseeing__heading {
  display: flex;
  align-items: baseline;
}
.p-sightseeing__heading > i {
  font-family: Times New Roman, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 0.875rem;
  color: #fff;
  background-color: #1a1a1a;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  margin-top: 6px;
  margin-right: 9px;
  position: relative;
}
.p-sightseeing__heading > i.-useful {
  margin-right: 9px;
  margin-top: 0;
  top: -3px;
}

.p-sightseeing__title span {
  font-size: 1.375rem;
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}
.p-sightseeing__title span.-access {
  font-size: 1rem;
}
.p-sightseeing__title span.-access.-wrap {
  display: block;
  margin-left: -9px;
}

@media only screen and (max-width: 47.9375em) {
  .p-sightseeing__title span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-sightseeing__title span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-sightseeing__category {
  font-size: 1.25rem;
  font-weight: bold;
  color: #74b708;
}

/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-home-block-feature__wrap {
  background-color: #fff;
  position: relative;
  z-index: 0;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__wrap {
    padding-bottom: 60px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block-feature__wrap {
    padding-bottom: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__wrap {
    padding-bottom: 118px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature {
    position: relative;
    overflow: hidden;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__box {
    padding-top: 44px;
    padding-right: 4.6875%;
    padding-bottom: 35px;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__box {
    position: relative;
    z-index: 10;
    width: 75vw;
  }
}
.p-home-block-feature__inner {
  box-sizing: border-box;
}

@media print, screen and (min-width: 64em) {
  .p-home-block-feature__inner {
    max-width: 1400px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__inner {
    padding-right: 100px;
    padding-left: 100px;
  }
}
.p-home-block-feature__name {
  color: #74b708;
}
.p-home-block-feature__name span.-ja {
  display: block;
  font-weight: bold;
  font-size: 1.125rem;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__name {
    line-height: 1.5;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block-feature__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block-feature__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__name span.-ja {
    font-size: 1rem;
  }
}
.p-home-block-feature__title {
  margin-top: 4px;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
}
.p-home-block-feature__title .-three {
  display: none;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block-feature__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block-feature__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__title {
    font-size: 1.375rem;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__title {
    font-size: 1.75rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-home-block-feature__title br {
    display: none;
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block-feature__title br {
    display: block;
  }
}
@media screen and (max-width: 1130px) {
  .p-home-block-feature__title .-three {
    display: block;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__title .-three {
    display: none;
  }
}
.p-home-block-feature__link {
  display: inline-block;
  color: #fff;
  font-weight: bold;
  font-size: 1.125rem;
}
.p-home-block-feature__link > i {
  display: inline-block;
  margin-right: 10px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__link {
    font-size: 1rem;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__link {
    padding-left: 100px;
  }
}
.p-home-block-feature__subtitle {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center;
}
.p-home-block-feature__subtitle + .c-image {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-home-block-feature__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-home-block-feature__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__subtitle {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__subtitle {
    font-size: 1rem;
  }
}
.p-home-block-feature__lead {
  margin-top: 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__lead {
    line-height: 1.625;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__lead br {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__lead br {
    display: block;
  }
}
.p-home-visual-main {
  display: block;
}
.p-home-visual-main img {
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-visual-main img {
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-visual-main img {
    width: 100%;
  }
}
.p-home-block-feature__visual {
  display: block;
}
.p-home-block-feature__visual > img {
  width: 100%;
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__visual {
    margin-top: 50px;
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__visual {
    margin-top: 95px;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__visual {
    position: absolute;
    z-index: 3;
    width: 72vw;
  }
}
.p-home-block-feature__button {
  margin-right: auto;
  margin-left: auto;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__button {
    margin-top: 35px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__button {
    width: 250px;
    margin-top: 52px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__name {
    padding-left: 100px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature__title,
  .p-home-block-feature__lead {
    padding-left: 100px;
  }
}
.p-home-block-feature__bg-text {
  position: absolute;
  z-index: -1;
}
.p-home-block-feature__bg-text > img {
  width: 36.375vw;
  vertical-align: bottom;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__bg-text {
    display: none;
  }
}
.browser-is-ie .p-home-block-feature__bg-text > img {
  width: 100%;
}

.p-home-block-feature__bg {
  position: relative;
  background-color: #212121;
  display: block;
  content: "";
  z-index: -1;
  height: 300px;
  background-color: #212121;
  width: 75vw;
  top: -222px;
  overflow: hidden;
}
.p-home-block-feature__bg .p-home-block-feature__bg-text {
  font-size: 11.875rem;
  color: #1a1a1a;
  bottom: -33px;
  right: -13px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature__bg {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-feature {
    padding-top: 114px;
    padding-bottom: 54px;
  }
}
.p-home-block-feature.-feature::after {
  display: none;
}
.p-home-block-feature.-feature .p-home-block-feature__bg-text {
  right: -5px;
  bottom: -2px;
}

.browser-is-ie .p-home-block-feature.-feature .p-home-block-feature__bg-text {
  width: 38vw;
}

.p-home-block-feature.-example {
  background-color: #f2f2f1;
}
.p-home-block-feature.-support .p-home-block-feature__name {
  text-align: left;
}
.p-home-block-feature.-support .p-home-block-feature__name span.-en {
  padding-left: 0;
}
.p-home-block-feature.-support .p-home-block-feature__name span.-en:before {
  display: none;
}
.p-home-block-feature.-support .p-home-block-feature__title {
  text-align: left;
}
.p-home-block-feature.-room_and_price {
  position: relative;
}
.p-home-block-feature.-room_and_price .p-home-block-feature__visual::after {
  left: -50%;
}

@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-support {
    padding-bottom: 110px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-room_and_price {
    padding-top: 674px;
    padding-bottom: 144px;
    height: 948px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature.-room_and_price .p-home-block-feature__visual {
    top: 0;
    right: 0;
    margin-top: 120px;
  }
}
.p-home-block-feature-visual {
  display: block;
}
.p-home-block-feature-visual img {
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block-feature-visual img {
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-home-block-feature-visual img {
    width: 100%;
  }
}
.p-dropdown-title {
  font-size: 1.5rem;
  color: #fff;
  font-weight: bold;
  position: relative;
}

@media print, screen and (max-width: 63.9375em) {
  .p-dropdown-title {
    font-size: 0.9375rem;
  }
}
.p-floor-map__img {
  position: relative;
}
.p-floor-map__img img {
  width: 100%;
}
.p-floor-map__img > map > area:hover {
  background-color: #fff;
}

.p-floor-map {
  position: relative;
}

.p-floor-map__nav {
  margin-top: 14px;
}

@media print, screen and (min-width: 75em) {
  .p-floor-map__nav {
    margin-top: 0;
    position: absolute;
    bottom: 0;
  }
}
.p-floor-map__nav-item {
  line-height: 1;
}
.p-floor-map__nav-item:first-child {
  margin-top: 0;
}

@media print, screen and (max-width: 63.9375em) {
  .p-floor-map__nav-item {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-floor-map__nav-item {
    margin-top: 11px;
  }
}
.p-floor-map__nav-link {
  display: block;
  padding: 0;
  background: transparent;
  border: none;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1;
}
.p-floor-map__nav-link:focus {
  outline: none;
}
.p-floor-map__nav-link span {
  color: #2d2d2d;
  font-weight: bold;
  transition: all 0.2s;
}

@media print, screen and (min-width: 64em) {
  .p-floor-map__nav-link:hover span {
    color: #8ac9c4;
    transition: color 0.2s;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-floor-map__nav-link span {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-floor-map__nav-link span {
    font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
.p-floor-map__nav-parallel::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219.218%22%20height%3D%2218.445%22%3E%3Cg%3E%3Cg%3E%3Cpath%20d%3D%22M11.309%207.144H9.492a.341.341%200%2001-.341-.341V4.986a.341.341%200%2000-.341-.341H7.554a.341.341%200%2000-.341.341v1.817a.341.341%200%2001-.341.341H5.055a.341.341%200%2000-.341.341v1.259a.341.341%200%2000.341.341h1.817a.341.341%200%2001.341.341v1.817a.341.341%200%2000.341.341H8.81a.341.341%200%2000.341-.341V9.426a.341.341%200%2001.341-.341h1.817a.341.341%200%2000.341-.341V7.488a.341.341%200%2000-.341-.344z%22%20fill%3D%22%23009e6f%22%2F%3E%3Cpath%20d%3D%22M7.742.405a7.753%207.753%200%20108.149%207.337A7.753%207.753%200%20007.742.405zm.71%2013.549a5.814%205.814%200%20115.502-6.11%205.821%205.821%200%2001-5.502%206.11z%22%20fill%3D%22%23009e6f%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-width%3D%222%22%20d%3D%22M13.185%2012.683l4.546%204.094%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%222%22%20d%3D%22M14.094%2013.502l3.637%203.275%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  top: 4px;
  margin-right: 7px;
}

.p-floor-map__nav-panorama::before {
  display: inline-block;
  content: "";
  width: 21px;
  height: 21px;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.299%22%20height%3D%2220.959%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%3E%3Cpath%20d%3D%22M5.649%2010.007a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20010%202.416h0a1.208%201.208%200%20011.208%201.208v-.07a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208%22%2F%3E%3Cpath%20d%3D%22M11.561%2010.007a1.208%201.208%200%2000-1.208-1.208h0a1.208%201.208%200%2000-1.208%201.208v2.346a1.208%201.208%200%20001.208%201.208h0a1.208%201.208%200%20001.208-1.208v-.09a1.208%201.208%200%2000-1.209-1.21h0a1.208%201.208%200%2000-1.208%201.208%22%2F%3E%3Cpath%20d%3D%22M15.057%2012.353a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208v-2.346a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20011.208%201.208z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M16.076%208.799v.685%22%2F%3E%3Cpath%20d%3D%22M1.552%2010.71a8.977%208.977%200%200111.286-8.235%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.266%2018.746a8.973%208.973%200%2001-13.407-5.292%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.265%203.518a8.976%208.976%200%20011.591%2013.955%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M11.966%201.103l.872%201.371-1.5.842%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M18.48%2017.429l-1.624.044.046-1.718%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M1.084%2014.883l.774-1.429%201.464.9%22%20stroke-width%3D%221.6%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  top: 4px;
  margin-right: 7px;
}

/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-service-block__wrap {
  background-color: #1a1a1a;
  position: relative;
  z-index: 0;
}

@media print, screen and (min-width: 64em) {
  .p-service-block {
    position: relative;
    overflow: hidden;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block:last-of-type .p-service-block__box {
    padding-bottom: 45px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block:last-of-type .p-service-block__box {
    margin-bottom: 120px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__box {
    padding-top: 30px;
    padding-right: 0;
    padding-bottom: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__box {
    box-sizing: border-box;
    position: relative;
    z-index: 10;
    padding-top: 80px;
    padding-bottom: 65px;
    width: 72vw;
    min-height: 425px;
    height: auto;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box {
    min-height: 525px;
    height: auto;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online {
    min-height: 525px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online .p-service-block__name,
  .p-service-block__box.-online .p-service-block__title,
  .p-service-block__box.-online .p-service-block__lead,
  .p-service-block__box.-online .p-service-block__text {
    padding-right: 60px;
    padding-left: 60px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-online .p-service-block__bg {
    top: -18px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example {
    min-height: 465px;
    padding-top: 85px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example .p-service-block__name,
  .p-service-block__box.-example .p-service-block__title,
  .p-service-block__box.-example .p-service-block__lead,
  .p-service-block__box.-example .p-service-block__text {
    padding-right: 60px;
    padding-left: 60px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block__box.-example .p-service-block__bg {
    top: -10px;
  }
}
.p-service-block__name {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  color: #74b708;
}
.p-service-block__name span.-ja {
  display: block;
  font-weight: bold;
  font-size: 1.125rem;
}
.p-service-block__name span.-en {
  font-family: Times New Roman, sans-serif;
  flex-wrap: 400;
  font-size: 1.375rem;
}
.p-service-block__name span.-en.-online {
  font-size: 1.25rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__name {
    line-height: 1.5;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__name span.-ja {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__name span.-ja {
    font-size: 1rem;
  }
}
.p-service-block__title {
  margin-top: 4px;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__title {
    font-size: 1.375rem;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__title {
    font-size: 1.75rem;
    margin-top: 10px;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__title.-kiosk {
    margin-top: 22px;
  }
}
.p-service-block__text {
  font-size: 1rem;
  line-height: 1.625;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__text {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__text {
    margin-top: 22px;
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-service-block__text {
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-service-block__subtitle {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center;
}
.p-service-block__subtitle + .c-image {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__subtitle {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__subtitle {
    font-size: 1rem;
  }
}
.p-service-block__lead {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__lead {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__lead {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__lead {
    line-height: 1.625;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__lead {
    font-size: 1.125rem;
    font-weight: bold;
  }
}
.p-service-block__visual {
  display: block;
}
.p-service-block__visual img {
  display: block;
  max-width: 700px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__visual {
    margin-top: 18px;
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__visual {
    position: relative;
    z-index: 20;
    display: flex;
  }
  .browser-is-ie .p-service-block__visual {
    width: 100%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__visual img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__visual img {
    width: 43vw;
  }
}
@media screen and (min-width: 1400px) {
  .p-service-block__visual img {
    width: 50vw;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__visual::after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__visual::after {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    height: 50%;
    background-color: #1a1a1a;
    top: 50%;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__sec {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__sec {
    margin-top: 48px;
  }
}
.p-service-block__panel {
  position: relative;
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__panel {
    padding-top: 38px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__panel {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
.p-service-block__button {
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (max-width: 47.9375em) {
  .p-service-block__button {
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__button {
    width: 250px;
    margin-top: 34px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__button.-left {
    margin-right: 0;
    margin-left: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__button.-left {
    margin-right: 0;
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-service-block__button.-left {
    margin-right: 0;
    margin-left: 60px;
  }
}
.p-service-block__name {
  line-height: 1;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__name {
    padding-right: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__name {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-service-block__name {
    padding-right: 60px;
    padding-left: 60px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-service-block__title,
  .p-service-block__lead {
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-service-block__bg-text {
  font-family: Times New Roman, sans-serif;
  position: absolute;
  font-weight: normal;
  line-height: 1;
  font-size: 8.375rem;
  color: #e5ecee;
  z-index: -1;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__bg-text {
    display: none;
  }
}
.p-service-block__bg {
  position: absolute;
  display: block;
  content: "";
  z-index: -1;
  height: 100%;
  background-color: #f3f6f6;
  width: 100%;
  top: -1px;
  left: 0;
  overflow: hidden;
}
.p-service-block__bg .p-service-block__bg-text {
  font-size: 14vw;
  font-feature-settings: "palt";
  letter-spacing: -6px;
  color: #e5ecee;
  font-weight: 300;
  bottom: -29px;
  right: 0;
  line-height: 1;
  white-space: nowrap;
}
.p-service-block__bg .p-service-block__bg-text.-left {
  left: 0;
}
.p-service-block__bg.-online {
  background-color: #fff;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block__bg {
    display: none;
  }
}
@media screen and (min-width: 1900px) {
  .p-service-block__bg .p-service-block__bg-text {
    font-size: 10vw;
  }
}
@media screen and (min-width: 2500px) {
  .p-service-block__bg .p-service-block__bg-text {
    font-size: 8vw;
  }
}
.p-service-block.-feature {
  position: relative;
}
.p-service-block.-feature::after {
  display: none;
}
.p-service-block.-feature .p-service-block__bg-text {
  right: -13px;
  bottom: -47px;
}
.p-service-block.-left {
  position: relative;
}
.p-service-block.-left.-commitment01 .p-service-block__bg .p-service-block__bg-text {
  right: 0;
}
.p-service-block.-right {
  position: relative;
}
.p-service-block.-right .p-service-block__visual::after {
  left: 0;
}

@media print, screen and (min-width: 64em) {
  .p-service-block.-feature {
    padding-top: 128px;
    padding-bottom: 95px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-left {
    display: flex;
    padding-top: 90px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-left .p-service-block__visual {
    top: 0;
    left: 0;
    margin-top: -80px;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-left .p-service-block__visual {
    margin-top: -90px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-left .p-service-block__box {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-left .p-service-block__box .p-service-block__bg {
    width: 54vw;
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 1900px) {
  .p-service-block.-left .p-service-block__box .p-service-block__bg {
    width: 42vw;
  }
}
@media screen and (min-width: 2500px) {
  .p-service-block.-left .p-service-block__box .p-service-block__bg {
    width: 36vw;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-left.-kiosk .p-service-block__visual {
    margin-top: -55px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-right {
    margin-top: 80px;
    display: flex;
    flex-direction: row-reverse;
    padding-top: 90px;
    box-sizing: border-box;
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-right {
    padding-top: 90px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-right .p-service-block__visual {
    margin-top: -80px;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-right .p-service-block__visual {
    margin-top: -90px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-right .p-service-block__box {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-right .p-service-block__box .p-service-block__bg {
    width: 54vw;
    left: 0;
  }
}
@media screen and (min-width: 1900px) {
  .p-service-block.-right .p-service-block__box .p-service-block__bg {
    width: 43vw;
  }
}
@media screen and (min-width: 2500px) {
  .p-service-block.-right .p-service-block__box .p-service-block__bg {
    width: 36vw;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-right.-mb_0 {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-right.-kiosk .p-service-block__visual {
    margin-top: -55px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-pt_60 {
    padding-top: 60px;
  }
}
/* サービス以下
----------------------------------------------------------------- */
.p-service-block__inner {
  box-sizing: border-box;
}

@media print, screen and (min-width: 64em) {
  .p-service-block__inner {
    padding-top: 0;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block__inner {
    max-width: 1400px;
    padding-top: 40px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    padding-bottom: 40px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block__inner {
    padding-top: 40px;
    padding-right: 4.6875%;
    padding-bottom: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block__name.-center {
    text-align: center;
  }
}
.p-service-block.-commitment {
  position: relative;
}
.p-service-block.-commitment .p-service-block__name {
  font-weight: bold;
}
.p-service-block.-commitment .p-service-block__title {
  padding-right: 0;
  padding-left: 0;
}
.p-service-block.-commitment .p-service-block__desc {
  position: relative;
  font-size: 1rem;
}
.p-service-block.-operator .p-service-block__title {
  color: #1a1a1a;
}
.p-service-block.-operator .p-service-block__desc {
  font-size: 1rem;
}
.p-service-block.-example {
  background-color: #f2f2f1;
}
.p-service-block.-example .p-service-block__title {
  color: #1a1a1a;
}
.p-service-block.-example_top:last-of-type .p-service-block__box {
  margin-bottom: 50px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-commitment {
    padding-top: 52px;
    padding-bottom: 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment {
    padding-top: 110px;
    padding-bottom: 56px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-service-block.-commitment .p-service-block__name {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-service-block.-commitment .p-service-block__name {
    font-size: 1.25rem;
    position: relative;
    z-index: 20;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-commitment .p-service-block__title {
    margin-top: 6px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment .p-service-block__title {
    font-size: 2.125rem;
    text-align: center;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-commitment .p-service-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment .p-service-block__title:after {
    content: "";
    display: block;
    width: 64vw;
    max-width: 958px;
    height: 140px;
    position: absolute;
    top: 70px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    background-image: url("/service/img/bg_commitment.svg");
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-commitment .p-service-block__desc {
    text-align: left;
    margin-top: 8px;
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment .p-service-block__desc {
    text-align: center;
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-operator {
    overflow: inherit;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-operator .p-service-block__title {
    font-size: 2.125rem;
    text-align: center;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-operator .p-service-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-operator .p-service-block__title:after {
    content: "";
    display: block;
    width: 60vw;
    max-width: 770px;
    height: 140px;
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    background-image: url("/service/img/bg_cordinator.svg");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-operator .p-service-block__desc {
    text-align: left;
    margin-top: 8px;
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-operator .p-service-block__desc {
    text-align: center;
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-service {
    padding-top: 120px;
    padding-bottom: 0px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-service .p-service-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-service .p-service-block__title:after {
    content: "";
    display: block;
    width: 46vw;
    max-width: 581px;
    height: 170px;
    position: absolute;
    top: -52px;
    left: 50%;
    transform: translateX(-50%);
    background-image: url("/service/img/bg_service.svg");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment.-QandA {
    padding-top: 94px;
    padding-bottom: 20px;
    overflow: visible;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-commitment.-QandA .p-service-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-commitment.-QandA .p-service-block__title:after {
    content: "";
    display: block;
    width: 30vw;
    max-width: 435px;
    height: 174px;
    position: absolute;
    top: -70px;
    left: 50%;
    transform: translateX(-50%);
    background-image: url("/service/img/bg_qa.svg");
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-example {
    padding-top: 72px;
    padding-bottom: 128px;
    z-index: -2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-example .p-service-block__title {
    font-size: 2.125rem;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .p-service-block.-example .p-service-block__title:after {
    font-family: Times New Roman, sans-serif;
    content: "Case";
    color: #eeeeea;
    display: block;
    position: absolute;
    z-index: -1;
    font-size: 11.875rem;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
    font-weight: normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.-example .p-service-block__title:after {
    display: none;
  }
}
/* 以下事例トップページにて使用 */
@media print, screen and (min-width: 87.5em) {
  .p-service-block.-example_top .p-service-block__visual img {
    width: 38vw;
  }
}
.p-service-block__bg-text.-lecture {
  font-size: 9vw;
  letter-spacing: -1px;
  bottom: -15px;
}

@media print, screen and (min-width: 75em) {
  .p-service-block__bg-text.-lecture {
    bottom: -22px;
  }
}
@media print, screen and (min-width: 100em) {
  .p-service-block__bg-text.-lecture {
    bottom: -25px;
  }
}
.p-modal {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  z-index: 70000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
}
.p-modal:before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.18);
  content: "";
}
.p-modal.-visible {
  visibility: visible;
  opacity: 1;
}

@media only screen and (max-width: 47.9375em) {
  .p-modal.-access {
    display: none;
  }
}
.p-modal__close {
  box-sizing: border-box;
  display: block;
  position: absolute;
  right: 28px;
  margin: 0;
  padding: 0;
  color: #2d2d2d;
  background-color: transparent;
  border: none;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  align-items: baseline;
  font-weight: bold;
  cursor: pointer;
  transition: color 0.1s 0s ease;
}
.p-modal__close:focus {
  outline: none;
}

@media only screen and (max-width: 47.9375em) {
  .p-modal__close {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-modal__close {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-modal__close {
    bottom: 19px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-modal__close {
    top: 19px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-modal__close:hover {
    color: #8ac9c4;
  }
}
.p-modal__panel {
  box-sizing: border-box;
  position: relative;
  width: auto;
  max-width: 960px;
  background-color: #fff;
}

@media only screen and (max-width: 47.9375em) {
  .p-modal__panel {
    padding-top: 24px;
    padding-bottom: 60px;
    padding-right: 24px;
    padding-left: 24px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-modal__panel {
    padding-top: 60px;
    padding-bottom: 60px;
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-modal__inner {
  padding: 14px;
}
.p-modal__inner img {
  display: block;
  width: auto;
  max-width: 100%;
}

.p-modal.-flor .p-modal__panel {
  max-width: 1200px;
}

@media print, screen and (min-width: 48em) {
  .p-modal.-flor .p-modal__panel {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-detail-fv {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-detail-fv,
  .c-image + .p-detail-fv,
  .p-scrollable + .p-detail-fv {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-detail-fv,
  .c-image + .p-detail-fv,
  .p-scrollable + .p-detail-fv {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-detail-fv {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-detail-fv {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-detail-fv {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-detail-fv {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-detail-fv {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-detail-fv {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-detail-fv {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-detail-fv {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-detail-fv,
  .c-heading-2-1 + .p-detail-fv {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-detail-fv,
  .c-heading-2-1 + .p-detail-fv {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-detail-fv {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-detail-fv {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-detail-fv {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-detail-fv {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-detail-fv,
  .c-list + .p-detail-fv {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-detail-fv,
  .c-list + .p-detail-fv {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-detail-fv {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-detail-fv {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-detail-fv {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-detail-fv {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-fv {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-fv {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-detail-fv__inner {
  position: relative;
}

.p-detail-fv__img {
  padding-top: 0;
}
.p-detail-fv__img > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  z-index: 0;
  background-position: 50% 50%;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-fv__img {
    height: 75vw;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-fv__img {
    height: 100vh;
    min-height: 450px;
    max-height: 700px;
    box-sizing: border-box;
  }
}
.p-detail-heading {
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading {
    margin-top: 34px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading {
    width: 80%;
    margin-top: 55px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-heading {
    padding-top: 54px;
    margin-top: -54px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-heading::before {
    content: "";
    display: block;
    width: 100vw;
    height: 54px;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #fff;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading::before {
    width: 100%;
    right: auto;
    left: 0;
  }
}
.p-detail-heading__main {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  font-size: 2.25rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading__main {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading__main {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-detail-heading__main {
    font-size: 1.625rem;
  }
}
.p-detail-heading__en {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  display: block;
  color: #74b708;
}

@media only screen and (max-width: 47.9375em) {
  .p-detail-heading__en {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading__en {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-detail-heading__en {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-detail-heading__en {
    font-size: 1.25rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-language-menu {
    position: absolute;
    padding-right: 4.6875%;
    top: 20px;
    right: 0;
    padding-left: 14px;
    margin-left: 14px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-language-menu {
    padding-left: 6px;
    margin-left: 8px;
    border-left: 1px solid #dcdfe0;
  }
}
@media screen and (min-width: 1420px) {
  .p-language-menu {
    padding-left: 14px;
    margin-left: 14px;
  }
}
.p-language-menu__button {
  position: relative;
  top: 3px;
  display: block;
}

.p-language-menu__text {
  font-weight: bold;
  display: flex;
  align-items: center;
  transition: all 0.1s 0s ease;
}
.p-language-menu__text::before {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%3E%3Cpath%20d%3D%22M14.475%203.3c-.1-.133-.195-.263-.3-.39a8%208%200%2000-12.35%200q-.158.191-.3.39a8%208%200%2000.007%209.407c.1.135.2.268.308.4a8%208%200%200012.34-.025c.108-.127.21-.26.306-.4a8%208%200%2000-.01-9.382zm.265%204.446h-2.685a11.917%2011.917%200%2000-.391-2.846%208.786%208.786%200%20001.806-.846%206.7%206.7%200%20011.27%203.695zM8.25%201.31c1.168.162%202.2%201.441%202.791%203.259a11.087%2011.087%200%2001-2.791.409zm-.5%200v3.668a11.087%2011.087%200%2001-2.791-.409C5.548%202.751%206.582%201.472%207.75%201.31zm0%204.168v2.271H4.444a11.379%2011.379%200%2001.375-2.7%2011.479%2011.479%200%20002.931.428zm0%202.772v2.272a11.549%2011.549%200%2000-2.928.44%2011.39%2011.39%200%2001-.377-2.712zm0%202.771v3.668c-1.166-.162-2.2-1.436-2.787-3.248a11.055%2011.055%200%20012.787-.42zm.5%203.668V11.02a11%2011%200%20012.792.4c-.589%201.824-1.623%203.106-2.792%203.268zm0-4.169V8.249h3.305a11.4%2011.4%200%2001-.372%202.693%2011.465%2011.465%200%2000-2.933-.422zm0-2.77V5.477a11.486%2011.486%200%20002.931-.431%2011.4%2011.4%200%2001.374%202.7zm4.916-4.086a8.327%208.327%200%2001-1.643.758%206.384%206.384%200%2000-1.794-2.945%206.734%206.734%200%20013.436%202.186zM6.27%201.477A6.386%206.386%200%20004.477%204.42a8.329%208.329%200%2001-1.642-.758A6.738%206.738%200%20016.27%201.477zM2.53%204.053a8.817%208.817%200%20001.8.846%2011.917%2011.917%200%2000-.391%202.851H1.26a6.7%206.7%200%20011.27-3.697zM1.26%208.249h2.684a11.9%2011.9%200%2000.394%202.861%208.852%208.852%200%2000-1.8.845A6.7%206.7%200%20011.26%208.249zm1.588%204.1a8.392%208.392%200%20011.634-.759%206.364%206.364%200%20001.792%202.933%206.735%206.735%200%2001-3.426-2.173zm6.878%202.173a6.375%206.375%200%20001.8-2.955%208.3%208.3%200%20011.648.759%206.754%206.754%200%2001-3.448%202.197zm3.754-2.588a8.777%208.777%200%2000-1.813-.846%2011.943%2011.943%200%2000.388-2.84h2.685a6.7%206.7%200%2001-1.26%203.687z%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E\a%20%20");
  display: block;
  transition: all 0.1s 0s ease;
}

@media print, screen and (max-width: 63.9375em) {
  .p-language-menu__text {
    flex-direction: row;
    font-size: 0.9375rem;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-language-menu__text {
    flex-direction: column;
    font-size: 0.4375rem;
  }
}
@media screen and (min-width: 1420px) {
  .p-language-menu__text {
    font-size: 0.5625rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-language-menu__text::before {
    margin-right: 4px;
    width: 12px;
    height: 12px;
    margin-bottom: 1px;
  }
}
@media print, screen and (min-width: 69.6875em) {
  .p-language-menu__text::before {
    width: 12px;
    height: 12px;
    margin-bottom: 2px;
  }
}
@media screen and (min-width: 1420px) {
  .p-language-menu__text::before {
    width: 16px;
    height: 16px;
  }
}
.p-language-menu__button:hover .p-language-menu__text {
  color: #74b708;
}
.p-language-menu__button:hover .p-language-menu__text::before {
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%3E%3Cpath%20d%3D%22M14.475%203.3c-.1-.133-.195-.263-.3-.39a8%208%200%2000-12.35%200q-.158.191-.3.39a8%208%200%2000.007%209.407c.1.135.2.268.308.4a8%208%200%200012.34-.025c.108-.127.21-.26.306-.4a8%208%200%2000-.01-9.382zm.265%204.446h-2.685a11.917%2011.917%200%2000-.391-2.846%208.786%208.786%200%20001.806-.846%206.7%206.7%200%20011.27%203.695zM8.25%201.31c1.168.162%202.2%201.441%202.791%203.259a11.087%2011.087%200%2001-2.791.409zm-.5%200v3.668a11.087%2011.087%200%2001-2.791-.409C5.548%202.751%206.582%201.472%207.75%201.31zm0%204.168v2.271H4.444a11.379%2011.379%200%2001.375-2.7%2011.479%2011.479%200%20002.931.428zm0%202.772v2.272a11.549%2011.549%200%2000-2.928.44%2011.39%2011.39%200%2001-.377-2.712zm0%202.771v3.668c-1.166-.162-2.2-1.436-2.787-3.248a11.055%2011.055%200%20012.787-.42zm.5%203.668V11.02a11%2011%200%20012.792.4c-.589%201.824-1.623%203.106-2.792%203.268zm0-4.169V8.249h3.305a11.4%2011.4%200%2001-.372%202.693%2011.465%2011.465%200%2000-2.933-.422zm0-2.77V5.477a11.486%2011.486%200%20002.931-.431%2011.4%2011.4%200%2001.374%202.7zm4.916-4.086a8.327%208.327%200%2001-1.643.758%206.384%206.384%200%2000-1.794-2.945%206.734%206.734%200%20013.436%202.186zM6.27%201.477A6.386%206.386%200%20004.477%204.42a8.329%208.329%200%2001-1.642-.758A6.738%206.738%200%20016.27%201.477zM2.53%204.053a8.817%208.817%200%20001.8.846%2011.917%2011.917%200%2000-.391%202.851H1.26a6.7%206.7%200%20011.27-3.697zM1.26%208.249h2.684a11.9%2011.9%200%2000.394%202.861%208.852%208.852%200%2000-1.8.845A6.7%206.7%200%20011.26%208.249zm1.588%204.1a8.392%208.392%200%20011.634-.759%206.364%206.364%200%20001.792%202.933%206.735%206.735%200%2001-3.426-2.173zm6.878%202.173a6.375%206.375%200%20001.8-2.955%208.3%208.3%200%20011.648.759%206.754%206.754%200%2001-3.448%202.197zm3.754-2.588a8.777%208.777%200%2000-1.813-.846%2011.943%2011.943%200%2000.388-2.84h2.685a6.7%206.7%200%2001-1.26%203.687z%22%20fill%3D%22%236a9a96%22%2F%3E%3C%2Fsvg%3E\a%20%20");
}

.p-operating-company {
  color: #fff;
}
.p-operating-company a {
  color: #fff;
}
.p-operating-company .c-blank {
  width: 12px;
  height: 10px;
}
.p-operating-company .c-blank:after {
  position: absolute;
  display: inline-block;
  content: "";
  right: 0;
  top: 0;
  width: 8px;
  height: 6px;
  background-color: #74b708;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-operating-company .c-blank:before {
  position: absolute;
  display: inline-block;
  content: "";
  bottom: 0;
  left: 0;
  width: 9px;
  height: 8px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  border-color: #74b708;
  border-radius: 0 0 0 2px;
  box-sizing: border-box;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-operating-company .c-blank::before {
  width: 9px;
  height: 8px;
  border-width: 0 0 1px 1px;
}
.p-operating-company .c-blank::after {
  width: 9px;
  height: 7px;
}

@media only screen and (max-width: 47.9375em) {
  .p-operating-company {
    margin-top: 16px;
    font-size: 0.75rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-operating-company {
    margin-top: 48px;
    font-size: 0.75rem;
  }
}
.p-operating-company__head {
  font-weight: bold;
}

.p-operating-company__list {
  margin-top: 10px;
}
.p-operating-company__list li > a > span {
  margin-left: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-operating-company__list li {
    line-height: 1.8;
  }
}
@media print, screen and (min-width: 48em) {
  .p-operating-company__list li {
    line-height: 1.75;
  }
}
@media print, screen and (min-width: 64em) {
  .p-operating-company__list li {
    line-height: 1.8;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-panorama {
    color: #fff;
    font-size: 0.75rem;
    position: absolute;
    bottom: -31px;
    right: 4.6875%;
    display: flex;
  }
  .p-panorama::after {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220.299%22%20height%3D%2220.959%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23009e6f%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%3E%3Cpath%20d%3D%22M5.649%2010.007a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20010%202.416h0a1.208%201.208%200%20011.208%201.208v-.07a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208%22%2F%3E%3Cpath%20d%3D%22M11.561%2010.007a1.208%201.208%200%2000-1.208-1.208h0a1.208%201.208%200%2000-1.208%201.208v2.346a1.208%201.208%200%20001.208%201.208h0a1.208%201.208%200%20001.208-1.208v-.09a1.208%201.208%200%2000-1.209-1.21h0a1.208%201.208%200%2000-1.208%201.208%22%2F%3E%3Cpath%20d%3D%22M15.057%2012.353a1.208%201.208%200%2001-1.208%201.208h0a1.208%201.208%200%2001-1.208-1.208v-2.346a1.208%201.208%200%20011.208-1.208h0a1.208%201.208%200%20011.208%201.208z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M16.076%208.799v.685%22%2F%3E%3Cpath%20d%3D%22M1.552%2010.71a8.977%208.977%200%200111.286-8.235%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.266%2018.746a8.973%208.973%200%2001-13.407-5.292%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M15.265%203.518a8.976%208.976%200%20011.591%2013.955%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M11.966%201.103l.872%201.371-1.5.842%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M18.48%2017.429l-1.624.044.046-1.718%22%20stroke-width%3D%221.6%22%2F%3E%3Cpath%20d%3D%22M1.084%2014.883l.774-1.429%201.464.9%22%20stroke-width%3D%221.6%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 6px;
    position: relative;
    top: 2px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-panorama {
    display: none;
  }
}
/* アクセス>料金表
----------------------------------------------------------------- */
.p-access-price-table {
  margin-top: 30px;
  font-size: 0.9375rem;
  box-sizing: border-box;
  white-space: nowrap;
}
.p-access-price-table thead .c-note-number {
  margin-left: 8px;
}
.p-access-price-table > tbody > tr:nth-child(1) {
  background-color: #f3f6f6;
}
.p-access-price-table > tbody > tr:last-of-type {
  border-bottom: 1px solid #dcdfe0;
}
.p-access-price-table > tbody > tr:first-of-type {
  border-top: 1px solid #dcdfe0;
}
.p-access-price-table > tbody > tr.-current {
  background-color: #dff5e2;
  color: #2b7443;
}
.p-access-price-table th {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  line-height: 1;
  border: 1px solid #dcdfe0;
}
.p-access-price-table td {
  line-height: 1.5;
  border: 1px solid #dcdfe0;
}
.p-access-price-table td:last-of-type {
  padding-right: 20px;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-access-price-table,
  .c-image + .p-access-price-table,
  .p-scrollable + .p-access-price-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-access-price-table,
  .c-image + .p-access-price-table,
  .p-scrollable + .p-access-price-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-access-price-table {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-access-price-table {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-access-price-table {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-access-price-table {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-access-price-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-access-price-table {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-access-price-table {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-access-price-table {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-access-price-table,
  .c-heading-2-1 + .p-access-price-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-access-price-table,
  .c-heading-2-1 + .p-access-price-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-access-price-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-access-price-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-access-price-table {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-access-price-table {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-access-price-table,
  .c-list + .p-access-price-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-access-price-table,
  .c-list + .p-access-price-table {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-access-price-table {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-access-price-table {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-access-price-table {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-access-price-table {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-access-price-table {
    display: none;
  }
}
@media screen and (min-width: 769px) and (max-width: 1000px) {
  .p-access-price-table {
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-access-price-table th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-access-price-table th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-access-price-table th {
    padding-top: 16px;
    padding-left: 10px;
    padding-bottom: 14px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-access-price-table td {
    padding-top: 14px;
    padding-left: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
  }
}
.p-access-price-table__time {
  margin-top: 8px;
  display: block;
  font-size: 0.75rem;
}

.p-health-figure {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  margin-right: -10px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-health-figure {
    display: block;
    margin-right: 0px;
  }
}
.p-health-figure__item {
  width: calc(50% - 10px);
  margin-right: 10px;
}
.p-health-figure__item.-icons {
  display: flex;
  flex-wrap: wrap;
  margin-top: -10px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-health-figure__item {
    width: 100%;
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-health-figure__item.-icons {
    margin-top: 12px;
    margin-left: -10px;
    width: calc(100% + 10px);
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-health-figure__item.-icons {
    display: block;
    width: 100%;
    margin-left: 0;
  }
}
.p-health-figure__desc {
  margin-top: 14px;
}

.p-health-figure__img img {
  display: block;
  width: 100%;
}

.p-health-icon {
  width: calc(33.3% - 10px);
  margin-top: 10px;
  margin-left: 10px;
  padding-top: 16px;
  padding-right: 16px;
  padding-left: 16px;
  padding-bottom: 20px;
  box-sizing: border-box;
  background-color: #f3f6f6;
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  align-items: center;
}

@media print, screen and (max-width: 63.9375em) {
  .p-health-icon {
    margin-top: 10px;
    margin-left: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-health-icon {
    width: 100%;
    margin-left: 0;
  }
}
.p-health-icon__head {
  font-size: 1rem;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.2;
}

@media only screen and (max-width: 47.9375em) {
  .p-health-icon__head {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-health-icon__head {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-health-icon__text {
  font-size: 0.75rem;
  text-align: center;
  line-height: 1.4;
  margin-top: 10px;
}

.browser-is-ie .p-health-icon__text {
  width: 100%;
}

.p-video {
  display: block;
  width: 100%;
  padding-top: 45.25%;
  position: relative;
}

.p-video__inner {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1277px) {
  .p-video__inner {
    height: 542px;
    width: 960px;
  }
}
.p-video__player {
  width: 100%;
  height: 100%;
}

.p-measures-item {
  border-bottom: 2px solid #dcdfe0;
  box-sizing: border-box;
  position: relative;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item {
    display: flex;
    padding-bottom: 15px;
    flex-direction: row-reverse;
    align-items: center;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item {
    padding-bottom: 16px;
  }
}
.p-measures-item__thumb {
  display: block;
}

@media print, screen and (min-width: 48em) {
  .p-measures-item__thumb {
    width: 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-item__thumb {
    width: 122px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-measures-item__content {
    flex: 1;
    margin-right: 18px;
  }
}
.p-measures-item__title {
  display: block;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item__title {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__title {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__title {
    margin-top: 14px;
  }
}
.p-measures-item__text {
  line-height: 1.6;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item__text {
    margin-top: 5px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__text {
    margin-top: 16px;
  }
}
.p-eating-rule {
  border: 1px solid #dcdfe0;
  border-radius: 4px;
  min-height: 250px;
  box-sizing: border-box;
  position: relative;
  padding-top: 22px;
  padding-right: 20px;
  padding-left: 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-eating-rule {
    height: 100%;
    padding-top: 16px;
    padding-right: 12px;
    padding-left: 12px;
    padding-bottom: 16px;
  }
}
.p-eating-rule__img {
  position: absolute;
  right: 30px;
  bottom: 30px;
  z-index: -1;
}

.p-eating-rule__number {
  color: #74b708;
  font-size: 2.5rem;
  font-family: "Prata", serif;
  font-weight: normal;
  line-height: 1;
}

.p-eating-rule__title {
  font-size: 1.125rem;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 11px;
}
.p-eating-rule__title br {
  display: none;
}

@media only screen and (max-width: 47.9375em) {
  .p-eating-rule__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-eating-rule__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .p-eating-rule__title br {
    display: block;
  }
}
.p-eating-rule__sec {
  margin-top: 12px;
}

.p-wifi-feature {
  margin-top: 10px;
}

.p-wifi-feature__row {
  display: grid;
  grid-template-columns: 93px 1fr;
  gap: 0 17px;
  border-bottom: 1px solid #dcdfe0;
  align-items: center;
  padding-top: 19px;
  padding-bottom: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-wifi-feature__row {
    padding-top: 8px;
    padding-bottom: 9px;
  }
}
.browser-is-ie .p-wifi-feature__row {
  display: flex;
}

.p-wifi-feature__heading {
  font-size: 0.875rem;
  color: #fff;
  background-color: #74b708;
  text-align: center;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 2px;
  height: 26px;
}

@media only screen and (max-width: 47.9375em) {
  .p-wifi-feature__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-wifi-feature__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-wifi-feature__desc {
  font-size: 1.125rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-wifi-feature__desc {
    font-size: 1rem;
  }
}
.browser-is-ie .p-wifi-feature__desc {
  margin-left: 12px;
}

.p-online-block {
  position: relative;
}

.p-online-block__bg-block {
  background-color: #fff;
  width: 860px;
  padding-top: 56px;
  padding-left: 62px;
  padding-bottom: 52px;
  box-sizing: border-box;
}

@media print, screen and (max-width: 63.9375em) {
  .p-online-block__bg-block {
    display: block;
    width: 100%;
    padding-top: 20px;
    padding-right: 12px;
    padding-left: 12px;
    padding-bottom: 10px;
  }
}
.p-online-block__text-block {
  width: 400px;
}

@media print, screen and (min-width: 64em) {
  .p-online-block__text-block {
    width: 340px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-online-block__text-block {
    width: 540px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-online-block__text-block {
    width: 100%;
  }
}
.p-online-block__heading {
  font-size: 1.75rem;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.4;
}
.p-online-block__heading br {
  display: none;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-block__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-online-block__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-online-block__heading {
    font-size: 1.375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-online-block__heading br {
    display: block;
  }
}
.p-online-block__desc {
  margin-top: 32px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-online-block__desc {
    margin-top: 16px;
  }
}
.p-online-block__img {
  position: absolute;
  top: 60px;
  right: 0;
}
.p-online-block__img img {
  display: block;
  width: 100%;
}
.p-online-block__img::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  content: "";
  display: block;
  z-index: 1;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.p-online-block__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: calc(50% + 4px);
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #1a1a1a;
  z-index: 2;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}

@media print, screen and (min-width: 64em) {
  .p-online-block__img {
    right: 0px;
    width: 400px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-online-block__img {
    width: 570px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-online-block__img {
    position: relative;
    display: block;
    top: 0;
    margin-top: 18px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-online-block__img::before {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-online-block__img::before {
    width: 80px;
    height: 80px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-online-block__img::after {
    border-width: 15px 0 15px 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-online-block__img::after {
    border-width: 18px 0 18px 24px;
  }
}
.p-online-block__button:after {
  content: "";
  opacity: 0.5;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  transition: all 0.1s 0s ease;
}

@media print, screen and (min-width: 64em) {
  .p-online-block__img:hover::after {
    border-color: transparent transparent transparent #74b708;
    z-index: 2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-online-block__img:hover .p-online-block__button:after {
    background-color: #74b708;
  }
}
.p-online-event__item {
  border: 1px solid #dcdfe0;
  box-sizing: border-box;
  position: relative;
  padding-top: 36px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 20px;
}
.p-online-event__item::before {
  content: "";
  display: block;
  width: 30px;
  /*バツ線の長さ*/
  height: 2px;
  /*バツ線の太さ*/
  background: #74b708;
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: calc(50% - 15px);
  right: -45px;
}
.p-online-event__item::after {
  content: "";
  display: block;
  width: 30px;
  /*バツ線の長さ*/
  height: 2px;
  /*バツ線の太さ*/
  background: #74b708;
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: calc(50% - 15px);
  right: -45px;
  transform: rotate(-45deg);
  transform-origin: 100% 50%;
  left: auto;
  right: -35px;
}
.p-online-event__item:last-of-type::before, .p-online-event__item:last-of-type::after {
  display: none;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-event__item {
    padding-top: 16px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 10px;
  }
  .p-online-event__item + .p-online-event__item {
    margin-top: 42px;
  }
  .p-online-event__item::before {
    top: auto;
    bottom: -12px;
    right: 50%;
    transform: translateX(50%) rotate(45deg);
  }
  .p-online-event__item::after {
    top: auto;
    bottom: -12px;
    right: 50%;
    transform: translateX(50%) rotate(45deg);
    bottom: -12px;
    right: calc(50% + 10px);
    transform: translateX(50%) rotate(-45deg);
  }
}
.p-online-event__head {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #dcdfe0;
  padding-bottom: 22px;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-event__head {
    padding-bottom: 12px;
  }
}
.p-online-event__icon {
  margin-right: 20px;
}
.p-online-event__icon img {
  display: block;
  width: 100%;
}

.p-online-event__title {
  font-size: 1.0625rem;
  font-weight: bold;
}

.p-online-event__body {
  padding-top: 19px;
}

.p-online-event__contents + .p-online-event__contents {
  margin-top: 13px;
}

.p-online-event__tag {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  background-color: #dcdfe0;
  display: inline-block;
  padding-top: 4px;
  padding-right: 8px;
  padding-left: 8px;
  padding-bottom: 4px;
  font-size: 0.875rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-event__tag {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-online-event__tag {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-online-event__desc {
  margin-top: 3px;
}

.p-online-event__message {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1.5;
  color: #74b708;
  font-size: 1.125rem;
  margin-top: 18px;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-event__message {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-online-event__message {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-icon {
  background-color: #f2f5f4;
  padding-top: 20px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 20px;
  display: flex;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-icon {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-delivery-icon__icon {
    width: 30px;
    height: 30px;
  }
}
.p-delivery-icon__contents {
  display: flex;
  align-items: center;
}
.p-delivery-icon__contents + .p-delivery-icon__contents {
  margin-left: 80px;
  position: relative;
}
.p-delivery-icon__contents + .p-delivery-icon__contents::before, .p-delivery-icon__contents + .p-delivery-icon__contents::after {
  content: "";
  display: block;
  background-color: #333;
  border-radius: 10px;
  position: absolute;
  width: 20px;
  height: 2px;
  top: 20px;
  left: -49px;
}
.p-delivery-icon__contents + .p-delivery-icon__contents::before {
  width: 2px;
  height: 21px;
  top: 10px;
  left: -40px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-icon__contents + .p-delivery-icon__contents {
    margin-left: 0;
    margin-top: 46px;
  }
  .p-delivery-icon__contents + .p-delivery-icon__contents::before, .p-delivery-icon__contents + .p-delivery-icon__contents::after {
    width: 16px;
    top: -20px;
    left: 40px;
  }
  .p-delivery-icon__contents + .p-delivery-icon__contents::before {
    width: 2px;
    height: 17px;
    left: 47px;
    top: -28px;
  }
}
.p-delivery-icon__text {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-left: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-icon__text {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-icon__text {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-plan__item {
  border: 3px solid #74b708;
  box-sizing: border-box;
  padding-top: 18px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 16px;
}

@media print, screen and (min-width: 64em) {
  .p-delivery-plan__item.-pt_l {
    padding-top: 36px;
  }
}
.p-delivery-plan__title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.75rem;
  color: #74b708;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-plan__text.-bold {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__text.-bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__text.-bold {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-plan__price-block {
  display: flex;
}

.p-delivery-plan__price-head {
  display: block;
}

@media print, screen and (min-width: 75em) {
  .p-delivery-plan__price-head {
    display: flex;
    align-items: center;
  }
}
.p-delivery-plan__price-title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-right: 24px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__price-title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__price-title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-plan__price {
  font-size: 1.75rem;
  margin-right: 24px;
  color: #74b708;
  line-height: 1.2;
}
.p-delivery-plan__price.-mr_10 {
  margin-right: 10px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__price {
    margin-right: 16px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__price {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-delivery-plan__price {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 75em) {
  .p-delivery-plan__price {
    font-size: 3.125rem;
  }
}
.p-delivery-plan__price-sub {
  display: flex;
  align-items: flex-end;
  flex-wrap: nowrap;
  padding-bottom: 6px;
  color: #74b708;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__price-sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__price-sub {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__price-sub {
    padding-bottom: 0;
  }
}
.p-delivery-plan__yen {
  font-size: 1.25rem;
  margin-right: 4px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__yen {
    font-size: 1rem;
  }
}
.p-delivery-plan__supplement {
  font-size: 1rem;
  padding-bottom: 2px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__supplement {
    padding-bottom: 0;
  }
}
.p-delivery-plan__day {
  color: #000;
  font-size: 1.25rem;
  margin-left: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__day {
    font-size: 1rem;
  }
}
.p-delivery-plan__list {
  background-color: #f2f5f4;
  padding-top: 16px;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 14px;
  margin-top: 6px;
}
.p-delivery-plan__list .-accent {
  color: #74b708;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__list .-accent {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-delivery-plan__list .-accent {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-delivery-plan__mini-list {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.p-delivery-plan__mini-list li {
  font-size: 0.875rem;
}
.p-delivery-plan__mini-list ul + ul {
  margin-left: 12px;
}

@media only screen and (max-width: 47.9375em) {
  .p-delivery-plan__mini-list {
    display: block;
    margin-top: 8px;
  }
  .p-delivery-plan__mini-list ul + ul {
    margin-left: 0;
  }
}
.p-delivery-plan__info {
  margin-top: 4px;
  font-size: 0.875rem;
}

.p-delivery-plan__item.-standard {
  border-color: #888888;
}
.p-delivery-plan__item.-standard .p-delivery-plan__title,
.p-delivery-plan__item.-standard .p-delivery-plan__price,
.p-delivery-plan__item.-standard .p-delivery-plan__price-sub {
  color: #888888;
}

.p-online-performance + .p-online-performance {
  margin-top: 30px;
}

.p-online-performance__item {
  border: 1px solid #dcdfe0;
  box-sizing: border-box;
  text-align: center;
  padding-top: 30px;
  padding-bottom: 24px;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-performance__item {
    padding-top: 16px;
    padding-bottom: 12px;
  }
}
.p-online-performance__icon {
  height: 70px;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.p-online-performance__category {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  margin-top: 12px;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-performance__category {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-online-performance__category {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-online-performance__title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.375rem;
  line-height: 1.2;
  margin-top: 3px;
}

@media only screen and (max-width: 47.9375em) {
  .p-online-performance__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-online-performance__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-online-performance__title {
    font-size: 1.125rem;
  }
}
.p-article-info {
  font-size: 0.875rem;
  margin-top: 5px;
}

.p-article-info__time {
  margin-right: 20px;
}

@media print, screen and (min-width: 48em) {
  .p-article-info {
    font-size: 1rem;
  }
}
.p-link-desc.-max2 {
  display: flex;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 48em) {
  .p-link-desc.-max2 {
    margin-top: -50px;
    margin-left: -40px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-max2 .p-link-desc__item {
    width: calc(50% - 40px);
    margin-top: 50px;
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-max3 {
    display: flex;
    margin-left: -50px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-max3 .p-link-desc__item {
    width: calc(33.33% - 50px);
    margin-top: 0;
    margin-left: 50px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc__item {
    margin-top: 29px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__item {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__item:first-child {
    margin-top: 0;
  }
}
.p-link-desc__item a {
  display: block;
  color: #000;
}
.p-link-desc__item > span {
  display: block;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc__item:first-child {
    margin-top: 0;
  }
}
.p-link-desc__img {
  grid-area: pLinkDescImg;
  position: relative;
  overflow: hidden;
}

.p-link-desc.-home .p-link-desc__item > a > .p-link-desc__img,
.p-link-desc.-home .p-link-desc__item > span > .p-link-desc__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
}

.p-link-desc__item.-has_deco > a > .p-link-desc__img,
.p-link-desc__item.-has_deco > span > .p-link-desc__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
}

.p-link-desc__img img {
  display: block;
  transition: transform 0.2s ease;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc__img img {
    height: 80px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__img img {
    width: 100%;
  }
}
.p-link-desc__main {
  grid-area: pLinkDescMain;
  font-weight: bold;
  transition: color 0.2s ease;
}

.p-link-desc.-home .p-link-desc__item > a > .p-link-desc__main,
.p-link-desc.-home .p-link-desc__item > span > .p-link-desc__main {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

.p-link-desc__item.-has_deco > a > .p-link-desc__main,
.p-link-desc__item.-has_deco > span > .p-link-desc__main {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc__main {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__main {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc__main {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__main {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  a:hover .p-link-desc__main {
    color: #74b708;
  }
}
.p-link-desc__info {
  grid-area: pLinkDescInfo;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc__info {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__info {
    display: flex;
    flex-wrap: wrap;
    margin-top: 5px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc__info li {
    font-size: 0.75rem;
    line-height: 1.55;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__info li {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__info li:first-child:after {
    content: "　／　";
  }
}
.p-link-desc__desc {
  grid-area: pLinkDescDesc;
}

.p-link-desc.-home .p-link-desc__item > a > .p-link-desc__desc,
.p-link-desc.-home .p-link-desc__item > span > .p-link-desc__desc {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}

.p-link-desc__item.-has_deco > a > .p-link-desc__desc,
.p-link-desc__item.-has_deco > span > .p-link-desc__desc {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc__desc {
    margin-top: 11px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__desc {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc__info + .p-link-desc__desc {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc__info + .p-link-desc__desc {
    margin-top: 8px;
  }
}
/* ==========================================================================
* モディファイア
========================================================================== */
@media print, screen and (min-width: 48em) {
  .p-link-desc.-large .p-link-desc__item {
    margin-top: 48px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-large .p-link-desc__item:first-child {
    margin-top: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-large .p-link-desc__main {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-large .p-link-desc__main {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-large .p-link-desc__main .c-blank {
    top: 0em;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-large .p-link-desc__main .c-blank {
    top: -0.1em;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-large.-img .p-link-desc__item > a,
  .p-link-desc.-large.-img .p-link-desc__item > span {
    display: grid;
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 200px 40px 1fr;
    grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescDesc" 1fr/200px 1fr;
    gap: 0 40px;
  }
  .p-link-desc__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-link-desc__main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-link-desc__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 48em) {
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > a,
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > span {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 200px 40px 1fr;
    grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescDesc" 1fr/200px 1fr;
    gap: 0 40px;
  }
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > a > .p-link-desc__img,
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > span > .p-link-desc__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > a > .p-link-desc__main,
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > span > .p-link-desc__main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > a > .p-link-desc__desc,
  .browser-is-ie .p-link-desc.-large.-img .p-link-desc__item > span > .p-link-desc__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
/* 画像つき
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-link-desc.-img .p-link-desc__item > a,
  .p-link-desc.-img .p-link-desc__item > span {
    display: grid;
    -ms-grid-rows: auto 0 auto 0 1fr;
    -ms-grid-columns: 110px 40px 1fr;
    grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescInfo" auto "pLinkDescImg pLinkDescDesc" 1fr/110px 1fr;
    gap: 0 40px;
  }
  .p-link-desc.-img .p-link-desc__item > a > .p-link-desc__img,
  .p-link-desc.-img .p-link-desc__item > span > .p-link-desc__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1;
  }
  .p-link-desc.-img .p-link-desc__item > a > .p-link-desc__main,
  .p-link-desc.-img .p-link-desc__item > span > .p-link-desc__main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-link-desc__info {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .p-link-desc.-img .p-link-desc__item > a > .p-link-desc__desc,
  .p-link-desc.-img .p-link-desc__item > span > .p-link-desc__desc {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 64em) {
  .p-link-desc.-img .p-link-desc__item:not(.-current) > a:hover .p-link-desc__img img {
    transform: scale(1.08, 1.08);
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-img .p-link-desc__img {
    max-height: 110px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-img .p-link-desc__main {
    margin-top: 20px;
  }
}
/* ホーム施設一覧
----------------------------------------------------------------- */
.p-link-desc.-home {
  margin-top: 0;
}
.p-link-desc.-home .p-link-desc__item {
  box-sizing: border-box;
}
.p-link-desc.-home .p-link-desc__item > a,
.p-link-desc.-home .p-link-desc__item > span {
  transform: translate 0.2s ease;
  display: grid;
  -ms-grid-rows: auto 0 1fr;
  -ms-grid-columns: 150px 20px 1fr;
  grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescDesc" 1fr/150px 1fr;
  gap: 0 20px;
}
.p-link-desc.-home .p-link-desc__item > a:hover,
.p-link-desc.-home .p-link-desc__item > span:hover {
  transform: scale 0.2s ease;
}
.p-link-desc.-home .p-link-desc__img img {
  height: auto;
  width: 100%;
}
.p-link-desc.-home .p-link-desc__desc {
  font-size: 0.875rem;
  padding-top: 0px;
  padding-right: 10px;
  margin-top: 0;
  line-height: 1.7;
}
.p-link-desc.-home .p-link-desc__main {
  font-size: 1.125rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-home {
    display: block;
    margin-top: 24px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-home .p-link-desc__item > a,
  .p-link-desc.-home .p-link-desc__item > span {
    -ms-grid-rows: auto 0 1fr;
    -ms-grid-columns: 100px 20px 1fr;
    grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescDesc" 1fr/100px 1fr;
    gap: 0 20px;
  }
  .p-link-desc.-home .p-link-desc__item > a > .p-link-desc__img,
  .p-link-desc.-home .p-link-desc__item > span > .p-link-desc__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .p-link-desc.-home .p-link-desc__item > a > .p-link-desc__main,
  .p-link-desc.-home .p-link-desc__item > span > .p-link-desc__main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .p-link-desc.-home .p-link-desc__item > a > .p-link-desc__desc,
  .p-link-desc.-home .p-link-desc__item > span > .p-link-desc__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 64em) {
  .p-link-desc.-home .p-link-desc__item > a,
  .p-link-desc.-home .p-link-desc__item > span {
    gap: 0 40px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-link-desc.-home .p-link-desc__img {
    max-height: 150px;
  }
}
@media screen and (max-width: 400px) {
  .p-link-desc.-home .p-link-desc__desc {
    font-size: 0.8125rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-link-desc.-home .p-link-desc__main {
    margin-top: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-link-desc.-home .p-link-desc__main {
    font-size: 1rem;
  }
}
.p-link-desc__item.-has_deco > a,
.p-link-desc__item.-has_deco > span {
  transform: translate 0.2s ease;
  display: grid;
  -ms-grid-rows: auto 0 1fr;
  -ms-grid-columns: 150px 20px 1fr;
  grid-template: "pLinkDescImg pLinkDescMain" auto "pLinkDescImg pLinkDescDesc" 1fr/150px 1fr;
  gap: 0 20px;
}
.p-link-desc__item.-has_deco .c-link.p-link-desc__main {
  flex-wrap: wrap;
}
.p-link-desc__item.-has_deco .p-link-desc__deco {
  width: 100%;
  color: #74b708;
  font-size: 0.875rem;
  font-weight: bold;
}

@media print, screen and (min-width: 48em) {
  .p-measures-button {
    width: 250px;
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-measures-panorama {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-measures-panorama {
    margin-top: 20px;
  }
}
.p-measures-panorama__button {
  display: block;
  position: relative;
}
.p-measures-panorama__button::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  content: "";
  display: block;
  z-index: 1;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.p-measures-panorama__button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: calc(50% + 4px);
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent transparent #1a1a1a;
  z-index: 2;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-measures-panorama__button:hover .c-image {
  opacity: 0.5;
}

@media print, screen and (min-width: 64em) {
  .p-measures-panorama__button {
    background-color: #74b708;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-measures-panorama__button::before {
    width: 60px;
    height: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-panorama__button::before {
    width: 80px;
    height: 80px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-measures-panorama__button::after {
    border-width: 15px 0 15px 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-panorama__button::after {
    border-width: 18px 0 18px 24px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-panorama__button .c-image {
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-panorama__button:hover::after {
    border-color: transparent transparent transparent #74b708;
  }
}
.p-measures-checkbox {
  box-sizing: border-box;
  background-color: #f3f6f6;
  display: block;
  border-radius: 3px;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-checkbox {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-right: 20px;
    padding-left: 20px;
    margin-top: 54px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-checkbox {
    padding-top: 36px;
    padding-bottom: 36px;
    padding-right: 40px;
    padding-left: 40px;
    margin-top: 72px;
  }
}
.p-measures-checkbox__name {
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
.p-measures-checkbox__name::before {
  background-image: url("/service/measures/img/icon_check.svg");
  background-size: cover;
  width: 20px;
  height: 20px;
  content: "";
  display: block;
  position: absolute;
  left: 0;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-checkbox__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-checkbox__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-measures-checkbox__name {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-checkbox__name {
    font-size: 1.375rem;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-measures-checkbox__name::before {
    top: 0.28em;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-checkbox__name::before {
    top: 0.4em;
  }
}
.p-measures-checkbox__text {
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-checkbox__text {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-checkbox__text {
    margin-top: 16px;
  }
}
.p-measures-item {
  border-bottom: 2px solid #dcdfe0;
  box-sizing: border-box;
  position: relative;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item {
    display: flex;
    padding-bottom: 15px;
    flex-direction: row-reverse;
    align-items: center;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item {
    padding-bottom: 16px;
  }
}
.p-measures-item__thumb {
  display: block;
}

@media print, screen and (min-width: 48em) {
  .p-measures-item__thumb {
    width: 70px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-measures-item__thumb {
    width: 122px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-measures-item__content {
    flex: 1;
    margin-right: 18px;
  }
}
.p-measures-item__title {
  display: block;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item__title {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__title {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__title {
    margin-top: 14px;
  }
}
.p-measures-item__text {
  line-height: 1.6;
}

@media only screen and (max-width: 47.9375em) {
  .p-measures-item__text {
    margin-top: 5px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-measures-item__text {
    margin-top: 16px;
  }
}
/* ホーム - プロジェクト紹介
----------------------------------------------------------------- */
.p-main-block__wrap {
  background-color: #1a1a1a;
  position: relative;
  z-index: 0;
}

@media print, screen and (min-width: 64em) {
  .p-main-block {
    position: relative;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block:nth-of-type(2n) {
    margin-top: 80px;
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block:last-of-type {
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block:last-of-type .p-main-block__box {
    padding-bottom: 45px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block:last-of-type .p-main-block__box {
    margin-bottom: 120px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block:last-of-type .p-main-block__box.-mb_100 {
    margin-bottom: 100px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__box {
    padding-top: 18px;
    padding-right: 4.6875%;
    padding-bottom: 0px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__box {
    padding-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__box {
    box-sizing: border-box;
    position: relative;
    z-index: 10;
    padding-top: 65px;
    padding-bottom: 65px;
    width: 72vw;
    min-height: 425px;
    height: auto;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-main-block__box {
    min-height: 423px;
    height: auto;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__box.-sp_black .p-main-block__title,
  .p-main-block__box.-sp_black .p-main-block__text {
    color: #1a1a1a;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__box.-pt_80 {
    padding-top: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__box.-measures {
    width: 72vw;
    min-height: 525px;
    height: auto;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-main-block__box.-measures {
    min-height: 525px;
    height: auto;
  }
}
.p-main-block__name {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  line-height: 1;
}
.p-main-block__name span {
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 1.125rem;
  color: #74b708;
  display: flex;
  align-items: baseline;
}
.p-main-block__name span.-eng {
  font-family: Times New Roman, sans-serif;
}
.p-main-block__name span .-num {
  font-family: Times New Roman, sans-serif;
  font-size: 1.375rem;
}

@media only screen and (max-width: 47.9375em) {
  .p-main-block__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__name {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__name {
    line-height: 1.5;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__name {
    padding-right: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__name {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__name span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__name span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__name.-pd_l {
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-main-block__title {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-main-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__title {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__title {
    font-size: 1.375rem;
    margin-top: 4px;
    line-height: 1.5;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__title {
    font-size: 1.625rem;
    margin-top: 12px;
    line-height: 1.5;
  }
}
.p-main-block__text {
  font-size: 1rem;
  line-height: 1.625;
}
.p-main-block__text.-small {
  font-size: 0.875rem;
}
.p-main-block__text .-note {
  font-size: 0.875rem;
  margin-top: 17px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-main-block__text {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__text {
    padding-right: 40px;
    padding-left: 40px;
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__text.-pd_l {
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-main-block__subtitle {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  text-align: center;
}
.p-main-block__subtitle + .c-image {
  margin-top: 20px;
}

@media only screen and (max-width: 47.9375em) {
  .p-main-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__subtitle {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__subtitle {
    font-size: 1.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__subtitle {
    font-size: 1rem;
  }
}
.p-main-block__visual {
  display: block;
}
.p-main-block__visual img {
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-main-block__visual {
    margin-top: 36px;
    position: relative;
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__visual {
    position: relative;
    z-index: 20;
    display: flex;
  }
  .browser-is-ie .p-main-block__visual {
    width: 100%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__visual img {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__visual img {
    max-width: 500px;
    width: 38vw;
  }
}
@media screen and (min-width: 1400px) {
  .p-main-block__visual img {
    width: 500px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__visual::after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__visual::after {
    display: block;
    content: "";
    position: absolute;
    z-index: -1;
    height: 50%;
    background-color: #1a1a1a;
    top: 50%;
  }
}
@media screen and (min-width: 1400px) {
  .p-main-block__visual.-measures {
    width: 700px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__visual.-measures img {
    max-width: 700px;
    width: 38vw;
  }
}
@media screen and (min-width: 1400px) {
  .p-main-block__visual.-measures img {
    width: 700px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__logo {
    max-width: 330px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__logo {
    max-width: 480px;
  }
}
.p-main-block__logo > svg {
  width: 100%;
}

@media print, screen and (max-width: 63.9375em) {
  .p-main-block__logo > svg {
    height: 44px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__logo > svg {
    height: 55px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__sec {
    margin-top: 26px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__sec {
    margin-top: 48px;
  }
}
.p-main-block__panel {
  position: relative;
  display: flex;
  justify-content: center;
}

@media only screen and (max-width: 47.9375em) {
  .p-main-block__panel {
    padding-top: 38px;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__panel {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 47.9375em) {
  z .p-main-block__button {
    margin-top: 35px;
  }
}
@media print, screen and (min-width: 48em) {
  z .p-main-block__button {
    width: 250px;
    margin-top: 45px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__title,
  .p-main-block__lead {
    padding-right: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__title,
  .p-main-block__lead {
    padding-right: 40px;
    padding-left: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__title.-pd_l,
  .p-main-block__lead.-pd_l {
    padding-right: 60px;
    padding-left: 60px;
  }
}
.p-main-block__bg {
  position: absolute;
  display: block;
  content: "";
  z-index: -1;
  height: 100%;
  background-color: #000;
  width: 100%;
  top: -1px;
  left: 0;
}
.p-main-block__bg.-gray {
  background-color: #f3f6f6;
}
.p-main-block__bg.-gray .p-main-block__bg-text {
  color: #e5ecee;
}
.p-main-block__bg .p-main-block__bg-text {
  font-family: Times New Roman, sans-serif;
  font-feature-settings: "palt";
  white-space: nowrap;
  font-weight: normal;
  font-size: 8.1vw;
  position: absolute;
  z-index: -1;
  line-height: 1;
  color: #e5ecee;
  bottom: -0.15em;
  right: -0.23em;
}
.p-main-block__bg .p-main-block__bg-text.-left {
  left: 0;
}
.p-main-block__bg .p-main-block__bg-text.-live {
  left: 0em;
}
.p-main-block__bg .p-main-block__bg-text.-third {
  right: -0.11em;
}
.p-main-block__bg .p-main-block__bg-text.-equipment, .p-main-block__bg .p-main-block__bg-text.-porthall {
  right: 0;
}
.p-main-block__bg .p-main-block__bg-text.-number {
  font-size: 11.9vw;
  right: -10px;
}
.p-main-block__bg .p-main-block__bg-text.-number.-left {
  right: auto;
  left: -4px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-main-block__bg {
    display: none;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block__bg .p-main-block__bg-text {
    display: none;
  }
}
@media print, screen and (min-width: 100em) {
  .p-main-block__bg .p-main-block__bg-text {
    font-size: 8.125rem;
  }
}
.p-main-block__bg-text.-seminar {
  right: 0em;
}
.p-main-block__bg-text.-esports {
  right: -0.04em;
}

.p-main-block.-feature {
  position: relative;
}
.p-main-block.-feature::after {
  display: none;
}
.p-main-block.-feature .p-main-block__bg-text {
  right: -13px;
  bottom: -47px;
}
.p-main-block.-left {
  position: relative;
}
.p-main-block.-right {
  position: relative;
}
.p-main-block.-right .p-main-block__visual::after {
  left: 0;
}

@media print, screen and (min-width: 64em) {
  .p-main-block.-feature {
    padding-top: 128px;
    padding-bottom: 95px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-left {
    display: flex;
    padding-top: 80px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-left .p-main-block__visual {
    top: 0;
    left: 0;
    margin-top: -80px;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-left .p-main-block__box {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-left .p-main-block__box .p-main-block__bg {
    width: 710px;
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 1900px) {
  .p-main-block.-left .p-main-block__box .p-main-block__bg {
    width: 42vw;
  }
}
@media screen and (min-width: 2500px) {
  .p-main-block.-left .p-main-block__box .p-main-block__bg {
    width: 36vw;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-right {
    display: flex;
    flex-direction: row-reverse;
    padding-top: 80px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-right .p-main-block__visual {
    margin-top: -80px;
    justify-content: flex-start;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-right .p-main-block__box {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-right .p-main-block__box .p-main-block__bg {
    width: 710px;
    left: 0;
  }
}
@media screen and (min-width: 1900px) {
  .p-main-block.-right .p-main-block__box .p-main-block__bg {
    width: 43vw;
  }
}
@media screen and (min-width: 2500px) {
  .p-main-block.-right .p-main-block__box .p-main-block__bg {
    width: 36vw;
  }
}
/* サービス以下
----------------------------------------------------------------- */
.p-main-block__inner {
  box-sizing: border-box;
}

@media print, screen and (min-width: 64em) {
  .p-main-block__inner {
    padding-top: 0;
    padding-right: 100px;
    padding-left: 100px;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-main-block__inner {
    max-width: 1400px;
    padding-top: 40px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    padding-bottom: 40px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__inner {
    padding-top: 40px;
    padding-right: 4.6875%;
    padding-bottom: 40px;
  }
}
.p-main-block.-example {
  background-color: #f2f2f1;
}
.p-main-block.-example .p-main-block__title {
  color: #1a1a1a;
}

@media print, screen and (min-width: 64em) {
  .p-main-block.-example {
    padding-top: 72px;
    padding-bottom: 128px;
    z-index: -2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-example .p-main-block__title {
    font-size: 2.125rem;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block.-example .p-main-block__title:after {
    font-family: Times New Roman, sans-serif;
    content: "Case";
    color: #eeeeea;
    display: block;
    position: absolute;
    z-index: -1;
    font-size: 11.875rem;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
    font-weight: normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block.-example .p-main-block__title:after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-main-block__link {
    width: 250px;
    margin-top: 40px;
    margin-left: 60px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-main-block__text + .p-main-block__link {
    margin-top: 20px;
  }
}
/* テーブル形式
----------------------------------------------------------------- */
.p-sub-table {
  width: 100%;
}
.p-sub-table > tbody > tr > th,
.p-sub-table > thead > tr > th {
  white-space: nowrap;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  border-top: 1px solid #dcdfe0;
  border-bottom: 1px solid #dcdfe0;
  background-color: #e6ebf0;
  box-sizing: border-box;
}
.p-sub-table > tbody > tr > td,
.p-sub-table > thead > tr > td {
  line-height: 1.5;
  background-color: #fff;
  box-sizing: border-box;
}
.p-sub-table .-bold {
  font-weight: bold;
}
.p-sub-table.-small tbody {
  background-color: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
  display: block;
}
.p-sub-table.-small tbody tr + tr {
  margin-top: 12px;
  display: block;
}
.p-sub-table.-small tbody tr td {
  border: none;
  line-height: 1.5;
  background-color: #fff;
  box-sizing: border-box;
}

@media only screen and (max-width: 47.9375em) {
  .p-sub-table {
    display: flex;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody > tr > th,
  .p-sub-table > thead > tr > th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-sub-table > tbody > tr > th,
  .p-sub-table > thead > tr > th {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody > tr > th,
  .p-sub-table > thead > tr > th {
    display: block;
    padding-top: 12px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sub-table > tbody > tr > th,
  .p-sub-table > thead > tr > th {
    padding-top: 18px;
    padding-bottom: 16px;
    padding-right: 20px;
    padding-left: 20px;
    margin-right: 30px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody > tr > th.-adjust,
  .p-sub-table > thead > tr > th.-adjust {
    height: 76px;
  }
}
@media screen and (max-width: 550px) {
  .p-sub-table > tbody > tr > th.-adjust,
  .p-sub-table > thead > tr > th.-adjust {
    height: 100px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody > tr > th.-adjust2,
  .p-sub-table > thead > tr > th.-adjust2 {
    height: 52px;
  }
}
@media screen and (min-width: 418px) and (max-width: 673px) {
  .p-sub-table > tbody > tr > th.-adjust2,
  .p-sub-table > thead > tr > th.-adjust2 {
    height: 76px;
  }
}
@media screen and (max-width: 417px) {
  .p-sub-table > tbody > tr > th.-adjust2,
  .p-sub-table > thead > tr > th.-adjust2 {
    height: 100px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table > tbody > tr > td,
  .p-sub-table > thead > tr > td {
    padding-top: 12px;
    padding-bottom: 14px;
    padding-right: 10px;
    padding-left: 10px;
    display: block;
    border-top: 1px solid #dcdfe0;
    border-bottom: 1px solid #dcdfe0;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sub-table > tbody > tr > td,
  .p-sub-table > thead > tr > td {
    padding-top: 14px;
    padding-bottom: 12px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table.-small {
    display: block;
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sub-table.-small {
    width: 480px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-sub-table.-small tbody tr td {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 10px;
    padding-left: 10px;
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .p-sub-table.-small tbody tr td {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.p-room-gallery {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
}

@media only screen and (max-width: 47.9375em) {
  table + .p-room-gallery,
  .c-image + .p-room-gallery,
  .p-scrollable + .p-room-gallery {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  table + .p-room-gallery,
  .c-image + .p-room-gallery,
  .p-scrollable + .p-room-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-6 + .p-room-gallery {
    margin-top: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-6 + .p-room-gallery {
    margin-top: 22px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .p-room-gallery {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-5 + .p-room-gallery {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .p-room-gallery {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-4 + .p-room-gallery {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .p-room-gallery {
    margin-top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-3 + .p-room-gallery {
    margin-top: 28px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .p-room-gallery,
  .c-heading-2-1 + .p-room-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-2 + .p-room-gallery,
  .c-heading-2-1 + .p-room-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-page-title + .p-room-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-page-title + .p-room-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-detail-heading + .p-room-gallery {
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-detail-heading + .p-room-gallery {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence + .p-room-gallery,
  .c-list + .p-room-gallery {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence + .p-room-gallery,
  .c-list + .p-room-gallery {
    margin-top: 35px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-sentence--cap + .p-room-gallery {
    margin-top: 28px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-sentence--cap + .p-room-gallery {
    margin-top: 52px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .c-heading-bold + .p-room-gallery {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .c-heading-bold + .p-room-gallery {
    margin-top: 14px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-room-gallery {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-room-gallery__inner {
  position: relative;
}

.p-room-gallery__main {
  position: relative;
  width: 100%;
}
.p-room-gallery__main.-wide {
  padding-top: 50%;
}
.p-room-gallery__main > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0;
}
.p-room-gallery__main > span:nth-child(1) {
  background-image: url("/img/main/img_01.jpg");
}
.p-room-gallery__main > span:nth-child(2) {
  background-image: url("/img/main/img_02.jpg");
}
.p-room-gallery__main > span:nth-child(3) {
  background-image: url("/img/main/img_03.jpg");
}
.p-room-gallery__main > span:nth-child(4) {
  background-image: url("/img/main/img_04.jpg");
}
.p-room-gallery__main > span:nth-child(5) {
  background-image: url("/img/main/img_05.jpg");
}
.p-room-gallery__main > span.-current {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 1;
  z-index: 1;
}

@media print, screen and (min-width: 64em) {
  .p-room-gallery__main {
    background: linear-gradient to bottom, #74b708, #fff;
  }
}
.p-room-gallery__item {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 0;
  z-index: 0;
}
.p-room-gallery__item:first-of-type {
  position: relative;
}
.p-room-gallery__item:not(:first-of-type) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.p-room-gallery__item.-current {
  transition: all 1s ease 0s, z-index 0s;
  opacity: 1;
  z-index: 1;
}
.p-room-gallery__item > img {
  max-width: 100%;
}

.p-room-gallery__caption {
  width: 100%;
  background-color: #1a1a1a;
  display: block;
  position: absolute;
  bottom: 0;
  color: #fff;
  line-height: 30px;
  padding: 4px 20px 2px 20px;
  box-sizing: border-box;
  font-size: 0.875rem;
  line-height: 1.5;
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery__caption {
    font-size: 0.75rem;
  }
}
.browser-is-ie .p-room-gallery__caption {
  padding: 6px 20px 0px 20px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__nav {
    display: flex;
    justify-content: center;
    padding-top: 12px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__nav {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
    margin-right: -5px;
  }
}
.p-room-gallery__nav > li {
  position: relative;
  width: 100px;
  margin-right: 10px;
  cursor: pointer;
}
.p-room-gallery__nav > li:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: #000;
  opacity: 0.5;
  border: 3px solid transparent;
  transition: all 0.1s linear;
}
.p-room-gallery__nav > li > img {
  display: block;
  width: 100%;
  height: auto;
}
.p-room-gallery__nav > li:hover:before, .p-room-gallery__nav > li.-current:before {
  opacity: 1;
  border-color: #74b708;
  background-color: transparent;
}
.p-room-gallery__nav.-under-main {
  margin-top: 20px;
  margin-right: -11px;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.p-room-gallery__nav.-under-main > li {
  width: 6px;
  height: 6px;
  margin-right: 12px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__nav > li {
    width: 6px;
    height: 6px;
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__nav > li:before {
    width: auto;
    opacity: 1;
    background-color: #dddddd;
    border-radius: 50%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__nav > li > img {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__nav.-start {
    justify-content: start;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-room-gallery__nav.-under-main > li {
    margin-right: 4px;
    margin-left: 4px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__nav.-under-main > li {
    width: calc(8.32% - 11px);
    margin-right: 11px;
    margin-bottom: 10px;
    height: 100%;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__panorama {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__panorama {
    position: absolute;
    bottom: 100px;
    right: 20px;
    z-index: 2;
    width: 320px;
  }
}
.p-room-gallery__panorama-inner {
  background-color: #1a1a1a;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  display: flex;
  align-items: center;
  transition: background-color 0.7s ease;
}
.p-room-gallery__panorama-inner:hover {
  transition: background-color 0.2s ease;
}

.p-room-gallery__panorama-img {
  width: 107px;
  height: 70px;
  background-color: red;
  margin-right: 17px;
  position: relative;
  overflow: hidden;
}
.p-room-gallery__panorama-img > img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
}
.p-room-gallery__panorama-img::before {
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2252.263%22%20height%3D%2254.028%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cg%20stroke-width%3D%222%22%3E%3Cg%3E%3Cpath%20d%3D%22M13.535%2025.45a3.313%203.313%200%20013.313-3.312h0a3.313%203.313%200%20010%206.625h0a3.312%203.312%200%20013.312%203.312v-.191a3.313%203.313%200%2001-3.312%203.313h0a3.313%203.313%200%2001-3.313-3.313%22%2F%3E%3Cpath%20%20d%3D%22M29.747%2025.45a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312v6.434a3.313%203.313%200%20003.312%203.313h0a3.313%203.313%200%20003.312-3.313v-.248a3.313%203.313%200%2000-3.312-3.312h0a3.313%203.313%200%2000-3.312%203.312%22%2F%3E%3Cpath%20d%3D%22M39.335%2031.884a3.313%203.313%200%2001-3.313%203.313h0a3.312%203.312%200%2001-3.312-3.313V25.45a3.312%203.312%200%20013.312-3.312h0a3.313%203.313%200%20013.313%203.312z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M42.127%2022.138v1.879%22%2F%3E%3C%2Fg%3E%3Cg%20stroke-width%3D%221.5%22%3E%3Cpath%20d%3D%22M2.299%2027.376A24.616%2024.616%200%200133.246%204.795%22%2F%3E%3Cpath%20d%3D%22M39.906%2049.413A24.6%2024.6%200%20013.14%2034.9%22%2F%3E%3Cpath%20d%3D%22M39.904%207.654a24.614%2024.614%200%20014.362%2038.272%22%2F%3E%3Cpath%20d%3D%22M30.857%201.035l2.39%203.76-4.111%202.31%22%2F%3E%3Cpath%20d%3D%22M48.72%2045.801l-4.454.12.127-4.711%22%2F%3E%3Cpath%20d%3D%22M1.017%2038.819l2.123-3.917%204.016%202.465%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E\a%20%20");
  width: 50px;
  height: 50px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
}
.p-room-gallery__panorama-img::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: #000;
  opacity: 0.3;
  border: 3px solid transparent;
  transition: all 0.1s linear;
}

.p-room-gallery__panorama-text .c-blank {
  margin-left: 8px;
}

.p-room-gallery__panorama-link {
  display: block;
}

.p-room-gallery__panorama-text-top,
.p-room-gallery__panorama-text-bottom {
  color: #fff;
  display: block;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery__panorama-text-top,
  .p-room-gallery__panorama-text-bottom {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery__panorama-text-top,
  .p-room-gallery__panorama-text-bottom {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.p-room-gallery__panorama-text-top {
  font-size: 0.6875rem;
}

.p-room-gallery__panorama-text-bottom {
  font-size: 1rem;
}
.p-room-gallery__panorama-text-bottom span {
  font-size: 1.25rem;
}
.p-room-gallery__panorama-text-bottom .c-blank::before, .p-room-gallery__panorama-text-bottom .c-blank::after {
  transition: background-color 0.4s ease, border-color 0.2s ease;
}

.p-room-gallery__panorama-inner:hover .p-room-gallery__panorama-text-bottom .c-blank::before {
  border-color: #1a1a1a;
  transition: border-color 0.2s ease;
}
.p-room-gallery__panorama-inner:hover .p-room-gallery__panorama-text-bottom .c-blank::after {
  background-color: #1a1a1a;
  transition: background-color 0.2s ease;
}

.p-room-gallery__panorama-sp {
  position: absolute;
  bottom: -20px;
  right: 20px;
}

.p-room-gallery__title {
  position: relative;
  z-index: 50000;
}
.p-room-gallery__title span {
  display: block;
  line-height: 1.7;
}
.p-room-gallery__title div {
  color: #fff;
}
.p-room-gallery__title br {
  display: none;
}

@media print, screen and (min-width: 64em) {
  .p-room-gallery__title {
    color: #fff;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 9px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-room-gallery__title {
    font-size: 2.125rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__title {
    position: relative;
    color: #1a1a1a;
    line-height: 1.5;
    font-size: 1.375rem;
    margin-top: 10px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__title span + span {
    margin-top: -8px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__title div {
    color: #1a1a1a;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1140px) {
  .p-room-gallery__title br {
    display: block;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__title-block {
    margin-top: 24px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__title-block {
    position: absolute;
    bottom: 118px;
    left: 100px;
  }
}
@media print, screen and (min-width: 1420px) {
  .p-room-gallery__title-block {
    bottom: 118px;
  }
}
.p-room-gallery__info-block {
  line-height: 1;
  margin-top: 25px;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__info-block {
    display: block;
    position: relative;
    margin-top: 24px;
    margin-bottom: 28px;
    padding-right: 0;
  }
}
.p-room-gallery__info {
  display: flex;
  position: relative;
  z-index: 50000;
  color: #fff;
  font-weight: bold;
  font-size: 1.25rem;
}
.p-room-gallery__info > span {
  box-sizing: border-box;
  display: inline-block;
  font-size: 1rem;
  color: #fff;
  margin-right: 22px;
  white-space: nowrap;
  padding-top: 6px;
  padding-bottom: 4px;
  background-color: #74b708;
  position: relative;
  top: -2px;
  text-align: center;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__info {
    color: #1a1a1a;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 75em) {
  .p-room-gallery__info {
    font-size: 1.5rem;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__info > span {
    position: absolute;
    font-size: 0.625rem;
    padding-right: 4px;
    padding-left: 4px;
    min-width: 50px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__info > span {
    width: 80px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__info + .p-room-gallery__info {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__info:last-child {
    margin-top: 15px;
  }
}
.p-room-gallery__info-text {
  display: inline-block;
  line-height: 1;
  position: relative;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__info-text {
    line-height: 1.4;
    font-size: 0.875rem;
    padding-left: 60px;
    margin-top: -3px;
  }
}
.p-room-gallery__panel {
  position: absolute;
  z-index: 50000;
  bottom: 0;
  left: 0;
  background-color: #fff;
  padding-top: 30px;
  padding-right: 40px;
  padding-left: 100px;
  box-sizing: border-box;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__panel {
    position: relative;
    bottom: 0;
    right: 0;
    padding-top: 0px;
    padding-right: 4.6875%;
    padding-left: 4.6875%;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__panel {
    padding-right: 40px;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 1420px) {
  .p-room-gallery__panel {
    max-width: 65%;
  }
}
.browser-is-ie .p-room-gallery__panel {
  box-sizing: border-box;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__panel.u-fade2 {
    opacity: 0;
    visibility: hidden;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__panel.is-active {
    visibility: visible;
  }
}
.p-room-gallery__panel-inner {
  display: flex;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__panel-inner {
    display: block;
  }
}
@media print, screen and (max-width: 1420px) {
  .p-room-gallery__panel-inner {
    display: block;
  }
}
.p-room-gallery__heading {
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
  font-size: 0.8125rem;
  line-height: 1.6;
  margin-right: 30px;
}
.p-room-gallery__heading > span {
  color: #74b708;
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery__heading {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__heading {
    border-top: 1px solid #e3e3e0;
    padding-top: 28px;
    margin-right: 0;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__heading {
    margin-right: 10px;
  }
}
@media print, screen and (min-width: 1420px) {
  .p-room-gallery__heading {
    margin-right: 14px;
    font-size: 1rem;
    margin-right: 30px;
    padding-top: 15px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1420px) {
  .p-room-gallery__heading {
    position: absolute;
    top: 12px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__action {
    margin-top: 3px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__action {
    display: flex;
    flex-grow: 1;
  }
}
@media print, screen and (max-width: 1420px) {
  .p-room-gallery__action {
    align-items: flex-end;
  }
}
@media print, screen and (min-width: 100em) {
  .p-room-gallery__action {
    flex-shrink: 1;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__action .c-button {
    padding-top: 10px;
    padding-bottom: 11px;
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__action .c-button {
    white-space: nowrap;
    box-sizing: border-box;
    margin-left: 40px;
    width: auto;
    padding-top: 12px;
    padding-right: 20px;
    padding-left: 19px;
    padding-bottom: 10px;
  }
  .browser-is-ie .p-room-gallery__action .c-button {
    padding-top: 10px;
    padding-bottom: 6px;
  }
}
@media print, screen and (min-width: 1024px) and (max-width: 1420px) {
  .p-room-gallery__action .c-button {
    margin-bottom: 6px;
  }
}
@media print, screen and (min-width: 75em) {
  .p-room-gallery__action .c-button {
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 87.5em) {
  .p-room-gallery__action .c-button {
    margin-left: 40px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__action .c-button > span {
    font-size: 1rem;
    color: #fff;
  }
}
.p-room-gallery.-top {
  position: relative;
  z-index: 1;
}
.p-room-gallery.-top .p-room-gallery__main {
  padding-top: 0;
}
.p-room-gallery.-top .p-room-gallery__main > span {
  background-position: 50% 50%;
}
.p-room-gallery.-top .p-room-gallery__main > span::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  opacity: 0.9;
  background: linear-gradient(to bottom, transparent, #000);
}
.p-room-gallery.-top .p-room-gallery__nav > li {
  position: relative;
  margin-right: 5px;
  cursor: pointer;
  overflow: hidden;
}
.p-room-gallery.-top .p-room-gallery__nav > li > img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: auto;
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery.-top .p-room-gallery__main {
    height: 50vw;
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery.-top .p-room-gallery__main {
    height: 50vh;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery.-top .p-room-gallery__main {
    height: 100vh;
    min-height: 450px;
    max-height: 800px;
    box-sizing: border-box;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery.-top .p-room-gallery__main > span::after {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery.-top .p-room-gallery__main > span::after {
    height: 320px;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery.-top .p-room-gallery__nav {
    margin-top: 0;
    padding-left: 4.6875%;
    padding-top: 24px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery.-top .p-room-gallery__nav {
    position: absolute;
    margin-top: -22px;
    bottom: 20px;
    right: 20px;
    z-index: 2;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery.-top .p-room-gallery__nav > li {
    width: 60px;
    height: 60px;
  }
}
/* SPでのNEXT / PREVボタン */
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__trigger {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery__trigger {
    display: none;
  }
}
.p-room-gallery__trigger li {
  width: 24px;
  height: 36px;
}
.p-room-gallery__trigger button {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #000000;
  border: none;
  cursor: pointer;
}
.p-room-gallery__trigger button:before, .p-room-gallery__trigger button:after {
  display: block;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 2px;
  background-color: #fff;
  border-radius: 1px;
  content: "";
}
.p-room-gallery__trigger button.-left:before, .p-room-gallery__trigger button.-left:after {
  left: 45%;
}
.p-room-gallery__trigger button.-left:before {
  transform: translate(-50%, calc(-50% - 3px)) rotate(-45deg);
}
.p-room-gallery__trigger button.-left:after {
  transform: translate(-50%, calc(-50% + 3px)) rotate(45deg);
}
.p-room-gallery__trigger button.-right:before, .p-room-gallery__trigger button.-right:after {
  left: 55%;
}
.p-room-gallery__trigger button.-right:before {
  transform: translate(-50%, calc(-50% - 3px)) rotate(-135deg);
}
.p-room-gallery__trigger button.-right:after {
  transform: translate(-50%, calc(-50% + 3px)) rotate(135deg);
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery.-room {
    position: relative;
  }
  .p-room-gallery.-room .c-sentence.-room {
    position: absolute;
    bottom: -14px;
    right: 0;
  }
  .p-room-gallery.-room .c-sentence.-room .p-floor-map__nav-link {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  .p-room-gallery.-room .c-sentence.-room .p-floor-map__nav-link span {
    font-size: 0.875rem;
    font-weight: normal;
  }
  .p-room-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama {
    margin-left: 4px;
  }
  .p-room-gallery.-room .c-sentence.-room .p-floor-map__nav-panorama::before {
    top: 2px;
    width: 19px;
    height: 19px;
  }
}
.p-room-gallery__grand-open {
  position: absolute;
  z-index: 2;
  left: 0px;
  top: -48px;
}
.p-room-gallery__grand-open img {
  width: 400px;
  display: block;
}

@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery__grand-open {
    display: none;
  }
}
.p-room-gallery_grandopen-right {
  position: fixed;
  z-index: 50000;
}
.p-room-gallery_grandopen-right > img {
  width: 100%;
}
.p-room-gallery_grandopen-right.-pc > img {
  width: 250px;
}
.p-room-gallery_grandopen-right.-sp.is-fixed {
  opacity: 1;
  visibility: visible;
  transform: rotate(45deg);
}
.p-room-gallery_grandopen-right.is-fixed {
  opacity: 1;
  visibility: visible;
  transform: translateX(0) scale(1);
}

@media only screen and (max-width: 47.9375em) {
  .p-room-gallery_grandopen-right.-pc {
    display: none;
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery_grandopen-right.-pc {
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: all 0.2s 0s ease, transform 0.2s ease, visibility 0.2s 0s ease;
    transform: translateX(10px);
    right: -35px;
    top: 0px;
    overflow: hidden;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery_grandopen-right.-pc {
    top: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery_grandopen-right.-pc.-form {
    top: 0;
  }
}
@media only screen and (max-width: 47.9375em) {
  .p-room-gallery_grandopen-right.-sp {
    display: block;
    top: 18px;
    right: -27px;
    width: 135px;
    height: auto;
    opacity: 1;
    visibility: visible;
    transform: rotate(45deg);
  }
}
@media print, screen and (min-width: 48em) {
  .p-room-gallery_grandopen-right.-sp {
    display: none;
  }
}
/* ホーム > ギャラリー
----------------------------------------------------------------- */
@media print, screen and (max-width: 63.9375em) {
  .p-room-gallery.-home {
    margin-top: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .p-room-gallery.-home {
    margin-top: 60px;
  }
}
.p-layout-slider {
  margin-top: 20px;
}
.p-layout-slider + .p-layout-slider {
  margin-top: 40px;
}

@media print, screen and (min-width: 48em) {
  .p-layout-slider {
    margin-top: 32px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-layout-slider + .p-layout-slider {
    margin-top: 66px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-layout-slider__head {
    display: flex;
    justify-content: space-between;
  }
}
.p-layout-slider__changer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.p-layout-slider__changer > span {
  font-weight: bold;
  display: block;
  padding-top: 4px;
  margin-right: 10px;
}
.p-layout-slider__changer button {
  display: block;
  background-color: transparent;
  border: 1px solid #cbcfd5;
  cursor: pointer;
  outline: none;
  padding-top: 7px;
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 6px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 3px;
  font-weight: bold;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
}
.p-layout-slider__changer button:not(:last-of-type) {
  margin-right: 10px;
}
.p-layout-slider__changer button:hover, .p-layout-slider__changer button.-active {
  background-color: #d8f0ff;
  border: 1px solid #74b708;
  color: #74b708;
}

@media only screen and (max-width: 47.9375em) {
  .p-layout-slider__changer > span {
    width: 100%;
    margin-right: 0;
    margin-bottom: 4px;
  }
}
.p-layout-slider__content {
  position: relative;
  margin-top: 12px;
}

@media print, screen and (min-width: 64em) {
  .p-layout-slider__content {
    margin-top: 24px;
    display: flex;
  }
}
.p-layout-slider__item {
  position: relative;
  width: 50%;
}
.p-layout-slider__item figure {
  opacity: 0;
  transition: all 0.35s ease 0s, z-index 0s;
}
.p-layout-slider__item figure img {
  max-width: 100%;
}
.p-layout-slider__item figure.-relative {
  position: relative;
}
.p-layout-slider__item figure.-absolute {
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
}
.p-layout-slider__item figure.-current {
  opacity: 1;
  z-index: 1;
}

@media only screen and (max-width: 47.9375em) {
  .p-layout-slider__item {
    width: 100%;
  }
}
.p-layout-slider__img {
  display: block;
}
.p-layout-slider__img:not(:last-of-type) {
  position: relative;
}

.p-internet-block {
  background-color: #fff;
  padding-top: 22px;
  padding-right: 30px;
  padding-left: 30px;
  padding-bottom: 22px;
}

.p-text-img {
  display: flex;
  flex-direction: column;
}
.p-text-img + .p-text-img {
  margin-top: 37px;
}

@media print, screen and (min-width: 48em) {
  .p-text-img {
    flex-direction: row;
  }
  .p-text-img:nth-child(2n) {
    flex-direction: row-reverse;
  }
}
@media print, screen and (min-width: 48em) {
  .p-text-img + .p-text-img {
    margin-top: 80px;
  }
}
.p-text-img__area {
  flex-grow: 0;
}
.p-text-img__area.-gap {
  flex: 0 1 20px;
}

@media print, screen and (min-width: 48em) {
  .p-text-img__area.-text {
    flex: 1 1 420px;
  }
  .p-text-img__area.-img {
    flex: 1 1 480px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-text-img__area.-gap {
    flex-basis: 60px;
  }
}
.p-text-img__row + .p-text-img__row.-heading {
  margin-top: 10px;
}
.p-text-img__row + .p-text-img__row.-text {
  margin-top: 17px;
}

@media print, screen and (min-width: 48em) {
  .p-text-img__row + .p-text-img__row.-text {
    margin-top: 21px;
  }
}
.p-text-img__img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.p-timeline__entry {
  display: grid;
  -ms-grid-rows: auto 0 auto 0 auto 0 auto;
  -ms-grid-columns: 16px 10px 1fr;
  grid-template: "pin time" auto "pin heading" auto "pin text" auto "pin img" auto/16px 1fr;
  gap: 0 10px;
  padding-bottom: 30px;
}

@media print, screen and (min-width: 48em) {
  .p-timeline__entry {
    gap: 0;
    -ms-grid-rows: auto;
    -ms-grid-columns: 62px 0 16px 0 1fr 0 300px;
    grid-template: "time pin text img" auto/62px 16px 1fr 300px;
    padding-bottom: 40px;
  }
}
.p-timeline__area.-time {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: time;
}
.p-timeline__area.-pin {
  -ms-grid-row: 1;
  -ms-grid-row-span: 7;
  -ms-grid-column: 1;
  grid-area: pin;
  position: relative;
  height: calc(100% + 30px);
}
.p-timeline__area.-text {
  -ms-grid-row: 5;
  -ms-grid-column: 3;
  grid-area: text;
  padding-top: 3px;
}
.p-timeline__area.-img {
  -ms-grid-row: 7;
  -ms-grid-column: 3;
  grid-area: img;
  padding-top: 18px;
}

@media print, screen and (min-width: 48em) {
  .p-timeline__area.-pin {
    padding-top: 8px;
    height: calc(100% + 40px);
  }
}
@media print, screen and (min-width: 48em) {
  .p-timeline__area.-text {
    padding: 0 40px 0 20px;
  }
}
@media print, screen and (min-width: 48em) {
  .p-timeline__area.-time {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .p-timeline__area.-pin {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .p-timeline__area.-text {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .p-timeline__area.-img {
    -ms-grid-row: 1;
    -ms-grid-column: 7;
  }
}
@media print, screen and (min-width: 48em) {
  .p-timeline__area.-img {
    padding-top: 0;
  }
}
.p-timeline__row + .p-timeline__row.-text {
  margin-top: 8px;
}

@media print, screen and (min-width: 48em) {
  .p-timeline__row + .p-timeline__row.-text {
    margin-top: 0;
  }
}
.p-timeline__time {
  font-family: Times New Roman, sans-serif;
  font-weight: 500;
  color: #74b708;
  font-size: 1.125rem;
  transform: translateY(-1px);
  line-height: 1;
}

@media print, screen and (min-width: 48em) {
  .p-timeline__time {
    transform: translateY(4px);
    font-size: 1.375rem;
  }
}
.p-timeline__img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.p-map-area {
  display: flex;
}

@media only screen and (max-width: 47.9375em) {
  .p-map-area {
    flex-direction: column;
  }
}
@media print, screen and (min-width: 48em) {
  .p-map-area {
    flex-direction: row-reverse;
  }
}
.p-map-area__side {
  display: block;
  box-sizing: border-box;
}
.p-map-area__side span {
  display: block;
  margin-top: 8px;
}

@media only screen and (max-width: 47.9375em) {
  .p-map-area__side {
    margin-top: 26px;
  }
  .p-map-area__side img {
    width: 100%;
  }
}
@media print, screen and (min-width: 48em) {
  .p-map-area__side {
    max-width: 280px;
    margin-right: 28px;
  }
}
.p-map-area__pic {
  margin-top: 16px;
}
.p-map-area__pic.-mt-8 {
  margin-top: 8px;
}
.p-map-area__pic.-mt-21 {
  margin-top: 21px;
}

@media print, screen and (min-width: 48em) {
  .p-map-area__map {
    flex: 1;
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.p-scroll-company {
  position: relative;
  z-index: 40000;
  width: 100%;
  padding-top: 25px;
}

@media print, screen and (min-width: 48em) {
  .p-scroll-company {
    padding-top: 40px;
  }
}
.p-scroll-company__inner {
  display: flex;
  overflow: hidden;
}

.p-scroll-company__image-list {
  display: flex;
  list-style: none;
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
}

.p-scroll-company__image {
  height: 80px;
  margin: 0 20px;
}
.p-scroll-company__image img {
  display: block;
  width: auto;
}

@media only screen and (max-width: 47.9375em) {
  .p-scroll-company__image {
    margin: 0 10px;
  }
}
.u-mt-0 {
  margin-top: 0px;
}

.u-mr-0 {
  margin-right: 0px;
}

.u-mb-0 {
  margin-bottom: 0px;
}

.u-ml-0 {
  margin-left: 0px;
}

.u-pt-0 {
  padding-top: 0px;
}

.u-pr-0 {
  padding-right: 0px;
}

.u-pb-0 {
  padding-bottom: 0px;
}

.u-pl-0 {
  padding-left: 0px;
}

.u-mt-1 {
  margin-top: 5px;
}

.u-mr-1 {
  margin-right: 5px;
}

.u-mb-1 {
  margin-bottom: 5px;
}

.u-ml-1 {
  margin-left: 5px;
}

.u-pt-1 {
  padding-top: 5px;
}

.u-pr-1 {
  padding-right: 5px;
}

.u-pb-1 {
  padding-bottom: 5px;
}

.u-pl-1 {
  padding-left: 5px;
}

.u-mt-2 {
  margin-top: 10px;
}

.u-mr-2 {
  margin-right: 10px;
}

.u-mb-2 {
  margin-bottom: 10px;
}

.u-ml-2 {
  margin-left: 10px;
}

.u-pt-2 {
  padding-top: 10px;
}

.u-pr-2 {
  padding-right: 10px;
}

.u-pb-2 {
  padding-bottom: 10px;
}

.u-pl-2 {
  padding-left: 10px;
}

.u-mt-3 {
  margin-top: 15px;
}

.u-mr-3 {
  margin-right: 15px;
}

.u-mb-3 {
  margin-bottom: 15px;
}

.u-ml-3 {
  margin-left: 15px;
}

.u-pt-3 {
  padding-top: 15px;
}

.u-pr-3 {
  padding-right: 15px;
}

.u-pb-3 {
  padding-bottom: 15px;
}

.u-pl-3 {
  padding-left: 15px;
}

.u-mt-4 {
  margin-top: 20px;
}

.u-mr-4 {
  margin-right: 20px;
}

.u-mb-4 {
  margin-bottom: 20px;
}

.u-ml-4 {
  margin-left: 20px;
}

.u-pt-4 {
  padding-top: 20px;
}

.u-pr-4 {
  padding-right: 20px;
}

.u-pb-4 {
  padding-bottom: 20px;
}

.u-pl-4 {
  padding-left: 20px;
}

.u-mt-5 {
  margin-top: 25px;
}

.u-mr-5 {
  margin-right: 25px;
}

.u-mb-5 {
  margin-bottom: 25px;
}

.u-ml-5 {
  margin-left: 25px;
}

.u-pt-5 {
  padding-top: 25px;
}

.u-pr-5 {
  padding-right: 25px;
}

.u-pb-5 {
  padding-bottom: 25px;
}

.u-pl-5 {
  padding-left: 25px;
}

.u-mt-6 {
  margin-top: 30px;
}

.u-mr-6 {
  margin-right: 30px;
}

.u-mb-6 {
  margin-bottom: 30px;
}

.u-ml-6 {
  margin-left: 30px;
}

.u-pt-6 {
  padding-top: 30px;
}

.u-pr-6 {
  padding-right: 30px;
}

.u-pb-6 {
  padding-bottom: 30px;
}

.u-pl-6 {
  padding-left: 30px;
}

.u-mt-7 {
  margin-top: 35px;
}

.u-mr-7 {
  margin-right: 35px;
}

.u-mb-7 {
  margin-bottom: 35px;
}

.u-ml-7 {
  margin-left: 35px;
}

.u-pt-7 {
  padding-top: 35px;
}

.u-pr-7 {
  padding-right: 35px;
}

.u-pb-7 {
  padding-bottom: 35px;
}

.u-pl-7 {
  padding-left: 35px;
}

.u-mt-8 {
  margin-top: 40px;
}

.u-mr-8 {
  margin-right: 40px;
}

.u-mb-8 {
  margin-bottom: 40px;
}

.u-ml-8 {
  margin-left: 40px;
}

.u-pt-8 {
  padding-top: 40px;
}

.u-pr-8 {
  padding-right: 40px;
}

.u-pb-8 {
  padding-bottom: 40px;
}

.u-pl-8 {
  padding-left: 40px;
}

.u-mt-9 {
  margin-top: 45px;
}

.u-mr-9 {
  margin-right: 45px;
}

.u-mb-9 {
  margin-bottom: 45px;
}

.u-ml-9 {
  margin-left: 45px;
}

.u-pt-9 {
  padding-top: 45px;
}

.u-pr-9 {
  padding-right: 45px;
}

.u-pb-9 {
  padding-bottom: 45px;
}

.u-pl-9 {
  padding-left: 45px;
}

.u-mt-10 {
  margin-top: 50px;
}

.u-mr-10 {
  margin-right: 50px;
}

.u-mb-10 {
  margin-bottom: 50px;
}

.u-ml-10 {
  margin-left: 50px;
}

.u-pt-10 {
  padding-top: 50px;
}

.u-pr-10 {
  padding-right: 50px;
}

.u-pb-10 {
  padding-bottom: 50px;
}

.u-pl-10 {
  padding-left: 50px;
}

.u-mt-11 {
  margin-top: 55px;
}

.u-mr-11 {
  margin-right: 55px;
}

.u-mb-11 {
  margin-bottom: 55px;
}

.u-ml-11 {
  margin-left: 55px;
}

.u-pt-11 {
  padding-top: 55px;
}

.u-pr-11 {
  padding-right: 55px;
}

.u-pb-11 {
  padding-bottom: 55px;
}

.u-pl-11 {
  padding-left: 55px;
}

.u-mt-12 {
  margin-top: 60px;
}

.u-mr-12 {
  margin-right: 60px;
}

.u-mb-12 {
  margin-bottom: 60px;
}

.u-ml-12 {
  margin-left: 60px;
}

.u-pt-12 {
  padding-top: 60px;
}

.u-pr-12 {
  padding-right: 60px;
}

.u-pb-12 {
  padding-bottom: 60px;
}

.u-pl-12 {
  padding-left: 60px;
}

.u-mt-13 {
  margin-top: 65px;
}

.u-mr-13 {
  margin-right: 65px;
}

.u-mb-13 {
  margin-bottom: 65px;
}

.u-ml-13 {
  margin-left: 65px;
}

.u-pt-13 {
  padding-top: 65px;
}

.u-pr-13 {
  padding-right: 65px;
}

.u-pb-13 {
  padding-bottom: 65px;
}

.u-pl-13 {
  padding-left: 65px;
}

.u-mt-14 {
  margin-top: 70px;
}

.u-mr-14 {
  margin-right: 70px;
}

.u-mb-14 {
  margin-bottom: 70px;
}

.u-ml-14 {
  margin-left: 70px;
}

.u-pt-14 {
  padding-top: 70px;
}

.u-pr-14 {
  padding-right: 70px;
}

.u-pb-14 {
  padding-bottom: 70px;
}

.u-pl-14 {
  padding-left: 70px;
}

.u-mt-15 {
  margin-top: 75px;
}

.u-mr-15 {
  margin-right: 75px;
}

.u-mb-15 {
  margin-bottom: 75px;
}

.u-ml-15 {
  margin-left: 75px;
}

.u-pt-15 {
  padding-top: 75px;
}

.u-pr-15 {
  padding-right: 75px;
}

.u-pb-15 {
  padding-bottom: 75px;
}

.u-pl-15 {
  padding-left: 75px;
}

.u-mt-16 {
  margin-top: 80px;
}

.u-mr-16 {
  margin-right: 80px;
}

.u-mb-16 {
  margin-bottom: 80px;
}

.u-ml-16 {
  margin-left: 80px;
}

.u-pt-16 {
  padding-top: 80px;
}

.u-pr-16 {
  padding-right: 80px;
}

.u-pb-16 {
  padding-bottom: 80px;
}

.u-pl-16 {
  padding-left: 80px;
}

.u-mt-17 {
  margin-top: 85px;
}

.u-mr-17 {
  margin-right: 85px;
}

.u-mb-17 {
  margin-bottom: 85px;
}

.u-ml-17 {
  margin-left: 85px;
}

.u-pt-17 {
  padding-top: 85px;
}

.u-pr-17 {
  padding-right: 85px;
}

.u-pb-17 {
  padding-bottom: 85px;
}

.u-pl-17 {
  padding-left: 85px;
}

.u-mt-18 {
  margin-top: 90px;
}

.u-mr-18 {
  margin-right: 90px;
}

.u-mb-18 {
  margin-bottom: 90px;
}

.u-ml-18 {
  margin-left: 90px;
}

.u-pt-18 {
  padding-top: 90px;
}

.u-pr-18 {
  padding-right: 90px;
}

.u-pb-18 {
  padding-bottom: 90px;
}

.u-pl-18 {
  padding-left: 90px;
}

.u-mt-19 {
  margin-top: 95px;
}

.u-mr-19 {
  margin-right: 95px;
}

.u-mb-19 {
  margin-bottom: 95px;
}

.u-ml-19 {
  margin-left: 95px;
}

.u-pt-19 {
  padding-top: 95px;
}

.u-pr-19 {
  padding-right: 95px;
}

.u-pb-19 {
  padding-bottom: 95px;
}

.u-pl-19 {
  padding-left: 95px;
}

.u-mt-20 {
  margin-top: 100px;
}

.u-mr-20 {
  margin-right: 100px;
}

.u-mb-20 {
  margin-bottom: 100px;
}

.u-ml-20 {
  margin-left: 100px;
}

.u-pt-20 {
  padding-top: 100px;
}

.u-pr-20 {
  padding-right: 100px;
}

.u-pb-20 {
  padding-bottom: 100px;
}

.u-pl-20 {
  padding-left: 100px;
}

@media only screen and (max-width: 47.9375em) {
  .u-pt-4_sp {
    padding-top: 20px;
  }
}
@media print, screen and (min-width: 100em) {
  .u-hide-full {
    display: none;
  }
}
@media print, screen and (min-width: 87.5em) {
  .u-hide-XL {
    display: none;
  }
}
@media print, screen and (min-width: 75em) {
  .u-hide-L {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .u-hide-M {
    display: none;
  }
}
@media print, screen and (min-width: 48em) {
  .u-hide-S {
    display: none;
  }
}
@media only screen and (max-width: 47.9375em) {
  .u-hide-XS {
    display: none;
  }
}
@media print {
  .u-hide-print {
    display: none;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .u-hide-underM {
    display: none;
  }
}
.u-show-XS,
.u-show-S,
.u-show-S_inline,
.u-show-M,
.u-show-L,
.u-show-XL,
.u-show-full {
  display: none;
}

@media only screen and (max-width: 47.9375em) {
  .u-show-XS {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .u-show-S {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .u-show-S_inline {
    display: inline;
  }
}
@media print, screen and (min-width: 64em) {
  .u-show-M {
    display: block;
  }
}
@media print, screen and (min-width: 75em) {
  .u-show-M.-L {
    display: none;
  }
}
@media print, screen and (min-width: 75em) {
  .u-show-L {
    display: block;
  }
}
@media print, screen and (min-width: 87.5em) {
  .u-show-XL {
    display: block;
  }
}
@media print, screen and (min-width: 100em) {
  .u-show-full {
    display: block;
  }
}
/*
 * アニメーションのみ行うクラス
 */
@keyframes slideToRight {
  0% {
    right: 100%;
  }
  30% {
    right: 0;
  }
  40% {
    right: 0;
  }
  100% {
    right: -100%;
  }
}
@keyframes slideToRight-content {
  0% {
    right: 100%;
  }
  50% {
    right: 0;
  }
}
@keyframes slideToLeft {
  0% {
    left: 100%;
  }
  30% {
    left: 0;
  }
  40% {
    left: 0;
  }
  100% {
    left: -100%;
  }
}
@keyframes slideToLeft-content {
  0% {
    left: 100%;
  }
  50% {
    left: 0;
  }
}
/* ベース */
.u-fade {
  opacity: 0;
  transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-fade.is-active {
  opacity: 1;
}

@media print, screen and (min-width: 64em) {
  .u-fade {
    opacity: 0;
    transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
.u-anime-group.is-active .u-fade {
  opacity: 1;
}

@media print, screen and (min-width: 64em) {
  .u-fade.is-active,
  .u-anime-group.is-active .u-fade {
    opacity: 1;
  }
}
.u-fade.-fast {
  transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-fade.-up {
  transform: translate3d(0, 50px, 0);
}
.u-fade.-up.is-active {
  transform: translate3d(0, 0, 0);
}

@media print, screen and (min-width: 64em) {
  .u-fade.-fast {
    transition: all 0.35s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
/* 複数カラムのコンテンツを左から順に表示 */
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(1) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(2) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(3) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(4) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(5) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(6) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(7) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(8) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(9) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.9s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(10) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(11) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(12) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(13) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(14) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(15) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.5s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(16) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.6s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(17) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.7s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(18) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.8s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(19) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.9s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(20) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(21) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(22) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(23) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(24) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(25) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.5s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(26) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.6s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(27) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.7s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(28) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.8s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(29) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 2.9s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(30) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(31) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(32) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(33) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(34) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(35) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.5s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(36) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.6s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(37) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.7s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(38) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.8s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(39) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 3.9s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(40) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(41) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.1s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(42) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.2s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(43) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.3s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(44) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.4s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(45) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.5s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(46) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.6s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(47) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.7s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(48) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.8s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(49) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 4.9s;
  }
}
@media print, screen and (min-width: 64em) {
  .u-anime-group.is-active .u-fade:nth-of-type(50) {
    transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 5s;
  }
}
.u-button-animation {
  position: relative;
  overflow: hidden;
}
.u-button-animation::before {
  content: "";
  position: absolute;
  background-color: #8ac9c4;
  width: 100%;
  height: 100%;
  z-index: 10;
  top: 0;
  right: -100%;
  border-radius: 4px;
}
.u-button-animation .c-button {
  opacity: 0;
}
.u-button-animation.is-active::before {
  animation: slideToRight 0.8s ease 1 normal;
}
.u-button-animation.is-active .c-button {
  animation: slideToRight-content 0.8s ease 1 normal;
  opacity: 1;
}

.u-slide-left {
  position: relative;
  overflow: hidden;
}
.u-slide-left img {
  opacity: 0;
  position: relative;
  transform: translate3d(70px, 0, 0);
  transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
}
.u-slide-left::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 100%;
  height: 100%;
  background-color: #f3f6f6;
  z-index: 20;
}
.u-slide-left.-support::before {
  background-color: #f3f6f6;
}

@media print, screen and (max-width: 63.9375em) {
  .u-slide-left img {
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
  }
}
.p-home-block.is-active .u-slide-left::before,
.p-service-block.is-active .u-slide-left::before,
.p-main-block.is-active .u-slide-left::before,
.c-card__link.is-active .u-slide-left::before {
  animation: slideToLeft 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
}
.p-home-block.is-active .u-slide-left img,
.p-service-block.is-active .u-slide-left img,
.p-main-block.is-active .u-slide-left img,
.c-card__link.is-active .u-slide-left img {
  animation: slideToLeft-content 0.75s ease-out 1 normal;
  opacity: 1;
  transform: translate3d(0px, 0, 0);
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.is-active .u-slide-left::before {
    animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.is-active .u-slide-left img {
    animation: slideToLeft-content 1s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.is-active .u-slide-left::before {
    animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.is-active .u-slide-left img {
    animation: slideToLeft-content 1s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block.is-active .u-slide-left::before {
    animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block.is-active .u-slide-left img {
    animation: slideToLeft-content 1s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card__link.is-active .u-slide-left::before {
    animation: slideToLeft 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-card__link.is-active .u-slide-left img {
    animation: slideToLeft-content 1s ease-out 1 normal;
  }
}
.u-slide-right {
  position: relative;
  overflow: hidden;
}
.u-slide-right img {
  opacity: 0;
  position: relative;
  transform: translate3d(-70px, 0, 0);
  transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
}
.u-slide-right::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 100%;
  height: 100%;
  background-color: #f3f6f6;
  z-index: 20;
}
.u-slide-right.-support::before {
  background-color: #f3f6f6;
}

@media print, screen and (max-width: 63.9375em) {
  .u-slide-right img {
    transition: transform 1s 0s cubic-bezier(0.48, 0.18, 0, 0.98);
  }
}
.p-home-block.is-active .u-slide-right::before,
.p-service-block.is-active .u-slide-right::before,
.p-main-block.is-active .u-slide-right::before {
  animation: slideToRight 0.75s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
}
.p-home-block.is-active .u-slide-right img,
.p-service-block.is-active .u-slide-right img,
.p-main-block.is-active .u-slide-right img {
  animation: slideToRight-content 0.75s ease-out 1 normal;
  opacity: 1;
  transform: translate3d(0px, 0, 0);
}

@media print, screen and (max-width: 63.9375em) {
  .p-home-block.is-active .u-slide-right::before {
    animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-home-block.is-active .u-slide-right img {
    animation: slideToRight-content 1s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.is-active .u-slide-right::before {
    animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-service-block.is-active .u-slide-right img {
    animation: slideToRight-content 1s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block.is-active .u-slide-right::before {
    animation: slideToRight 1s cubic-bezier(0.48, 0.18, 0, 0.98) 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .p-main-block.is-active .u-slide-right img {
    animation: slideToRight-content 1s ease-out 1 normal;
  }
}
.u-slide-left-support {
  position: relative;
  overflow: hidden;
}
.u-slide-left-support img {
  opacity: 0;
  position: relative;
  transform: translate3d(90px, 0, 0);
  transition: transform 1s 0s ease;
}
.u-slide-left-support::before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  width: 100%;
  height: 100%;
  background-color: #f3f6f6;
  z-index: 20;
}

@media print, screen and (max-width: 63.9375em) {
  .u-slide-left-support img {
    transition: transform 0.75s 0s ease;
  }
}
.c-column.-sp_reverse.is-active .u-slide-left-support::before {
  animation: slideToLeft 0.75s ease-out 1 normal;
}
.c-column.-sp_reverse.is-active .u-slide-left-support img {
  animation: slideToLeft-content 0.75s ease-out 1 normal;
  opacity: 1;
  transform: translate3d(0px, 0, 0);
}

@media print, screen and (max-width: 63.9375em) {
  .c-column.-sp_reverse.is-active .u-slide-left-support::before {
    animation: slideToLeft 0.75s ease-out 1 normal;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .c-column.-sp_reverse.is-active .u-slide-left-support img {
    animation: slideToLeft-content 0.75s ease-out 1 normal;
  }
}
.u-fade.-slow {
  opacity: 1;
  transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media print, screen and (min-width: 64em) {
  .u-fade.-slow {
    opacity: 1;
    transition: all 0.95s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
/* ベース */
.u-fade2 {
  opacity: 1;
  transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.u-fade2.is-active {
  opacity: 1;
}

@media print, screen and (min-width: 64em) {
  .u-fade2 {
    opacity: 1;
    transition: all 0.55s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
.u-anime-group.is-active .u-fade2 {
  opacity: 1;
}

@media print, screen and (min-width: 64em) {
  .u-fade2.is-active,
  .u-anime-group.is-active .u-fade2 {
    opacity: 1;
  }
}
/* 下から上 */
.u-fade2.-up2 {
  transform: translate3d(0, 130px, 0);
}
.u-fade2.-up2.is-active {
  transform: translate3d(0, 0, 0);
}

@media print, screen and (min-width: 64em) {
  .u-fade2.-up2 {
    transform: translate3d(0, 130px, 0);
  }
}
.u-anime-group.is-active .u-fade2.-up2 {
  transform: translate3d(0, 0, 0);
}

@media print, screen and (min-width: 64em) {
  .u-fade2.-up2.is-active,
  .u-anime-group.is-active .u-fade2.-up2 {
    transform: translate3d(0, 0, 0);
  }
}
.u-no-break {
  display: inline-block;
}

@media print, screen and (min-width: 64em) {
  .u-no-break_M {
    display: inline-block;
  }
}
@media print, screen and (min-width: 75em) {
  .u-no-break_L {
    display: inline-block;
  }
}
.p-gallery__heading .u-no-break_L {
  color: #2d2d2d;
}

.u-page-break {
  page-break-before: always;
}

.u-mt-0 {
  margin-top: 0px;
}

.u-mr-0 {
  margin-right: 0px;
}

.u-mb-0 {
  margin-bottom: 0px;
}

.u-ml-0 {
  margin-left: 0px;
}

.u-pt-0 {
  padding-top: 0px;
}

.u-pr-0 {
  padding-right: 0px;
}

.u-pb-0 {
  padding-bottom: 0px;
}

.u-pl-0 {
  padding-left: 0px;
}

.u-mt-1 {
  margin-top: 5px;
}

.u-mr-1 {
  margin-right: 5px;
}

.u-mb-1 {
  margin-bottom: 5px;
}

.u-ml-1 {
  margin-left: 5px;
}

.u-pt-1 {
  padding-top: 5px;
}

.u-pr-1 {
  padding-right: 5px;
}

.u-pb-1 {
  padding-bottom: 5px;
}

.u-pl-1 {
  padding-left: 5px;
}

.u-mt-2 {
  margin-top: 10px;
}

.u-mr-2 {
  margin-right: 10px;
}

.u-mb-2 {
  margin-bottom: 10px;
}

.u-ml-2 {
  margin-left: 10px;
}

.u-pt-2 {
  padding-top: 10px;
}

.u-pr-2 {
  padding-right: 10px;
}

.u-pb-2 {
  padding-bottom: 10px;
}

.u-pl-2 {
  padding-left: 10px;
}

.u-mt-3 {
  margin-top: 15px;
}

.u-mr-3 {
  margin-right: 15px;
}

.u-mb-3 {
  margin-bottom: 15px;
}

.u-ml-3 {
  margin-left: 15px;
}

.u-pt-3 {
  padding-top: 15px;
}

.u-pr-3 {
  padding-right: 15px;
}

.u-pb-3 {
  padding-bottom: 15px;
}

.u-pl-3 {
  padding-left: 15px;
}

.u-mt-4 {
  margin-top: 20px;
}

.u-mr-4 {
  margin-right: 20px;
}

.u-mb-4 {
  margin-bottom: 20px;
}

.u-ml-4 {
  margin-left: 20px;
}

.u-pt-4 {
  padding-top: 20px;
}

.u-pr-4 {
  padding-right: 20px;
}

.u-pb-4 {
  padding-bottom: 20px;
}

.u-pl-4 {
  padding-left: 20px;
}

.u-mt-5 {
  margin-top: 25px;
}

.u-mr-5 {
  margin-right: 25px;
}

.u-mb-5 {
  margin-bottom: 25px;
}

.u-ml-5 {
  margin-left: 25px;
}

.u-pt-5 {
  padding-top: 25px;
}

.u-pr-5 {
  padding-right: 25px;
}

.u-pb-5 {
  padding-bottom: 25px;
}

.u-pl-5 {
  padding-left: 25px;
}

.u-mt-6 {
  margin-top: 30px;
}

.u-mr-6 {
  margin-right: 30px;
}

.u-mb-6 {
  margin-bottom: 30px;
}

.u-ml-6 {
  margin-left: 30px;
}

.u-pt-6 {
  padding-top: 30px;
}

.u-pr-6 {
  padding-right: 30px;
}

.u-pb-6 {
  padding-bottom: 30px;
}

.u-pl-6 {
  padding-left: 30px;
}

.u-mt-7 {
  margin-top: 35px;
}

.u-mr-7 {
  margin-right: 35px;
}

.u-mb-7 {
  margin-bottom: 35px;
}

.u-ml-7 {
  margin-left: 35px;
}

.u-pt-7 {
  padding-top: 35px;
}

.u-pr-7 {
  padding-right: 35px;
}

.u-pb-7 {
  padding-bottom: 35px;
}

.u-pl-7 {
  padding-left: 35px;
}

.u-mt-8 {
  margin-top: 40px;
}

.u-mr-8 {
  margin-right: 40px;
}

.u-mb-8 {
  margin-bottom: 40px;
}

.u-ml-8 {
  margin-left: 40px;
}

.u-pt-8 {
  padding-top: 40px;
}

.u-pr-8 {
  padding-right: 40px;
}

.u-pb-8 {
  padding-bottom: 40px;
}

.u-pl-8 {
  padding-left: 40px;
}

.u-mt-9 {
  margin-top: 45px;
}

.u-mr-9 {
  margin-right: 45px;
}

.u-mb-9 {
  margin-bottom: 45px;
}

.u-ml-9 {
  margin-left: 45px;
}

.u-pt-9 {
  padding-top: 45px;
}

.u-pr-9 {
  padding-right: 45px;
}

.u-pb-9 {
  padding-bottom: 45px;
}

.u-pl-9 {
  padding-left: 45px;
}

.u-mt-10 {
  margin-top: 50px;
}

.u-mr-10 {
  margin-right: 50px;
}

.u-mb-10 {
  margin-bottom: 50px;
}

.u-ml-10 {
  margin-left: 50px;
}

.u-pt-10 {
  padding-top: 50px;
}

.u-pr-10 {
  padding-right: 50px;
}

.u-pb-10 {
  padding-bottom: 50px;
}

.u-pl-10 {
  padding-left: 50px;
}

.u-mt-11 {
  margin-top: 55px;
}

.u-mr-11 {
  margin-right: 55px;
}

.u-mb-11 {
  margin-bottom: 55px;
}

.u-ml-11 {
  margin-left: 55px;
}

.u-pt-11 {
  padding-top: 55px;
}

.u-pr-11 {
  padding-right: 55px;
}

.u-pb-11 {
  padding-bottom: 55px;
}

.u-pl-11 {
  padding-left: 55px;
}

.u-mt-12 {
  margin-top: 60px;
}

.u-mr-12 {
  margin-right: 60px;
}

.u-mb-12 {
  margin-bottom: 60px;
}

.u-ml-12 {
  margin-left: 60px;
}

.u-pt-12 {
  padding-top: 60px;
}

.u-pr-12 {
  padding-right: 60px;
}

.u-pb-12 {
  padding-bottom: 60px;
}

.u-pl-12 {
  padding-left: 60px;
}

.u-mt-13 {
  margin-top: 65px;
}

.u-mr-13 {
  margin-right: 65px;
}

.u-mb-13 {
  margin-bottom: 65px;
}

.u-ml-13 {
  margin-left: 65px;
}

.u-pt-13 {
  padding-top: 65px;
}

.u-pr-13 {
  padding-right: 65px;
}

.u-pb-13 {
  padding-bottom: 65px;
}

.u-pl-13 {
  padding-left: 65px;
}

.u-mt-14 {
  margin-top: 70px;
}

.u-mr-14 {
  margin-right: 70px;
}

.u-mb-14 {
  margin-bottom: 70px;
}

.u-ml-14 {
  margin-left: 70px;
}

.u-pt-14 {
  padding-top: 70px;
}

.u-pr-14 {
  padding-right: 70px;
}

.u-pb-14 {
  padding-bottom: 70px;
}

.u-pl-14 {
  padding-left: 70px;
}

.u-mt-15 {
  margin-top: 75px;
}

.u-mr-15 {
  margin-right: 75px;
}

.u-mb-15 {
  margin-bottom: 75px;
}

.u-ml-15 {
  margin-left: 75px;
}

.u-pt-15 {
  padding-top: 75px;
}

.u-pr-15 {
  padding-right: 75px;
}

.u-pb-15 {
  padding-bottom: 75px;
}

.u-pl-15 {
  padding-left: 75px;
}

.u-mt-16 {
  margin-top: 80px;
}

.u-mr-16 {
  margin-right: 80px;
}

.u-mb-16 {
  margin-bottom: 80px;
}

.u-ml-16 {
  margin-left: 80px;
}

.u-pt-16 {
  padding-top: 80px;
}

.u-pr-16 {
  padding-right: 80px;
}

.u-pb-16 {
  padding-bottom: 80px;
}

.u-pl-16 {
  padding-left: 80px;
}

.u-mt-17 {
  margin-top: 85px;
}

.u-mr-17 {
  margin-right: 85px;
}

.u-mb-17 {
  margin-bottom: 85px;
}

.u-ml-17 {
  margin-left: 85px;
}

.u-pt-17 {
  padding-top: 85px;
}

.u-pr-17 {
  padding-right: 85px;
}

.u-pb-17 {
  padding-bottom: 85px;
}

.u-pl-17 {
  padding-left: 85px;
}

.u-mt-18 {
  margin-top: 90px;
}

.u-mr-18 {
  margin-right: 90px;
}

.u-mb-18 {
  margin-bottom: 90px;
}

.u-ml-18 {
  margin-left: 90px;
}

.u-pt-18 {
  padding-top: 90px;
}

.u-pr-18 {
  padding-right: 90px;
}

.u-pb-18 {
  padding-bottom: 90px;
}

.u-pl-18 {
  padding-left: 90px;
}

.u-mt-19 {
  margin-top: 95px;
}

.u-mr-19 {
  margin-right: 95px;
}

.u-mb-19 {
  margin-bottom: 95px;
}

.u-ml-19 {
  margin-left: 95px;
}

.u-pt-19 {
  padding-top: 95px;
}

.u-pr-19 {
  padding-right: 95px;
}

.u-pb-19 {
  padding-bottom: 95px;
}

.u-pl-19 {
  padding-left: 95px;
}

.u-mt-20 {
  margin-top: 100px;
}

.u-mr-20 {
  margin-right: 100px;
}

.u-mb-20 {
  margin-bottom: 100px;
}

.u-ml-20 {
  margin-left: 100px;
}

.u-pt-20 {
  padding-top: 100px;
}

.u-pr-20 {
  padding-right: 100px;
}

.u-pb-20 {
  padding-bottom: 100px;
}

.u-pl-20 {
  padding-left: 100px;
}

@media only screen and (max-width: 47.9375em) {
  .u-pt-4_sp {
    padding-top: 20px;
  }
}
.u-visually-hidden,
input[type=radio] {
  position: absolute;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

/* ==========================================================================
Form
========================================================================== */
@media only screen and (max-width: 47.9375em) {
  .f-content-block__head {
    margin-bottom: 18px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-content-block__head {
    margin-bottom: 32px;
  }
}
.f-content-block__item + .f-content-block__item {
  margin-top: 36px;
}
.f-content-block__item.success .f-input-text, .f-content-block__item.error .f-input-text {
  position: relative;
}

@media print, screen and (min-width: 48em) {
  .f-content-block__item--column_2 {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-content-block__item--column_2 > * {
    margin-top: 22px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-content-block__item--column_2 > * {
    width: calc(50% - 20px);
  }
}
.f-container {
  margin-top: 50px;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  padding-bottom: 80px;
  padding-right: 4.6875%;
  padding-left: 4.6875%;
}

@media print, screen and (min-width: 48em) {
  .f-container {
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
  }
}
.c-content-block {
  margin-top: 40px;
}
.c-content-block .f-container {
  padding-bottom: 0;
}

.f-input-block {
  border: none;
}
.f-input-block.-flex .f-input-block__heading {
  font-weight: 400;
}
.f-input-block.-flex .f-input-block__body {
  flex: 1;
}
.f-input-block.-flex .f-input-block__body.-number:before {
  right: 35px;
}
.f-input-block.-flex .f-input-block__body.-number .f-input-inner-text {
  display: inline-block;
  margin-left: 8px;
}

@media print, screen and (min-width: 48em) {
  .f-input-block {
    min-height: 25px;
  }
}
@media print, screen and (min-width: 64em) {
  .f-input-block.-input .f-input-block__head {
    padding-top: 0.4em;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-block.-flex {
    margin-top: 15px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block.-flex {
    display: flex;
    margin-top: 20px;
    gap: 20px;
    align-items: baseline;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block.-flex .f-input-block__head {
    min-width: 220px;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block.-flex .f-input-block__body.-number {
    width: 200px;
    align-items: baseline;
    flex: none;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-block__head {
    margin-bottom: 15px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block__head {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    margin-bottom: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .f-input-block__head {
    box-sizing: border-box;
    margin-bottom: 0;
  }
}
.f-content-block--type_check .f-input-block__head {
  margin-bottom: 27px;
}

@media only screen and (max-width: 47.9375em) {
  .f-content-block--type_check .f-input-block__head {
    margin-bottom: 14px;
  }
}
.f-input-block__heading {
  position: relative;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: bold;
  line-height: 1.8;
}
.f-input-block__heading span.-note {
  font-weight: normal;
  font-size: 1rem;
}

@media only screen and (max-width: 47.9375em) {
  .f-input-block__heading {
    display: inline-block;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block__heading {
    font-size: 1.125rem;
  }
}
.f-input-block__sub-heading {
  font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  font-weight: bold;
}

@media only screen and (max-width: 47.9375em) {
  .f-input-block__sub-heading {
    display: inline-block;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block__sub-heading {
    font-size: 0.875rem;
  }
}
.f-input-block__body {
  margin-top: 12px;
  position: relative;
}
.f-input-block__body::before {
  display: block;
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  width: 19px;
  height: 18px;
  right: 12px;
  top: 12px;
  visibility: hidden;
  opacity: 0;
}

.f-input-block.success .f-input-block__body::before {
  display: block;
  position: absolute;
  content: "";
  background-image: url("/asset/media/images/common/icon_success.svg");
  background-repeat: no-repeat;
  width: 19px;
  height: 18px;
  right: 12px;
  top: 12px;
  z-index: 20;
  visibility: visible;
  opacity: 1;
}
.f-input-block.error .f-input-block__body::before {
  display: block;
  position: absolute;
  content: "";
  background-image: url("/asset/media/images/common/icon_error.svg");
  background-repeat: no-repeat;
  width: 24px;
  height: 23px;
  right: 12px;
  top: 12px;
  z-index: 20;
  visibility: visible;
  opacity: 1;
}

.f-input-block__body--type_postal-code {
  width: 200px;
}

.f-input-block__body-item {
  display: flex;
  display: -webkit-flex;
  width: 100%;
  margin-left: 0;
  margin-bottom: 12px;
}
.f-input-block__body-item:first-child {
  margin-left: 0;
}
.f-input-block__body-item > .f-input-inner-text {
  line-height: 2.5;
}

@media only screen and (max-width: 47.9375em) {
  .f-input-block__body-item {
    margin-left: 0;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-block__body-item:last-child {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-block--lv_2 {
    margin-top: 10px;
  }
}
.f-input-block__body-item--column {
  align-items: center;
}

.f-required {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-weight: bold;
  color: #e31515;
  line-height: 1.8;
}

.f-input-text {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  background: #fff;
  position: relative;
  border-width: 1px;
  border-style: solid;
  border-color: #e3e3e0;
  border-radius: 4px;
  background-color: #f7f7f7;
  padding-top: 9px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-left: 14px;
  z-index: 0;
  box-sizing: border-box;
  transition: background-color 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  font-size: 1rem;
}

@media only screen and (max-width: 47.9375em) {
  .f-input-text:hover {
    cursor: default;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text:hover {
    background-color: #fff;
  }
}
.success .f-input-text {
  background-color: #fff;
}

.error .f-input-text {
  background: #f6dcdc;
  border-color: #e31515;
}

.f-input-text[type=number] {
  -moz-appearance: textfield;
}
.f-input-text[type=number]::-webkit-outer-spin-button, .f-input-text[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.f-input-text::-moz-placeholder {
  color: #ccc;
}
.f-input-text::-moz-placeholder, .f-input-text:-ms-input-placeholder, .f-input-text::placeholder,
.f-input-text .browser-is-edge:-ms-input-placeholder {
  color: #ccc;
}

.browser-is-ie .f-input-text:-ms-input-placeholder {
  color: #ccc;
}

.f-input-text--type_calendar {
  background-image: url("/inquiry/img/icon_calendar.svg");
  background-repeat: no-repeat;
  background-position: right 14px top 11px;
}

@media print, screen and (min-width: 48em) {
  .f-input-text--type_calendar {
    width: 339px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-text--type_date {
    max-width: 110px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text--type_date {
    max-width: 120px;
  }
}
.f-input-text--type_time {
  color: #2d2d2d;
}

@media only screen and (max-width: 47.9375em) {
  .f-input-text--type_time {
    max-width: 42px;
    padding-right: 10px;
    padding-left: 10px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text--type_time {
    max-width: 48px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-text--type_amount {
    max-width: 60px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text--type_amount {
    max-width: 80px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-text--ml_m {
    margin-left: 12px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text--ml_m {
    margin-left: 16px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-text--ml_s {
    margin-left: 8px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-text--ml_s {
    margin-left: 10px;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-input-inner-text {
    margin-left: 4px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .f-input-inner-text {
    margin-left: 8px;
  }
}
.f-textarea {
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  background-color: #f7f7f7;
  border-width: 1px;
  border-style: solid;
  border-color: #e3e3e0;
  border-radius: 4px;
  padding-top: 9px;
  padding-right: 14px;
  padding-bottom: 9px;
  padding-left: 14px;
  box-sizing: border-box;
  transition: all 0.3s 0s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: 100%;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  font-size: 1rem;
}

@media only screen and (max-width: 47.9375em) {
  .f-textarea {
    height: 180px;
  }
}
@media print, screen and (min-width: 48em) {
  .f-textarea {
    height: 300px;
    width: 100%;
  }
}
.browser-is-ie .f-textarea {
  overflow: auto;
}

@media only screen and (max-width: 47.9375em) {
  .f-textarea:hover {
    cursor: default;
  }
}
@media print, screen and (min-width: 48em) {
  .f-textarea:hover {
    background-color: #fff;
  }
}
.success .f-textarea {
  background-color: #fff;
}

.error .f-textarea {
  background-color: #f6dcdc;
}

.f-select {
  display: block;
  position: relative;
  background: #fff;
  width: 100%;
}
.f-select > select {
  position: relative;
  z-index: 1;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  line-height: 1.5;
  color: #2d2d2d;
  padding-top: 9px;
  padding-right: 50px;
  padding-bottom: 10px;
  padding-left: 14px;
  background: transparent;
  cursor: pointer;
  border-width: 1px;
  border-style: solid;
  border-color: #e3e3e0;
  border-radius: 4px;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
  font-size: 1rem;
}
.f-select > select::-ms-expand {
  display: none;
}
.f-select:before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 40px;
  height: 100%;
  border-radius: 0 4px 4px 0;
  z-index: 2;
  pointer-events: none;
}
.f-select:after {
  position: absolute;
  content: "";
  top: calc(50% - 2px);
  right: 17px;
  width: 8px;
  height: 8px;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-bottom: 0px transparent solid;
  border-right: 5px transparent solid;
  border-left: 5px transparent solid;
  border-top: 5px #1a1a1a solid;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  content: "";
  z-index: 3;
}

@media only screen and (max-width: 47.9375em) {
  .f-select > select {
    height: 44px;
  }
}
.success .f-select {
  background: #fff;
}

.error .f-select {
  background: #f6dcdc;
}
.error .f-select select {
  border-color: #f75961;
}

@media print, screen and (min-width: 48em) {
  .f-select--size_50per {
    width: 50%;
  }
}
.f-continue-block {
  margin-top: 20px;
}

.f-continue-block__button {
  width: 250px;
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (max-width: 47.9375em) {
  .f-continue-block__button {
    width: 220px;
  }
}
.f-check > input {
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
}
.f-check > input:checked + label:before {
  border-color: #74b708;
}
.f-check > input:checked + label:after {
  color: #74b708;
  transform: translateY(-50%) rotate(45deg);
}
.f-check > label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding-left: 30px;
}
.f-check > label:before {
  content: "";
  position: absolute;
  left: 0;
  width: 20px;
  height: 20px;
  border: 2px solid currentColor;
  box-sizing: border-box;
  color: #cdcdcd;
  background-color: #fff;
  top: 0.3em;
}

@media only screen and (max-width: 47.9375em) {
  .f-check > label {
    font-size: 1rem;
  }
}
@media print, screen and (min-width: 48em) {
  .f-check > label {
    font-size: 1.125rem;
  }
}
.browser-is-ie .f-check > label:before,
.device-is-ios .f-check > label:before {
  top: 0.25em;
}

.f-check > label:after {
  content: "";
  position: absolute;
  display: block;
  color: transparent;
  transition: all 0.2s ease;
  top: calc(0.3em + 9px);
  width: 6px;
  height: 12px;
  box-sizing: border-box;
  left: 7px;
  border: solid 3px currentColor;
  border-left: 0;
  border-top: 0;
  transform: translateY(-40%) rotate(30deg);
}

.browser-is-ie .f-check > label:after,
.device-is-ios .f-check > label:after {
  top: calc(0.25em + 8px);
}

@media only screen and (max-width: 47.9375em) {
  .f-check > label span.-note {
    font-size: 0.75rem;
  }
}
.f-check.-personal {
  padding-right: 20px;
  padding-left: 20px;
  text-align: center;
}

.f-check-group {
  background-color: #f2f2f2;
  padding-top: 30px;
  padding-bottom: 30px;
}

.f-check__input {
  margin-top: 3px;
}

.f-radio > input {
  width: 0;
  height: 0;
  opacity: 0;
}
.f-radio > input:focus + label:before {
  outline: -webkit-focus-ring-color auto 1px;
}
.f-radio > input:checked + label:before, .f-radio > input:checked + label:after {
  color: #74b708;
}
.f-radio > input + label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 26px;
  margin-bottom: 5px;
}

.f-text-line-block .f-radio > input + label {
  margin-bottom: 0;
}

.f-radio > input + label:before {
  content: "";
  position: absolute;
  left: 0;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 2px solid currentColor;
  box-sizing: border-box;
  color: #cdcdcd;
  transition: all 0.2s ease;
  border-radius: 50%;
  top: 4px;
}
.f-radio > input + label:after {
  content: "";
  position: absolute;
  display: block;
  color: transparent;
  transition: all 0.2s ease;
  left: 4px;
  width: 12px;
  height: 12px;
  background: currentColor;
  border-radius: 50%;
  box-sizing: border-box;
  top: 8px;
}
.f-radio > ul {
  padding-left: 28px;
  margin-top: 5px;
}
.f-radio > .f-input-annotation {
  padding-left: 28px;
  margin-top: 5px;
  margin-bottom: 0;
}

@media only screen and (max-width: 47.9375em) {
  .f-radio > ul {
    margin-bottom: 10px;
  }
}
.error .f-radio label:before {
  background-color: #f6dcdc;
  border-color: #e31515;
}

.f-radio .f-select + label, .f-radio.-has_margin label {
  display: inline-block;
  margin-top: 18px;
}

.f-radio-group {
  padding-top: 0.4em;
}

.f-counter {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  transform: translateY(-100%);
  z-index: 60000;
  pointer-events: none;
  opacity: 0;
}
.f-counter.-active {
  opacity: 1;
  transform: translateY(58px);
}
.f-counter p {
  display: block;
  z-index: 1000;
  position: relative;
  line-height: 1.8;
  color: #fff;
  font-size: 1.125rem;
}
.f-counter p br {
  display: none;
}
.f-counter span {
  margin-right: 5px;
  font-size: 1rem;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  font-weight: bold;
}
.f-counter em {
  margin-right: 2px;
  margin-left: 4px;
  font-family: Times New Roman, sans-serif;
  font-size: 2.8125rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1;
}

@media print, screen and (min-width: 64em) {
  .f-counter {
    max-width: 1248px;
    margin-right: auto;
    margin-left: auto;
    transform: none;
  }
}
@media print, screen and (min-width: 75em) {
  .f-counter p {
    color: #74b708;
  }
}
@media print, screen and (min-width: 64em) {
  .f-counter p br {
    display: block;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-counter span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .f-counter span {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 64em) {
  .f-counter span {
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.9375em) {
  .f-counter__inner {
    position: relative;
    background-color: #74b708;
    color: #fff;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .f-counter__inner {
    position: relative;
    background-color: #74b708;
    color: #fff;
    text-align: center;
  }
}
@media print, screen and (min-width: 75em) {
  .f-counter__inner {
    border: 2px solid #74b708;
    background-color: #fff;
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    text-align: center;
    min-width: 120px;
    padding-top: 18px;
    padding-right: 22px;
    padding-bottom: 16px;
    padding-left: 22px;
    white-space: nowrap;
    margin-right: 0;
    margin-top: 50px;
  }
}
.f-label-msg {
  width: 100%;
  color: #e31515;
  font-size: 0.875rem;
  display: none;
}
.f-label-msg.-error {
  position: relative;
  padding-left: 28px;
  margin-top: 12px;
  color: #e31515;
}
.f-label-msg.-error:before {
  position: absolute;
  top: 0.15em;
  left: 0;
  content: "!";
  width: 18px;
  height: 18px;
  display: block;
  background-color: #e31515;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  font-feature-settings: "palt" 1;
  letter-spacing: 0.01em;
  text-indent: 1px;
}

@media print, screen and (min-width: 48em) {
  .f-label-msg {
    width: auto;
  }
}
@media only screen and (max-width: 47.9375em) {
  .f-label-msg.-error:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
@media print, screen and (min-width: 48em) {
  .f-label-msg.-error:before {
    font-family: "Noto Serif JP", "Yu Mincho", "游明朝", "YuMincho", "Hiragino Mincho ProN", serif, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
}
.error .f-label-msg.-error {
  display: block;
}

.f-step {
  display: flex;
  display: flex;
  justify-content: center;
  align-items: center;
  border-style: solid;
  border-color: #ddd;
  border-width: 1px 0 1px 0;
  padding-top: 10px;
  padding-bottom: 8px;
}

.f-step__item {
  font-size: 1rem;
  position: relative;
  color: #aaa;
  margin-left: 85px;
}
.f-step__item.-active {
  color: #222;
  font-weight: bold;
  font-feature-settings: "palt" 1;
}
.f-step__item:first-child {
  margin-left: 0;
}
.f-step__item:first-child:before {
  display: none;
}
.f-step__item:before {
  content: "";
  left: -45px;
  display: block;
  position: absolute;
  top: 10px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #aaa;
  border-right: 2px solid #aaa;
  transform: rotate(45deg);
}

/* ==========================================================================
Print
========================================================================== */
@media print {
  body {
    padding-left: 0;
    width: 1400px;
    transform: scale(0.7);
    transform-origin: 0 0;
    -webkit-print-color-adjust: exact;
  }
  body.browser-is-ff {
    transform: none;
    transform-origin: 50% 50%;
  }
  body.browser-is-ie {
    transform: none;
    transform-origin: 50% 50%;
    zoom: 0.77;
  }
  body.browser-is-edge {
    transform: none;
    transform-origin: 50% 50%;
    zoom: 0.6;
  }
  body.-map_print .l-header,
  body.-map_print .p-main-menu-button,
  body.-map_print .p-breadcrumbs,
  body.-map_print .p-detail-visual {
    display: none;
  }
  body.-map_print .c-block__inner > section,
  body.-map_print .c-block__inner > div {
    display: none;
  }
  body.-map_print .p-page-top,
  body.-map_print .l-footer {
    display: none;
  }
  body.-map_print .c-block__inner #print_area {
    display: block;
  }
  body.-map_print .c-block__inner #print_area_2 {
    display: block;
  }
  body.-map_print .c-block__inner #print_area_2 .c-image {
    display: flex;
  }
  body.-map_print2 .l-header,
  body.-map_print2 .p-main-menu-button,
  body.-map_print2 .p-breadcrumbs,
  body.-map_print2 .p-detail-visual {
    display: none;
  }
  body.-map_print2 .c-block__inner > section,
  body.-map_print2 .c-block__inner > div {
    display: none;
  }
  body.-map_print2 .p-page-top,
  body.-map_print2 .l-footer {
    display: none;
  }
  body.-map_print2 .c-block__inner #fromStation-1 {
    display: block;
  }
  body.-map_print2 .c-block__inner #fromStation-1 + .c-section-4 {
    display: block;
  }
  body.-map_print3 .l-header,
  body.-map_print3 .p-main-menu-button,
  body.-map_print3 .p-breadcrumbs,
  body.-map_print3 .p-detail-visual {
    display: none;
  }
  body.-map_print3 .c-block__inner > section,
  body.-map_print3 .c-block__inner > div {
    display: none;
  }
  body.-map_print3 .p-page-top,
  body.-map_print3 .l-footer {
    display: none;
  }
  body.-map_print3 .c-block__inner #fromStation-2 {
    display: block;
  }
  body.-map_print3 .c-block__inner #fromStation-2 + .c-section-4 {
    display: block;
  }
}
/*20220131desaki*/
@media screen and (min-width: 769px) {
  .corporate-logo {
    left: 0;
    right: 0;
    margin: auto;
    text-align: right;
  }
}
@media screen and (max-width: 768px) {
  .corporate-logo p {
    text-align: center;
    margin-top: 15px;
  }
}
.logotitle {
  font-weight: 600;
  display: flex;
  align-items: center;
}
.logotitle:before {
  display: inline-block;
  border-top: 1px solid #74b708;
  content: "";
  flex-grow: 1;
  margin-right: 30px;
  margin-left: 30px;
}
.logotitle:after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 45px;
  background-color: #74b708;
  position: absolute;
  right: 5px;
  top: 41px;
}

.logotitle2 {
  color: #74b708;
}

.logotext {
  line-height: 1.5;
  font-size: 17px;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .logotitle {
    display: block;
  }
  .logotitle:after, .logotitle:before {
    display: none;
  }
  .logotext {
    font-size: 1pc;
  }
}
@media screen and (min-width: 769px) {
  .sp-only {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .logotitle {
    margin-right: 16px;
  }
  .logotitle2 {
    margin-right: 25px;
  }
}
.f-check {
  padding-right: 90px;
  padding-left: 90px;
  text-align: center;
}
@media only screen and (max-width: 47.9375em) {
  .f-check {
    padding-right: 20px;
    padding-left: 20px;
  }
}

.checkbox_layout .f-check {
  padding-right: 0;
  padding-left: 0;
  text-align: left;
  line-height: 1.8;
}
.f-check-group {
  background-color: #f2f2f2;
  padding-top: 30px;
  padding-bottom: 30px;
  margin-top: 60px;
}
.f-check-group.checkbox_layout {
  background-color: #fff;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
}

.f-check > label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding-left: 30px;
  font-size: 1.125rem;
}

.js-validation:has(#other_keyword) {
  padding-bottom: 36px;
}

.f-input-block__body::before {
  display: none;
}

.f-input-block.success .f-input-block__body::before {
  display: none;
}

.p-page-title {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
}

@media only screen and (max-width: 767px) {
  .p-tel-mod.-contact > a {
    flex-direction: column;
  }
}/*# sourceMappingURL=app.css.map */