@charset "UTF-8";
/**------------------------------------------------------------------------



------------------------------------------------------------------------*/

html {
  background-color: transparent;
  overflow-x: hidden;
}
.inner {
  position: relative;
  width: 1170px;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0 auto;
}
.inner_narrow {
  width: 974px;
}
.inner_full {
  min-width: 1170px;
  margin-bottom: 80px;
}
.inner_full_fit {
  min-width: 1170px;
}
.img_full {
  width: 100%;
}
/*.inner.narrow {
  position: relative;
  width: 980px;
  padding-left: 10px;
  padding-right: 10px;
  margin: 0 auto;
}
*/
.textright {
  text-align: right;
}
.textright_pc {
  text-align: right;
}
body {
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 15px;
  line-height: 1.6em;
  display: block;
  font-feature-settings: "palt";
  overflow-x: hidden;
  padding-top: 128px;
}
body.top {
  padding-top: 0;
}
img {
  vertical-align: bottom;
}
.anker {
  margin-top: -130px;
  padding-top: 130px;
}
.fixed_btn {
  position: fixed;
  z-index: 1001;
}
.first_item:not(:last-child) {
  margin-bottom: 5rem;
}
.second_item:not(:last-child) {
  margin-bottom: 4rem;
}
.third_item:not(:last-child) {
  margin-bottom: 3rem;
}
.fourth_item:not(:last-child) {
  margin-bottom: 2rem;
}

.flex_box {
  display: flex;
  justify-content: space-between;
}

.flex_box.switch {
  flex-flow: row-reverse;
}
.flex_box.wrap {
  flex-flow: wrap;
  justify-content: flex-start;
}
.flex_box.no_wrap {
}
.col_2 {
  width: 170px;
}
.col_3 {
  width: 268px;
}
.col_4 {
  width: 366px;
}

.col_5_plan {
  width: 438px;
}
.col_5 {
  width: 464px;
}
.col_5_5 {
  width: 549px;
}
.col_6 {
  width: 562px;
}
.col_6_5 {
  width: 620px;
}
.col_7 {
  width: 660px;
}
.col_8 {
  width: 758px;
}
.col_9 {
  width: 856px;
}
.col_10 {
  width: 954px;
}

