@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Funnel+Sans:wght@300..800&family=Noto+Sans+JP:wght@100..900&display=swap");

/*!
global > color
------------------------------
*/
:root {
  --color-black: #333;
  --color-light-gray: #e6e6e6;
  --color-dark-gray: #4d4d4d;
  --color-blue: #394e7b;
  --color-light-blue: #f2ffff;
  --color-brown: #876f59;
  --color-beige: #eae1d3;
  --color-hokkaido: #a6c5e0;
  --color-hokkaido-light: #cce2f5;
  --color-tohoku: #81c7a7;
  --color-tohoku-light: #c8e3d9;
  --color-koushinetsu: #db9baf;
  --color-koushinetsu-light: #edd5dd;
  --color-hokuriku: #789dbc;
  --color-hokuriku-light: #ccdff0;
  --color-kitakanto: #aca3cc;
  --color-kitakanto-light: #d1cce3;
  --color-shutoken-izu: #e3b486;
  --color-shutoken-izu-light: #edd7c2;
}

/*!
global > content-width
------------------------------
*/
:root {
  --width-content: 1000px;
}

/*!
global > font
------------------------------
*/
:root {
  --font-family-base: "Noto Sans JP", sans-serif;
}

/*!
foundation > base
------------------------------
*/
@media screen and (max-width: 767px) {
  html {
    font-size: 62.5% !important;
  }
}
@media all and (max-width: 568px) {
  .header_logo_box > .header_select_wrap {
    justify-content: flex-end !important;
  }
}

/*!
utility > utility
------------------------------
*/
.pc {
  display: block !important;
}

img.pc, span.pc, br.pc {
  display: inline !important;
}

.sp, img.sp, span.sp,
br.sp {
  display: none !important;
}

@media screen and (max-width: 568px) {
  .sp {
    display: block !important;
  }

  img.sp, span.sp,
  br.sp {
    display: inline !important;
  }

  .pc, img.pc, span.pc, br.pc {
    display: none !important;
  }
}

/* 隠しテキスト */
.visually_hidden {
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  border: 0 !important;
  padding: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  margin: -1px !important;
}

.bold {
  font-weight: bold !important;
}

.al_l {
  text-align: left !important;
}

.al_r {
  text-align: right !important;
}

.al_c {
  text-align: center !important;
}

.indent_1 {
  padding-left: 1em;
  text-indent: -1em;
}

/*!
layout > container
------------------------------
*/
.l_container {
  margin: 0 auto;
}

.l_container {
  max-width: var(--width-content);
}

@media screen and (max-width: 568px) {
  .l_container {
    width: 90%;
  }
}

/*!
common
------------------------------
*/
.page {
  font-family: var(--font-family-base);
  color: var(--color-black);
  min-width: 1040px;
  margin: 0 auto;
  padding-bottom: 100px;
}

.title.feature h1 {
  font-size: 1.7rem !important;
}

.l-wrapper .section-title > .inner {
  display: none;
}

.remodal-is-locked.remodal-open body,body {
  padding-right: 0 !important;
  height: max-content;
  overflow-y: visible;
}

.globalNav li a:hover {
  text-decoration: none !important;
}

.cmn_breadcrumb a:hover {
  text-decoration: underline !important;
}

.footer_contentsbox a:hover,
.f_left a:hover,
.footer_address a:hover {
  text-decoration: underline !important;
}

.search div#dp-site,
.remodal-open div.remodal {
	font-family: var(--font-family-base) !important;
}

@media screen and (max-width: 568px) {
  .page {
    min-width: inherit;
    padding-bottom: 25px;
  }

 .breadcrumbs_wrap {
    line-height: 1.75;
  }

  .title.feature {
    margin-top: 30px;
  }

  .title.feature h1 {
    font-size: 1.4rem !important;
    padding-left: 0;
  }
}

