@charset "UTF-8";
/* CSS INFORMATION -====================================================
File name : subpage.css
Description : 下層
===================================================================== */
/* =====================================================================
    header
======================================================================*/
.header {
  display: flex;
  justify-content: space-between;
}
.header-logo {
  position: relative;
  display: none;
  width: 17rem;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .header {
    margin-top: -5rem;
  }
  .header-logo {
    flex-shrink: 0;
    margin-right: calc(200 / 1920 * 100%);
    width: calc(360 / 1920 * 100%);
  }
  .header-logo a {
    transition-property: opacity;
  }
  .header-logo a:hover {
    opacity: 0.8;
    transform: translateY(0);
  }
  .header .nav {
    margin-left: auto;
    width: calc(1360 / 1920 * 100%);
  }
}
/* =====================================================================
    submv
======================================================================*/
.submv {
  padding: 3.1rem 3.8rem;
  width: calc(100% - 10.6rem);
  height: 17rem;
  overflow: hidden;
}
.submv-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.submv-bg img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .submv .inner {
    width: 100%;
  }
}
.submv h1 {
  width: 37.7916018663%;
  width: 24.3rem;
  font-size: 8rem;
}
.submv h1 img {
  filter: drop-shadow(0 0 0.1em rgba(0, 36, 84, 0.6)) drop-shadow(0 0 0.1em rgba(0, 36, 84, 0.6));
}
@media screen and (max-width: 767px) {
  .submv-copyright {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .submv {
    padding: 8rem 0 7rem;
    width: 100%;
    height: auto;
  }
  .submv h1 {
    width: calc(132 / 1200 * 100%);
  }
  .submv h1 a {
    transition-property: opacity;
  }
  .submv h1 a:hover {
    transform: translateY(0);
    opacity: 0.7;
  }
  .submv-copyright {
    text-align: right;
    margin: 0 calc(-180 / 1200 * 100%) 0 auto;
    width: calc(1100 / 1200 * 100%);
    font-size: 1.4rem;
    line-height: 1.222;
    color: #ffffff;
  }
}
/* =====================================================================
    共通
======================================================================*/
.main {
  padding: 20rem 0 37rem;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .main {
    padding: 20rem 0;
  }
}

.textAnime {
  top: -50vw;
}
@media screen and (min-width: 768px) {
  .textAnime {
    top: -6vw;
  }
}

.page-ttl {
  display: flex;
  align-items: flex-end;
  margin-bottom: 14rem;
  font-size: 4.6rem;
  color: #007f87;
}
.page-ttl .en {
  display: block;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
}
.page-ttl .en::first-letter {
  font-size: 158%;
  font-weight: normal;
}
.page-ttl .ja {
  position: relative;
  margin-left: 1em;
  padding-bottom: 0.35em;
  font-family: "Zen Old Mincho", serif;
  font-size: 60%;
  letter-spacing: 0.06em;
}
.page-ttl .ja::before {
  content: "{";
  display: inline-block;
  margin-right: 0.25em;
}
.page-ttl .ja::after {
  content: "}";
  display: inline-block;
  margin-left: 0.25em;
}
@media screen and (min-width: 768px) {
  .page-ttl {
    margin-bottom: 8rem;
    font-size: 5.8rem;
    font-size: max(5.8rem, 30px);
  }
}

.ttl_1 {
  text-align: center;
  margin-bottom: 6rem;
}
.ttl_1 span {
  display: inline-block;
  padding: 0 0.4em;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 4.2rem;
  letter-spacing: 0.05em;
  background: linear-gradient(45deg, #4f68a2 0%, #4597a6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border-left: 0.2rem dotted #4f68a2;
  border-right: 0.2rem dotted #4f68a2;
}
@media screen and (min-width: 768px) {
  .ttl_1 {
    margin-bottom: 5rem;
  }
}

p.text-lead {
  font-size: 107%;
  font-weight: bold;
  color: #144985;
  letter-spacing: 0;
  line-height: 2.266;
}

.block_1-ttl {
  margin-bottom: 0.3em;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-size: 128%;
  color: #007f87;
}
.block_1-content {
  padding: calc(50 / 650 * 100%);
  font-size: 114%;
  background-color: #ffffff;
  border-top: 2px solid #007f87;
}
.block_1-content > *:not(:last-child) {
  margin-bottom: 1.5em;
}
.block_1-content iframe {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .block_1-ttl {
    font-size: 166%;
  }
  .block_1-content {
    padding: calc(40 / 1200 * 100%);
    font-size: 122%;
  }
  .block_1-content iframe {
    margin-left: auto;
    margin-right: auto;
    width: 89.2857142857%;
  }
}

/* =====================================================================
    ticket
======================================================================*/
.ticket {
  /* fee
  -----------------------------------------*/
  /* guide
  -----------------------------------------*/
}
.ticket section:not(:last-child) {
  margin-bottom: 15rem;
}
@media screen and (max-width: 767px) {
  .ticket-box, .ticket-fee, .ticket-guide {
    margin-left: calc(-20 / 650 * 100%);
    width: calc(690 / 650 * 100%);
  }
}
.ticket-subttl {
  margin-bottom: 6rem;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 5.2rem;
}
.ticket-subttl small {
  font-size: 60%;
}
.ticket-box {
  position: relative;
  padding: 1rem;
  background-color: #ffffff;
  border-radius: 2rem;
}
.ticket-box h4 {
  margin-bottom: 6rem;
  padding: 0.6em 0.8em;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 114%;
  color: #ffffff;
  line-height: 1.4;
  background: linear-gradient(45deg, #4f68a2 0%, #4597a6 100%);
  border-radius: 1rem;
}
.ticket-box-inner {
  padding-bottom: 12rem;
}
.ticket-box-inner small {
  font-size: 92%;
  color: #777777;
}
.ticket-box figure {
  margin: 0 auto 6rem;
  width: 59.7014925373%;
}
.ticket-box-right {
  margin: 0 auto;
  width: 88.0597014925%;
}
.ticket-box-right > *:not(:last-child) {
  margin-bottom: 1.5em;
}
.ticket-box-lead {
  margin-bottom: 10rem !important;
}
.ticket-box-desc {
  line-height: 1.769;
}
.ticket-box-desc dt {
  margin-bottom: 0.3em;
  padding-bottom: 0.3em;
  font-family: "Shippori Mincho", serif;
  font-size: 114%;
  color: #007f87;
  border-bottom: 1px solid currentColor;
}
@media screen and (min-width: 768px) {
  .ticket section:not(:last-child) {
    margin-bottom: 8rem;
  }
  .ticket-subttl {
    margin-bottom: 3rem;
    font-size: 4.2rem;
    font-size: max(4.2rem, 20px);
  }
  .ticket-box h4 {
    margin-bottom: 3rem;
    width: 100%;
  }
  .ticket-box-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-bottom: 6rem;
  }
  .ticket-box figure {
    flex-shrink: 0;
    margin: 0 2.1186440678%;
    width: 33.8983050847%;
  }
  .ticket-box-right {
    flex-grow: 1;
    margin: 0 2.1186440678%;
    width: 56.7796610169%;
  }
  .ticket-box-lead {
    margin: 8rem 0 !important;
  }
}
.ticket-fee {
  padding: 10rem 7.2463768116%;
  color: #ffffff;
  background-color: #007f87;
  border-radius: 2rem;
}
@media screen and (min-width: 768px) {
  .ticket-fee {
    padding: 8rem calc(100 / 1200 * 100%);
  }
}
.ticket-guide {
  padding: 10rem 7.2463768116%;
  background-color: #ffffff;
  border-radius: 2rem;
}
.ticket-guide .ticket-subttl {
  color: #007f87;
}
@media screen and (min-width: 768px) {
  .ticket-guide {
    padding: 8rem calc(100 / 1200 * 100%);
  }
}

/* fee
-----------------------------------------*/
.fee-table {
  margin-bottom: 8rem;
}
.fee-table dl {
  display: flex;
  font-weight: bold;
  font-size: 107%;
  border-bottom: 1px solid #36949a;
}
.fee-table dl > * {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1em 0;
  width: 33.3333333333%;
  line-height: 1.25;
}
.fee-table dl > * small {
  font-size: 75%;
}
.fee-table dl dt {
  flex-shrink: 0;
  letter-spacing: 0.05em;
  color: #afe1e4;
}
.fee-table dl dd {
  flex-grow: 1;
  text-align: center;
}
.fee-table-head {
  text-align: center;
  border-top: 1px solid #afe1e4;
  border-bottom-color: #afe1e4 !important;
}
.fee p {
  font-size: 92%;
}
@media screen and (min-width: 768px) {
  .fee-table {
    margin-bottom: 5rem;
  }
  .fee-table dl {
    font-size: 133%;
  }
}

/* guide
-----------------------------------------*/
.guide-list > li {
  display: flex;
  justify-content: space-between;
  line-height: 1.769;
}
.guide-list > li > * {
  padding: 1.4em 0;
}
.guide-list > li h4 {
  width: 30.5084745763%;
  border-bottom: 1px solid #007f87;
}
.guide-list > li:first-child h4 {
  border-top: 1px solid #007f87;
}
.guide-list > li:first-child .guide-list-right {
  border-top: 1px solid #c0d3d4;
}
.guide-list-right {
  width: 67.7966101695%;
  border-bottom: 1px solid #c0d3d4;
}
.guide-list-right > *:not(:last-child) {
  margin-bottom: 0.8em;
}
@media screen and (min-width: 768px) {
  .guide-list > li h4 {
    width: 29%;
  }
  .guide-list-right {
    width: 70%;
  }
}

/* =====================================================================
    highlight
======================================================================*/
#highlight .main {
  padding-bottom: 0;
}

.gallery {
  margin-top: 16rem;
  padding: 16rem 0 32rem;
}
.gallery::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(233, 245, 255, 0.5);
  z-index: -1;
}
.gallery-list > li {
  position: relative;
  padding: 7.5rem 0;
}
.gallery-list > li:first-child {
  padding-top: 0;
}
.gallery-list > li:nth-child(even) {
  padding: 20rem 0;
}
.gallery-list > li:nth-child(even)::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 100%;
  background: linear-gradient(to top, transparent 0%, rgba(255, 253, 228, 0.5) 8rem, rgba(255, 253, 228, 0.5) calc(100% - 8rem), transparent 100%);
  z-index: -1;
}
.gallery-list > li.epilogue .gallery-list-ttl h3 {
  flex-direction: row-reverse;
  justify-content: center;
}
.gallery-list > li.epilogue .gallery-list-ttl h3 span {
  writing-mode: vertical-lr;
}
.gallery-list > li.epilogue .gallery-list-ttl h3 .no {
  padding-bottom: 3.7em;
  font-size: 1.8em;
}
.gallery-list > li.epilogue .gallery-list-ttl h3 .no::before, .gallery-list > li.epilogue .gallery-list-ttl h3 .no::after {
  display: none;
}
.gallery-list > li.epilogue .gallery-list-ttl h3 .num {
  margin: 0 0.4em 0 0;
}
.gallery-list-ttl {
  text-align: center;
  margin-bottom: 7rem;
  font-size: 1rem;
}
.gallery-list-ttl h3 {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 19em;
  height: 26.6em;
  color: #007f87;
  border: 1px solid currentColor;
  border-radius: 9.5rem;
}
.gallery-list-ttl .no {
  display: flex;
  align-items: center;
  font-family: "Shippori Mincho", serif;
  font-size: 2.2em;
  letter-spacing: 0.18em;
}
.gallery-list-ttl .no::before, .gallery-list-ttl .no::after {
  content: "";
  display: block;
  flex-grow: 1;
  width: 0.5em;
  height: 1px;
  border-top: 1px solid currentColor;
}
.gallery-list-ttl .no::before {
  margin-right: 0.4em;
}
.gallery-list-ttl .no::after {
  margin-left: 0.4em;
}
.gallery-list-ttl .num {
  margin-top: 0.4em;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 3.2em;
  letter-spacing: 0.2em;
}
.gallery-list-ttl .num em {
  position: relative;
  bottom: -0.05em;
  font-style: normal;
  font-weight: normal;
  font-size: 160%;
}
.gallery-list-subttl {
  text-align: center;
  margin-bottom: 12rem;
  font-family: "Shippori Mincho", serif;
  font-size: 5rem;
  color: #007f87;
  line-height: 1.4;
}
.gallery-list-img {
  display: flex;
  flex-wrap: wrap;
  margin-top: 4rem;
}
.gallery-list-img > li {
  margin: calc(38 / 650 * 100%) calc(38 / 650 * 100%) 0 0;
  width: calc(306 / 650 * 100%);
}
@media screen and (max-width: 767px) {
  .gallery-list-img > li:nth-child(2n) {
    margin-right: 0;
  }
}
.gallery-list-img > li button img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery-list-img > li h4,
.gallery-list-img > li p {
  display: none;
}
@media screen and (min-width: 768px) {
  .gallery {
    margin-top: 12rem;
    padding: 12rem 0 20rem;
  }
  .gallery-list > li {
    display: flex;
    justify-content: space-between;
  }
  .gallery-list > li:nth-child(even) {
    padding: 12rem 0;
  }
  .gallery-list-ttl {
    margin-bottom: 0;
    flex-shrink: 0;
    width: calc(130 / 1200 * 100%);
    font-size: 0.8rem;
  }
  .gallery-list-right {
    width: calc(1000 / 1200 * 100%);
  }
  .gallery-list-subttl {
    text-align: left;
    margin: 1.6em 0;
    font-size: 4rem;
  }
  .gallery-list-img {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2rem;
  }
  .gallery-list-img > li {
    margin: 3.2% 3.2% 0 0;
    width: 22.6%;
  }
  .gallery-list-img > li:nth-child(4n) {
    margin-right: 0;
  }
}