.row,
.two_to_one,
.three_to_two,
.three_to_one {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.row:not(:last-child) {
  margin-bottom: 26px;
}
.three_to_two > div,
.three_to_two > li,
.three_to_one > div,
.three_to_one > li {
  width: calc((100% - 52px) / 3);
  margin-bottom: 26px;
}
.four_to_two > div,
.four_to_two > li {
  width: calc((100% - 78px) / 4);
  margin-bottom: 26px;
}
.row > div:not(:last-child) {
  margin-right: 26px;
}
.two_to_one > div,
.two_to_one > li {
  width: calc((100% - 26px) / 2);
  margin-bottom: 26px;
}

.two_to_one.large_space > div,
.two_to_one.large_space > li {
  width: calc((100% - 52px) / 2);
  margin-bottom: 52px;
}
@media only screen and (min-width: 768px) {
  .four_to_two > div:not(:nth-child(4n)),
  .four_to_two > li:not(:nth-child(4n)) {
    margin-right: 26px;
  }

  .three_to_two > div:not(:nth-child(3n)),
  .three_to_two > li:not(:nth-child(3n)),
  .three_to_one > div:not(:nth-child(3n)),
  .three_to_one > li:not(:nth-child(3n)) {
    margin-right: 26px;
  }
  .two_to_one > div:not(:nth-child(2n)),
  .two_to_one > li:not(:nth-child(2n)) {
    margin-right: 26px;
  }
  .two_to_one.large_space > div:not(:nth-child(2n)),
  .two_to_one.large_space > li:not(:nth-child(2n)) {
    margin-right: 52px;
  }
}
figure {
  position: relative;
}
figure p.caption_txt {
  font-family: "Noto Sans JP";
  position: absolute;
  bottom: 0.5em;
  line-height: 1em;
  right: 0.5em;
  font-size: 12px;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  color: #000;
}
@media only screen and (min-width: 768px) {
}

@media only screen and (max-width: 767px) {
}

.under main > section:nth-of-type(n + 2):nth-of-type(even) {
  background: var(--very_thin);
}
.under main > section:nth-child(1 of .contents) {
  padding-top: 30px;
}

.pagetitle .title_box.title_h1 h1 {
  margin-top: 50px;
  padding-bottom: 0px;
}
.title_box.title_h1 h1 {
  padding-bottom: 30px;
}
.title_box.title_h1 h1 {
  text-align: center;
  color: var(--key_dark);
  position: relative;
  margin-bottom: 30px;
  display: flex;
  flex-flow: column;
  letter-spacing: 0.15em;
}
.title_box.title_h1 h1 strong {
  font-size: var(--size_5l);
  font-weight: normal;
  margin-bottom: 10px;
  line-height: 1.2em;
}
.title_box.title_h1 h1 small {
  font-size: var(--size_2s);
  color: var(--dark);
}
.title_box.title_h2,
.title_box.under_catch {
  margin-bottom: 60px;
}

.title_box h2 {
  font-size: var(--size_4l);
  font-weight: 400;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  line-height: 1.6em;
}
.title_box h2:not(:last-child) {
  margin-bottom: 2rem;
}
.catch {
  font-size: var(--size_5l);
  font-weight: 400;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  line-height: 1.6em;
}
.catch:not(:last-child) {
  margin-bottom: 2rem;
}
.title_box h3 {
  font-size: var(--size_3l);
  font-weight: 400;
  text-align: left;
  margin-bottom: 40px;
  border-left: 4px solid var(--main);
  padding-left: 10px;
}
.title_box.title_type01 h4 {
  font-size: var(--size_2l);
  border-bottom: 1px solid var(--key_dark);
  color: var(--key_dark);
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.title_box.title_type02 h4 {
  font-size: var(--size_2l);
  border-left: 4px solid var(--key_dark);
  padding-left: 10px;
  margin-bottom: 16px;
}
.reservation_outline .title_box.title_type02 h4 {
  border-left: 4px solid var(--reservation);
}
.title_box p {
}
.textcenter,
.textcenter_pc {
  text-align: center;
}
.wide_lines {
  line-height: 2em;
}
figure {
  xmargin-bottom: 0.5rem;
}
figure img {
  width: 100%;
}
figure figcaption {
  font-size: var(--size_2s);
  line-height: 1.5;
  margin-top: 6px;
}
picture:not(:last-child) img {
  margin-bottom: 20px;
}
.item-image a:hover {
  opacity: 0.8;
}
.expansion a {
  position: relative;
  display: block;
}
.expansion a:before {
  content: "";
  position: absolute;
  top: 6px;
  right: 6px;
  background: url(../../images/zoom.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 32px;
  height: 32px;
  opacity: 0.5;
  pointer-events: none;
}

.headline {
  line-height: 2rem;
  font-size: var(--size_1l);
  letter-spacing: 0.1rem;
  text-align: center;
}
.lead {
  font-size: var(--size_m);
  line-height: 1.6em;
}
.lead:not(:last-child) {
  margin-bottom: 2rem;
}
.tyuusyaku {
  text-align: left;
  line-height: 1.5em;
  padding: 30px 0px 30px 0px;
  background: #f3f3f3;
}
.tyuusyaku p {
  font-size: 12px;
}
/*------------------------------------------------------------------ ------------------------------------------------------------------------*/
:root {
  --main: #64b6c8;
  --key: #88cdc7;
  --key_dark: #2fafa4;
  --accent: #286083;
  --accent_thin: #6192b1;
  --accent_very_thin: #b2dbe4;
  --sub: #9c1550;
  --reservation: #c7a7ba;
  --reservation_thin: #f7e8ef;

  --gradation2: linear-gradient(to right, #64b6c8, #9195c7);
  --dark: ;
  --need: #9d1651;
  --thin_gold: ;
  --light_gold: ;
  --deep_gold: ;
  --dark_gold: ;
  --dull_gold: ;
  --bg: ;
  --white: #fff;
  --black: #333;
  --gray: #ddd;
  --dark: #999;
  --gray_thin: #ddd;
  --very_thin: #f6f6f6;
  --size_3s: 0.8em; /*12px*/
  --size_2s: 0.86em; /*13px*/
  --size_1s: 0.9em;
  --size_r: 1em; /*15px*/
  --size_m: 1.1em; /*15px*/
  --size_1l: 1.2em; /*18px*/
  --size_2l: 1.33em; /*20px*/
  --size_3l: 1.6em; /*24px*/
  --size_4l: 1.86em; /*28px*/
  --size_5l: 2.13em; /*32px*/

  --tf_gradation: linear-gradient(-45deg, #cba65a, #df8686);
  --tf_gradation_webkit: -webkit-linear-gradient(-45deg, #cba65a, #df8686);
  --tf_gold: #cba65a;
}
/**------------------------------------------------------------------------
------------------------------------------------------------------------*/

.yokoku {
  padding: 30px 0px 30px 0px;
  font-size: 12px;
  color: #000;
  line-height: 1.5;
  margin: 0;
  background: #f9f9f9;
  border-top: 1px SOLID #f9f9f9;
}
.yokoku dl {
  display: flex;
  align-items: stretch;
}
.yokoku dl dt {
  text-align: center;
  border: 1px solid #000;
  padding: 0.5rem 1rem;
  margin-right: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.yokoku dl dd {
  flex-basis: calc(100% - 20px - 6rem);
}
.lower .container {
  color: #574738;
}

.under .contact .container {
  padding-top: 0;
}
.second_items:not(:last-child) {
  margin-bottom: 4rem;
}
.third_items:not(:last-child) {
  margin-bottom: 3rem;
}
.fourth_items:not(:last-child) {
  margin-bottom: 2rem;
}

ul.two_column,
ul.three_column {
  display: flex;
  flex-wrap: wrap;
}
ul.two_column li {
  width: calc((100% - 20px) / 2);
  margin-right: 20px;
  margin-bottom: 30px;
}

ul.three_column li {
  width: calc((100% - 40px) / 3);
  margin-right: 20px;
  margin-bottom: 30px;
}
@media only screen and (min-width: 768px) {
  ul.two_column li:nth-child(2n) {
    margin-right: 0;
  }

  ul.three_column li:nth-child(3n) {
    margin-right: 0;
  }
}
.detail {
  font-size: var(--size_2s);
  line-height: 1.4em;
}
.notes {
  font-size: var(--size_3s);
}
/*-------------------------

sub_nav

  ---------------------------*/

.sub_nav_box {
  display: flex;
}
ul.sub_nav_txt {
  display: flex;
}

ul.sub_nav_txt li {
  position: relative;
  display: flex;
  align-items: center;
}

ul.sub_nav_txt li a {
  letter-spacing: 0.1em;
  color: #004472;
  font-size: var(--size_2s);
  padding-right: 20px;
  padding-left: 18px;
  font-weight: 600;
}
ul.sub_nav_txt li a::before {
  content: "";
  margin: 0 auto;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}
ul.sub_nav_txt li.sub_nav_map a::before {
  background: url(../../images/icon_map_key.svg) no-repeat;
}
ul.sub_nav_txt li.sub_nav_outline a::before {
  background: url(../../images/icon_outline_key.svg) no-repeat;
}
ul.sub_nav_btn {
  display: flex;
}
ul.sub_nav_btn li {
}
ul.sub_nav_btn li:not(:last-child) {
  margin-right: 1px;
}
/*-------------------------

  nav

  ---------------------------*/
#global_nav {
}

ul.global-list {
  display: flex;
  justify-content: center;
  align-items: center;
}
ul.global-list li {
  width: calc(100% / 8);
  position: relative;
}

ul.global-list li span {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 11px;
  background: var(--sub);
  color: #fff;
  padding: 2px 5px;
  line-height: 1;
}
ul.global-list li.blank a {
  color: rgba(0, 0, 0, 0.25);
  pointer-events: none;
}
ul.global-list li a {
  color: #000;
  height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s;
}
ul.global-list li a:hover {
  background-color: rgb(255 255 255 / 80%);
  transition: all 0.3s;
}
ul.global-list li a:before {
  content: "";
  width: 0;
  height: 2px;
  background-color: var(--main);
  position: absolute;
  bottom: 0;
  transition: all 0.3s;
}
ul.global-list li a:hover:before {
  width: 100%;
}
ul.global-list li a:hover:before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: var(--main);
  position: absolute;
  bottom: 0;
}

body.top ul.global-list li.nav_top a:before {
  content: "";
  width: 100%;
  height: 2px;
  background-color: var(--main);
  position: absolute;
  bottom: 0;
}
/*-------------------------

index

---------------------------*/
.top_contact_btn a {
  font-size: var(--size_5l);
  padding-top: 60px;
  padding-bottom: 60px;
}
a.top_loan_ban {
  margin-top: 20px;
  display: block;
  max-width: 320px;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
}

a.top_loan_ban:hover {
  opacity: 0.8;
}
/*-------------------------

  top_ban
  ---------------------------*/
.tf_gradation {
  display: inline-block;
  background: var(--tf_gradation);
  background: var(--tf_gradation_webkit);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

section.top_ban .top_ban_box.top_ban_tf {
  background: url(../../images/top_ban_tf.jpg);
  background-position: center;
}
section.top_ban .top_ban_box.top_ban_op {
  background: url(../../images/top_ban_op.jpg);
  background-position: center;
}
.top_ban_box {
  height: 410px;
  text-align: center;
  color: #fff;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 2px;
}
.top_ban_box > p {
  margin-bottom: 40px;
  font-size: var(--size_3l);
  line-height: 1.6em;
  width: 90%;
}
.title_box.top_ban_title h2 {
  margin-bottom: 20px;
}
.title_box.top_ban_title h2 strong {
  font-weight: 400;
  font-style: italic;
  font-size: var(--size_3l);
  color: var(--key);
}
.title_box.top_ban_title h2 small {
  font-size: 1rem;
}
/*-------------------------

  classic_menu
  ---------------------------*/
.classic_menu_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
ul.classic_menu_box {
  display: flex;
}
ul.classic_menu_box li {
  position: relative;
  width: calc(50% - 1px);
  overflow: hidden;
  margin-bottom: 2px;
}
ul.classic_menu_box li a h2 strong {
  border-bottom: 1px solid #fff;
  padding-bottom: 0.5rem;
  margin-bottom: 6px;
  font-weight: 400;
  line-height: 1em;
  font-style: italic;
  font-size: var(--size_1l);
}
ul.classic_menu_box li a h2 small {
  font-size: 15px;
  line-height: 1.8;
}
.classic_menu_title {
  pointer-events: none;
  width: 60%;
  max-width: 400px;
  text-align: center;
  margin: 0 auto;
  padding: 1.6rem 2rem;
}
ul.classic_menu_box li img {
  transition: 1s all;
  height: 320px;
  width: 100%;
  object-fit: cover;
}
ul.classic_menu_box li img:hover {
  transform: scale(1.1, 1.1);
  transition: 1s all;
}
.classic_menu_title {
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgb(0 0 0 / 50%);
  color: #fff;

  text-shadow: 0px 2px 4px rgb(0 0 0 / 75%);
}

section.new-property .ban_title_box {
  position: initial;
  text-align: center;
  margin-bottom: 50px;
  padding-top: 0;
  padding-bottom: 0;
}
/*-------------------------

  top-news
  ---------------------------*/
.information {
  position: relative;
  padding: 100px 0;
  color: #fff;
  /*background-image: linear-gradient(to top, lightgrey 0%, lightgrey 1%, #e0e0e0 26%, #efefef 48%, #d9d9d9 75%, #bcbcbc 100%);*/
}

.l-wrapper {
  width: 1000px;
  margin: 0 auto;
}
.information__items {
  display: flex;
  justify-content: space-between;
}
.information__item {
  width: 480px;
}
.information__head {
  font-size: 1.3rem;
  line-height: 2;
  xborder-bottom: double 3px #f1cc89;
  border-bottom: double 3px #908e65;
  letter-spacing: 0.1rem;
  xcolor: #f1cc89;
  color: #908e65;
}
.information__lists {
  margin-bottom: 22px;
}
.information__list {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 18px 0 15px 15px;
  font-size: 1.6rem;
  line-height: 1.4375;
  letter-spacing: 0.05em;
  border-bottom: 1px dashed #6e7955;
}
.information__list::before {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 26px;
  left: 0;
  background: url(../../../images/icn_point_1.svg) no-repeat center/contain;
}
.information__list .days {
  font-size: 0.8rem;
  font-weight: bold;
  font-family: sans-serif;
  letter-spacing: 0.1rem;
  color: #410407;
}
.information__list .text {
  font-size: 1rem;
  line-height: 1.5rem;
}
.information__list a {
  transition: 0.3s;
  color: #574738;
  text-decoration: none;
  font-size: 14px;
}
.information__list a:hover {
  opacity: 0.6;
}
/*-------------------------

  news
  ---------------------------*/
.news p.day {
  font-size: 0.9rem;
  font-weight: 400;
  margin-bottom: 0;
  border-top: 1px solid var(--dark);
  padding-top: 10px;
}
.news p.ttl {
  font-size: 1.3rem;
  border-bottom: 1px solid var(--dark);
  font-weight: 400;
  padding-bottom: 17px;
  margin-bottom: 1em;
  line-height: 1.4em;
}
.news .topicsText {
  line-height: 1.6rem;
  margin-bottom: 2rem;
}

.news p.item-image {
  text-align: center;
}

.news p.item-image img {
  width: 600px;
  height: 350px;
  object-fit: contain;
}

.news .news_area_box {
}
.news .news_area {
  padding: 50px 50px;
  background-color: var(--very_thin);
}

.news .news_area:not(:last-child) {
  margin-bottom: 50px;
}
/*	pager
------------------------------------------------------------*/
.pageArea-item {
  padding-top: 30px;
}
ul.pageArea-navi-number {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 50%;
  margin: 0 auto;
}
.pageArea-item {
  text-align: center;
  margin: 10px 0px;
}

ul.pageArea-navi-number li {
  margin-right: 10px;
  list-style: none;
}
ul.pageArea-navi-number li a {
  text-decoration: none;
}
ul.pageArea-navi-number li a:hover {
  background-color: #f9e33e;
}
span.pager_index {
  background-color: #f8f8f8;
  border: 1px solid #ccc;
  padding: 5px 10px;
  color: #333;
  display: block;
  margin-top: 5px;
}
span.pager_index.nowpage {
  background-color: #f8f8f8;
  border: 1px solid #599900;
  padding: 5px 10px;
  color: #333;
}
.pageArea-navi {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}
/*-------------------------

  top_bnr

  ---------------------------*/
.top_bnr_box {
  padding: 80px 120px 80px 80px;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  background: #438092;
  display: none;
}
.top .top_bnr_box {
  display: flex;
}
.top_bnr_box a {
  width: 90%;
  max-width: 420px;
  transition: all 0.5s;
}
.top_bnr_box a:hover {
  opacity: 0.6;
}
.top_bnr_left {
  margin-right: 50px;
}
.top_bnr_box img {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .top_bnr_box {
    padding: 40px 0;
    flex-flow: column;
    width: 100%;
  }
  .top_bnr_box a {
    width: 80%;
  }
  .top_bnr_left {
    margin-right: 0;
    margin-bottom: 20px;
  }
}

/*-------------------------

  footer

  ---------------------------*/

.under-link {
  width: 100%;
  height: auto;
  padding: 0 0 0 0;
  margin: 0 auto;
  background: #000;
  position: relative;
  text-align: center;
  border-bottom: rgba(255, 255, 255, 0.15) 1px solid;
}
.under-link p {
  padding: 30px 0 30px 0;
  text-align: center;
  color: rgba(255, 255, 255, 0.4);
  font-size: 0.75em;
}
.under-link a {
  padding: 0 0.7% 0 0.7%;
  color: #ffffff;
  text-decoration: none;
}
.under-link strong {
  font-weight: bold;
  color: #ffffff;
  text-decoration: none;
}
.global_footer {
  background-color: #fff;
}
@media only screen and (min-width: 768px) {
  .global_footer {
    /*margin-top: 80px;*/
    padding: 80px 0;
  }
}
@media only screen and (max-width: 767px) {
  .global_footer {
    padding: 2rem 0 2rem;
  }
  .top .global_footer {
    padding: 2rem 0 50px;
  }
}
.global_footer .footer_logo {
  text-align: center;
  margin-bottom: 20px;
}
.global_footer .f_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}
.global_footer .f_box dl {
  /*  width: 36%;*/
  width: 470px;
}
.global_footer .f_box dl dd ul li {
  font-size: 13px;
  line-height: 24px;
}
.global_footer .footer_logo img {
  height: 45px;
}
.global_footer .footer_info {
  text-align: center;
  font-size: 14px;
}
.global_footer .copyright {
  text-align: center;
  font-size: 10px;
  margin-top: 30px;
  font-family: sans-serif;
}

/*-------------------------

  contact
  ---------------------------*/
.table {
  width: 100%;
}

.table.table_01 {
  margin: 0 auto;
  margin-bottom: 2rem;
}
.table.table_01 th,
.table.table_01 td {
  border-bottom: 1px solid #c7b897;
  padding: 0.9rem;
  font-size: 0.9rem;
}
@media only screen and (max-width: 767px) {
  .table.table_01 th,
  .table.table_01 td {
    display: block;
  }
}
.table.table_01 th {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .table.table_01 th {
    text-align: left;
  }
}
@media only screen and (max-width: 767px) {
  .table.table_01 th {
    background-color: #eeeeef;
  }
}
.table.table_outline {
}
@media only screen and (min-width: 768px) {
  .table.table_outline tr:nth-child(odd) th,
  .table.table_outline tr:nth-child(odd) td {
    background-color: var(--very_thin);
    mix-blend-mode: multiply;
  }
}

.table.table_outline tr:first-child th,
.table.table_outline tr:first-child td {
  xborder-top: 1px solid var(--gray);
}
.table.table_outline th,
.table.table_outline td {
  border-bottom: 1px solid var(--gray);
  padding: 0.9rem;
}
@media only screen and (max-width: 767px) {
  .table.table_outline th,
  .table.table_outline td {
    display: block;
    border-bottom: 0;
  }
}
.table.table_outline th {
  font-weight: bold;
}
@media only screen and (min-width: 768px) {
  .table.table_outline th {
    text-align: left;
    width: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .table.table_outline th {
    background-color: #ddd;
    color: #000;
  }
}
@media only screen and (min-width: 768px) {
  .table.table_confirm {
    width: 70%;
  }
}
@media only screen and (min-width: 768px) {
  .table.table_confirm th {
    width: 40%;
  }
}

#contactArea {
  xmargin: 2em auto;
  xtext-align: left;
}

@media only screen and (min-width: 768px) {
  .contents-body {
    width: 60%;
    margin: 0 auto;
  }
}

#contactFormArea {
  color: #000;
}

#contactForm {
  width: 100%;
  margin: 0 auto;
  padding: 10px;
  xfont-size: 80%;
  border-style: none;
}
#contactForm tbody {
  xbackground-color: var(--bg);
}
#contactForm th,
#contactForm td {
  border-color: #ddd;
  border-bottom-width: 1px;
  border-style: solid;
  padding: 15px 0;
  vertical-align: middle;
}
#contactForm th {
  width: 200px;
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  #contactForm th {
    box-sizing: border-box;
    border-bottom: 0;
  }
  #contactForm th span {
    box-sizing: border-box;
  }
}