/*!
common > title
------------------------------
*/
.c_ttl_2 {
  font-size: 3.6rem;
  color: #fff;
  line-height: 1.4;
  padding: 0.1em 0.55em 0.18em;
  background: linear-gradient(90deg, #394e7b 0.56%, #394e7b 40%, #fff 100%);
  border-bottom: 2px solid var(--color-blue);
  margin-bottom: 0.83em;
}

@media screen and (max-width: 568px) {
  .c_ttl_2 {
    font-size: 2rem;
    background: linear-gradient(90deg, #394e7b 0.56%, #394e7b 60%, #fff 100%);
    border-bottom-width: 1px;
    margin-bottom: 0.5em;
  }
}
@media screen and (max-width: 568px) {
  .c_sp_ttl_1 {
    font-size: 1.4rem;
    font-weight: 500;
    margin: 1em 2% 0.8em;
  }
}

/*!
common > button
------------------------------
*/
.btn_col2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 30px 20px;
}

.btn_col2.btn_col2_s {
  max-width: 500px;
  margin: 0 auto;
}

@media (max-width: 568px) {
  .btn_col2 {
    gap: 25px 10px;
  }
}

.c_btn, a.c_btn {
  font-size: 1.8rem;
  font-weight: 500;
  color: #808080;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
  background-color: #f2f2f2;
  padding: 0.6em 0.5em 0.8em;
  display: inline-block;
  border: 1px solid #999;
  border-radius: 0.27em;
}

.c_btn:hover, a.c_btn:hover {
  opacity: 0.7;
}

.c_btn.c_btn_return > span {
  display: inline-block;
  padding-left: 1.6em;
  position: relative;
}

.c_btn.c_btn_return > span::before {
  content: "";
  width: 1.06em;
  height: auto;
  aspect-ratio: 17/16;
  background-image: url("../images/icon_return.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: 0.2em;
  left: 0;
}

.c_btn.c_btn_s {
  width: 190px;
  max-width: 100%;
  font-size: 16px;
}

.c_btn.c_btn_md {
  width: 400px;
  max-width: 100%;
  letter-spacing: normal;
  padding: 1.25em 1em;
  color: #fff;
  background-color: #c9a746;
  border-color: #c9a746;
}

.c_btn.c_btn_arrow {
  position: relative;
}

.c_btn.c_btn_arrow::before {
  content: "";
  width: 0.61em;
  height: 0.61em;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 1.33em;
  bottom: 0;
  margin: auto;
}

@media (max-width: 568px) {
  .c_btn, a.c_btn {
    font-size: 1.25rem;
    border-radius: 0.48em;
    padding: 0.5em 1em;
  }

  .c_btn.c_btn_return > span {
	padding-left: 2em;
  }

  .c_btn.c_btn_s {
    width: 162px;
	font-size: 1.25rem;
  }

  .c_btn.c_btn_md {
    width: 262px;
    font-size: 1.4rem;
    padding: 0.96em 1em;
  }
}
/*!
page > top
------------------------------
*/
/* page_head */
@media screen and (max-width: 568px) {
  .page_head .l_container {
    width: 100%;
  }
}
/* map */
.pc_map {
  width: 900px;
  aspect-ratio: 900/1260;
  border: 2px solid var(--color-light-gray);
  background-color: var(--color-light-blue);
  padding: 15px 20px;
  position: relative;
  margin: -70px auto 100px;
}

.map_ttl {
  font-size: 1.7rem;
}

.map_exp {
  position: absolute;
  top: 70px;
  left: 35px;
}

.map_img {
  position: absolute;
  top: 0;
  left: 0;
}

.map_area {
  display: inline-block;
  background-color: #fff;
  border: 1px solid #ccc;
  padding: 0.75em;
  border-radius: 0.5em;
  position: absolute;
}

.map_area.hokkaido {
  top: 172px;
  left: 328px;
  border-color: var(--color-hokkaido);
}

.map_area.tohoku {
  width: 245px;
  top: 587px;
  left: 625px;
  border-color: var(--color-tohoku);
}

.map_area.koushinetsu {
  width: 245px;
  top: 515px;
  left: 160px;
  border-color: var(--color-koushinetsu);
}

.map_area.hokuriku {
  width: 245px;
  top: 650px;
  left: 33px;
  border-color: var(--color-hokuriku);
}

.map_area.kitakanto {
  width: 245px;
  top: 805px;
  left: 562px;
  border-color: var(--color-kitakanto);
}

.map_area.shutoken {
  width: 190px;
  top: 940px;
  left: 534px;
  border-color: var(--color-shutoken-izu);
}

.map_area.izu {
  width: 320px;
  top: 1080px;
  left: 100px;
  border-color: var(--color-shutoken-izu);
}

.map_area::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
}

.map_area.hokkaido::before {
  border-width: 10px 0 10px 18px;
  border-color: transparent transparent transparent var(--color-hokkaido);
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
}

.map_area.tohoku::before {
  border-width: 10px 18px 10px 0;
  border-color: transparent var(--color-tohoku) transparent transparent;
  top: 50%;
  right: 100%;
  transform: translateY(-50%);
}

.map_area.koushinetsu::before {
  border-width: 18px 10px 0 10px;
  border-color: var(--color-koushinetsu) transparent transparent transparent;
  top: 100%;
  left: 144px;
}

.map_area.hokuriku::before {
  border-width: 18px 10px 0 10px;
  border-color: var(--color-hokuriku) transparent transparent transparent;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.map_area.kitakanto::before {
  border-width: 10px 18px 10px 0;
  border-color: transparent var(--color-kitakanto) transparent transparent;
  top: 50%;
  right: 100%;
  transform: translateY(-50%);
}

.map_area.shutoken::before {
  border-width: 10px 18px 10px 0;
  border-color: transparent var(--color-shutoken-izu) transparent transparent;
  top: 50%;
  right: 100%;
  transform: translateY(-50%);
}

.map_area.izu::before {
  border-width: 0 10px 18px 10px;
  border-color: transparent transparent var(--color-shutoken-izu) transparent;
  bottom: 100%;
  left: 220px;
}

.map_area_ttl {
  text-align: center;
  font-size: 2.7rem;
  font-weight: bold;
  line-height: 1.25;
  overflow: hidden;
  /* letter-spacing中央寄せ位置調整用 */
  margin-bottom: 0.26em;
}

.map_area.tohoku .map_area_ttl {
  color: var(--color-tohoku);
}

.map_area.koushinetsu .map_area_ttl {
  color: var(--color-koushinetsu);
}

.map_area.hokuriku .map_area_ttl {
  color: var(--color-hokuriku);
}

.map_area.kitakanto .map_area_ttl {
  color: var(--color-kitakanto);
}

.map_area.shutoken .map_area_ttl, .map_area.izu .map_area_ttl {
  color: var(--color-shutoken-izu);
}

.map_area_ttl .ls {
  display: block;
  letter-spacing: 0.5em;
  margin-right: -0.5em;
}

.map_area_ttl a {
  color: inherit;
}

.map_text {
  font-size: 2rem;
  color: var(--color-black);
  line-height: 1;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7px;
}

.map_text > li {
  display: inline-block;
}

.map_text > li a {
  display: block;
  padding: 0.6em 0.725em;
  background-color: #ccc;
  border-radius: 0.25em;
  color: inherit;
  transition: background-color 0.2s;
}

.map_area.hokkaido .map_text > li a {
  background-color: var(--color-hokkaido-light);
}

.map_area.tohoku .map_text > li a {
  background-color: var(--color-tohoku-light);
}

.map_area.koushinetsu .map_text > li a {
  background-color: var(--color-koushinetsu-light);
}

.map_area.hokuriku .map_text > li a {
  background-color: var(--color-hokuriku-light);
}

.map_area.kitakanto .map_text > li a {
  background-color: var(--color-kitakanto-light);
}

.map_area.shutoken .map_text > li a, .map_area.izu .map_text > li a {
  background-color: var(--color-shutoken-izu-light);
}

.map_area.hokkaido .map_text > li a:hover {
  background-color: var(--color-hokkaido);
}

.map_area.tohoku .map_text > li a:hover {
  background-color: var(--color-tohoku);
}

.map_area.koushinetsu .map_text > li a:hover {
  background-color: var(--color-koushinetsu);
}

.map_area.hokuriku .map_text > li a:hover {
  background-color: var(--color-hokuriku);
}

.map_area.kitakanto .map_text > li a:hover {
  background-color: var(--color-kitakanto);
}

.map_area.shutoken .map_text > li a:hover, .map_area.izu .map_text > li a:hover {
  background-color: var(--color-shutoken-izu);
}

.area, .area path {
    transition: fill .5s;
}

.area[data-area="hokkaido"].active path {
    fill: var(--color-hokkaido);
}

.area[data-area="aomori"].active path, .area[data-area="akita"].active, .area[data-area="iwate"].active, .area[data-area="yamagata"].active, .area[data-area="miyagi"].active, .area[data-area="fukushima"].active {
    fill: var(--color-tohoku);
}

.area[data-area="gunma"].active, .area[data-area="tochigi"].active, .area[data-area="ibaraki"].active {
  fill: var(--color-kitakanto);
}

.area[data-area="chiba"].active, .area[data-area="kanagawa"].active, .area[data-area="shizuoka"].active path {
  fill: var(--color-shutoken-izu);
}

.area[data-area="niigata"].active path, .area[data-area="nagano"].active, .area[data-area="yamanashi"].active {
  fill: var(--color-koushinetsu);
}

.area[data-area="toyama"].active, .area[data-area="ishikawa"].active, .area[data-area="fukui"].active {
  fill: var(--color-hokuriku);
}



@media screen and (max-width: 568px) {
  .pc_map {
    display: none;
  }
}
/* sp_nav */
.sp_nav {
  display: none;
}

@media screen and (max-width: 568px) {
  .sp_nav {
    display: block;
  }

  .sp_nav_ttl {
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
    padding: 0.425em 0.625em;
    background-color: #c1af99;
    background-image: url("../images/bg_sp_menu.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }

  .sp_nav_ttl > span {
    display: inline-block;
    padding-left: 1.25em;
    position: relative;
  }

  .sp_nav_ttl > span::before {
    content: "";
    width: 0.8125em;
    height: auto;
    aspect-ratio: 26/40;
    background-image: url("../images/icon_pin.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
  }

  .sp_nav_list {
    border-top: 1px solid var(--color-brown);
  }

  .sp_nav_list a:hover, .sp_nav_list a:active, .sp_nav_list a:focus {
    background-color: var(--color-beige);
    cursor: pointer;
  }

  .sp_nav_list > li {
    font-size: 1.4rem;
    font-weight: 500;
    color: var(--color-black);
    border-bottom: 1px solid var(--color-brown);
  }

  .sp_nav_list > li a, .sp_menu_parent {
    display: block;
    color: inherit;
    padding: 0.69em 1.43em;
  }

  .sp_menu_parent {
    position: relative;
    cursor: pointer;
  }

  .sp_menu_parent::before {
    content: "";
    width: 12px;
    height: 2px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: rotate(90deg);
    background: var(--color-brown);
    transition: all 0.3s ease-in-out;
  }

  .sp_menu_parent::after {
    content: "";
    width: 12px;
    height: 2px;
    position: absolute;
    top: 50%;
    right: 20px;
    background: var(--color-brown);
    transition: all 0.2s ease-in-out;
  }

  .sp_menu_parent.is_open::before {
    transform: rotate(180deg);
  }

  .sp_menu_parent.is_open::after {
    opacity: 0;
  }

  .sp_menu_child {
    border-top: 1px solid var(--color-brown);
  }

  .sp_menu_child > li {
    border-bottom: 1px solid var(--color-brown);
    text-indent: 1em;
  }

  .sp_menu_child > li:last-child {
    border-bottom: none;
  }
}
/* sec_block */
.sec_block {
  margin: 40px 0;
}

.sec_col2 {
  display: flex;
  justify-content: space-between;
}

.sec_col2.reverse {
  flex-direction: row-reverse;
}

.sec_col2_l {
  width: 56%;
}

.sec_col2_r {
  width: 40%;
}

.sec_col2_r .sec_img {
  width: 400px;
  max-width: 100%;
  aspect-ratio: 670/460;
  margin: 0 auto;
}

.sec_col2_r .sec_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sec_txt {
  font-size: 1.4rem;
  line-height: 1.7;
}

.sec_txt p + p {
  margin-top: 1em;
}

@media screen and (max-width: 568px) {
  .sec_block {
    margin: 20px 0 40px;
  }

  .sec_col2, .sec_col2.reverse {
    flex-direction: column;
    gap: 15px;
  }

  .sec_col2_l, .sec_col2_r {
    width: 100%;
  }
}
/* search */
.search {
  margin-bottom: 100px;
}

.page.top .search {
  margin-top: 80px;
}

@media screen and (max-width: 568px) {
  .search {
    margin-bottom: 25px;
  }

  .page.top .search {
    margin-top: 50px;
  }
}
/* theme */
.theme_ttl {
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  line-height: 1.4;
  padding: 0.63em 1em;
  background-color: var(--color-blue);
  margin-bottom: 2.77em;
}

.theme_ttl > span {
  display: inline-block;
  padding-left: 1.66em;
  position: relative;
}

.theme_ttl > span::before {
  content: "";
  width: 1.11em;
  height: auto;
  aspect-ratio: 1/1;
  background-image: url("../images/icon_search.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: absolute;
  top: 0.2em;
  left: 0;
}

.bnr_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.caption {
  font-size: 1.4rem;
  line-height: 1.4;
  color: var(--color-dark-gray);
  margin-top: 0.5em;
}

@media screen and (max-width: 568px) {
  .theme {
    margin-top: 25px;
  }

  .theme_ttl {
    font-size: 1.6rem;
    padding: 0.38em 0.4em;
    margin-bottom: 1.5625em;
  }

  .theme_ttl > span::before {
    width: 1.25em;
    top: 0.1em;
  }

  .bnr_list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 10px;
  }

  .caption {
    font-size: 1.2rem;
    margin-top: 0.2em;
  }
}
/*!
page > pref
------------------------------
*/
/* チェックボックス */
input[type=checkbox] {
  display: none;
}

.check {
  position: relative;
  cursor: pointer;
}

.check > input + span {
  width: 1.06em;
  aspect-ratio: 1/1;
  font-weight: bold;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.check > input + span::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  border: 3px solid #808080;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  margin-top: 0.09em;
}

.check > input + span::after {
  content: "";
  display: block;
  height: 0.53em;
  width: 0.82em;
  border-bottom: 3px solid var(--color-black);
  border-left: 3px solid var(--color-black);
  transform: rotate(-45deg);
  position: absolute;
  top: 0.2em;
  left: 0.2em;
  opacity: 0;
}

.check > input[type=checkbox]:checked + span::after {
  opacity: 1;
}

input,
textarea,
select,
button {
  color: inherit;
  font-family: inherit;
  font-family: var(--font-family-base) !important;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  font-size: 100%;
  border-radius: 0;
  border: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  background-color: inherit;
}

input,
textarea,
select {
  font-size: 16px;
  vertical-align: middle;
}

textarea {
  resize: vertical;
  display: block;
}

button {
  padding: 0;
  cursor: pointer;
  font-family: inherit;
}

@media (max-width: 568px) {
  .check > input + span::before {
    border: 2px solid var(--color-black);
  }
}

/* pref_map */
.pref_map {
  width: 900px;
  max-width: 100%;
  margin: -70px auto 30px;
  position: relative;
}

.pref_img {
  width: 100%;
  aspect-ratio: 900/538;
  background-color: var(--color-light-blue);
  border: 2px solid var(--color-light-gray);
}

.pref_img > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pref_map_note {
  font-size: 1.6rem;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.4);
  border-top-left-radius: 6px;
  padding: 0.23em 0.625em 0.245em;
  position: absolute;
  bottom: 0;
  right: 0;
}

.pref_check_item {
  font-size: 1.7rem;
  font-weight: 600;
  color: #333;
  line-height: 1.3;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  display: inline-block;
  padding: 0.1em 0.58em 0.4em 0.4em;
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 0.3em;
  position: absolute;
}

.pref_check_item .check {
  padding-left: 1.6em;
}

.pref_check_item .check > span {
  display: inline-block;
}

.pref_map_ttl {
  position: absolute;
  top: 17px;
  left: 17px;
}

.pref_btn_area {
  margin-bottom: 45px;
}

@media (max-width: 568px) {
  .pref_map {
    margin: 0 auto 25px;
  }

  .pref_img {
    border-width: 1px;
    aspect-ratio: 750/538;
    position: relative;
  }

  .pref_map_ttl {
    width: 29.3%;
    top: 10px;
    left: 10px;
  }

  .pref_map_note {
    font-size: 0.9rem;
  }

  .pref_check_item {
    position: relative;
    top: auto;
    left: auto;
  }

  .pref_check_items {
    width: 90%;
    margin: 20px auto 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  .pref_check_item {
    font-size: 1.25rem;
    min-height: 42px;
    padding: 0.3em 0.5em 0.3em 0.77em;
    border-radius: 0.48em;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .pref_btn_area {
    margin-bottom: 30px;
  }
}


/********** result **********/

.result_body{
    width: 1000px;
    margin: 0 auto 70px;
    padding-top: 74px;
    position: relative;
}

.result_body .cont_wrapp{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

.result_body .cont_wrapp .side_column{
    width: 220px;
    padding-top: 40px;
}

.result_body .cont_wrapp .side_column .side_search_area{
    margin-bottom: 20px;
}

.result_body .cont_wrapp .side_column .side_search_area .head_title{
    height: 39px;
    line-height: 39px;
    background: #394e7b;
    border-radius: 5px 5px 0 0;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    padding: 0 12px;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul{
    background: #f2f2f2;
    border-radius: 0 0 5px 5px;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li{
    padding: 10px;
    border-bottom: 1px dashed #ccc;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li:last-child{
    border-bottom: none;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .area_name{
    width: calc(100% - 57px);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li:last-child .area_name{
    padding-left: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li:last-child .area_name > span:nth-child(2) {
  flex-grow: 1;
  text-align: right;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area{
    width: 57px;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area button,
.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area a{
    display: block;
    width: 100%;
    height: 23px;
    line-height: 23px;
    background: #fff;
    border: 1px solid #808080;
    border-radius: 4px;
    box-sizing: border-box;
    position: relative;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area button:hover,
.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area a:hover{
  opacity: 0.7 !important;
}

.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area button span,
.result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area a span{
    font-size: 14px;
    font-weight: 500;
    color: #1a0dab;
    line-height: 1;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
}


.result_body .cont_wrapp .side_column .menu_btn{
    display: none;
}

.result_body .cont_wrapp .side_column .side_search_category{
    background: #f2f2f2;
    border-radius: 5px;
    padding: 7px 8px;
}

.result_body .cont_wrapp .side_column .side_search_category .close_btn{
    display: none;
}

.result_body .cont_wrapp .side_column .side_search_category .head_title{
    line-height: 27px;
    font-size: 16px;
    font-weight: 700;
    padding-left: 6px;
    margin-bottom: 30px;
    border-left: 4px solid #c9a746;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul{
    margin-bottom: 30px;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li{
    margin-bottom: 11px;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li:last-child{
    margin-bottom: 0;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li label{
    padding-left: 25px;
    font-size: 13px;
    font-weight: 500;
    position: relative;
    cursor: pointer;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li label::before{
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid #000;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li label:has(input:checked)::after{
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url('../images/icon_result_check.png') no-repeat 0 0 / contain;
    position: absolute;
    top: 2px;
    left: 2px;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li label:has(input:disabled) {
    pointer-events: none;
	opacity: 0.5;
}

.result_body .cont_wrapp .side_column .side_search_category .check_ul li label:has(input:disabled)::before {
	opacity: 0.5;
}

.result_body .cont_wrapp .side_column .side_search_category .c_btn.c_btn_md:disabled {
  pointer-events: none;
  opacity: 0.5;
}

.result_body .cont_wrapp .side_column .side_search_category .c_btn.c_btn_md {
    width: 100%;
    height: 42px;
    line-height: 40px;
    padding: 0;
    font-size: 16px;
    font-weight: 500;
    padding-right: 1em;
}

.result_body .cont_wrapp .side_column .side_search_category .c_btn.c_btn_arrow::before {
    width: 8px;
    height: 8px;
    right: 1.33em;
}


.result_body .cont_wrapp .result_data{
    width: 750px;
}

.result_body .cont_wrapp .result_data .result_head{
    position: absolute;
    top: 0;
    left: 0;
}

.result_body .cont_wrapp .result_data .result_head h1{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.75;
    border-bottom: 1px solid #000;
}

.result_body .cont_wrapp .result_data .seach_result_num{
    position: absolute;
    top: 58px;
    left: 0;
    line-height: 1;
}

.result_body .cont_wrapp .result_data .seach_result_num strong{
    font-size: 36px;
    font-weight: 700;
    margin-right: 6px;
}

.result_body .cont_wrapp .result_data .seach_result_num small{
    font-size: 20px;
}

.result_body .cont_wrapp .result_data .seach_result_num small span{
    font-weight: 400;
}

.result_body .cont_wrapp .result_data .seach_result_num small .num{
    margin-left: 20px;
}

.result_body .cont_wrapp .result_data .head_note_ul{
    margin-bottom: 8px;
}

.result_body .cont_wrapp .result_data .head_note_ul li{
    font-size: 12px;
    line-height: 1.4;
    padding-left: 1.2em;
    position: relative;
}

.result_body .cont_wrapp .result_data .head_note_ul li::before{
    content: '※';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li{
    margin-bottom: 20px;
    border: 1px solid #808080;
    border-top: 6px solid #876f59;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0px 1px 6px -2px rgba(0,0,0,.8);
    position: relative;
    transition: box-shadow ease-in-out 0.2s;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li a{
  min-height: 360px;
  color: inherit;
  display: block;
  padding: 40px 22px 20px 398px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li:hover{
  box-shadow: 0px 1px 10px -2px rgba(0,0,0,.8);
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li:last-child{
    margin-bottom: 0;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block{
    position: absolute;
    top: 40px;
    left: 22px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_wrapp{
    width: 350px;
    height: 262px;
    background: #000;
    position: relative;
    overflow: hidden;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_wrapp img{
    display: block;
	width: 100%;
	height: 100%;
	/* max-height: 262px; */
	object-fit: cover;
	object-position: center center;
}

.result_body .cont_wrapp .result_data .serch_result_data a .image_block .image_wrapp img:hover{
  opacity: 1;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_note{
    font-size: 10px;
    font-weight: 500;
    margin-top: 6px;
    padding-left: 1.2em;
    position: relative;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_note::before{
    content: '※';
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position{
    font-size: 14px;
    font-weight: 400;
    position: absolute;
    top: 13px;
    left: 20px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position .arrow{
    display: inline-block;
    font-weight: 400;
    color: #000;
    padding-right: 20px;
    position: relative;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position .arrow::after{
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 1px #000;
    border-right: solid 1px #000;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 8px;
    bottom: 0;
    margin: auto;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head{
    margin-bottom: 12px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .area_name{
    font-size: 14px;
    font-weight: 700;
    color: #999999;
    line-height: 1;
    margin-bottom: 10px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .facility_name{
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 8px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .class_icon{
    margin-bottom: 8px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .type_name {
	font-size: 15px;
	line-height: 1.4;
	text-align: right;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .class_icon .class_name{
    display: inline-block;
    height: 20px;
    line-height: calc(20px - 2px);
    border: 1px solid #8b7246;
    font-size: 13px;
    color: #8b7246;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 0 8px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .station_guide{
    font-size: 13px;
    line-height: 1;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .station_guide .name{
    font-weight: 600;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .station_guide .arrow{
    font-weight: 600;
    margin: 0 2px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul{
    background: #f2f2f2;
    padding: 10px 10px 1px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li{
    width: 148px;
    margin-bottom: 10px;
    padding-left: 37px;
    position: relative;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li::before{
    content: '';
    display: inline-block;
    width: 29px;
    height: 27px;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    background-image: url('../images/icon_result01.svg');
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li.li02::before{
    background-image: url('../images/icon_result02.svg');
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li.li03::before{
    background-image: url('../images/icon_result03.svg');
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li.li04::before{
    background-image: url('../images/icon_result04.svg');
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li.li05::before{
    background-image: url('../images/icon_result05.svg');
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li.li06::before{
    background-image: url('../images/icon_result06.svg');
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li span{
    font-size: 12px;
    line-height: 1.23;
    font-weight: 600;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .head_note_ul {
	display: inline-block;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
	/* margin-top: 2rem; */
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .head_note_ul.box {
	border: 1px solid #ea0000;
	padding: 0.5em 0.8em;
	margin-bottom: 0;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .head_note_ul li{
	font-size: 13px;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry{
    width: 230px;
    margin: 20px auto;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry .entry_btn{
    display: block;
    height: 40px;
    line-height: 38px;
    background: #f59143;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    padding-right: 20px;
    position: relative;
    transition: all 0.2s linear;
}

.result_body .cont_wrapp .result_data .serch_result_data a:hover .facility_data .facility_entry .entry_btn{
    opacity: 0.7 !important;
}

.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry .entry_btn::after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    margin: auto;
}

.result_body .cont_wrapp .result_data .pager{
    border-top: none;
    margin: 40px 0 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}

.result_body .cont_wrapp .result_data .pager span,
.result_body .cont_wrapp .result_data .pager a,
.result_body .cont_wrapp .result_data .pager button{
    display: inline-block;
    width: 25px;
    height: 25px;
    line-height: 22px;
    margin: 0 1px;
    padding: 0;
    border: 1px solid #999;
    font-size: 14px;
    color: #000;
    font-weight: 500;
    position: relative;
    transition: all 0.2s linear;
}

.result_body .cont_wrapp .result_data .pager a:hover,
.result_body .cont_wrapp .result_data .pager button:hover{
    background: #000;
    color: #fff;
}

.result_body .cont_wrapp .result_data .pager .current{
    background: transparent;
    color: #000;
    border: none;
    pointer-events: none;
}

.result_body .cont_wrapp .result_data .pager a.next,
.result_body .cont_wrapp .result_data .pager a.prev,
.result_body .cont_wrapp .result_data .pager button.next,
.result_body .cont_wrapp .result_data .pager button.prev{
    width: auto;
    border: 1px solid #999 !important;
}

.result_body .cont_wrapp .result_data .pager a.prev,
.result_body .cont_wrapp .result_data .pager button.prev{
    padding: 0 10px 0 20px;
}

.result_body .cont_wrapp .result_data .pager button.prev:disabled{
  pointer-events: none;
  background-color: #ddd;
  color: #999 !important;
  border-color: #ccc !important;
}

.result_body .cont_wrapp .result_data .pager a.next,
.result_body .cont_wrapp .result_data .pager button.next{
    padding: 0 20px 0 10px;
}

.result_body .cont_wrapp .result_data .pager button.next:disabled{
  pointer-events: none;
  background-color: #ddd;
  color: #999 !important;
  border-color: #ccc !important;
}

.result_body .cont_wrapp .result_data .pager a.prev::before,
.result_body .cont_wrapp .result_data .pager a.next::before,
.result_body .cont_wrapp .result_data .pager button.prev::before,
.result_body .cont_wrapp .result_data .pager button.next::before{
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 2px #999;
    border-right: solid 2px #999;
    transform: rotate(-135deg);
    position: absolute;
    top: 0;
    left: 6px;
    bottom: 0;
    margin: auto;
    transition: all 0.2s linear;
}

.result_body .cont_wrapp .result_data .pager a.next::before,
.result_body .cont_wrapp .result_data .pager button.next::before{
    transform: rotate(45deg);
    left: unset;
    right: 6px;
}

.result_body .cont_wrapp .result_data .pager a.prev:hover::before,
.result_body .cont_wrapp .result_data .pager a.next:hover::before,
.result_body .cont_wrapp .result_data .pager button.prev:hover::before,
.result_body .cont_wrapp .result_data .pager button.next:hover::before{
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
}

.result_copyright {
  font-size: 15px;
  margin-top: 0.2em;
}


@media (max-width: 568px) {

    .result_body{
        width: auto;
        margin: 0 2.666667vw 16vw;
        padding-top: 0;
        position: relative;
    }

    .result_body .cont_wrapp{
        display: block;
    }

    .result_body .cont_wrapp .side_column{
        width: auto;
        padding-top: 4.533333vw;
        margin-bottom: 4.4vw;
    }

    .result_body .cont_wrapp .side_column .side_search_area{
        /* margin-bottom: 3.333333vw; */
        margin-bottom: 5.5vw;
    }

    .result_body .cont_wrapp .side_column .side_search_area .head_title{
        display: none;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul{
        background: #fff;
        border-radius: 0.666667vw;
        border: 1px solid #876f59;
        box-shadow: 0px 1px 6px -2px rgba(0, 0, 0, .8);
        padding: 0.4vw;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li{
        width: 32.666667vw;
        padding: 2.666667vw;
        border-bottom: none;
        box-sizing: border-box;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li:last-child{
        width: calc(100% - 32.666667vw);
        border-left: 1px solid #8b7246;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .area_name{
        width: calc(100% - 10.266667vw);
        font-size: 3.733333vw;
        line-height: 1.2;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li:last-child .area_name{
        padding: 0 2.666667vw 0 0;
    }


    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area{
        width: 10.266667vw;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area button,
    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area a{
        height: 10.266667vw;
        line-height: 10.266667vw;
        border-radius: 0.933333vw;
    }

    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area button span,
    .result_body .cont_wrapp .side_column .side_search_area .search_area_ul li .change_btn_area a span{
        font-size: 3.2vw;
    }


    .result_body .cont_wrapp .side_column .menu_btn{
        display: block;
        /* width: auto; */
        width: 75%;
        /* height: 10.666667vw; */
        height: 12vw;
				/* line-height: calc(10.666667vw - 2px); */
        line-height: calc(12vw - 2px);
        /* background: #876f59; */
        background-color: #c9a746;
        border: 1px solid #fff;
        /* border-radius: 0.666667vw; */
        border-radius: 2.048vw;
        box-shadow: 0px 1px 6px -2px rgba(0, 0, 0, .8);
        text-align: center;
        margin: 0 auto;
    }

    .result_body .cont_wrapp .side_column .menu_btn strong{
        display: inline-block;
        font-size: 3.733333vw;
        font-weight: 600;
        color: #fff;
        line-height: 1;
        padding-left: 9.066667vw;
        position: relative;
    }

    .result_body .cont_wrapp .side_column .menu_btn strong::before{
        content: '';
        display: inline-block;
        width: 5.2vw;
        height: 3.066667vw;
        background: url('../images/icon_result_category_btn.png') no-repeat 0 0 / contain;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
    }

    .result_body .cont_wrapp .side_column .side_search_category{
        width: 86.666667vw;
        background: #fff;
        border-radius: 0;
        padding: 6.666667vw;
        box-sizing: border-box;
        display: none;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 10;
    }

    .result_body .cont_wrapp .side_column .side_search_category .close_btn{
        display: inline-block;
        width: 30px;
        height: 30px;
        line-height: calc(30px - 2px);
        background: transparent;
        border: 1px solid #fff;
        font-size: 20px;
        font-weight: 500;
        color: #fff;
        text-align: center;
        position: absolute;
        top: -32px;
        right: 0;
    }

    .overlay_bg {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.8);
        z-index: 5;
    }


    .result_body .cont_wrapp .side_column .side_search_category .head_title{
        line-height: 7.066667vw;
        font-size: 4.266667vw;
        padding-left: 2.666667vw;
        margin-bottom: 6.666667vw;
        border-left: 1.066667vw solid #c9a746;
    }

    .result_body .cont_wrapp .side_column .side_search_category .check_ul{
        margin-bottom: 7.2vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .check_ul li{
        margin-bottom: 2.933333vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .check_ul li label{
        padding-left: 8vw;
        font-size: 3.733333vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .check_ul li label::before{
        width: 4.666667vw;
        height: 4.666667vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .check_ul li label:has(input:checked)::after{
        width: 3.2vw;
        height: 3.2vw;
        top: 0.8vw;
        left: 0.8vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .serch_btn_wrapp{
        width: 60vw;
        margin:  0 auto;
    }

    .result_body .cont_wrapp .side_column .side_search_category .c_btn.c_btn_md {
        width: 100%;
        height: 12.533333vw;
        line-height: calc(12.533333vw - 2px);
        font-size: 4.266667vw;
    }

    .result_body .cont_wrapp .side_column .side_search_category .c_btn.c_btn_arrow::before {
        width: 1.6vw;
        height: 1.6vw;
        right: 1.33em;
    }


    .result_body .cont_wrapp .result_data{
        width: auto;
    }

    .result_body .cont_wrapp .result_data .result_head{
        position: static;
    }

    .result_body .cont_wrapp .result_data .result_head h1{
        font-size: 3.733333vw;
        padding-bottom: 0.8vw;
        margin-bottom: 3.2vw
    }

    .result_body .cont_wrapp .result_data .seach_result_num{
        position: static;
        margin-bottom: 3.466667vw;
    }

    .result_body .cont_wrapp .result_data .seach_result_num strong{
        font-size: 6.666667vw;
        margin-right: 1.2vw;
    }

    .result_body .cont_wrapp .result_data .seach_result_num small{
        font-size: 4ve;
    }

    .result_body .cont_wrapp .result_data .seach_result_num small span{
        font-weight: 700;
    }

    .result_body .cont_wrapp .result_data .seach_result_num small .num{
        margin-left: 4vw;
    }

    .result_body .cont_wrapp .result_data .head_note_ul{
        margin-bottom: 2.666667vw;
    }

    .result_body .cont_wrapp .result_data .head_note_ul li{
        font-size: 2.666667vw;
        line-height: 1.3;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li{
        margin-bottom: 4.266667vw;
        border-top: 1.466667vw solid #876f59;
        border-radius: 0.666667vw;
        box-shadow: 0px 1px 6px -2px rgba(0,0,0,.8);
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li a{
        min-height: none;
        padding: 3.466667vw 4vw 6.666667vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block{
        position: static;
        margin-bottom: 1.333333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_wrapp{
        width: 100%;
        height: auto;
		aspect-ratio: 175 / 131;
    }

    /* .result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_wrapp img{
        position: static;
        transform: translate(0, 0);
    } */

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .image_block .image_note{
        font-size: 2.666667vw;
        margin-top: 1.333333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position{
        font-size: 3.2vw;
        line-height: 1.17;
        margin-bottom: 3.2vw;
        position: static;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position .arrow{
        padding-right: 4.8vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .area_position .arrow::after{
        width: 1.333333vw;
        height: 1.333333vw;
        top: 0.533333vw;
        right: 2.133333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head{
        margin-bottom: 3.2vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .area_name{
        font-size: 3.2vw;
        margin-bottom: 3.2vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .facility_name{
        font-size: 5.333333vw;
        line-height: 1.25;
        margin-bottom: 2vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .class_icon{
        margin-bottom: 2.133333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .class_icon .class_name{
        height: 4.666667vw;
        line-height: calc(4.666667vw - 2px);
        font-size: 3.2vw;
        letter-spacing: 0.05em;
        padding: 0 1.2vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .station_guide{
        font-size: 3.733333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .data_head .station_guide .arrow{
        margin: 0 1.2vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul{
        padding: 3.333333vw 3.333333vw 0.666667vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li{
        width: 38.666667vw;
        margin-bottom: 2.666667vw;
        padding-left: 8vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li::before{
        width: 6.4vw;
        height: 5.866667vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data ul.data_ul li span{
        font-size: 3.466667vw;
    }

	.result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .head_note_ul li{
		font-size: 2.666667vw;
	}

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry{
        width: 69.333333vw;
        margin: 6.666667vw auto;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry .entry_btn{
        height: 12vw;
        line-height: calc(12vw - 2px);
        border-radius: 1.466667vw;
        font-size: 4vw;
        padding-right: 6.933333vw;
    }

    .result_body .cont_wrapp .result_data .serch_result_data a:hover .facility_data .facility_entry .entry_btn{
        opacity: 1 !important;
    }

    .result_body .cont_wrapp .result_data .serch_result_data > ul > li .facility_data .facility_entry .entry_btn::after {
        width: 1.6vw;
        height: 1.6vw;
        right: 4.266667vw;
    }

    .result_body .cont_wrapp .result_data .pager{
        margin: 6.666667vw 0 0;
    }

    .result_body .cont_wrapp .result_data .pager span,
    .result_body .cont_wrapp .result_data .pager a{
        width: 6.666667vw;
        height: 6.666667vw;
        line-height: calc(6.666667vw - 2px);
        font-size: 3.733333vw;
    }

    .result_body .cont_wrapp .result_data .pager a:hover{
        background: #fff;
        color: #000;
    }

    .result_body .cont_wrapp .result_data .pager a.prev{
        padding: 0 2.666667vw 0 5.333333vw;
    }

    .result_body .cont_wrapp .result_data .pager a.next{
        padding: 0 5.333333vw 0 2.666667vw;
    }

    .result_body .cont_wrapp .result_data .pager a.prev::before,
    .result_body .cont_wrapp .result_data .pager a.next::before{
        width: 1.6vw;
        height: 1.6vw;
        left: 1.6vw;
    }

    .result_body .cont_wrapp .result_data .pager a.next::before{
        transform: rotate(45deg);
        left: unset;
        right: 1.6vw;
    }

    .result_body .cont_wrapp .result_data .pager a.prev:hover::before,
    .result_body .cont_wrapp .result_data .pager a.next:hover::before{
        border-top: solid 2px #000;
        border-right: solid 2px #000;
    }



}

/* error */

.page.error {
	padding-top: 100px;
	text-align: center;
}

.page.error h1 {
	font-size: 2.8rem;
	margin-bottom: 1em;
}

.search_error {
	width: 100%;
	max-width: 900px;
	color: #ea0000;
	font-weight: 500;
	background: #fef2f2;
	border: 1px solid #ea0000;
	padding: 1em 0.8em 1em 1.8em;
	border-radius: 3px;
	margin: 3em auto 2em;
}

.search_error_list > li::before {
	content: "・";
	margin-left: -1em;
}

.page_error {
	margin: 3em 0;
}

.not_applicable,
.page_error .loading_failed {
	margin-top: 30px;
	background: #fef2f2;
	border: 1px solid #ea0000;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	color: #ea0000;
	font-weight: 500;
	margin-bottom: 1.5em;
	padding: 1em .8em;
}

.page_error .loading_failed {
	text-align: center;
}

@media (max-width: 568px) {
	.page.error {
		padding-top: 50px;
	}

	.page.error h1 {
		font-size: 2.6rem;
	}

	.search_error {
		margin: 2em auto 1em;
	}
}


/********** エリア別設定 **********/

/****************************************

    北海道

****************************************/

.hokkaido .area1{
    top: 480px;
    left: 28px;
}

.hokkaido .area2{
    top: 205px;
    left: 150px;
}

.hokkaido .area3{
    top: 388px;
    left: 553px;
}

.hokkaido .area4{
    top: 450px;
    left: 387px;
}

.hokkaido .area5{
    top: 322px;
    left: 625px;
}

.hokkaido .area6{
    top: 262px;
    left: 684px;
}

.hokkaido .area7{
    top: 140px;
    left: 92px;
}

.hokkaido .area8{
    top: 292px;
    left: 43px;
}

.hokkaido .area9{
    top: 95px;
    left: 540px;
}

.hokkaido .area10{
    top: 150px;
    left: 628px;
}

.hokkaido .area11{
    top: 40px;
    left: 440px;
}

@media all and (max-width: 568px) {
    .hokkaido .area1,
    .hokkaido .area2,
    .hokkaido .area3,
    .hokkaido .area4,
    .hokkaido .area5,
    .hokkaido .area6,
    .hokkaido .area7,
    .hokkaido .area8,
    .hokkaido .area9,
    .hokkaido .area10,
    .hokkaido .area11{
        position: relative;
        top: auto;
        left: auto;
        padding-right: 0;
    }

}

/****************************************

    青森

****************************************/

.aomori .area1 {
  top: 250px;
  left: 426px;
}

.aomori .area2 {
  top: 330px;
  left: 215px;
}

.aomori .area3 {
  top: 380px;
  left: 498px;
}

.aomori .area4 {
  top: 183px;
  left: 300px;
}

@media all and (max-width: 568px) {
  .aomori .area1,
  .aomori .area2,
  .aomori .area3,
  .aomori .area4 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    岩手

****************************************/

.iwate .area1 {
  top: 210px;
  left: 420px;
}

.iwate .area2 {
  top: 168px;
  left: 358px;
}

.iwate .area3 {
  top: 365px;
  left: 200px;
}

.iwate .area4 {
  top: 435px;
  left: 380px;
}

.iwate .area5 {
  top: 210px;
  left: 575px;
}

.iwate .area6 {
  top: 375px;
  left: 565px;
}

@media all and (max-width: 568px) {
  .iwate .area1,
  .iwate .area2,
  .iwate .area3,
  .iwate .area4,
  .iwate .area5,
  .iwate .area6 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    秋田

****************************************/

.akita .area1 {
  max-width: 270px;
  top: 210px;
  left: 480px;
}

.akita .area1 .check {
  transform: translateY(0.05em);
}

.akita .area2 {
  top: 150px;
  left: 290px;
}

.akita .area3 {
  top: 150px;
  left: 495px;
}

.akita .area4 {
  top: 70px;
  left: 520px;
}

.akita .area5 {
  top: 405px;
  left: 355px;
}

@media all and (max-width: 568px) {
  .akita .area1,
  .akita .area2,
  .akita .area3,
  .akita .area4,
  .akita .area5 {
    max-width: none;
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    山形

****************************************/

.yamagata .pref_img > img {
  object-position: 30% center;
}

.yamagata .area1 {
  top: 305px;
  left: 540px;
}

.yamagata .area2 {
  top: 290px;
  left: 225px;
}

.yamagata .area3 {
  top: 162px;
  left: 195px;
}

.yamagata .area4 {
  top: 420px;
  left: 375px;
}

.yamagata .area5 {
  top: 102px;
  left: 460px;
}

@media all and (max-width: 568px) {
  .yamagata .area1,
  .yamagata .area2,
  .yamagata .area3,
  .yamagata .area4,
  .yamagata .area5 {
    max-width: none;
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    宮城

****************************************/

.miyagi .pref_img > img {
  object-position: left center;
}

.miyagi .area1 {
  top: 300px;
  left: 245px;
}

.miyagi .area2 {
  top: 220px;
  left: 415px;
}


.miyagi .area3 {
  top: 105px;
  left: 580px;
}

.miyagi .area4 {
  top: 140px;
  left: 325px;
}

.miyagi .area5 {
  top: 370px;
  left: 260px;
}

@media all and (max-width: 568px) {
  .miyagi .area1,
  .miyagi .area2,
  .miyagi .area3,
  .miyagi .area4,
  .miyagi .area5 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    福島

****************************************/

.fukushima .pref_img > img {
  object-position: 38% center;
}

.fukushima .area1 {
  top: 222px;
  left: 232px;
}

.fukushima .area2 {
  top: 125px;
  left: 475px;
}

.fukushima .area3 {
  top: 402px;
  left: 602px;
}

.fukushima .area4 {
  top: 180px;
  left: 485px;
}

@media all and (max-width: 568px) {
  .fukushima .area1,
  .fukushima .area2,
  .fukushima .area3,
  .fukushima .area4 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    新潟

****************************************/

.niigata .area1 {
  top: 152px;
  left: 588px;
}

.niigata .area2 {
  top: 140px;
  left: 345px;
}

.niigata .area3 {
  top: 485px;
  left: 455px;
}

.niigata .area4 {
  top: 420px;
  left: 478px;
}

.niigata .area5 {
  top: 255px;
  left: 502px;
}

.niigata .area6 {
  top: 358px;
  left: 435px;
}

.niigata .area7 {
  top: 440px;
  left: 197px;
}

@media all and (max-width: 568px) {
  .niigata .area1,
  .niigata .area2,
  .niigata .area3,
  .niigata .area4,
  .niigata .area5,
  .niigata .area6,
  .niigata .area7 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    長野

****************************************/

.nagano .area1 {
  top: 256px;
  left: 550px;
}

.nagano .area2 {
  top: 256px;
  left: 102px;
}

.nagano .area3 {
  top: 155px;
  left: 185px;
}

.nagano .area4 {
  top: 45px;
  left: 538px;
}

.nagano .area5 {
  top: 366px;
  left: 214px;
}

.nagano .area6 {
  top: 306px;
  left: 306px;
}

.nagano .area7 {
  top: 167px;
  left: 518px;
}

.nagano .area8 {
  top: 88px;
  left: 447px;
}

.nagano .area9 {
  top: 472px;
  left: 352px;
}

@media all and (max-width: 568px) {
  .nagano .area1,
  .nagano .area2,
  .nagano .area3,
  .nagano .area4,
  .nagano .area5,
  .nagano .area6,
  .nagano .area7,
  .nagano .area8,
  .nagano .area9 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    山梨

****************************************/

.yamanashi .area1 {
  top: 216px;
  left: 460px;
}

.yamanashi .area2 {
  top: 318px;
  left: 470px;
}

.yamanashi .area3 {
  top: 85px;
  left: 332px;
}

.yamanashi .area4 {
  top: 157px;
  left: 406px;
}

@media all and (max-width: 568px) {
  .yamanashi .area1,
  .yamanashi .area2,
  .yamanashi .area3,
  .yamanashi .area4 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    富山

****************************************/

.toyama .pref_img > img {
  object-position: 30% center;
}

.toyama .area1 {
  top: 176px;
  left: 580px;
}

.toyama .area2 {
  top: 276px;
  left: 250px;
}

.toyama .area3 {
  top: 318px;
  left: 524px;
}

.toyama .area4 {
  top: 233px;
  left: 412px;
}

@media all and (max-width: 568px) {
  .toyama .area1,
  .toyama .area2,
  .toyama .area3,
  .toyama .area4 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    石川

****************************************/

.ishikawa .area1 {
  top: 400px;
  left: 380px;
}

.ishikawa .area2 {
  top: 176px;
  left: 550px;
}

.ishikawa .area3 {
  top: 340px;
  left: 458px;
}

@media all and (max-width: 568px) {
  .ishikawa .area1,
  .ishikawa .area2,
  .ishikawa .area3 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    福井

****************************************/

.fukui .area1 {
  top: 85px;
  left: 387px;
}

.fukui .area2 {
  top: 192px;
  left: 588px;
}

.fukui .area3 {
  top: 410px;
  left: 322px;
}

@media all and (max-width: 568px) {
  .fukui .area1,
  .fukui .area2,
  .fukui .area3 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    茨城

****************************************/

.ibaraki .area1 {
  top: 302px;
  left: 507px;
}

.ibaraki .area2 {
  top: 106px;
  left: 567px;
}

.ibaraki .area3 {
  top: 370px;
  left: 397px;
}

@media all and (max-width: 568px) {
  .ibaraki .area1,
  .ibaraki .area2,
  .ibaraki .area3 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    栃木

****************************************/

.tochigi .area1 {
  top: 27px;
  left: 480px;
}

.tochigi .area2 {
  top: 142px;
  left: 158px;
}

.tochigi .area3 {
  top: 97px;
  left: 297px;
}

.tochigi .area4 {
  top: 330px;
  left: 565px;
}

@media all and (max-width: 568px) {
  .tochigi .area1,
  .tochigi .area2,
  .tochigi .area3,
  .tochigi .area4 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    群馬

****************************************/

.gunma .area1 {
  top: 158px;
  left: 230px;
}

.gunma .area2 {
  top: 132px;
  left: 320px;
}

.gunma .area3 {
  top: 174px;
  left: 470px;
}

.gunma .area4 {
  top: 265px;
  left: 200px;
}

.gunma .area5 {
  top: 380px;
  left: 300px;
}

@media all and (max-width: 568px) {
  .gunma .area1,
  .gunma .area2,
  .gunma .area3,
  .gunma .area4,
  .gunma .area5 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    静岡県（伊豆）

****************************************/

.shizuoka .pref_img > img {
  object-position: 7% center;
}

.shizuoka .area1 {
  top: 462px;
  left: 366px;
}

.shizuoka .area2 {
  top: 383px;
  left: 458px;
}

.shizuoka .area3 {
  top: 198px;
  left: 514px;
}

.shizuoka .area4 {
  top: 302px;
  left: 518px;
}

.shizuoka .area5 {
  top: 287px;
  left: 112px;
}

.shizuoka .area6 {
  top: 350px;
  left: 242px;
}

@media all and (max-width: 568px) {
  .shizuoka .area1,
  .shizuoka .area2,
  .shizuoka .area3,
  .shizuoka .area4,
  .shizuoka .area5,
  .shizuoka .area6 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    千葉県

****************************************/

.chiba .pref_img > img {
  object-position: 30% center;
}

.chiba .area1 {
  top: 167px;
  left: 328px;
}

.chiba .area2 {
  top: 445px;
  left: 320px;
}

.chiba .area3 {
  top: 406px;
  left: 165px;
}

.chiba .area4 {
  top: 366px;
  left: 432px;
}

.chiba .area5 {
  top: 200px;
  left: 540px;
}

.chiba .area6 {
  top: 277px;
  left: 334px;
}

.chiba .area7 {
  top: 136px;
  left: 492px;
}

@media all and (max-width: 568px) {
  .chiba .area1,
  .chiba .area2,
  .chiba .area3,
  .chiba .area4,
  .chiba .area5,
  .chiba .area6,
  .chiba .area7 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    神奈川県

****************************************/

.kanagawa .area1 {
  top: 340px;
  left: 585px;
}

.kanagawa .area2 {
  top: 290px;
  left: 482px;
}

@media all and (max-width: 568px) {
  .kanagawa .area1,
  .kanagawa .area2 {
    position: relative;
    top: auto;
    left: auto;
  }
}

/****************************************

    神奈川県（箱根・湯河原・小田原）

****************************************/

.kanagawa02 .pref_map_ttl {
  width: 37.33%;
}

.kanagawa02 .area1 {
  top: 287px;
  left: 250px;
}

.kanagawa02 .area2 {
  top: 420px;
  left: 223px;
}

@media all and (max-width: 568px) {
  .kanagawa02 .area1,
  .kanagawa02 .area2 {
    position: relative;
    top: auto;
    left: auto;
  }
}