/* =====================================================================
    goods
======================================================================*/
.goods .text-lead {
  margin-bottom: 14rem;
}
.goods-pickup {
  display: flex;
  flex-direction: column;
  margin: 0 0 16rem calc(-20 / 650 * 100%);
  padding: calc(70 / 650 * 100%);
  width: calc(690 / 650 * 100%);
  color: #ffffff;
  background: linear-gradient(90deg, #4f68a2 0%, #4597a6 100%);
  border-radius: 2rem;
}
.goods-pickup2 {
  display: flex;
  flex-direction: column;
  margin: 0 0 16rem calc(-20 / 650 * 100%);
  padding: calc(70 / 650 * 100%);
  width: calc(690 / 650 * 100%);
  color: #000000;
  background: #ffffff;
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .goods-pickup-left {
    display: contents;
  }
  .goods-pickup-ttl {
    order: -1;
  }
}
.goods-pickup figure {
  margin: 0 auto 2.5em;
  width: 89.0909090909%;
}
.goods-pickup-ttl {
  margin-bottom: 1em;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 5.2rem;
  line-height: 1.4;
}
.goods-pickup dl {
  display: flex;
  align-items: center;
  margin-bottom: 0.8em;
  padding: 0.8em 0;
  line-height: 1.769;
  border-top: 1px solid #96baf6;
  border-bottom: 1px solid #96baf6;
}
.goods-pickup dl dt {
  margin-right: 1.5em;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  color: #96baf6;
}
.goods-pickup2 dl dt {
  margin-right: 1.5em;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  color: #4f68a2;
}
.goods-pickup dl dd {
  font-size: 107%;
}
.goods-group:not(:last-child) {
  margin-bottom: 8rem;
}
.goods-group-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .goods-group-list {
    margin-left: calc(-25 / 650 * 100%);
    width: calc(700 / 650 * 100%);
  }
  .goods-group-list li:nth-child(2n) {
    margin-right: 0;
  }
}
.goods-group-list li {
  margin: 0 3% 5.7142857143% 0;
  padding: 4.2857142857% 1.4285714286%;
  width: 47.7142857143%;
  background-color: #ffffff;
  border-radius: 2rem;
}
.goods-group-list li figure {
  margin-bottom: 0.5em;
  border: 1px solid #dedede;
}
.goods-group-list li .brand {
  margin-bottom: 0.3em;
  font-weight: bold;
  font-size: 85%;
  color: #144985;
}
.goods-group-list li h4 {
  margin-bottom: 0.3em;
  font-weight: bold;
  color: #484848;
  line-height: 1.5;
}
.goods-group-list li .price {
  text-align: right;
  font-size: 107%;
  color: #007f87;
}
@media screen and (min-width: 768px) {
  .goods .text-lead {
    margin: 0 auto 7rem;
    width: calc(1000 / 1200 * 100%);
  }
  .goods-pickup {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 0 12rem calc(-100 / 1200 * 100%);
    padding: calc(70 / 1200 * 100%) calc(200 / 1200 * 100%);
    width: calc(1400 / 1200 * 100%);
  }
  .goods-pickup-left {
    width: 59%;
  }
  .goods-pickup figure {
    margin: 0;
    width: 34%;
  }
  .goods-pickup-ttl {
    margin-bottom: 1.5em;
    font-size: 4.2rem;
  }
  .goods-group-list li {
    margin: 0 calc(36 / 1200 * 100%) calc(36 / 1200 * 100%) 0;
    padding: calc(20 / 1200 * 100%);
    width: calc(376 / 1200 * 100%);
  }
  .goods-group-list li:nth-child(3n), .goods-group-list li:last-child {
    margin-right: 0;
  }
  .goods-group-list li[data-popup] {
    cursor: pointer;
    transition: filter 0.5s ease-in, opacity 0.5s ease, transform 0.3s ease;
  }
  .goods-group-list li[data-popup]:hover {
    transform: translateY(-1rem);
  }
}