#contactForm td {
  text-align: left;
}
@media only screen and (max-width: 767px) {
  #contactForm td {
    box-sizing: border-box;
  }
}

.address-button a {
  box-sizing: content-box;
  text-align: center;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  width: auto;
  color: #fff;
  font-family: Arial;
  letter-spacing: normal;
  font-size: 80%;
  padding: 10px 15px;
  margin: 10px auto;
  background-color: var(--accent);
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
}

a:link[class~="address-button"],
.address-button a:link {
  color: #fff !important;
}

a:visited[class~="address-button"],
.address-button a:visited {
  color: #fff !important;
}

a:hover[class~="address-button"],
.address-button a:hover {
  color: #fff !important;
  opacity: 0.8;
}

#contactForm td ul.address-list li,
ul.yoyaku-list li {
  margin: 0 0 10px 0;
}
#contactForm .tel_txt01 a {
  color: #333;
  font-weight: bold;
}
#contactForm-privacypolicy {
  width: 100%;
  margin: 0 auto;
  padding: 10px;
  xfont-size: 80%;
  border-style: none;
  margin-bottom: 40px;
}

#contactForm-privacypolicy th {
  width: 100%;
  xtext-align: center;
  font-weight: normal;
  border-width: 0;
  padding: 5px 15px;
  margin: auto 0;
  background-color: #fff;
  vertical-align: top;
  border-color: #c8c9ca;
  color: #fff;
  background-color: var(--need);
}

#contactForm-privacypolicy td {
  font-size: 90%;
  border-width: 0 0 1px 0;
  text-align: left;
  background-color: var(--bg);
  border-color: #c8c9ca;
}

#contactForm-privacypolicy td div.iframe-box {
  overflow-y: scroll;
  /*width: 100%;*/
  height: 150px;
  padding: 20px;
  border-style: solid;
  border-width: 1px;
  border-color: #ccc;
}

div.iframe-box > h3,
div.iframe-box > h4,
div.iframe-box > ol,
div.iframe-box > ol li {
  margin-bottom: 1em;
}

.radio_list {
  text-align: left;
}

.radio_list li {
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
}

ul.radio_list.flex_four {
  display: flex;
  flex-wrap: wrap;
}

