@charset "UTF-8";

/* =========================================================
  enjoy map docs
========================================================= */

/* site layout
----------------------------------------------- */
#main {
  padding-top: 0 !important;
}

@media only screen and (max-width: 959px) {
  #wrapper {
    padding-top: 0;
  }
}

@media only screen and (max-width: 534px) {
  #subsite-header {
    margin-bottom: 15px !important;
  }
}

/* breadCrumbs
----------------------------------------------- */
#breadCrumbs li:has(a[href$="/enjoy/map/"]) {
  display: none;
}

/* subsiteTitle
----------------------------------------------- */
#subsiteTitle {
  position: relative;
  z-index: 0;
}

#subsiteTitle::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 100vw;
  background: #c0b566;
}

#subsiteTitle .pieceBody h1 a {
  display: block;
  padding: 38px 15px;
  color: var(--mono-color-9);
  font-weight: 600;
  font-size: 2.5rem;
  font-family: "Zen Maru Gothic", sans-serif;
  text-decoration: none;
  text-align: center;
}

#subsiteTitle .pieceBody h1 a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  z-index: -1;
  transform: translateX(-50%);
  width: 100vw;
  background: none !important;
}

#subsiteTitle .pieceBody h1 a:hover::before {
  background: rgba(255, 255, 255, 0.4) !important;
}

@media only screen and (max-width: 534px) {
  #subsiteTitle .pieceBody h1 a {
    padding: 15px;
    font-size: 1.75rem;
  }
}

/* subsiteDocs
----------------------------------------------- */
#subsiteDocs .pieceHeader h2 {
  padding: 10px;
  border: 1px solid #c0b566;
  background: #c0b566;
  color: var(--mono-color-9);
  font-weight: 400;
  font-size: 1rem;
}

#subsiteDocs .pieceBody {
  padding: 5px 10px 20px;
  border: 1px solid var(--mono-color-9);
  border-top: none;
  background: var(--mono-color-9);
}

#subsiteDocs .pieceBody li {
  position: relative;
  padding: 20px 10px;
  border-bottom: 1px solid var(--mono-color-4);
}

#subsiteDocs .pieceBody li:last-child {
  border-bottom: none;
}

#subsiteDocs .pieceBody li::before {
  content: "No Image";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 20px;
  right: 10px;
  left: 10px;
  aspect-ratio: 16/9;
  background: var(--mono-color-6);
  font-size: 1.25rem;
}

#subsiteDocs .pieceBody li .image {
  position: absolute;
  top: 20px;
  right: 10px;
  left: 10px;
  aspect-ratio: 16/9;
}

#subsiteDocs .pieceBody li .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#subsiteDocs .pieceBody li .title_link {
  display: block;
  padding-top: calc(56.25% + 10px);
}

#subsiteDocs .pieceBody li .title_link a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none !important;
}

#subsiteDocs .pieceBody .more a {
  display: block;
  padding: 8px 38px;
  border: 1px solid #c0b566;
  border-radius: 7px;
  background: url(/_themes/site/images/arrow-white.svg) right 17px center no-repeat #c0b566;
  color: var(--mono-color-9);
  text-decoration: none;
  text-align: center;
}

#subsiteDocs .pieceBody .more a:hover {
  opacity: 0.6;
}

/* content-ttl
----------------------------------------------- */
#content h2.content-ttl {
  margin-bottom: 15px;
  font-weight: 500;
  font-size: 2.5rem;
  font-family: "Zen Maru Gothic", sans-serif;
  text-align: center;
}

#content h2.content-ttl ~ h2.content-ttl {
  margin-top: 40px;
}

@media only screen and (max-width: 534px) {
  #content h2.content-ttl {
    font-size: 1.375rem;
  }
}

/* contentGpArticleDocs
----------------------------------------------- */
.contentGpArticleDocs .docs ul {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

.contentGpArticleDocs .docs li {
  flex-basis: calc((100% - 60px) / 3);
  position: relative;
}

.contentGpArticleDocs .docs li::before {
  content: "No Image";
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 16/9;
  background: var(--mono-color-6);
  font-size: 1.5rem;
}

.contentGpArticleDocs .docs li span {
  display: block;
}

.contentGpArticleDocs .docs li .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  aspect-ratio: 16/9;
}

.contentGpArticleDocs .docs li .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contentGpArticleDocs .docs li .title_link {
  margin-bottom: 10px;
  padding-top: calc(56.25% + 10px);
}

.contentGpArticleDocs .docs li .title_link a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none !important;
}

.contentGpArticleDocs .docs li .update_date {
  color: var(--mono-color-3);
  font-size: 0.875rem;
}

@media only screen and (max-width: 1179px) {
  .contentGpArticleDocs .docs li {
    flex-basis: calc((100% - 30px) / 2);
  }
}

@media only screen and (max-width: 534px) {
  .contentGpArticleDocs .docs li {
    flex-basis: 100%;
  }
}

/* large-title pageTitle
----------------------------------------------- */
#large-title #pageTitle h1 {
  max-width: 720px;
  margin: 15px auto 40px;
  padding: 0 15px;
  border-bottom: none;
  font-weight: 400;
  font-size: 2.375rem;
}

/* contentGpArticleDoc
----------------------------------------------- */
.contentGpArticleDoc .date {
  display: none;
}

/* body
----------------------------------------------- */
.contentGpArticleDoc .body {
  max-width: 720px;
  margin: 0 auto;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable)>*:not(:last-child) {
  margin-bottom: 2.5em;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) p {
  margin-bottom: 2.5em;
}

@media only screen and (max-width: 534px) {
  .cke_editable,
  .contentGpArticleDoc .body .text-beginning,
  .contentPage .body,
  .surveyForm .body {
    font-size: 0.875rem;
  }
}

/* figure */
:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .figure .image {
  margin-bottom: 10px;
  text-align: center;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .figure .figcaption {
  color: var(--mono-color-3);
  font-size: 0.875rem;
  text-align: center;
}

/* mapTable */
:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable {
  width: 100%;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable th {
  width: 20%;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable .mapInner {
  margin: 10px 0;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable .alignright {
  text-align: right;
}

:is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable td>*:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 534px) {
  :is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable,
  :is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable tr,
  :is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable th,
  :is(.contentGpArticleDoc .body .text-beginning, .contentPage .body, .surveyForm .body, .cke_editable) .mapTable td {
    display: block;
    width: 100%;
  }
}