/*  popup
-----------------------------------------*/
.popup-goods-inner figure {
  margin-bottom: 1em;
  border: 1px solid #dedede;
}
.popup-goods-inner .brand {
  margin-bottom: 0.3em;
  font-weight: bold;
  font-size: 85%;
  color: #144985;
}
.popup-goods-inner h4 {
  margin-bottom: 0.3em;
  font-weight: bold;
  color: #484848;
  line-height: 1.5;
}
.popup-goods-inner .text {
  margin-top: 1em;
  padding: 1em 0;
  border-top: 1px solid #84a6e0;
}
.popup-goods-inner .price {
  text-align: right;
  margin-top: 1em;
  font-size: 107%;
  color: #007f87;
}
.popup-goods-inner a {
  display: block;
  width: 78%;
  padding: 15px 20px;
  margin: 20px auto 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 120%;
  color: #ffffff;
  background: #007f87;
  border-radius: 5px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .popup-goods-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .popup-goods-inner figure {
    margin-bottom: 0;
    width: 42.0454545455%;
  }
  .popup-goods-desc {
    width: 53.4090909091%;
  }
}

/* =====================================================================
    special
======================================================================*/
.special-article {
  padding: 1rem;
  background-color: #ffffff;
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .special-article {
    margin-left: calc(-20 / 650 * 100%);
    width: calc(690 / 650 * 100%);
  }
}
.special-article:not(:last-child) {
  margin-bottom: 3em;
}
.special-article-header {
  display: flex;
  align-items: center;
  padding: 7.4626865672% 5.9701492537%;
  background-color: #007f87;
  border-radius: 1rem;
}
.special-article-header time {
  flex-shrink: 0;
  text-align: center;
  margin-right: 1.8em;
  padding: 2em 0.6em;
  font-family: "Shippori Mincho", serif;
  font-size: 1.8rem;
  font-weight: 700;
  color: #007f87;
  background-color: #fffde4;
  border-radius: 2.2em;
}
.special-article-header time span {
  position: relative;
  display: block;
  margin-top: 0.3em;
  padding-top: 0.3em;
  font-size: 111%;
}
.special-article-header time span::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 58%;
  height: 0.15em;
  border-top: 0.15em dotted currentColor;
}
.special-article-header h3 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 107%;
  line-height: 1.666;
  color: #ffffff;
}
.special-article-content {
  padding: 8.9552238806% 5.9701492537%;
}
.special-article-content > *:not(:last-child) {
  margin-bottom: 1.8em;
}
.special-article-content figure {
  margin-left: auto;
  margin-right: auto;
  width: 67.7966101695%;
}
.special-article-content hr {
  border-color: #c2d2d3;
}
.special-article-content [class^=subttl_] {
  font-size: 107%;
  font-weight: bold;
  line-height: 1.769;
}
.special-article-content .subttl_1 {
  color: #007f87;
}
.special-article-content .subttl_2 {
  padding-left: 1em;
  color: #144985;
  border-left: 1px dotted currentColor;
}
.special-article-content .subttl_3 {
  padding: 1em;
  color: #007f87;
  border: 1px solid currentColor;
}
.special-article-content .subttl_3 a {
  display: inline-block;
  color: #36949a;
}
@media screen and (min-width: 768px) {
  .special-article-header {
    padding: 2.5423728814% 3.3898305085%;
  }
  .special-article-header time {
    font-size: 1.6rem;
  }
  .special-article-header h3 {
    font-size: 133%;
  }
  .special-article-content {
    padding: 4.2372881356% 7.6271186441%;
  }
  .special-article-content figure {
    width: 50%;
  }
  .special-article-content figure.special_img {
    width: 38%;
  }
}