ul.radio_list.flex_four li {
  width: 25%;
}
ul.radio_list.flex_three li {
  width: 32%;
}
ul.radio_list.flex_three.width75 {
}
ul.radio_list.flex_four,
.radio_list.flex_three {
  display: flex;
  flex-wrap: wrap;
  max-width: 400px;
}
@media only screen and (max-width: 767px) {
  ul.radio_list.flex_four li {
    width: 49%;
  }
  ul.radio_list.flex_three li {
    width: 49%;
  }
}

#contactForm-privacypolicy td div.policybutton {
  padding: 20px 0;
  text-align: center;
  background-color: #ccc;
  font-weight: bold;
}

#mail-form-header {
  background-color: #eeeeef;
  padding: 10px 0;
  margin: 15px auto 15px auto;
  text-align: center;
  font-size: 90%;
}

#mail-form-footer {
  xbackground-color: #eeeeef;
  xpadding: 20px 0;
  margin: 30px auto 0 auto;
  text-align: center;
}

.formhead-greed {
  width: 160px;
  xwidth: 100%;
  display: inline-block;
  color: #fff;
  background-color: var(--accent_thin);
  padding: 5px 15px;
  margin: auto 0;
  text-align: center;
}
.formhead {
  width: 160px;
  display: inline-block;
  color: #fff;
  background-color: var(--accent_thin);
  padding: 5px 15px;
  margin: auto 0;
  text-align: center;
}
.need {
  color: var(--need);
}
.formhead-need {
  width: 160px;
  xwidth: 100%;
  display: inline-block;
  color: #fff;
  background-color: var(--need);
  padding: 5px 15px;
  margin: auto 0;
  text-align: center;
}
.ques span.formhead-need {
  width: auto;
  margin-left: 0.4em;
  padding: 0px 8px 2px;
  font-size: 0.85em;
  position: initial;
  display: inline-block;
  line-height: 1.4em;
}
.cat-list li {
  display: inline-block;
  vertical-align: top;
  width: 250px;
}

/*-- iPhone繝舌げ蝗樣∩ --*/
#contactForm input,
#contactForm select,
#contactForm textarea {
  padding: 5px 0 5px 10px;
  margin-top: 2px;
  font-family: sans-serif;
}

#contactForm select {
  -webkit-appearance: none;
  appearance: none;
  padding: 5px 10px;
  xfont-size: 14px !important;
}
input,
button {
  font-family: sans-serif;
}
input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
  xwidth: 100%;
  xborder-style: solid;
  xborder-width: 1px;
  xborder-color: #666;
}

input[type="submit"],
input[type="reset"] {
}
input[type="submit"]:hover,
input[type="reset"]:hover {
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
/*====================

   ====================*/
@media screen and (max-width: 900px) {
  #contactFormArea {
    padding: 0;
    margin: 0 auto 20px auto;
  }
  #contactForm th {
    display: block;
    width: 100%;
    padding: 10px 0;
  }
  #contactForm td {
    display: block;
    width: 100%;
    xpadding: 0;
  }
  #contactForm td > p {
    xmargin: 0;
  }
  #mfp_confirm_table th {
    font-size: 80%;
  }
  .formhead-greed {
    width: 100%;
  }
  .formhead-need,
  .formhead {
    width: 100%;
  }
  input[type="text"],
  input[type="tel"],
  input[type="email"],
  textarea {
    width: 100%;
    padding: 5px;
    width: 100%;
    margin-top: 1px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  input[type="submit"],
  input[type="reset"] {
  }
}

.top .btn_top {
  display: none;
}

.top .kv {
  position: relative;
  z-index: 20;
  xpadding-top: 88px;
  background-color: #fff;
}
.top .kv_bg {
  width: 100%;
  height: 100vh;
  max-height: 965px;
  min-height: 765px;
  /******追加*****/
  background-image: url(../../images/main01.jpg);
  background-size: cover;
  background-position: center center;
  display: flex;
  justify-content: center;
  align-items: center;
}
/*.top .kv .kv_txt {
      width: 480px;
      height: 312px;
      position: absolute;
      top: -20px;
      bottom: 0;
      margin: auto 0; }
  }*/