/* =====================================================================
    english
======================================================================*/
.english {
  /*  english-head
  -----------------------------------------*/
  /*  english-fee
  -----------------------------------------*/
  /*  english-gallery
  -----------------------------------------*/
  /*  english-guide
  -----------------------------------------*/
  /*  english-sns
  -----------------------------------------*/
}
.english section:not(:last-child) {
  margin-bottom: 16rem;
}
@media screen and (min-width: 768px) {
  .english section:not(:last-child) {
    margin-bottom: 5.5em;
  }
}
.english-head-box:not(:last-of-type) {
  margin-bottom: 2.6em;
}
.english-fee-box {
  padding: 8rem calc(50 / 650 * 100%);
  color: #ffffff;
  background-color: #007f87;
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .english-fee-box {
    margin-left: calc(-20 / 650 * 100%);
    width: calc(690 / 650 * 100%);
  }
}
@media screen and (min-width: 768px) {
  .english-fee-box {
    padding: 7rem calc(100 / 1200 * 100%);
  }
}
.english-gallery-list {
  margin: 0 auto;
  width: calc(600 / 650 * 100%);
}
.english-gallery-list li {
  text-align: center;
  margin-bottom: 6rem;
  line-height: 1.6;
}
.english-gallery-list li button img {
  aspect-ratio: 1.5/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.english-gallery-list li h4 {
  display: none;
}
.english-gallery-list li p {
  margin-top: 1em;
  text-align: center;
  font-size: 85%;
  line-height: 1.5;
  color: #62c29c;
}
@media screen and (min-width: 768px) {
  .english-gallery-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 calc(50% - 50vw);
    width: auto;
  }
  .english-gallery-list li {
    margin: 0 calc(15 / 1920 * 100%) 6rem;
    width: calc(600 / 1920 * 100%);
  }
  .english-gallery-list li button {
    position: relative;
  }
  .english-gallery-list li button::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1.6rem solid;
    -o-border-image: linear-gradient(to top, #59a6b4, #5eb4a9, #61c09e) 1;
       border-image: linear-gradient(to top, #59a6b4, #5eb4a9, #61c09e) 1;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 1;
  }
  .english-gallery-list li button:hover {
    transform: translateY(0);
  }
  .english-gallery-list li button:hover::before {
    opacity: 0.5;
  }
}
@media screen and (min-width: 1920px) {
  .english-gallery-list {
    margin-left: calc(-360 / 1200 * 100%);
    margin-right: 0;
    width: calc(1920 / 1200 * 100%);
  }
}
.english-guide {
  padding: 8rem calc(50 / 650 * 100%);
  background-color: #ffffff;
  border-top: 2px solid #007f87;
}
@media screen and (max-width: 767px) {
  .english-guide {
    margin-left: calc(-20 / 650 * 100%);
    width: calc(690 / 650 * 100%);
  }
}
@media screen and (max-width: 767px) {
  .english-guide .guide-list > li {
    flex-direction: column;
  }
  .english-guide .guide-list > li > * {
    padding: 0.8em 0;
  }
  .english-guide .guide-list > li h4 {
    width: 100%;
    border-top: 0;
  }
  .english-guide .guide-list-right {
    width: 100%;
    border-bottom: 0;
  }
}
.english-guide .guide-list > li h4 {
  color: #007f87;
}
@media screen and (min-width: 768px) {
  .english-guide {
    padding: 7rem calc(100 / 1200 * 100%);
  }
}
.english-sns .sns-ttl {
  text-align: center;
  margin-bottom: 1.4em;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
  font-size: 4.6rem;
  color: #007f87;
}/*# sourceMappingURL=subpage.css.map */