@media only screen and (min-width: 768px) {
  .top .container {
    margin-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  .top .container {
    margin-top: 1rem;
  }
}

.section.s01 h3.hanbai {
  max-width: 80%;
  margin: 0 auto 20px;
  padding: 10px 20px;
  font-size: 1.2rem;
  line-height: 2.9375;
  xborder: 1px solid #fff;
  background: #dcd6cd;
}
@media only screen and (min-width: 768px) {
  .section.s01 h3.hanbai {
    font-size: 1.2rem;
    letter-spacing: 0.3rem;
    line-height: 1;
  }
}
@media only screen and (max-width: 767px) {
  .section.s01 h3.hanbai {
    max-width: 100%;
    font-size: 1rem;
    letter-spacing: 0.1rem;
  }
}

.top .container .section.s01 .text_01 {
  text-align: center;
  margin-top: 1rem;
}

.top .container .section.s01 .box {
  box-shadow: 0 0 0 0 #fff;
  border: 3px solid #f4ebd2;
  background-color: #fdf8ea;
}
@media only screen and (max-width: 767px) {
  .section.s01 h3.hanbai {
    max-width: 100%;
    font-size: 1rem;
    letter-spacing: 0.1rem;
  }
}

.aco_area {
  width: 100%;
}
h2.eq_ttl {
  font-size: 100%;
  background-color: #eeeeef;
  padding: 10px 0;
  margin: 15px auto 30px auto;
  text-align: center;
}
/*====================
  ページ先頭ボタン
   ====================*/

.page-top {
  display: none;
  margin: 0;
  padding: 0;
}
.page-top div {
  xheight: 80px;
  bottom: 20px;
  margin: 0;
  padding: 0;
  position: fixed;
  right: 20px;
  z-index: 200;
  /* box-sizingリセット */
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  -o-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
}
.page-top img {
  height: 30px;
  vertical-align: center;
}
.move-page-top {
  background-color: var(--dark);
  color: #fff;
  display: block;
  xfont-size: 20px;
  xheight: 60px;
  xline-height: 60px;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease 0s;
  vertical-align: middle;
  xwidth: 60px;
  cursor: pointer;
  padding: 10px 12px;
}
.page-top a:active,
.page-top a:hover {
  color: #fff;
}

.page-top .fa-2x {
  font-size: 1.5em;
}

/*====================
  来場予約ページ
   ====================*/

.pagetitle .inner h2.reserve {
  text-align: center;
  color: #fff;
}
.pagetitle .inner h2.reserve strong {
  font-size: 2rem;
  line-height: 1.66667;
  letter-spacing: 0.15em;
  text-indent: 0.15em;
  color: #b89a40;
}
.pagetitle .inner h2.reserve small {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
}
.pagetitle .inner h2.reserve small::before,
.pagetitle .inner h2 small::after {
  content: "";
  width: 100px;
  height: 1px;
  margin: 0 20px;
  background: #707070;
}

.global_header .header_btns .btn.yoyaku a {
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.3rem;
  color: #fff;
  line-height: 1;
  width: 150px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  background-image: -moz-linear-gradient(0deg, #c38411 1%, #f3cc87 50%, #c38411 100%);
  background-image: -webkit-linear-gradient(0deg, #c38411 1%, #f3cc87 50%, #c38411 100%);
  background-image: -ms-linear-gradient(0deg, #c38411 1%, #f3cc87 50%, #c38411 100%);
  height: 42px;
}
.jp {
  font-family: "Noto Serif JP", "Shippori Mincho", serif;
}
.en {
  font-family: "EB Garamond", serif;
}

.headerColor-default {
  color: #333;
  /* （画像よりも下までスクロールした時に変えたい文字色） */
}
.information__lists {
  display: flex;
}
.bg {
}
a[href^="tel:"] {
  pointer-events: none;
}
.center {
  text-align: center;
}
.pt_0 {
  padding-top: 0;
}
.pb_0 {
  padding-bottom: 0;
}
.mt_0 {
  margin-top: 0;
}
.mt_05 {
  margin-top: 0.5rem;
}
.mt_10 {
  margin-top: 1rem;
}
.mt_20 {
  margin-top: 2rem;
}
.mt_30 {
  margin-top: 3rem;
}
.mt_40 {
  margin-top: 4rem;
}
.mt_50 {
  margin-top: 5rem;
}
.mb_0 {
  margin-bottom: 0 !important;
}
.mb_05 {
  margin-bottom: 0.5rem;
}
.mb_10 {
  margin-bottom: 1rem;
}
.mb_20 {
  margin-bottom: 2rem;
}
.mb_30 {
  margin-bottom: 3rem;
}
.mb_40 {
  margin-bottom: 4rem;
}
.mb_50 {
  margin-bottom: 5rem;
}

/*------------------------

ヘッダー

-------------------------*/

.global_header {
  position: fixed;
  z-index: 21;
  top: 0;
  width: 100%;
}
.header_logo h1 a img {
  width: 320px;
}

.top .header_top {
  background: none;
}
.top .header_bottom {
  background: none;
  border-bottom: none;
}

.top .scroll-nav .header_top {
  background-color: #fff;
  transition: all 0.3s;
}
.top .scroll-nav ul.global-list li.nav_top a {
  background-color: #fff;
}
.top .scroll-nav .header_bottom {
  background: var(--accent_very_thin);
  transition: all 0.3s;
}

.header_top {
  display: flex;
  height: 80px;
  align-items: center;
  justify-content: space-between;
  padding-left: 32px;
  background: none;
  background-color: #fff;
}
.header_top {
  background-color: #fff;
  transition: all 0.3s;
}
.header_bottom {
  background: var(--accent_very_thin);
  transition: all 0.3s;
}

/*------------------------

ポップアップ

-------------------------*/
/*
.popup {
    position: fixed;
    left: 0;
    bottom: 10%;
    width: 500px;
    height: 350px;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: .6s;
}
.popup {
  position: fixed;
  left: 50%;
  top: 50%;
  width: 600px;
  transform: translate(-50%, -50%);
  height: auto;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: 0.6s;
}
.popup.is-show {
  opacity: 1;
  visibility: visible;
}
.popup-inner {
  background-color: #fff;
}

.popup-inner {
position: absolute;
left: 20px;
bottom: -10%;
width: 500px;
z-index: 2;
}

.popup-inner img {
  width: 100%;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  vertical-align: bottom;
}
.popup-inner a img:hover {
  opacity: 0.8;
}
*/
/*モーダルウインドウ start*/
.modal {
  xdisplay: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 22;
}
.modal__bg {
  background: rgba(255, 255, 255, 0.7);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__bg_gray {
  background: rgba(135, 159, 159, 0.7);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
  background: #fff;
  left: 50%;
  padding: 4px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);

  /*モーダル画像1枚の時*/
  width: 600px;
  /*モーダル画像2枚の時*/
  /*width: 1030px;*/
}
.modal__content img {
  width: 100%;
}

/*-- モーダル画像2枚の時--*/
/*.modal__content p {
  display: flex;
  justify-content: space-between;
}
.modal__content img.pr {
  padding-right: 5px;
}*/
/*-- モーダル画像2枚の時　ここまで--*/

.modal__content a:hover {
  opacity: 0.8;
}
.modal__content a.js-modal-close {
  position: absolute;
  top: -32px;
  right: 0;
  width: 32px;
  height: 32px;
  font-size: 26px;
  font-weight: 700;
  background: #fff;
  display: flex;
  color: #666;
  justify-content: center;
  align-items: center;
}
/*モーダルウインドウ end*/

.close-btn {
  position: absolute;
  right: -5px;
  top: -20px;
  width: 40px;
  height: 40px;
  text-align: center;
  cursor: pointer;
  z-index: 20;
}
.close-btn i {
  font-size: 16px;
  color: #333;
  background: #fff;
  border-radius: 40px;
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 4px;
}
.black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: none;
  z-index: 1;
  cursor: pointer;
}

.forSP {
  display: none;
}
.forPC {
  display: block;
}
.photoimage {
  position: relative;
}

.photoimage:after {
  content: "イメージ";
  position: absolute;
  bottom: 1em;
  line-height: 1em;
  right: 1em;
  font-size: 12px;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
}

.phototxt.m_type:after {
  content: "Mタイプ";
}
.phototxt.g_type:after {
  content: "Gタイプ";
}
.phototxt:after {
  position: absolute;
  bottom: 1em;
  line-height: 1em;
  right: 1em;
  font-size: 12px;
  text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, 0 -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
}
/*------------------------

トップページ

-------------------------*/

.bnr_action {
  width: 100%;
  /*background-image: linear-gradient(to top, #232324 0%, #2b2413 100%);*/
  background-image: url("../../images/pagetitle-bg.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 auto;
  padding: 0 0 0 0;
}
.bnr_action .point {
  width: 100%;
  margin: 0 auto;
  padding: 30px 0 30px 0;
  line-height: 0;
  background-image: linear-gradient(to top, #453919 0%, #2b2413 100%);
  border-top: #645b40 1px solid;
  border-bottom: #17140d 1px solid;
}

.bnr_action h3 {
  margin: 0 auto;
  padding: 80px 0 40px 0;
  line-height: 0;
  text-align: center;
  font-size: 2.5rem;
  letter-spacing: 0.3rem;
  color: #fff;
}
.bnr_action .under {
  width: 1000px;
  text-align: center;
  padding: 70px 0 80px 0;
  margin: 0 auto;
  opacity: 0.85;
}
.bnr_action .under img {
  width: 70%;
}
.bnr_action .under a:hover {
  opacity: 0.8;
}

.points {
  box-sizing: border-box;
  padding: 20px 15%;
  width: 100%;
  /* border-top: 3px solid #a88c3a; */
  border-bottom: 3px solid #a88c3a;
  text-align: center;
  background: rgba(0, 0, 0, 0.6);
  position: absolute;
  bottom: 0;
}
.points img {
  width: auto;
  max-width: 100%;
  height: auto;
}
/*------------------------

フッター

-------------------------*/

.bottom_contact {
  line-height: 1.5;
  background: linear-gradient(to right, var(--main), var(--key_dark));
  text-align: center;
  padding: 76px 0;
  position: relative;
}
.bottom_contact::before {
  width: 0;
  height: 0;
  background: none;
}
.bottom_contact h2 span {
  display: block;
  font-size: 0.9rem;
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}
.bottom_txt {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding-left: 0.6em;
  color: #fff;
}
.bottom_tel {
  font-size: var(--size_5l);
  margin-top: 7px;
}
.bottom_tel a {
  display: inline-block;
  pointer-events: none;
  letter-spacing: 0.2rem;
  padding-left: 48px;
  background: url(../../images/icon_freedial_white.svg) no-repeat left 5px;
  background-size: 40px;
  background-position: center left;
  color: #fff;
  transition: opacity 0.3s;
}
.bottom_tel a:hover {
  opacity: 0.6;
}
.bottom_tel .sans {
  font-weight: 300;
}
.bottom_caption {
  color: #fff;
}
.bottom_contact .section {
  margin: 0 auto;
}

/*------------------------

information

-------------------------*/

.info {
  width: 80%;
  position: relative;
  margin: 0 auto;
}
.info .newsBox {
  overflow: hidden;
  border-style: solid;
  border-color: var(--accent_thin);
  border-width: 0 0 0 7px;
  padding: 0 0 0 18px;
  margin: 0 0 60px 0;
}

.info .newsBox > .title {
  border-style: solid;
  border-width: 0 0 1px 0;
  border-color: var(--accent_thin);
  padding: 0 0 10px 0;
  margin: 0 0 1.2em 0;
  font-size: 120%;
  font-weight: bold;
}
.info .newsBox .text {
  font-size: 95%;
}
.info .newsBox > .image_area .topicsPhoto {
  width: 300px;
  height: 250px;
  overflow: hidden;
}
.info .newsBox > .image_area .topicsPhoto:last-child {
  margin: 0;
  width: 300px;
  height: 250px;
  overflow: hidden;
}
.image_area .topicsPhoto:last-child {
  margin: 0;
}

.image_area .topicsPhoto {
  width: 300px;
  height: auto;
  /*overflow: hidden;*/
}
/*------------------------

concept

-------------------------*/

/*------------------------

contact

-------------------------*/
.contact-01 .cnt_c {
  text-align: left;
  margin-bottom: 15px;
}
.contact-01 .cnt_c a {
  color: #222980;
  font-weight: bold;
}
.contact-01 p {
  margin-bottom: 1rem;
  /*    text-align: center;*/
}
.contact-01 p.m_no {
  text-align: left;
}
.contact-01 p.tel_txt01 {
  margin-bottom: 0;
  text-align: left;
}
.contact-01 p.tel_txt01 a {
  color: #333;
  /* font-weight: bold;*/
  margin-top: 20px;
  line-height: 1.8;
}

.contact-01 p.f_blue {
  color: #222980;
  font-weight: 500;
  font-size: 85%;
}
.contact-01 p.f_blue a {
  color: #222980;
  font-weight: bold;
}

.cont-wrap {
  width: 80%;
  margin: 0 auto;
  min-width: 700px;
}
/*@media screen and (max-width:1100px) {
.pc{
  display: none;
}}
*/
.info div.contents-box a.for_a {
  display: block;
  padding-top: 200px;
  margin-top: -200px;
}
.last_section {
  cmargin-bottom: 80px;
}
.list_other li span {
  padding-right: 5px;
}
#contactForm .nane_area span {
  padding-right: 5px;
}
.ques h2.qus_ttl {
  font-size: 100%;
  background-color: #eeeeef;
  padding: 10px 0;
  margin: 15px auto 0 auto;
  text-align: center;
}
.ques_box {
  xpadding: 0 20px 20px 20px;
  xborder: 1px solid #eeeeef;
  margin-bottom: 50px;
  xbackground: var(--bg);
}
.ques_box h2 {
  position: relative;
  overflow: hidden;
  padding: 0.5rem 1rem 0.5rem 105px;
  border: 2px solid var(--accent_thin);
  width: 100%;
  margin-top: 20px;
}

.ques_box h2:before {
  position: absolute;
  top: -150%;
  left: -115px;
  width: 200px;
  height: 300%;
  content: "";
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: var(--accent_thin);
}

.ques_box h2 span {
  font-size: 40px;
  font-size: 2rem;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 0px;
  padding-left: 16px;
  color: #fff;
  line-height: 2.8rem;
}
.ques_box dl {
  clear: both;
  zoom: 1;
  border-top: solid 1px #cccccc;
}
.ques_box dl.first {
  border-top: none;
  padding-top: 5px;
}
.ques_box dl dt {
  width: 200px;
  font-weight: normal;
  border-width: 0 0 1px 0;
  padding: 20px 10px;
  vertical-align: top;
  border-color: #c8c9ca;
  box-sizing: border-box;
  float: left;
}
.ques_box dl dd {
  padding: 15px 10px 8px 200px;
  box-sizing: border-box;
  line-height: 2;
  xfont-size: 15px;
}
.ques_box input,
.ques_box select {
  padding: 5px 0 5px 10px;
  margin-left: 10px;
}
.ques_box select {
  -webkit-appearance: none;
  appearance: none;
  padding: 5px 10px;
}
.reservation #contactFormArea {
  margin: 0 auto 60px auto;
}
.reservation_book_box {
  border: 2px solid var(--key);
  padding: 0 2rem;
  margin-bottom: 20px;
  background: var(--bg);
  max-width: 700px;
  margin-right: auto;
  margin-left: auto;
}
/*------------------------

優先案内会

-------------------------*/
/*優先説明会概要start*/
.reservation_outline {
  border: 1px solid var(--reservation);
  padding: 32px;
  margin-bottom: 40px;
  background: #fdf8fb;
  max-width: 700px;
  margin-right: auto;
  margin-left: auto;
  border-radius: 10px;
}
.reservation_outline .inner {
  width: auto;
}
.reservation_outline_table {
  display: table;
  border-collapse: collapse;
  margin-bottom: 10px;
  width: 100%;
}

.reservation_outline_table span.date,
.reservation_outline_table span.tel {
  font-size: var(--size_m);
}
.reservation_outline_table dl {
  display: table-row;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.reservation_outline_table dl dt {
  background: #f6f6f6;
  text-align: center;
}

.reservation_outline_table dl dd {
  background: #ffffff;
  text-align: center;
}
.reservation_outline_table dl dt,
.reservation_outline_table dl dd {
  padding: 10px;
  display: table-cell;
  border: 1px solid #ddd;
}
/*優先説明会概要end*/

/*-------------  footer  -------------------*/

/* header
  ---------------------------------------- */

.header {
}

.header_inner {
  display: flex;
  min-width: 1200px;
  margin: 0 auto;
  position: relative;
}

#main {
  list-style: none;

  font-weight: 400;
  font-size: 0;
  text-transform: uppercase;
  display: inline-block;
  padding: 0;
  margin: 0px auto;
  width: 100%;
}
nav.pcmenu.is_flow {
  position: relative;
}
nav.pcmenu.is_flow {
  display: none;
}

#main li {
  font-size: 1rem;
  display: inline-block;
  position: relative;
  padding: 10px 10px 15px 10px;
  cursor: pointer;
  z-index: 5;
  min-width: 120px;
  color: #fff;
  margin: 0;
  text-transform: capitalize;
}

@media (max-width: 1300px) {
  #main li {
    font-size: 0.9rem;
    min-width: 100px;
    padding: 10px 10px;
  }
}

#main li:last-child {
}
#main li.last a {
  border: 1px solid #d8c19b;
  border-radius: 2px;
  color: #d8c19b;
  padding: 5px 10px;
}
.drop {
  overflow: hidden;
  list-style: none;
  position: absolute;
  padding: 0;
  width: 100%;
  left: 0;
  top: 41px;
}
.top a.btn {
  position: fixed;
  top: 25px;
  display: block;
  right: 100px;
  font-size: 0.9rem;
  background: #931e22;
  z-index: 9;
  padding: 10px 20px 10px 10px;
  color: #fff;
  line-height: 1.2rem;
  letter-spacing: 0.1rem;
}
.top a.btn:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  margin: -4px 0 0 0;
  width: 6px;
  height: 6px;
  border: none;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  transform: rotate(-45deg);
}

@media (max-width: 1200px) {
  .drop {
    top: 34px;
  }
}

.drop div {
  -webkit-transform: translate(0, -100%);
  -moz-transform: translate(0, -100%);
  -ms-transform: translate(0, -100%);
  transform: translate(0, -100%);
  -webkit-transition: all 0.5s 0.1s;
  -moz-transition: all 0.5s 0.1s;
  -ms-transition: all 0.5s 0.1s;
  transition: all 0.5s 0.1s;
  position: relative;
}
.drop li {
  display: block;
  padding: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.59) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.52);
}
#main .drop li {
  padding: 20px 5px;
  font-size: 0.9rem;
}
#main .drop li a:hover {
  color: #d8c19b;
}
.drop li:last-child {
  border: none;
}
#main a {
  color: #fff;
}

#main li a:hover span.jp {
  color: #d8c19b;
}

#main li:nth-child(1):hover ul div {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
#main li:nth-child(1):hover ~ #marker {
  -webkit-transform: translate(0px, 0);
  -moz-transform: translate(0px, 0);
  -ms-transform: translate(0px, 0);
  transform: translate(0px, 0);
}

#main li:nth-child(2):hover ul div {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
#main li:nth-child(2):hover ~ #marker {
  -webkit-transform: translate(120px, 0);
  -moz-transform: translate(120px, 0);
  -ms-transform: translate(120px, 0);
  transform: translate(120px, 0);
}

#main li:nth-child(3):hover ul div {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
#main li:nth-child(3):hover ~ #marker {
  -webkit-transform: translate(240px, 0);
  -moz-transform: translate(240px, 0);
  -ms-transform: translate(240px, 0);
  transform: translate(240px, 0);
}
#main li:nth-child(4):hover ul div {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
#main li:nth-child(4):hover ~ #marker {
  -webkit-transform: translate(240px, 0);
  -moz-transform: translate(240px, 0);
  -ms-transform: translate(240px, 0);
  transform: translate(240px, 0);
}
#main li:nth-child(5):hover ul div {
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}
#main li:nth-child(5):hover ~ #marker {
  -webkit-transform: translate(360px, 0);
  -moz-transform: translate(360px, 0);
  -ms-transform: translate(360px, 0);
  transform: translate(360px, 0);
}
section.header_infoarea {
  background-color: #05253b;
}
.head-logo img {
  width: 250px;
  height: 32px;
}
.head-logo {
  position: fixed;
  top: 25px;
  display: block;
  left: 30px;
  z-index: 999999;
}
section.header_infoarea {
  display: flex;
  color: #fff;
}
section.header_infoarea a {
  color: #fff;
}
.header_infoarea .tel {
  font-family: "Times New Roman", serif;
  font-size: 2rem;
  margin-left: auto;
  margin-top: 18px;
  margin-right: 20px;
}
.header_infoarea .tel a {
  font-weight: 600;
}
ul.header_btn_area {
  display: flex;
}
.head-logo {
}
ul.header_btn_area a {
  padding: 15px 20px;
  background-color: #3c5566;
  border: 1px solid #7d8394;
  display: inline-block;
  margin: 10px 5px;
  font-size: 1.2rem;
}
ul.header_btn_area a:hover {
  background-color: #931e22;
}
main {
  position: relative;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}

main > section {
  padding-top: 100px;
  padding-bottom: 100px;
}

.pages main {
  padding-top: 80px;
}
nav {
  z-index: 999;
  width: 100%;
  margin-left: auto;
}
.toppage .pcmenu {
  display: none;
}

ul#main {
  left: 0px;
  background-color: #3c5566;
  padding-left: 150px;
}
nav.pcmenu.is_flow {
  position: fixed;
  z-index: 9;
  padding-top: 10px;
  background: rgba(102, 66, 51, 0.5);
}

ul.primary li {
  padding-right: 10px;
}
ul.primary li a {
  display: inline-block;
  font-size: 1rem;
  padding: 10px 10px 10px 10px;
  color: #fff;
  padding: 0;
}
ul.primary li:last-child a {
  border-right: none;
}

ul.primary li a:hover {
  color: #000;
}

/* subs */
ul.sub {
  position: absolute;
  z-index: 200;

  display: none;
}

ul.sub li {
  float: none;
  margin: 0;
}

ul.sub li a {
  border-bottom: 1px solid #ccc;
  border-right: none;
  color: #fff;
  padding: 20px 10px;
  font-size: 0.9rem;
}

ul.sub li:last-child a {
  border-bottom: none;
}

ul.sub li a:hover {
  color: #000;
}

/* sub display*/
ul.primary li:hover ul {
  display: block;
  background: rgba(0, 0, 0, 0.59) !important;
}

/* keeps the tab background white */
ul.primary li:hover a {
  color: #fff;
  text-shadow: none;
}
ul.primary li.last a {
  border: 1px solid #d8c19b;
  border-radius: 2px;
  color: #d8c19b;
  padding: 5px 10px;
}
ul.primary li.last a:hover {
  background-color: #d8c19b;
  color: #fff;
}
ul.primary li:hover > a {
  color: #d8c19b;
}
ul.primary {
  width: 1200px;
  margin: 0 auto;
}

ul.primary li.menu_o > a {
  padding-right: 30px;
}

.price_area {
  width: 100%;
}
.price_area ul {
  padding-top: 18px;
  padding-bottom: 18px;
  display: flex;
  justify-content: center;
}
.price_area ul li {
  color: var(--accent);
  font-size: 100%;
  line-height: 1.2;
  position: relative;
  padding: 0 30px;
}
.price_area ul li:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 100%;
  background-color: var(--key);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}
.price_area ul li dl {
  display: flex;
  align-items: center;
}
.price_area ul li dl dt {
  display: flex;
  flex-flow: column;
}
.price_area ul li dl dt span.kakaku {
  font-size: 1em;
}
.price_area ul li dl dt span.ldk {
  font-size: 2em;
}
.price_area ul li dl dt span.size {
  font-size: 70%;
}
.price_area ul li dl dd {
}
.price_area ul li dl dd span.price {
  display: inline-block;
  background: var(--gradation2);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 3.6em;
  font-weight: 500;
}
.price_area ul li dl dd span.yen {
  font-size: 1.3em;
}

.price_area.loan_ban {
  background: #e7f5fc;
  padding-top: 30px;
  padding-bottom: 30px;
}
.price_area.loan_ban ul {
  margin-bottom: 10px;
  padding: 0;
}
.price_area.loan_ban ul li {
  padding: 0;
}
.price_area.loan_ban ul li img {
  margin-bottom: 5px;
}
.price_area.loan_ban ul li span.bonus {
  display: block;
  margin-bottom: 10px;
  text-align: right;
  font-size: 0.9rem;
}
.price_area.loan_ban ul li:not(:last-child) {
  margin-right: 26px;
}
.price_area.loan_ban ul li:not(:last-child)::after {
  width: 0px;
}
.loan_ban_btn.btn a {
  color: var(--accent);
  background: #fff;
  border: 1px solid var(--accent);
  font-weight: 700;
  font-size: var(--size_1l);
}

.point_area {
  xposition: absolute;
  xbottom: 0;
  xz-index: 1;
  width: 100%;
  background: linear-gradient(to right, var(--main), var(--key_dark));
}
@media only screen and (min-width: 480px) {
  .point_box ul {
    xwidth: 66.6%;
    xmargin: 0 auto;
  }
}
.point_box ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 100px;
  justify-content: center;
}
.point_box ul li {
  position: relative;
}
.point_box ul li:not(:last-child) {
  margin-right: 13px;
  padding-right: 13px;
}
.point_box ul li:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 60px;
  background-color: #fff;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}
.top_menu_area {
  background: rgba(253, 243, 221, 1);
}
.top_contact {
  overflow: hidden;
}
.top_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top_menu_photo {
  width: 52%;
  height: 534px;
  background: url(../../images/top_r_03.jpg) no-repeat;
  background-size: cover;
  background-position: center;
}

.top_menu_back {
  width: 48%;
  background: url(../../images/top_r_06.jpg) no-repeat;
  background-size: cover;
}
.top_menu_text {
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  max-width: 700px;
  height: 534px;
  padding: 2.5rem 2rem 0 2rem;
  flex: auto;
  justify-content: flex-end;
}
.top_menu_area .top_menu_txtbox {
  width: 85%;
  display: flex;
  flex-direction: column;
  text-align: left;
  justify-content: center;
}
.top_menu_area .menu_for_plan .top_menu_txtbox {
  width: 60%;
}
.top_menu_area h3.top_menu_title {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 24px;
  letter-spacing: 0.15em;
  line-height: 2rem;
  width: 25%;
  display: flex;
  align-items: flex-end;
  line-height: 2.5rem;
}
.top_menu_area .menu_for_plan h3.top_menu_title {
  width: 40%;
}
.top_menu_area .moreBtn {
  font-size: 18px;
  margin-bottom: 20px;
}
.top_menu_area .moreBtn span {
  position: relative;
  letter-spacing: 0.2rem;
}
.top_menu_area .moreBtn span::after {
  content: ""; /*何も入れない*/
  display: inline-block; /*忘れずに！*/
  width: 52px;
  height: 7px;
  background-image: url(../../images/yaji_white.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  right: -60px;
  bottom: 3px;
  transition: all 0.4s;
}
.top_menu_area .txtbox_01 {
  font-size: 24px;
  color: #fff;
  letter-spacing: 0.2rem;
}
.top_menu_area p.txtbox_02 {
  font-size: 14px;
  line-height: 2rem;
}
.bottom_contact::before {
  background: none;
}
.top_plan .top_menu_photo {
  background: url(../../images/top_r_05.jpg) no-repeat;
  background-size: cover;
  background-position: center;
}
.map_detail_box {
  position: relative;
  text-align: right;
}
.map_detail {
  position: absolute;
  bottom: -24px;
  color: #777;
  font-size: 10px;
  display: block;
  text-align: right;
  width: 100%;
  line-height: 1.2em;
}
.top_contents_items .map_detail {
  bottom: -12px;
}
section.top_contents_box {
  padding-top: 100px;
  padding-bottom: 100px;
}
.top_contents_items {
  position: relative;
}
.top_contents_item {
  display: flex;
  justify-content: space-between;
}

.top_contents_txt {
  background: rgb(255 255 255 / 85%);
  padding: 30px;
  position: absolute;
  bottom: -20px;
  width: 45%;
}

.top_contents_items {
  height: 420px;
}
.top_contents_items:not(:last-child) {
  margin-bottom: 80px;
}
.top_contents_photo {
  width: 55%;
}
.top_contents_detail {
  width: 45%;
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.top_contents_btn {
  margin: 0 0 0 auto;
  margin-top: 1.7em;
}
.top_contents_text {
  xmargin-bottom: 50px;
}
.top_contents_title h2 {
  font-size: 3em;
  color: var(--main);
  margin-top: 30px;
  letter-spacing: 0.05em;
  line-height: 1em;
  line-height: 48px;
  text-shadow: 0 0 4px #fff;
}
.animation_border {
  width: 100%;
  border-bottom: 1px solid var(--main);
  margin-bottom: 40px;
}

section.top_contact_area {
  text-align: center;
  width: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
section.top_contact_area.document_request {
  background: linear-gradient(to right, var(--main), var(--accent));
}

.contact_title {
  text-align: left;
}
.contact_title p {
  color: #fff;
}
h2.top_contact_area_title {
  color: #fff;
  font-size: 2.4em;
  letter-spacing: 0.2em;
  letter-spacing: 0.1em;
  xmargin-bottom: 1rem;
  line-height: 1.4em;
  text-shadow: 4px 4px 8px rgb(0 0 0 / 30%);
}
.top_contact_box {
  xpadding: 50px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_contact_box span.en {
  xcolor: var(--dark);
  font-size: 1.4em;
  display: block;
  margin-bottom: 0.5em;
}

.modelroom .modelroom_ban {
  padding-bottom: 0;
}

/*--------------------
  本広告第一弾限定css start
  ----------------------*/
section.top_reservation {
  padding-top: 50px;
  padding-bottom: 50px;
  background: repeating-linear-gradient(311deg, #e2f1f4 0, #e2f1f4 10px, #ffffff 10px, #ffffff 20px);
}
.top_reservation_title_box span {
  ｘcolor: var(--main);
  display: block;
  font-size: 1.2em;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 12px;
}
.top_reservation_title_box p.kouhyou {
  text-align: center;
  font-size: 2em;
  margin-top: 20px;
  margin-bottom: 10px;
}
.top_reservation_title_box h2 {
  letter-spacing: 0.1em;
  text-align: center;
  font-size: 2.6em;
  line-height: 1.4em;
  margin-bottom: 1rem;
}

.top_reservation_title_box h2 div {
  display: flex;
  line-height: 1.2em;
  flex-flow: column;
}
.top_reservation_title_box h2 div span.yoyaku {
  font-size: 0.5em;
  line-height: 1em;
  height: 40px;
  border-top: 1px dotted var(--sub);
  border-bottom: 1px dotted var(--sub);
  color: var(--sub);
  padding: 0px 15px;
  margin-left: 12px;
  display: flex;
  align-items: center;
  margin-top: 10px;
  justify-content: center;
}
.top_reservation_title_box h2 {
  display: flex;
  justify-content: center;
}
/*
.top_reservation_title_box h2:before,
.top_reservation_title_box h2:after {
  height: 1em;
  width: 120px;
  line-height: 1em;
}
.top_reservation_title_box h2:before {
  content: url(../../images/decoration.svg);
  margin-right: 1rem;
}
.top_reservation_title_box h2:after {
  content: url(../../images/decoration.svg);
  margin-left: 1rem;
  transform: scale(-1, 1);
}
*/
.top_reservation_catch {
  letter-spacing: 0.1em;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.4em;
  margin-bottom: 30px;
}
.top_reservation_btn {
  text-align: center;
}
.top_reservation_btn a {
  background: var(--sub);
  color: #fff;
  border-radius: 0;
  padding: 10px;
  width: 240px;
  margin-top: 30px;
}
/*
.top_reservation_btn a:before {
  content: "";
  position: absolute;
  top: -4px;
  bottom: -4px;
  left: -4px;
  right: -4px;
  border: solid 1px var(--sub);
}
*/
.top_reservation_btn img {
  transition: 1s all;
}
.top_reservation_btn img:hover {
  transform: scale(1.1, 1.1);
  transition: 1s all;
}
/*--------------------
		本広告第一弾限定css end
		----------------------*/

@media only screen and (min-width: 768px) {
  .modelroom .modelroom_ban {
    width: 90%;
    margin: 0 auto;
  }
}

/*--------------------
  top_planarea
----------------------*/
section.top_planarea {
  padding-top: 80px;
}
.top_planarea .flex_box {
  gap: 50px;
}
.top_planarea .plan_spec_box .floor {
  display: block;
  margin-bottom: 0;
}
.top_planarea .plan_spec_box {
  /*border: 1px solid #999;*/
  margin-bottom: 1rem;
}
.top_planarea　.plan_madori {
    width: 80%;
}
.top_planarea .plan_spec_box .floor .madori span.ldk > span {
    font-size: 55px;
}
.top_planarea .plan_spec_box .floor .madori span.ldk {
  font-size: 40px;
}
.top_planarea .plan_spec_box .floor .madori {
  font-size: 35px;
  margin-bottom: 12px;
  text-align: center;
}
.top_planarea .plan_spec_box .floor dl.full_size span {
  font-size: 115%;
}
.top_planarea .plan_spec_box .floor dl.full_size {
  font-size: 19px !important;
}
.top_planarea .plan_spec_box .floor .type_area {
  color: #fff;
  padding: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.2em;
  background-image: url(../../images/plan/type_area_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
.top_planarea .plan_catch h4 {
  color: var(--sub);
  font-size: var(--size_2l);
  line-height: 1.6em;
  margin-bottom: 1rem;
}
.top_planarea .btn_position_right {
  text-align: right;
  margin-top: 2rem;
}
.top_planarea .plan_spec_box .floor .type {
  font-size: 32px;
  margin-bottom: 20px;
  padding: 28px 8px 30px;
  width: 100%;
  text-align: center;
  margin-right: 0;
  min-height: initial;
}
.top_planarea .plan_madori {
  width: 90%;
}

.top_planarea .plan_spec_box .size {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 10px 0;
}
/*--------------------
  top_planarea end
----------------------*/

/*インフォメーション*/
.sans {
  font-family: "Noto Sans JP", sans-serif;
}
.information_block {
  padding: 70px 0;
  z-index: 10;
  margin: 0 auto;
  background: var(--very_thin);
  xborder-top: 1px solid #ddd;
  xborder-bottom: 1px solid #ddd;
}
/*予告広告のみend*/
.information_box {
  height: auto;
  padding: 30px 1em;
  xbackground: #f9f9f9;
  overflow-y: auto;
}
.information_block h2 {
  color: var(--main);
  margin-bottom: 2em;
  font-weight: normal;
  text-align: center;
  font-size: var(--size_4l);
  position: relative;
}
.information_block h2::after {
  content: "";
  display: block;
  background: var(--main);
  height: 2px;
  width: 60px;
  margin: 0 auto;
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translate(-50%, 0);
}
.information_block dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  font-size: 1rem;
  border-bottom: 1px solid var(--gray);
}
.information_block dl dt {
  width: 120px;
  font-weight: bold;
  letter-spacing: 0.1em;
  padding-left: 1px;
  font-size: 0.8em;
}

.information_block dl dt.days {
  padding-bottom: 16px;
  padding-top: 16px;
  color: var(--dark);
}
.information_block dl dd {
  width: calc(100% - 120px);
  letter-spacing: 0.1em;
}
.information_block dl dd a {
  color: #000;
  padding-bottom: 16px;
  padding-top: 16px;
  display: block;
  transition: all 0.5s;
}
.information_block dl dd a:hover {
  color: var(--dark);
  transition: all 0.5s;
}

/*====================
ぱんくず
 ====================*/
.breadcrumb {
  text-align: left;
  padding: 10px;
  font-size: 12px;
}
.breadcrumb li {
  display: inline; /*横に並ぶように*/
  list-style: none;
  color: #999;
}
.breadcrumb li:after {
  /* >を表示*/
  content: ">";
  padding: 0 3px;
  color: #999;
}
.breadcrumb li:last-child:after {
  content: "";
}
.breadcrumb li a {
  text-decoration: none;
  color: #999;
}
.breadcrumb li a:hover {
  text-decoration: underline;
}
ul.sub_nav_btn li a {
  color: #fff;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  width: 120px;
  flex-flow: column;
}
ul.sub_nav_btn li.sub_nav_map_btn_request a {
  width: 160px;
}
ul.sub_nav_btn li a span.gentei {
  display: block;
  font-size: 12px;
  background-color: #ffff71;
  color: #cb0000;
  font-weight: 700;
  white-space: nowrap;
  padding: 0 6px;
  margin-top: 2px;
}
ul.sub_nav_btn li.sub_nav_map_btn_request a {
  background: var(--main);
}

ul.sub_nav_btn li.sub_nav_map_btn_reservation a {
  background: var(--reservation);
}
/*間取りバナー*/
ul.plan_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 40px;
  width: 860px;
  margin-right: auto;
  margin-left: auto;
  align-items: flex-end;
}
ul.plan_list li {
  /*width: calc((100% - 26px) / 2);*/
  margin-bottom: 26px;
}
ul.plan_list li a:hover {
  opacity: 0.7;
}
ul.plan_list li:last-child {
  margin-right: 0;
}
ul.plan_list li:not(:nth-child(2n)) {
  margin-right: 26px;
}
.loan_note_box {
  margin-bottom: 40px;
}
main.main.plan.plan_top span.loan_a0,
main.main.plan.plan_top span.loan_b0,
main.main.plan.plan_top span.loan_c0,
main.main.plan.plan_top span.loan_d0,
main.main.plan.plan_top span.loan_e0,
main.main.plan.plan_top span.loan_f0 {
  display: inline;
}
main.main.plan.plan_under p.loan_list span {
  display: none;
}
main.main.plan.plan_a0.plan_under p.loan_list span.loan_a0 {
  display: inline;
}
main.main.plan.plan_b0.plan_under p.loan_list span.loan_b0 {
  display: inline;
}
main.main.plan.plan_c0.plan_under p.loan_list span.loan_c0 {
  display: inline;
}
main.main.plan.plan_d0.plan_under p.loan_list span.loan_d0 {
  display: inline;
}
main.main.plan.plan_e0.plan_under p.loan_list span.loan_e0 {
  display: inline;
}
main.main.plan.plan_f0.plan_under p.loan_list span.loan_f0 {
  display: inline;
}
/*間取りバナー詳細*/
.loan_add {
  text-align: center;
  margin-bottom: 40px;
}
.loan_add img {
  max-width: 100%;
}
.plan_last_area {
  background: #fff;
  padding: 4px;
  position: fixed;
  bottom: 220px;
  right: 20px;
  z-index: 20;
  width: 420px;
}
.plan_last_area a:hover {
  opacity: 0.7;
}
