﻿@charset "utf-8";
/* CSS Document */
/*ページ用CSS*/

/*==================================================
	GENERAL SETTINGS
==================================================*/
.navigation {
  margin-top: var(--gutter);
  padding: 20px;
  text-align: center;
  background: #F4F4F4;
  border: 1px solid #E6E6E6;
}

.wp-pagenavi {
  margin-top: var(--gutter) !important;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
}

.wp-pagenavi span {
  display: table;
}

/*ACFでMAPを表示*/
.acf-map {
  width: 100%;
  height: 400px;
  border: 1px solid #E0E0E0;
  margin: 20px 0;
}

/*エラー*/
.error_com,
.errorBox_com {
  text-align: center;
  font-size: clamp(1.2rem, 1.4vw, 1.6rem);
}

/*共通シングル*/
.singlePage #postbox {
  margin-top: var(--gutter-narrow) !important;
}

.singlePage iframe {
  max-width: 100%;
}

.singlePage #titleBox {
  position: relative;
}

.singlePage #titleBox .secTtl {
  margin-top: 10px !important;
  text-align: left !important;
}

.singlePage #titleBox .date {
  text-align: right;
  margin-bottom: 1em;
  font-size: 1.5rem;
  font-weight: bold;
}

.singlePage #detailBox .photo {
  text-align: center;
}

.singlePage #detailBox .photo img {
  max-width: 100%;
}

.singlePage #articleBox {
  padding: 30px 0;
}

.singlePage #articleBox .notice_tbl {
  width: 100%;
}

.singlePage #articleBox .notice_tbl th {
  width: 20%;
  padding: 20px;
  border: 1px solid #E6E6E6;
  background: var(--color-palegray);
  font-weight: bold;
  text-align: center;
}

.singlePage #articleBox .notice_tbl td {
  padding: 20px;
  border: 1px solid #E6E6E6;
}

.singlePage #articleBox .notice_tbl td span.btn_access {
  margin-left: 10px;
}

.singlePage #articleBox .notice_tbl td span.btn_access a {
  padding: 10px;
  display: inline-block;
  background: var(--color-black);
  color: #FFF;
  text-decoration: none;
  border-radius: 1rem;
  line-height: 1;
}

.singlePage #btnBox {
  margin-bottom: 50px;
}

.singlePage #btnBox p.btn_reserve,
.singlePage #btnBox p.btn_end {
  width: min(400px, 100%);
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
}

.singlePage #btnBox p.btn_reserve a {
  display: block;
  color: #fff;
  padding: 20px;
  text-decoration: none;
  border-radius: 1rem;
  position: relative;
  background: var(--color-main);
  border: 2px solid var(--color-main);
}

.singlePage #btnBox p.btn_reserve a::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  right: 10%;
  top: 45%;
  transition: 0.3s;
}

@media (any-hover:hover) {
  .singlePage #btnBox p.btn_reserve a:hover {
    opacity: 1;
    background-color: #fff;
    color: var(--color-main);
  }

  .singlePage #btnBox p.btn_reserve a:hover::before {
    border-color: var(--color-main);
  }
}

.singlePage #btnBox p.btn_end {
  background: var(--color-gray);
  padding: 20px;
  border-radius: 50vh;
  color: #fff;
}

.singlePage #content {
  margin-top: 30px;
}

/* 目次(TOC)用CSS */
.singlePage #toc_container {
  border-radius: var(--rad-common);
  min-width: 50%;
  padding: 1em 1.5em .5em;
  border: 2px solid var(--color-darkgray);
}

.singlePage #toc_container .toc_title {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  font-size: 1.4em;
  position: relative;
  padding-left: 1.3em;
  margin-bottom: .5em;
}

.singlePage #toc_container .toc_title::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(../img/common/icon_list.svg) no-repeat center / contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.singlePage #toc_container .toc_title .toc_toggle {
  font-size: 1.2rem;
}

.singlePage #content #toc_container .toc_list {
  padding: 0;
}

.singlePage #content #toc_container .toc_list>li {
  list-style: none;
  border-bottom: 1px solid var(--color-gray);
  padding-bottom: .5em;
  margin-bottom: .5em;
  position: relative;
}

.singlePage #content #toc_container .toc_list li:last-child {
  border: 0;
  padding-bottom: 0;
}

.singlePage #content #toc_container .toc_list li ul {
  padding: 1em 0 0 0;
  margin: 0;
}

.singlePage #content #toc_container .toc_list li ul li {
  margin-left: 1.5em;
}

.singlePage #content #toc_container .toc_list li .toc_number {
  color: var(--color-main);
}

/*ビジュアルエディタ用CSS*/
.singlePage #content p {
  margin-bottom: 1em;
}

.singlePage #content h1,
.singlePage #content h2,
.singlePage #content h3,
.singlePage #content h4,
.singlePage #content h5,
.singlePage #content h6 {
  font-weight: bold;
  margin: 1em 0;
}

.singlePage #content h1 {
  font-size: clamp(2.5rem, 2.273rem + 1.14vw, 3.125rem);
}

.singlePage #content h2 {
  font-size: clamp(2.25rem, 2.023rem + 1.14vw, 2.875rem);
}

.singlePage #content h3 {
  font-size: clamp(1.875rem, 1.648rem + 1.14vw, 2.5rem);
}

.singlePage #content h4 {
  font-size: clamp(1.625rem, 1.398rem + 1.14vw, 2.25rem);
}

.singlePage #content h5 {
  font-size: clamp(1.375rem, 1.193rem + 0.91vw, 1.875rem);
}

.singlePage #content h6 {
  font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
}

.singlePage #content blockquote {
  padding: 1em;
  background: var(--color-palegray);
  margin: 1em 0;
}

.singlePage #content blockquote p {
  margin-bottom: 0;
}

.singlePage #content ul,
.singlePage #content ol {
  padding-left: 1.5em;
}

.singlePage #content ul li {
  list-style: disc;
  line-height: 1.6;
  margin-bottom: 1em;
}

.singlePage #content ol li {
  list-style: decimal;
  line-height: 1.6;
  margin-bottom: 1em;
}

.singlePage #content table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid var(--color-lightgray);
  border-left: 1px solid var(--color-lightgray);
}

.singlePage #content table th {
  border-right: 1px solid var(--color-lightgray);
  border-bottom: 1px solid var(--color-lightgray);
}

.singlePage #content table td {
  border-right: 1px solid var(--color-lightgray);
  border-bottom: 1px solid var(--color-lightgray);
}

.singlePage #content table th,
.singlePage #content table td {
  padding: .5em;
}

.singlePage #content a {
  text-decoration: underline;
  color: var(--color-main);
}

.singlePage #mapBox .ttl {
  padding: 20px;
  text-align: center;
  color: #fff;
  font-weight: bolder;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  background-color: var(--color-black);
  border-radius: 1rem 1rem 0 0;
}

.singlePage #mapBox .ttl span {
  padding-left: 30px;
  background: url(../img/common/icon_access.webp) no-repeat left center;
  background-size: 20px auto;
}

/*
===== お知らせ:topicsPage ==========================================
*/
/*お知らせ:一覧*/
.topicsPage #postbox {
  margin-top: var(--gutter);
}

.topicsPage .itemList .item a {
  padding: 20px 30px;
  display: block;
  text-decoration: none;
}

.topicsPage .itemList .item:nth-child(odd) a {
  border-top: 1px solid var(--color-gray);
  border-bottom: 1px solid var(--color-gray);
  background: var(--color-palegray);
}

.topicsPage .itemList .item dl {
  display: flex;
  align-items: center;
}

.topicsPage .itemList .item dl dt {
  width: 35%;
  max-width: 180px;
  flex-shrink: 0;
  font-size: clamp(12px, 2.4vw, 16px);
  white-space: nowrap;
}

.topicsPage .itemList .item dl dt span.date {
  margin-right: 0.5em;
}

.topicsPage .itemList .item dl dt span.icon_new {
  margin-bottom: 0;
}

.topicsPage .itemList .item dl dt span.icon_popular {
  display: block;
  margin: 5px 0 0;
}

.topicsPage .itemList .item dl dd {
  padding: 10px 0;
  margin-left: 20px;
  font-weight: bold;
}

/*
===== イベント情報:eventPage  ==========================================
*/
.eventPage #postbox {
  margin-top: var(--gutter);
}

/*イベント情報:一覧*/
.eventPage .itemList .item a {
  padding: 20px;
  display: block;
  text-decoration: none;
  display: flex;
  align-items: center;
  border-radius: 1rem;
  margin-bottom: 30px;
  border: 1px solid var(--color-gray);
}

.eventPage .itemList .item:nth-child(odd) a {
  background: var(--color-palegray);
}

.eventPage .itemList .item .photo {
  width: 240px;
  height: auto;
  aspect-ratio: 3 / 2;
  margin-right: 20px;
  border-radius: 1rem;
  overflow: hidden;
}

.eventPage .itemList .item .photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.eventPage .itemList .item .info {
  width: calc(100% - 260px);
}

.eventPage .itemList .item dt {
  margin: 15px 0;
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
}

.eventPage .itemList .item dd {
  font-weight: bold;
  font-size: clamp(1.3rem, 2vw, 1.6rem);
}

.eventPage .itemList .item dd span {
  margin-right: 10px;
  padding: 0.2em 0.5em;
  color: var(--color-black);
  border-right: 2px dotted var(--color-darkgray);
  display: inline-block;
}


/*
===== スタッフコラム:columnPage ==========================================
*/
.columnPage #postbox {
  margin-top: var(--gutter);
}

/*スタッフコラム:一覧*/
.columnPage .itemList {
  border-top: 1px solid var(--color-gray);
}

.columnPage .itemList .item a {
  padding: 20px;
  text-decoration: none;
  display: flex;
  align-items: center;
  position: relative;
  border-bottom: 1px solid var(--color-gray);
}

.columnPage .itemList .item:nth-child(odd) a {
  background: var(--color-palegray);
}

.columnPage .itemList .item .photo {
  width: 240px;
  height: auto;
  aspect-ratio: 3 / 2;
  border-radius: 1rem;
  overflow: hidden;
  margin-right: 20px;
}

.columnPage .itemList ul.List li.item .photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.columnPage .itemList .item .info {
  width: calc(100% - 260px);
  padding-bottom: 25px;
}

.columnPage .itemList .item .info .fbLike {
  position: absolute;
  right: 0;
  bottom: 0;
}

.columnPage .itemList .item .ttl {
  padding: 20px 0 0;
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.columnPage .itemList .item .date {
  margin-right: 10px;
  font-weight: bold;
  display: inline-block;
  font-size: 1.4rem;
  color: var(--color-main);
}

.columnPage .itemList .item .term {
  display: inline-block;
  margin-left: 10px;
}

/*スタッフコラム:詳細*/
.columnPage #detailBox .term {
  text-align: right;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
}

.columnPage .term li {
  margin-right: 5px;
  display: inline-block;
}

.columnPage .term li a {
  text-decoration: underline;
}

.columnPage #detailBox .fbLike {
  padding: 20px 10px;
  position: relative;
  font-size: 1.3rem;
  width: 330px;
  margin-left: auto;
}

.columnPage #detailBox .fbLike .fb-like {
  position: absolute;
  right: 0;
  top: 20px;
}

.columnPage .bottomBox {
  border: 2px solid var(--color-gray);
  padding: var(--gutter-narrow);
  border-radius: 1rem;
  background: url(../img/page/column/bottomBox_bg.png) no-repeat center bottom 10px / contain;
}

.columnPage .bottomBox p {
  margin-bottom: 1em;
}

.columnPage .bottomBox .btn__assessment__3step {
  width: 100%;
  max-width: 420px;
  margin: 1em auto;
}

.columnPage .bottomBox .btn__assessment__3step a {
  width: 100%;
  font-size: 2.4rem;
}

/*
===== よくある質問:qaPage ==========================================
*/
.qaPage #postbox {
  margin-top: var(--gutter);
}

.qaPage .qa_introduction{
  margin-bottom: var(--gutter);
}

.qaPage .qa_introduction p{
  font-size: clamp(12px, 3.2vw, 16px);
  text-align: center;
  line-height: 1.8;
  padding: 0 1em;
}

.qaPage #accordion {
  list-style: none;
}

.qaPage #accordion li {
  margin-bottom: var(--gutter-supernarrow);
  border: 2px solid var(--color-main);
}

.qaPage #accordion dt {
  position: relative !important;
  display: block;
  font-weight: normal;
  text-decoration: none;
  padding: 1.2em 3.4em;
  position: relative;
  background: var(--color-lightpink);
}

.qaPage #accordion dt::before {
  content: "Q.";
  color: var(--color-main);
  font-family: var(--font-en);
  font-weight: 900;
  font-size: 2em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
}

.qaPage #accordion dt:hover {
  cursor: pointer;
}

.qaPage #accordion dt.open::after {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #fff;
  font-weight: bolder;
  width: 30px;
  height: 30px;
  background: var(--color-main);
  content: "×";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 5px;
}

.qaPage #accordion dt.close::after {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #fff;
  font-weight: bolder;
  width: 30px;
  height: 30px;
  background: var(--color-main);
  content: "▼";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 5px;
}

.qaPage #accordion dt.close:first-of-type {
  content: "×";
}

.qaPage #accordion dd {
  display: none;
  padding: 30px;
}

.qaPage #accordion dd li {
  margin: 0;
  padding: 0;
  margin-bottom: 10px !important;
}

.qaPage #accordion dd p {
  margin-bottom: 20px;
}

.qaPage #accordion dd p:last-child {
  margin-bottom: 0;
}

.qaPage #accordion dd img {
  max-width: 100%;
  width: auto !important;
}

.qaPage #accordion .active {
  display: block !important;
}

/*
===== 中古リフォーム事例:gallery_renovationPage ==========================================
*/
.gallery_renovationPage #postbox {
  margin-top: var(--gutter);
  max-width: 96%;
}

/*中古リフォーム事例:一覧*/
.gallery_renovationPage .itemList .List {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.gallery_renovationPage .itemList .List li.item {
  width: 31%;
  margin-bottom: 30px;
  position: relative;
  box-sizing: border-box;
}

.gallery_renovationPage .itemList .List li.item:nth-child(3n-1) {
  margin-right: 3.5%;
  margin-left: 3.5%;
}

.gallery_renovationPage .itemList .List li.item a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.gallery_renovationPage .itemList li.item .gallery_reformBox__item__info {
  position: relative;
}

.gallery_renovationPage .itemList li.item .area span {
  background: rgba(0, 0, 0, 0.7);
  padding: 5px 10px;
  color: #fff;
  text-align: center;
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 1.4rem;
}

.gallery_renovationPage .itemList li.item .iconWrap .icon_new {
  background: url(../img/common/icon_new_bg.svg) no-repeat center / cover;
  width: 70px;
  height: auto;
  aspect-ratio: 80 / 78;
  font-size: 2rem;
  font-family: var(--font-en);
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  padding: 0;
  position: absolute;
  top: -60px;
}

.gallery_renovationPage .itemList .ttl h2 {
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  font-weight: bold;
  padding: 10px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  max-height: 3.6em;
}

.gallery_renovationPage .itemList .photo {
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  background: #FFF;
  overflow: hidden;
  text-align: center;
  position: relative;
}

.gallery_renovationPage .itemList .photo img {
  width: 100% !important;
  height: 100% !important;
}

.gallery_renovationPage .itemList .info {
  padding: 10px;
}

.gallery_renovationPage .itemList .info dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: flex-start;
}

.gallery_renovationPage .itemList .info dt,
.gallery_renovationPage .itemList .info dd {
  margin: 5px 0;
}

.gallery_renovationPage .itemList .info dt {
  width: 40%;
  font-weight: bold;
  font-size: 1.3rem;
  min-width: 9em;
}

.gallery_renovationPage .itemList .info dd {
  width: 60%;
  font-size: 1.6rem;
}

.gallery_renovationPage .itemList .info dd .price_note,
.gallery_renovationPage .itemList .info dd .cost_note {
  display: block;
  font-size: 0.75em;
}

/*中古リフォーム事例:詳細*/
/*lightbox*/
.gallery_renovationPage .lbwrap {
  position: relative;
  overflow: hidden;
}

.gallery_renovationPage .lbwrap a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.gallery_renovationPage .lbwrap a:after {
  content: "";
  width: 32px;
  height: 32px;
  position: absolute;
  right: 5px;
  bottom: 5px;
  border: 1px solid #fff;
  background: rgb(0 0 0 / 0.2) url(../img/common/icon_zoom_white.svg) no-repeat center center;
  background-size: 65% auto;
  border-radius: 3px;
}

#nextLink:hover,
#prevLink:hover {
  transition: none;
}

/* スライド */
.gallery_renovationPage .sliderBox {
  margin: var(--gutter-narrow) auto var(--gutter);
  border: solid 1px var(--color-lightgray);
  width: 80%;
  position: relative;
}

.gallery_renovationPage .sliderBox .slider__list {
  overflow: hidden;
}

.gallery_renovationPage .sliderBox .slider__list__item {
  position: relative;
  box-sizing: border-box;
  aspect-ratio: 3 / 2;
  flex-shrink: 0;
  height: auto;
  width: 100%;
  max-height: 60vh;
}

.gallery_renovationPage .sliderBox .slider__list__item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gallery_renovationPage .sliderBox .slider__list a:after {
  width: clamp(30px, 5vw, 40px);
  height: clamp(30px, 5vw, 40px);
}

/* スライドページャー */
.gallery_renovationPage .sliderBox .gallery_slider_pager {
  background: var(--color-palegray);
  font-size: 0;
  z-index: 100;
}

.gallery_renovationPage .sliderBox .gallery_slider_pager .slick-track {
  transform: unset !important;
  width: auto !important;
  justify-content: center;
  flex-wrap: wrap;
}

.gallery_renovationPage .sliderBox .gallery_slider_pager a {
  opacity: .5;
  transition: opacity .3s linear;
}

.gallery_renovationPage .sliderBox .gallery_slider_pager .slick-current a {
  opacity: 1;
  border-color: var(--color-main);
}

.gallery_renovationPage .sliderBox .gallery_slider_pager a:hover {
  cursor: pointer;
}

.gallery_renovationPage .sliderBox .gallery_slider_page_list {
  display: inline-block;
  margin: 10px 2px;
  background: #FFF;
  aspect-ratio: 3 / 2;
  height: auto;
  width: 66px !important;
}

.gallery_renovationPage .sliderBox .gallery_slider_page_list a {
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 2px solid #FFF;
  position: relative;
}

.gallery_renovationPage .sliderBox .gallery_slider_page_list img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* スライド矢印 */
.gallery_renovationPage #sliderArrows {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: space-between;
  z-index: 2;
}

.gallery_renovationPage #sliderArrows .slide-arrow {
  cursor: pointer;
}

/*タイトル*/
.gallery_renovationPage #titleBox {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  margin: var(--gutter-narrow) auto;
}

.gallery_renovationPage #titleBox .ttl {
  font-size: clamp(1.8rem, 2vw, 2.5rem);
  font-weight: bold;
}

.gallery_renovationPage #titleBox span.numbering {
  font-size: 3.5em;
  margin-right: 20px;
  line-height: 1.0;
  font-weight: 900;
  color: rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  font-family: var(--font-num);
}

/* 写真と金額 */
.gallery_renovationPage .infoBox {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}

.gallery_renovationPage .infoBox__photo {
  width: 48%;
  height: auto;
  aspect-ratio: 3 / 2;
}

.gallery_renovationPage .infoBox__photo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border: 1px solid #ccc;
}

.gallery_renovationPage .infoBox__inner {
  width: 48%;
}

.gallery_renovationPage p {
  margin-bottom: 1%;
}

.gallery_renovationPage .infoBox__inner__priceBox {
  margin-bottom: 3%;
  border: 5px solid var(--color-main);
  color: var(--color-main);
  padding: 1.5em;
}

.gallery_renovationPage .infoBox__inner__priceBox p {
  font-size: clamp(1.4rem, 2vw, 2.2rem);
  font-weight: bold;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin: 0;
  flex-wrap: wrap;
  white-space: nowrap;
}

.gallery_renovationPage .infoBox__inner__priceBox p .price {
  font-size: 2.4em;
  font-weight: bold;
  line-height: 100%;
  margin: 0 10px;
  font-family: var(--font-num);
}

.gallery_renovationPage .infoBox__inner__priceBox .comment {
  display: block;
  text-align: center;
  font-size: 12px;
  color: var(--color-black);
}

.gallery_renovationPage .infoBox__inner__areaBox p {
  padding: 0.5em 1em;
  color: #fff;
  background: #555;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  font-weight: bold;
  width: 100%;
  text-align: center;
}

.gallery_renovationPage .infoBox__inner__costBox {
  margin-top: 2%;
}

.gallery_renovationPage .infoBox__inner__costBox p {
  font-size: clamp(1.6rem, 2vw, 1.8rem);
}

.gallery_renovationPage .infoBox__inner__costBox p .price02 {
  display: inline-block;
  margin: 0 10px 0 20px;
  font-size: 1.5em;
  font-weight: bold;
  font-family: var(--font-num);
}

.gallery_renovationPage .infoBox__inner__costBox .price_note,
.gallery_renovationPage .infoBox__inner__costBox .cost_note {
  display: inline-block;
}

.gallery_renovationPage #content {
  margin: 30px 0;
  padding: 20px;
}

.gallery_renovationPage #content p:not(:first-child) {
  margin-top: 10px;
}

/*概要*/
.gallery_renovationPage #dataBox {
  margin-top: clamp(30px, 4vw, 50px);
}

.gallery_renovationPage #dataBox .ttl {
  text-align: center;
  font-size: clamp(2rem, 3vw, 2.4rem);
  font-weight: bold;
}

.gallery_renovationPage #dataBox dl {
  margin-top: 2.5%;
  box-sizing: border-box;
  background-color: var(--color-palegray);
  border-right: solid 1px #CCC;
  border-bottom: solid 1px #CCC;
  border-left: solid 1px #CCC;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
}

.gallery_renovationPage #dataBox dt,
.gallery_renovationPage #dataBox dd {
  border-top: solid 1px #CCC;
  box-sizing: border-box;
  padding: 20px;
}

.gallery_renovationPage #dataBox dt {
  width: 30%;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.gallery_renovationPage #dataBox dd {
  width: 70%;
  background: #FFF;
  border-left: solid 1px #CCC;
}


/*月々支払い例*/
.gallery_renovationPage #dataBox dt.monthly,
.gallery_renovationPage #dataBox dd.monthlyPayment {
  font-weight: bold;
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  color: var(--color-red);
}

.gallery_renovationPage #dataBox .monthlyPayment span.comment {
  display: block;
  font-size: 1.2rem;
  font-weight: normal;
  color: var(--color-black);
  line-height: 1;
}

/*BEFORE/AFTER*/
.gallery_renovationPage #baBox {
  margin-top: clamp(30px, 4vw, 50px);
}

.gallery_renovationPage #baBox h3 {
  text-align: center;
  font-size: clamp(2rem, 3vw, 2.4rem);
  font-weight: bold;
}

.gallery_renovationPage #baBox dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin: clamp(20px, 3vw, 30px) auto;
}

.gallery_renovationPage #baBox dt {
  width: 100%;
}

.gallery_renovationPage #baBox dt {
  border-bottom: 2px solid #CCC;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  font-weight: bold;
  padding: 5px;
}

.gallery_renovationPage #baBox dd.ba_before,
.gallery_renovationPage #baBox dd.ba_after {
  width: 420px;
  max-width: 40%;
  margin-top: 16px;
  background: var(--color-palegray);
  border: 9px solid #FFF;
  box-shadow: 0 0 1px 1px #ccc;
  position: relative;
  aspect-ratio: 3 / 2;
  height: auto;
  box-sizing: content-box;
}

.gallery_renovationPage #baBox dd.ba_before img,
.gallery_renovationPage #baBox dd.ba_after img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.gallery_renovationPage #baBox dd.ba_arrow {
  width: clamp(16px, 5vw, 30px);
  margin: 0 10px;
}

.gallery_renovationPage #baBox dd.ba_arrow img {
  width: 100%;
  height: auto;
}

.gallery_renovationPage #baBox dd.ba_comment {
  width: 100%;
  margin-top: clamp(10px, 3vw, 20px);
  padding: clamp(10px, 3vw, 20px);
  background: var(--color-palegray);
  word-wrap: break-word;
}

/*
===== モデルルーム:modelroomPage  ==========================================
*/
.modelroomPage #postbox {
  margin-top: var(--gutter);
}

/*モデルルーム:一覧*/
.modelroomPage .itemList .List {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.modelroomPage .itemList li.item {
  width: 32%;
  margin-bottom: 30px;
  border: 1px solid #ccc;
  padding: 5px;
  box-sizing: border-box;
  position: relative;
}

.modelroomPage .itemList li.item:nth-child(3n-1) {
  margin-right: 2%;
  margin-left: 2%;
}

.modelroomPage .itemList li.item a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.modelroomPage .itemList li.item .photo {
  aspect-ratio: 3 / 2;
  width: 100%;
  height: auto;
}

.modelroomPage .itemList li.item .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  /*IE対策*/
}

.modelroomPage .itemList li.item .info {
  padding: 20px 15px 15px;
  position: relative;
}

.modelroomPage .itemList li.item .ttl {
  font-size: 1.8rem;
  font-weight: bold;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;

}

.modelroomPage .itemList li.item .numbering {
  font-size: 2em;
  font-weight: 900;
  line-height: 1.0;
  margin-right: 0.2em;
  white-space: nowrap;
  font-family: var(--font-num);
}

.modelroomPage .itemList li.item dd {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.modelroomPage .itemList li.item .catch {
  font-weight: bold;
  margin: 5px 0;
}

.modelroomPage .itemList li.item .iconWrap__reservable {
  width: 100%;
  display: block;
  text-align: center;
  position: absolute;
  top: -20px;
}

.modelroomPage .itemList li.item .iconWrap__reservable span {
  width: 75px;
  height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  border-radius: 100%;
  border: 2px solid #fff;
  font-size: 1.3rem;
}

.modelroomPage .itemList li.item .iconWrap__new .icon_new {
  background: url(../img/common/icon_new_bg.svg) no-repeat center / cover;
  width: 70px;
  height: auto;
  aspect-ratio: 80 / 78;
  font-size: 2rem;
  font-family: var(--font-en);
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  padding: 0;
  position: absolute;
  top: -50px;
  left: 0;
}


/*モデルルーム:詳細*/
/*lightbox*/
.modelroomPage .lbwrap {
  position: relative;
  overflow: hidden;
}

.modelroomPage .lbwrap a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.modelroomPage .lbwrap a:after {
  content: "";
  width: 32px;
  height: 32px;
  position: absolute;
  right: 5px;
  bottom: 5px;
  border: 1px solid #fff;
  background: rgb(0 0 0 / 0.2) url(../img/common/icon_zoom_white.svg) no-repeat center center;
  background-size: 65% auto;
  border-radius: 3px;
}

#nextLink:hover,
#prevLink:hover {
  transition: none;
}

/* スライド */
.modelroomPage .sliderBox {
  margin: var(--gutter-narrow) auto var(--gutter);
  border: solid 1px var(--color-lightgray);
  width: 80%;
  position: relative;
}

.modelroomPage .sliderBox .slider__list {
  overflow: hidden;
}

.modelroomPage .sliderBox .slider__list__item {
  position: relative;
  box-sizing: border-box;
  aspect-ratio: 3 / 2;
  flex-shrink: 0;
  height: auto;
  width: 100%;
  max-height: 60vh;
}

.modelroomPage .sliderBox .slider__list__item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.modelroomPage .sliderBox .slider__list__item a:after {
  width: clamp(30px, 5vw, 40px);
  height: clamp(30px, 5vw, 40px);
}

/* スライドページャー */
.modelroomPage .sliderBox .pager__list {
  background: var(--color-palegray);
  font-size: 0;
  z-index: 100;
}

.modelroomPage .sliderBox .pager__list .slick-track {
  transform: unset !important;
  width: auto !important;
  justify-content: center;
  flex-wrap: wrap;
}

.modelroomPage .sliderBox .pager__list a {
  opacity: .5;
  transition: opacity .3s linear;
}

.modelroomPage .sliderBox .pager__list .slick-current a {
  opacity: 1;
  border-color: var(--color-main);
}

.modelroomPage .sliderBox .pager__list a:hover {
  cursor: pointer;
}

.modelroomPage .sliderBox .pager__list__item {
  display: inline-block;
  margin: 10px 2px;
  background: #FFF;
  aspect-ratio: 3 / 2;
  height: auto;
  width: 66px !important;
}

.modelroomPage .sliderBox .pager__list__item a {
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 2px solid #FFF;
  position: relative;
}

.modelroomPage .sliderBox .pager__list__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* スライド矢印 */
.modelroomPage #sliderArrows {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: space-between;
  z-index: 2;
}

.modelroomPage #sliderArrows .slide-arrow {
  cursor: pointer;
}

/*---------- ばらけ防止 ----------*/
.modelroomPage .sliderBox .slider__list__item:not(:first-child) {
  display: none;
}

.modelroomPage .sliderBox .slick-initialized .slider__list__item {
  display: block !important;
}

/* bnrBox */
.modelroomPage .bnrBox {
  margin: var(--gutter) auto;
}

/* titleBox */
.modelroomPage .titleBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: var(--gutter) auto var(--gutter-narrow);
}

.modelroomPage .titleBox .icon span {
  width: 75px;
  height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  border-radius: 100%;
  background: var(--color-main);
  color: #fff;
  line-height: 1.0;
  font-size: 1.4rem;
  margin-bottom: 10px;
}

.modelroomPage .titleBox .secTtl {
  margin: 0 auto !important;
}

/* catchcopyBox */
.modelroomPage .catchcopyBox {
  margin: var(--gutter-supernarrow) auto var(--gutter-supernarrow);
}

.modelroomPage .catchcopyBox p {
  text-align: center;
  font-size: clamp(1.8rem, 2vw, 2.4rem);
  color: var(--color-red);
  font-weight: bold;
}

/* messageBox */
.modelroomPage h3 {
  color: #FFF;
  font-weight: bold;
  font-size: clamp(1.8rem, 2vw, 2.4rem);
  padding: 0.5em;
  background: var(--color-main);
  text-align: center;
  margin: auto;
}

.modelroomPage .messageBox p {
  text-align: center;
}

/* floorplanBox */
.modelroomPage .floorplanBox {
  margin: var(--gutter) auto;
}

.modelroomPage .floorplanBox ul {
  display: flex;
  justify-content: space-around;
  margin: var(--gutter-narrow) auto;
}

.modelroomPage .floorplanBox ul li {
  width: 46%;
  height: auto;
  aspect-ratio: 3 / 2;
  border: 1px solid #ccc;
}

.modelroomPage .floorplanBox ul li img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: 'object-fit: contain;';
  /*IE対策*/
}

/* pickupBox */
.modelroomPage .pickupBox .font {
  font-family: var(--font-num);
}

.modelroomPage .pickupBox {
  margin: var(--gutter) auto;
}

.modelroomPage .pickupBox ul {
  margin: var(--gutter) auto;
}

.modelroomPage .pickupBox ul li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  justify-content: space-around;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-around;
  margin: 0 auto var(--gutter);
  width: min(96%, 1200px);
}

.modelroomPage .pickupBox ul li:nth-child(2n) {
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.modelroomPage .pickupBox ul li .imgBox {
  width: 46%;
  height: auto;
  aspect-ratio: 3 / 2;
  border: 1px solid #ccc;
}

.modelroomPage .pickupBox ul li .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  font-family: 'object-fit: contain;';
  /*IE対策*/
}

.modelroomPage .pickupBox ul li .textBox {
  width: 48%;
}

.modelroomPage .pickupBox ul li .textBox .number {
  font-size: clamp(1.8rem, 2vw, 2.4rem);
  font-weight: bold;
}

.modelroomPage .pickupBox ul li .textBox .ttl {
  font-size: 1.8rem;
  font-weight: bold;
  color: var(--color-main);
}

.modelroomPage .pickupBox ul li .textBox .txt {
  margin-top: 10px;
}

/* detailBox */
.modelroomPage .detailBox {
  margin: var(--gutter) auto;
}

.modelroomPage .detailBox__inner {
  margin: var(--gutter-narrow) auto;
}

.modelroomPage .detailBox dl {
  box-sizing: border-box;
  background-color: var(--color-palegray);
  border-right: solid 1px #CCC;
  border-bottom: solid 1px #CCC;
  border-left: solid 1px #CCC;
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
}

.modelroomPage .detailBox dt,
.modelroomPage .detailBox dd {
  border-top: solid 1px #CCC;
  box-sizing: border-box;
  padding: clamp(15px, 3vw, 20px);
}

.modelroomPage .detailBox dt {
  width: 30%;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.modelroomPage .detailBox dd {
  width: 70%;
  background: #FFF;
  border-left: solid 1px #CCC;
}


/*
===== 会社案内:companyPage ==========================================
*/
.companyPage #postbox {
  margin-top: var(--gutter);
}

.companyPage .contents-inner .entrytbl td {
  padding: 20px;
  border-bottom: 1px solid #E6E6E6;
}

.companyPage .tblwrap {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-justify-content: space-between;
  /* Safari */
  justify-content: space-between;
}

.companyPage .tblwrap table {
  width: 48%;
  border-top: none !important;
}

.companyPage .tblwrap table caption {
  font-size: 1.2em;
  font-weight: bold;
  padding: 10px 0;
}

.companyPage .tblwrap table.entrytbl th,
.companyPage .tblwrap table.entrytbl td {
  border-bottom: none !important;
  border-top: 1px solid #E6E6E6;
}

.companyPage .tblwrap table.entrytbl th {
  width: 30%;
}

.companyPage .tblwrap table img {
  width: 100%;
  height: auto;
}

.companyPage h3 {
  background: #3E3939;
  margin: 60px 0 30px;
  width: 100%;
  padding: 20px 0;
  font-size: 2em;
  font-weight: bold;
  text-align: center;
  color: #fff;
}

/*
===== プライバシーポリシー:privacyPage ==========================================
*/
.privacyPage #postbox {
  margin-top: var(--gutter);
}

.privacyPage .contents-inner dl dt {
  font-size: 1.2em;
  font-weight: bold;
  margin-top: 20px;
}

.privacyPage .contents-inner dl dd {
  margin-top: 10px;
}

.privacyPage .contents-inner ul {
  margin: 20px;
}

.privacyPage .contents-inner ul li {
  margin-bottom: 20px;
  list-style: disc outside;
}

/*
===== サイトマップ:sitemapPage ==========================================
*/
.sitemapPage #postbox {
  margin-top: var(--gutter);
}

.sitemapPage .contents-inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.sitemapPage .contents-inner ul {
  width: 30%;
}

.sitemapPage .contents-inner ul li {
  margin: 20px 0;
}

.sitemapPage .contents-inner ul li a {
  display: block;
  padding: 20px;
  border: 1px solid #CCCCCC;
  border-left-width: 5px;
  text-decoration: none;
}

.sitemapPage .contents-inner ul li a:hover {
  border-color: var(--color-main);
  border-left-width: 12px;
  padding-right: 13px;
  opacity: 1;
}


/*
===== フォームページ ==========================================
*/
.contactPage .entrytbl {
  margin-top: 0 !important;
}

.contactPage .contact_note {
  margin: var(--gutter) auto var(--gutter-narrow);
  text-align: center;
}

.class-holiday span {
  color: var(--color-red) !important;
}

/*来店予約ページ*/
.shop-reservePage .bnrBox {
  margin: var(--gutter) auto;
  max-width: 96%;
  text-align: center;
}

/*予約フォーム遷移ボタン*/
.shop-reservePage .btnBox__btn {
  width: min(400px, 100%);
  margin: 0 auto;
}

.shop-reservePage .btnBox__btn a,
.shop-reservePage .btn_archive a {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 2rem);
  color: #fff;
  border: 2px solid var(--color-main);
  padding: 26px;
  text-decoration: none;
  border-radius: 1rem;
  position: relative;
  background: var(--color-main);
  line-height: 1;
}

.shop-reservePage .btnBox__btn a::before,
.shop-reservePage .btn_archive a::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  right: 10%;
  top: 45%;
  transition: 0.3s;
  background: none;
}


@media(any-hover:hover) {

  .shop-reservePage .btnBox__btn a:hover,
  .shop-reservePage .btn_archive a:hover {
    opacity: 1;
    background-color: #fff;
    color: var(--color-main);
  }

  .shop-reservePage .btnBox__btn a:hover::before,
  .shop-reservePage .btn_archive a:hover::after {
    border-color: var(--color-main);
  }
}

.shop-reservePage .ttlWrap {
  background: url(../img/page/shop_reserve/main_ttl_bg.webp) no-repeat center bottom / cover;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  height: clamp(140px, 26vw, 310px);
}

.shop-reservePage .ttlWrap .mainTtl {
  text-indent: 1000%;
  overflow: hidden;
  white-space: nowrap;
  background: url(../img/page/shop_reserve/main_ttl.webp) no-repeat center / contain;
  width: 100%;
  height: 100%;
  max-width: 96%;
}

.shop-reservePage .ttlWrap::after {
  content: "";
  display: block;
  position: absolute;
}

.shop-reservePage #bread {
  top: clamp(140px, 26vw, 310px);
}

/*来店予約のメリット*/
.shop-reservePage .meritBox {
  margin: var(--gutter) auto;
}

.shop-reservePage .meritBox__ttl {
  text-align: center;
  margin: 0 auto var(--gutter-narrow);
  max-width: 80%;
}

.shop-reservePage .meritBox__itemList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.shop-reservePage .meritBox__item {
  width: 32%;
}

.shop-reservePage .meritBox__item .info {
  margin: var(--gutter-supernarrow) 0;
}

.shop-reservePage .meritBox__item .catch {
  text-align: center;
  font-weight: bolder;
  margin-bottom: 10px;
}

.shop-reservePage .meritBox__item dl.count {
  margin-top: 10px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.shop-reservePage .meritBox__item dt {
  padding: 5px;
  border: 2px solid var(--color-black);
  display: inline-block;
  text-align: center;
  font-weight: bolder;
  margin-right: 10px;
}

.shop-reservePage .meritBox__item dd {
  font-weight: bolder;
  display: flex;
  align-items: baseline;
  justify-content: center;
}

.shop-reservePage .meritBox__item dd span {
  font-size: 2.4em;
  vertical-align: middle;
  font-family: var(--font-num);
}

/*店舗情報*/
.shop-reservePage #shopInfoBox {
  margin: var(--gutter-wide) auto;
}

.shop-reservePage .flowBox {
  margin: var(--gutter-narrow) auto;
}


.shop-reservePage .flowList {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.shop-reservePage .flowItem {
  border: 3px solid var(--color-black);
  padding: 50px 20px 20px;
  text-align: center;
  width: calc((100% - 80px)/5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
  font-size: clamp(1.4rem, 1.5vw, 1.6rem);
  line-height: 1.3;
  border-radius: 1rem;
}

.shop-reservePage .flowItem.finish {
  border: none;
  background-color: var(--color-main);
  color: #fff;
}

.shop-reservePage .flowItem h3 {
  font-size: 1.3em;
  margin-bottom: 20px;
  font-weight: 800;
}

.shop-reservePage .flowItem h3 .num {
  display: block;
  font-size: 1.3em;
  font-family: var(--font-num);
  font-weight: 700;
  position: absolute;
  top: -1em;
  left: 50%;
  background: var(--color-main);
  color: #fff;
  width: 2em;
  height: 2em;
  line-height: 2em;
  border-radius: 2em;
  text-align: center;
  transform: translateX(-50%);
}

.shop-reservePage .flowItem.finish h3 .num {
  background: #fff;
  border: 2px solid var(--color-main);
  color: var(--color-main);
}

.shop-reservePage .flowItem p {
  margin-bottom: 20px;
  font-weight: 500;
}

.shop-reservePage .flowItem img {
  max-height: 100px;
}

.shop-reservePage .flowItem.finish p {
  height: 100%;
}

.shop-reservePage #form .comment {
  text-align: center;
  font-weight: 800;
  font-size: clamp(2rem, 2.5vw, 3.2rem);
  margin: var(--gutter-narrow) auto;
}

#select-title {
  width: 80%;
}

/* 注釈追加 */
.shop-reservePage .reserve_note {
  margin: 1em;
  text-align: center;
}

.shop-reservePage .reserve_note span {
  border: 2px solid var(--color-red);
  color: var(--color-red);
  border-radius: var(--rad-common);
  padding: .5em clamp(.5em, 1.1vw, 3em);
  display: inline-block;
}

/* 売却相談無料査定ページ */

.sellers-contactPage #bread {
  top: clamp(140px, 26vw, 310px);
}

.sellers-contactPage .ttlWrap {
  background: url(../img/page/shop_reserve/main_ttl_bg.webp) no-repeat center bottom / cover;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  height: clamp(140px, 26vw, 310px);
}

.sellers-contactPage .ttlWrap .mainTtl {
  text-indent: 1000%;
  overflow: hidden;
  white-space: nowrap;
  background: url(../img/page/shop_reserve/main_ttl.webp) no-repeat center / contain;
  width: 100%;
  height: 100%;
  max-width: 96%;
}

.sellers-contactPage .ttlWrap::after {
  content: "";
  display: block;
  position: absolute;
}

.sellers-contactPage .introBox {
  text-align: center;
  padding: var(--gutter-narrow) 0;
  margin: var(--gutter) auto;
}

.sellers-contactPage .introBox .secTtl {
  margin-top: 0 !important;
  position: relative;
  padding: 0.25em 1em;
  border-top: solid 2px var(--color-black);
  border-bottom: solid 2px var(--color-black);
  display: inline-block;
}

.sellers-contactPage .introBox .secTtl:before,
.sellers-contactPage .introBox .secTtl:after {
  content: '';
  position: absolute;
  top: -7px;
  width: 2px;
  height: -webkit-calc(100% + 14px);
  height: calc(100% + 14px);
  background-color: var(--color-black);
}

.sellers-contactPage .introBox .secTtl:before {
  left: 7px;
}

.sellers-contactPage .introBox .secTtl:after {
  right: 7px;
}

.sellers-contactPage .assessment_ttl {
  font-size: clamp(1.8rem, 4.2vw, 2.4rem);
  font-weight: bold;
  margin-bottom: 0.5em;
}

.sellers-contactPage .introBox__mainBox {
  display: flex;
  justify-content: space-between;
}

.sellers-contactPage .introBox__txtBox {
  width: 59%;
}

.sellers-contactPage .introBox__txt {
  margin-bottom: 0.5em;
  text-align: left;
}

.sellers-contactPage .introBox__imgBox {
  width: 35%;
}

.sellers-contactPage .btnBox {
  margin: var(--gutter) auto;
}

.sellers-contactPage .btnBox__btn {
  width: min(400px, 100%);
  margin: 0 auto;
}

.sellers-contactPage .btnBox__btn a {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 1.8rem);
  color: #fff;
  border: 3px solid var(--color-black);
  padding: 20px;
  text-decoration: none;
  border-radius: 50vh;
  position: relative;
}

.sellers-contactPage .btnBox__btn a::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(-50%) rotate(45deg);
  position: absolute;
  right: 10%;
  top: 50%;
}

.sellers-contactPage .btnBox__btn a::after {
  content: '';
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  top: 2px;
  left: 2px;
  border-radius: 50vh;
  transition: 0.2s;
  z-index: -1;
  background: var(--color-main);
}

@media(any-hover:hover) {
  .sellers-contactPage .btnBox__btn a:hover {
    opacity: 1;
  }

  .sellers-contactPage .btnBox__btn a:hover::after {
    filter: brightness(1.15);
  }
}

.sellers-contactPage .pointBox {
  text-align: center;
}

.sellers-contactPage .pointBox__ttlBox {
  font-size: clamp(2rem, 4.2vw, 3.2rem);
  font-weight: 800;
  border: 3px solid var(--color-brown);
  padding: 10px 15px;
  border-radius: 3px;
  text-align: center;
  display: inline-block;
  position: relative;
  color: var(--color-brown);

}

.sellers-contactPage .pointBox__ttlBox:before {
  content: "";
  position: absolute;
  bottom: -25px;
  left: 50%;
  margin-left: -15px;
  border: 13px solid transparent;
  border-top: 13px solid #FFF;
  z-index: 2;
}

.sellers-contactPage .pointBox__ttlBox:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 15px solid transparent;
  border-top: 15px solid var(--color-brown);
  z-index: 1;
}


.sellers-contactPage .pointBox__itemList {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  margin: var(--gutter) auto;
}

.sellers-contactPage .pointBox__item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  width: min(33%, 360px);
  padding: 0 3%;
}

.sellers-contactPage .pointBox__item img {
  max-width: 198px;
}

.sellers-contactPage .pointBox__item:nth-child(2) {
  border-left: 2px dotted var(--color-lightbrown);
  border-right: 2px dotted var(--color-lightbrown);
}

.sellers-contactPage .pointBox__item__txt {
  text-align: justify;
  font-weight: bold;
  margin: 10px 0 0;
}

.sellers-contactPage .form_link_zip {
  margin-left: 10px;
}

/*
===== 予約モーダル ==========================================
*/
.yoyaku_modal_overlay {
  position: fixed;
  z-index: 1000;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, .5);
  display: none;
}

#yoyaku_modal {
  width: 800px;
  max-width: 90%;
  height: 65vh;
  overflow-y: scroll;
  background: #FFF;
  display: none;
  text-align: center;
  padding-bottom: 15px;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 11000;
}

#yoyaku_modal .modal_btn p {
  text-align: right;
  padding: 5px 0;
}

#yoyaku_modal .modal_btn p span {
  display: inline-block;
  padding: 5px 10px;
  background: #999;
  color: #FFF;
  margin-right: 5px;
  cursor: pointer;
}

#yoyaku_modal .modal_item {
  border: 1px solid var(--color-main);
  cursor: pointer;
  margin: 0 5px 10px;
}

#yoyaku_modal .modal_item dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

#yoyaku_modal .modal_item .photo {
  width: 220px;
  height: 130px;
  aspect-ratio: 220 / 130;
  overflow: hidden;
  border: 1px solid #CCC;
  margin: 10px;
  position: relative;
}

#yoyaku_modal .modal_item .photo img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

#yoyaku_modal .modal_item dd {
  width: 80%;
}

#yoyaku_modal .modal_item .ttl {
  font-size: 1.2em;
  font-weight: bold;
  padding: 5px 0;
  margin: 0 5px;
  border-bottom: 1px solid #CCC;
}

#yoyaku_modal .modal_item .data {
  margin: 10px;
  font-size: 0.9em;
  text-align: left;
}

#yoyaku_modal .modal_item .btn {
  padding: 10px 0;
  background: var(--color-main);
  color: #FFF;
  margin: 10px 20px 10px 10px;
  text-align: center;
  font-size: 1em;
  font-weight: bold;
}

#yoyaku_modal .modal_item:hover {
  opacity: 0.6;
}

#lean_overlay {
  position: fixed;
  z-index: 100;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background: #000;
  display: none;
}

#yoyaku_modal .modal_item.kengaku {
  background: var(--color-main);
  padding: 10px;
  margin-bottom: 10px;
}

#yoyaku_modal .modal_item.kengaku .ttl {
  border: 1px solid #fff;
  margin: 0 0 10px;
  padding: 5px;
  color: #FFF;
  font-size: clamp(1.7rem, 2vw, 2rem);
}

#yoyaku_modal .modal_item.kengaku p {
  color: #fff;
  font-size: 0.9em;
}


/*
===== errpage ==========================================
*/
.err404Page #postbox {
  margin-top: var(--gutter);
}


/*
===== recordpage ==========================================
*/
/*archive*/
.archivePage .optionBox {
  padding: 2%;
  margin-bottom: var(--gutter);
}

.archivePage .optionBox__ttl {
  margin-bottom: 1%;
}

.archivePage .optionBox__itemList {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2%;
}

.archivePage .optionBox__itemList__item {
  min-width: 19%;
  margin-right: 1%;
  margin-bottom: 1%;
}

.archivePage .optionBox__itemList__item:nth-of-type(5n) {
  margin-right: 0;
}

.archivePage .optionBox__itemList__item input {
  display: none;
}

.archivePage .optionBox__itemList__item label {
  display: block;
  padding: 1em 0.25em;
  background: #eee;
  color: #999;
  text-align: center;
  line-height: 1;
  transition: .3s;
  font-weight: bold;
}

.archivePage .optionBox__itemList__item input:checked+label {
  background: var(--color-main);
  color: #fff;
}

.archivePage .optionBox .btn_search {
  position: relative;
  font-size: 1.2em;
  line-height: 100%;
  width: 90%;
  max-width: 360px;
  padding: 1em;
  font-weight: bold;
  color: #fff;
  filter: drop-shadow(0 3px 0 rgba(0, 0, 0, 0.15));
  -webkit-transition: opacity .3s;
  transition: color 0.3s, background-color 0.3s;
}

.archivePage .optionBox .btn_search::after {
  position: absolute;
  content: "";
  display: block;
  background: url(../img/common/icon_arrow.svg) no-repeat 0 0 / contain;
  width: 16px;
  height: 14px;
  right: 1em;
  top: calc(50% - 1vh);
  transition: 0.3s;
}

@media (any-hover: hover) {
  .archivePage .optionBox .btn_search:hover {
    color: var(--color-main);
  }
  .archivePage .optionBox .btn_search:hover::after {
    right: 0.5em;
      background: url(../img/common/icon_arrow_color.svg) no-repeat 0 0 / contain;
  }
}

.recordPage .itemList .List {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 4%;
}

.recordPage .itemList .item {
  width: 31%;
  max-width: 350px;
  background: var(--color-palegray);
  border-radius: 1rem;
  overflow: hidden;
  margin-top: 4%;
}

.recordPage .itemList .item:nth-of-type(3n-1) {
  margin-right: 3.5%;
  margin-left: 3.5%;
}

.recordPage .itemList .item a {
  display: block;
}

.recordPage .itemList .recordBox__item__photo {
  height: 19.5vw;
  max-height: 230px;
}

.recordPage .itemList .recordBox__item__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.recordPage .itemList .recordBox__item__info {
  padding: 4%;
}

.recordPage .itemList .recordBox__item__info__date {
  font-size: 12px;
  margin: 1% 0;
}

.recordPage .itemList .recordBox__item__info__title {
  font-weight: bold;
}

.recordPage .icon_txt.icon_record_type {
  background: var(--color-main);
  border-color: var(--color-main);
}

.recordPage .icon_txt.icon_record_area {
  background: #fff;
  border-color: var(--color-main);
  color: var(--color-main);
}


/*single*/
.recordPage .mainimgBox {
  margin-bottom: var(--gutter);
  text-align: center;
}

.recordPage .infoBox {
  margin-bottom: 4%;
}

.recordPage .infoBox h2 {
  font-size: 1.6em;
  font-weight: bold;
  padding: 0.5em 0;
  border-bottom: 2px solid var(--color-main);
}

.recordPage .infoBox__inner {
  display: flex;
  flex-wrap: wrap;
}

.recordPage .infoBox__inner__item {
  display: flex;
  width: 50%;
  margin-top: 1%;
}

.recordPage .infoBox__inner__item dt {
  padding: 0.5em;
  background: #F0F0F0;
  border: 1px solid #E0E0E0;
  width: 180px;
  text-align: center;
  flex-shrink: 0;
}

.recordPage .infoBox__inner__item dd {
  padding: 0.5em;
}

.recordPage .infoBox__inner__price,
.recordPage .infoBox__inner__place,
.recordPage .infoBox__inner__text {
  width: 100%;
}

.recordPage .infoBox__inner__price {
  font-size: 1.2em;
}

.recordPage .infoBox__inner__price .price {
  font-weight: bold;
}

.recordPage .infoBox__inner__price .unit {
  font-size: 0.75em;
}

.recordPage .voiceBox {
  margin: var(--gutter) auto;
}

.recordPage .voiceBox dt {
  padding: 0 0.5em;
  border-bottom: 1px solid var(--color-main);
  color: var(--color-main);
  min-height: 2.5em;
  position: relative;
  font-size: 1.2em;
}

.recordPage .voiceBox dd {
  padding: 2%;
  margin-bottom: 3%;
  line-height: 180%;
}

.recordPage-single .otherBox {
  margin-top: 4%;
}

.recordPage-single .otherBox .itemList .item {
  margin-top: 0;
}

/*==================================================
  PC/TABLET SETTINGS : Min768px
==================================================*/
@media print,
screen and (min-width: 768px) {

  #map {
    width: 100% !important;
    height: auto;
    margin: 0 auto 20px;
  }

  #map iframe {
    width: 100% !important;
    height: 350px !important;
  }


  /*
===== スタッフ紹介:staffPage ==========================================
*/
  /*一覧*/
  .staffPage .itemList .photo {
    width: clamp(150px, 15vw, 240px);
  }

  .staffPage .itemList .item {
    width: 31%;
    margin-bottom: 30px;
  }

  .staffPage .itemList .item:nth-child(3n-1) {
    margin: 0 1% 30px;
  }

  /*詳細*/
  .staffPage .staff_header {
    background-color: var(--color-palegray);
    margin-bottom: var(--gutter);
    padding: var(--gutter) 0;
  }

  .staffPage #detailBox #infoBox {
    display: flex;
    align-items: center;
  }

  .staffPage #detailBox .inner {
    width: 40%;
    display: inline-block;
    vertical-align: middle;
  }

  .staffPage #detailBox #titleBox {
    width: 100%;
    text-align: center;
  }

  .staffPage #detailBox #titleBox .ttl span {
    font-size: 1.8em;
  }

  .staffPage #detailBox #titleBox span.cate {
    margin-top: 10px;
    display: inline-block;
    font-size: 1.2em;
  }

  .staffPage #content {
    width: 59%;
    box-sizing: border-box;
    padding-left: 20px;
    display: inline-block;
    vertical-align: middle;
  }

  .staffPage #content p {
    font-size: 18px;
  }

  .staffPage #detailBox .photo {
    height: 324px;
  }

  .staffPage #articleBox {
    margin: var(--gutter) auto;
  }

  .staffPage #articleBox dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
  }

  .staffPage #articleBox dl dt {
    width: 34%;
    padding: 20px;
    margin-bottom: 10px;
  }

  .staffPage #articleBox dl dd {
    width: 66%;
    padding: 20px;
    margin-bottom: 10px;
  }

  .staffPage #detailBox #columnlinkBox {
    width: 60%;
  }

  .staffPage #detailBox #columnlinkBox .photo {
    width: 80px;
    height: 80px;
    margin-right: 20px;
  }

  .staffPage #detailBox #columnlinkBox .info {
    font-size: 1.2em;
  }


  /*
  ===== スタッフコラム:columnPage ==========================================
  */

  .columnPage .bottomBox p {
    text-align: center;
  }

  /*//////////////
イメージ用
///////////////*/
  .attachmentPage p {
    margin-bottom: 20px;
  }

  .attachmentPage .content ul {
    margin: 20px;
    padding: 20px;
    background: #F4F4F4;
    border: 1px solid #E6E6E6;
  }


  .researchPage .researchBox .preparation {
    text-align: center;
  }

}

/*==================================================
  TABLET SETTINGS : Max1010px Min767px
==================================================*/
@media print,
screen and (max-width: 1010px) and (min-width: 767px) {

  /*来店予約*/
  .shop-reservePage .staffBox img {
    position: relative;
    height: auto;
    width: 40%;
    margin-top: 30px;
  }

  .shop-reservePage .pointBox {
    width: 100%;
  }

  .shop-reservePage .staffBox {
    width: 100%;
    margin: var(--gutter) auto 0;
  }

}

/*==================================================
  SP SETTINGS : Max767px
==================================================*/
@media screen and (max-width: 767px) {

  /*==================================================
	GENERAL SETTINGS
==================================================*/
  .navigation {
    font-size: 1.2rem;
  }

  .gmap_view {
    margin: 10px;
    border: 1px solid #E6E6E6;
    height: 300px;
    clear: both;
  }

  .gmap_view img {
    width: auto !important;
  }

  .yolp-ymapbanner {
    width: 150px !important;
    top: inherit !important;
    right: inherit !important;
    bottom: 26px !important;
  }

  .yolp-ymapbanner img {
    width: 100% !important;
    height: auto !important;
  }

  .yolp-ctrl .map {
    width: auto !important;
  }

  .map {
    width: 98% !important;
    height: auto;
    margin: 10px auto;
    clear: both;
  }

  .map iframe {
    height: 300px !important;
  }

  .mapp-canvas,
  .mapp-layout {
    width: 98% !important;
    height: 300px;
    margin: auto;
    border: 1px solid #E6E6E6;
    clear: both;
  }

  #map {
    width: 100% !important;
    height: auto;
    margin: 0 auto 20px;
  }

  #map iframe {
    width: 100% !important;
    height: 300px !important;
  }

  /*ACFでMAPを表示*/
  .acf-map {
    height: 300px;
    margin: 0;
  }

  /*共通シングル*/
  .singlePage #articleBox .notice_tbl {
    width: 100%;
    border: 1px solid #E6E6E6;
    border-bottom: none;
  }

  .singlePage #articleBox .notice_tbl th {
    width: 100%;
    padding: 10px;
    display: block;
    border: none;
  }

  .singlePage #articleBox .notice_tbl td {
    padding: 10px;
    border: none;
    border-top: 1px solid #E6E6E6;
    border-bottom: 1px solid #E6E6E6;
    display: block;
  }

  .singlePage #btnBox {
    margin-bottom: 30px;
  }

  .singlePage #mapBox .ttl {
    padding: 10px;
  }

  /*
===== お知らせ:topicsPage ==========================================
*/
  /*お知らせ:一覧*/
  .topicsPage #postbox {
    margin-top: 0;
  }

  .topicsPage .errorBox {
    margin-top: var(--gutter);
  }

  .topicsPage .itemList .item a {
    padding: 5%;
  }

  .topicsPage .itemList ul.List li.item:nth-child(even) a {
    border-top: 1px solid #E0E0E0;
    border-bottom: 1px solid #E0E0E0;
  }

  .topicsPage .itemList .item:nth-child(odd) a {
    border: none;
    background-color: #fff;
  }

  .topicsPage .itemList .item dl dd {
    padding: 10px 0;
  }

  /*
===== イベント情報:eventPage  ==========================================
*/
  /*イベント情報:一覧*/
  .eventPage #postbox {
    margin-top: 0;
  }

  .eventPage .errorBox {
    margin-top: var(--gutter);
  }

  .eventPage .itemList li.item a {
    padding: 1% 2.5%;
  }

  .eventPage .itemList li.item .photo {
    width: 32%;
    margin: 0;
  }

  .eventPage .itemList li.item .info {
    width: 68%;
    padding: 10px 0 10px 10px;
  }

  .eventPage .itemList li.item .info .iconWrap {
    font-size: clamp(12px, 3.6vw, 16px);
  }

  .eventPage .itemList .item dt {
    margin: 5px 0;
  }

  .eventPage .itemList .item dd {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    line-height: 1.3;
  }

  .eventPage .itemList .item dd span {
    text-align: center;
    margin-right: 5px;
    min-width: 4em;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /*
===== スタッフコラム:columnPage ==========================================
*/
  /*スタッフコラム:一覧*/
  .columnPage #postbox {
    margin-top: 0;
  }

  .columnPage .errorBox {
    margin-top: var(--gutter);
  }

  .columnPage .itemList li.item {
    position: relative;
  }

  .columnPage .itemList li.item a {
    padding: 2.5%;
  }

  .columnPage .itemList li.item .photo {
    width: 32%;
    margin: 0;
  }

  .columnPage .itemList li.item .info {
    width: 68%;
    padding: 10px 0 0 10px;
  }

  .columnPage .itemList li.item .info .ttl {
    margin: 5px 0;
    padding: 0;
  }

  .columnPage .itemList li.item .iconWrap {
    font-size: 1.4rem;
  }

  .columnPage .itemList li.item .date {
    margin-right: 5px;
  }

  .columnPage .itemList .item .term {
    margin: 0;
  }

  /*スタッフコラム:詳細*/
  .columnPage #detailBox .term {
    position: static;
    text-align: left;
    margin: 0;
    font-size: 1.3rem;
  }

  .columnPage #detailBox .fbLike {
    background: var(--color-palegray);
    width: 100%;
    margin: 20px 0;
  }

  /*
===== よくある質問:qaPage ==========================================
*/
  .qaPage .itemList {
    margin-top: 0;
  }

  .qaPage #accordion dt.open:after {
    width: 25px;
    height: 25px;
  }

  .qaPage #accordion dt.close:after {
    width: 25px;
    height: 25px;
  }

  .qaPage #accordion dd {
    padding: 20px;
  }


  /*
===== 中古リフォーム事例:gallery_renovationPage ==========================================
*/
  /*中古リフォーム事例:一覧*/
  .gallery_renovationPage .itemList .List li.item {
    width: 100%;
    max-width: 370px;
    margin-right: auto;
    margin-left: auto;
  }

  .gallery_renovationPage .itemList li.item .iconWrap .icon_new {
    width: 60px;
    font-size: 1.6rem;
    top: -50px;
  }

  .gallery_renovationPage .itemList .List li.item:nth-child(3n-1) {
    margin-right: auto;
    margin-left: auto;
  }

  .gallery_renovationPage .itemList .ttl h3 {
    padding: 2.5%;
  }

  .gallery_renovationPage .itemList .info {
    padding: 2.5%;
  }

  .gallery_renovationPage .itemList .info dt,
  .gallery_renovationPage .itemList .info dd {
    margin: 2px 0;
    font-size: 1.4rem;
  }

  .gallery_renovationPage .itemList .info dt {
    width: 47%;
  }

  .gallery_renovationPage .itemList .info dd {
    width: 53%;
  }

  .gallery_renovationPage .itemList .info dd .price_note,
  .gallery_renovationPage .itemList .info dd .cost_note {
    font-size: 0.9em;
  }

  /*中古リフォーム事例:詳細*/
  .gallery_renovationPage #titleBox .secTtl {
    padding: 5px 0;
    text-align: center !important;
  }

  .gallery_renovationPage #titleBox .icon {
    position: relative;
    top: 0;
  }

  /*lightbox*/
  .gallery_renovationPage .lbwrap a:after {
    width: 20px;
    height: 20px;
  }

  /*スライド*/
  .gallery_renovationPage .sliderBox {
    width: 100%;
    margin: 10px auto;
  }

  .gallery_renovationPage .sliderBox .slider__list {
    margin: 20px;
  }

  /* スライドページャー */
  .gallery_renovationPage .sliderBox .gallery_slider_pager {
    padding: 5px 0;
  }

  .gallery_renovationPage .sliderBox .gallery_slider_pager li {
    margin: 2px;
    width: 64px !important;
  }

  /* 写真と金額 */
  .gallery_renovationPage .infoBox {
    flex-direction: column;
  }

  .gallery_renovationPage .infoBox__photo {
    width: 100%;
    margin: 0 auto 20px;
  }

  .gallery_renovationPage .infoBox__inner {
    width: 100%;
    margin: 0 auto;
  }

  .gallery_renovationPage .infoBox__inner__priceBox {
    padding: 0.5em;
  }

  .gallery_renovationPage p {
    margin-bottom: 3%;
  }

  .gallery_renovationPage .infoBox__inner__priceBox p .price {
    margin: 0;
  }

  .gallery_renovationPage .infoBox__inner__costBox {
    margin: 2%;
  }

  .gallery_renovationPage .infoBox__inner__costBox p .price02 {
    margin: 0 0.1em 0 0;
  }

  .gallery_renovationPage .infoBox__inner__costBox__txt {
    display: block;
  }

  /*概要*/
  .gallery_renovationPage #dataBox dl {
    border: none;
  }

  .gallery_renovationPage #dataBox dt,
  .gallery_renovationPage #dataBox dd {
    padding: 2.5%;
    width: 100%;
    border: none;
  }

  .gallery_renovationPage #dataBox dd {
    font-size: 0.9em;
  }

  /*BEFORE/AFTER*/
  .gallery_renovationPage #baBox dd.ba_before,
  .gallery_renovationPage #baBox dd.ba_after {
    border: 4px solid #FFF;
  }

  /*
===== モデルルーム:modelroomPage  ==========================================
*/

  /*モデルルーム:一覧*/
  .modelroomPage .itemList .List li.item {
    width: 100%;
    max-width: 370px;
    margin-right: auto;
    margin-left: auto;
  }

  .modelroomPage .itemList .List li.item:nth-child(3n-1) {
    margin-right: auto;
    margin-left: auto;
  }

  .modelroomPage .itemList li.item .iconWrap__new .icon_new {
    width: 60px;
    font-size: 1.6rem;
    top: -40px;
  }

  /*lightbox*/
  .modelroomPage .lbwrap a:after {
    width: 20px;
    height: 20px;
  }

  /*スライド*/
  .modelroomPage .sliderBox {
    width: 100%;
    margin: 10px auto;
  }

  .modelroomPage .sliderBox .slider__list {
    margin: 20px;
  }

  /* スライドページャー */
  .modelroomPage .sliderBox .pager__list {
    padding: 5px 0;
  }

  .modelroomPage .sliderBox .pager__list__item {
    margin: 2px;
    width: 64px !important;
  }

  /* pickupBox */
  .modelroomPage .pickupBox ul {
    margin: 0;
  }

  .modelroomPage .pickupBox ul li {
    flex-direction: column;
    width: 100%;
    padding: 5%;
    margin-bottom: 0;
  }

  .modelroomPage .pickupBox ul li:nth-child(2n) {
    flex-direction: column;
    background: #eee;
  }

  .modelroomPage .pickupBox ul li .imgBox {
    width: 100%;
    margin: 10px auto 0;
    background-color: #fff;
  }

  .modelroomPage .pickupBox ul li .textBox {
    width: 100%;
  }

  .modelroomPage .pickupBox ul li .textBox .number {
    display: inline-block;
  }

  .modelroomPage .pickupBox ul li .textBox .ttl {
    display: inline-block;
  }

  /*
===== 会社案内:companyPage ==========================================
*/
  .companyPage .contents-inner .entrytbl td {
    border-bottom: 1px solid #E6E6E6;
  }

  .companyPage .tblwrap table caption {
    font-size: 1.2em;
    font-weight: bold;
    padding: 10px 0;
  }

  /*
===== プライバシーポリシー:privacyPage ==========================================
*/
  .privacyPage .contents-inner p,
  .privacyPage .contents-inner dd {
    line-height: 170%;
  }

  .privacyPage .contents-inner dl dt {
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: 5%;
  }

  .privacyPage .contents-inner dl dd {
    margin-top: 2.5%;
  }

  .privacyPage .contents-inner ul {
    margin: 5%;
  }

  .privacyPage .contents-inner ul li {
    margin-bottom: 5%;
  }

  /*
===== サイトマップ:sitemapPage ==========================================
*/
  .sitemapPage .contents-inner ul {
    width: 100%;
  }

  .sitemapPage .contents-inner ul li {
    margin: 2.5% 0;
  }

  .sitemapPage .contents-inner ul li:first-child {
    margin-top: 0;
  }

  .sitemapPage .contents-inner ul li a {
    padding: 5%;
  }

  /*
===== お問い合わせ:contactPage ==========================================
*/
  /*来店予約ページ*/

  .shop-reservePage .ttlWrap {
    height: clamp(140px, 40vw, 310px);
    background-position: left center;
    background-size: auto 110%;
  }

  .shop-reservePage .ttlWrap .mainTtl {
    background:
      url(../img/page/shop_reserve/main_ttl.webp) no-repeat,
      linear-gradient(90deg, transparent 0%, transparent 50%, #fff 51%);
    background-position: right -20% center;
    background-size: auto 100%;
    max-width: 100%;
  }

  .shop-reservePage #bread {
    top: clamp(140px, 40vw, 310px);
  }

  .shop-reservePage .meritBox__itemList {
    justify-content: center;
  }

  .shop-reservePage .meritBox__item {
    width: 100%;
    margin-bottom: var(--gutter-narrow);
  }

  .shop-reservePage .meritBox__item:last-child {
    margin-bottom: 0;
  }

  .shop-reservePage .meritBox__item .photo {
    width: 177px;
    margin: 0 auto;
  }

  .shop-reservePage .meritBox__item .info {
    height: inherit;
    padding: 1em 1em 0;
  }

  .shop-reservePage .appealBox__ttlBox {
    flex-direction: column;
    align-items: center;
  }

  .shop-reservePage .appealBox__ttlBox h2 {
    padding-bottom: 0;
    font-size: clamp(1.7rem, 5.5vw, 2rem);
    line-height: 1.5;
  }

  .shop-reservePage .appealBox__ttlBox img {
    margin: 0;
    max-width: 70%;
  }

  .shop-reservePage .pointBox {
    width: 100%;
  }

  .shop-reservePage .staffBox {
    width: 100%;
    margin: var(--gutter) auto 0;
  }

  .shop-reservePage .staffBox img {
    position: relative;
    height: auto;
    width: 70%;
  }

  .shop-reservePage .staffBox li {
    margin-bottom: 120px;
    width: 70%;
  }

  .shop-reservePage .staffBox li:nth-child(2n) {
    transform: translateY(-97px);
  }

  /* 来店予約フロー */
  .shop-reservePage .flowBox {
    padding: 0 2%;
  }

  .shop-reservePage .flowList {
    flex-direction: column;
    gap: 10px;
  }

  .shop-reservePage .flowItem {
    width: 100%;
    padding: 10px 10px 10px 40px;
    display: block;
    position: relative;
  }

  .shop-reservePage .flowItem h3 {
    text-align: left;
    margin-bottom: 0;
    font-size: clamp(13px, 4vw, 16px);
  }

  .shop-reservePage .flowItem h3 .num {
    top: 50%;
    left: -0.5em;
    transform: translateY(-50%);
  }

  .shop-reservePage .flowItem p br {
    display: none;
  }

  .shop-reservePage .flowItem p {
    text-align: left;
    margin-bottom: 10px;
    font-size: 14px;
    width: 80%;
  }

  .shop-reservePage .flowItem .icon {
    width: 14%;
    text-align: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
  }

  .shop-reservePage .flowItem:first-of-type img {
    max-height: unset;
    width: 100%;
  }

  .shop-reservePage .flowItem:nth-of-type(2) img,
  .shop-reservePage .flowItem:nth-of-type(3) img {
    width: 80%;
  }

  .shop-reservePage .flowItem:nth-of-type(4) img {
    width: 65%;
    max-height: unset;
  }

  .shop-reservePage .flowItem.finish h3 .num {
    margin-right: 0.6em;
  }

  .shop-reservePage .flowBox .comment {
    font-size: clamp(18px, 5vw, 23px);
  }

  /* カタログ資料請求ページ */
  .catalogPage .ttlWrap {
    height: 140px;
  }

  .catalogPage .ttlWrap .mainTtl {
    font-size: clamp(2rem, 6vw, 2.2rem);
  }

  .catalogPage .ttlWrap::after {
    margin: 0;
  }

  /* 売却相談無料査定ページ */
  .sellers-contactPage .ttlWrap {
    height: clamp(140px, 40vw, 310px);
    background-position: left center;
    background-size: auto 110%;
  }

  .sellers-contactPage .ttlWrap .mainTtl {
    background:
      url(../img/page/shop_reserve/main_ttl.webp) no-repeat,
      linear-gradient(90deg, transparent 0%, transparent 50%, #fff 51%);
    background-position: right -20% center;
    background-size: auto 100%;
    max-width: 100%;
  }

  .sellers-contactPage #bread {
    top: clamp(140px, 40vw, 310px);
  }

  .sellers-contactPage .introBox__txtBox {
    width: 100%;
  }

  .sellers-contactPage .pointBox__item {
    width: min(90%, 430px);
    padding: 0;
  }

  .sellers-contactPage .pointBox__item img {
    max-width: 50%;
  }

  .sellers-contactPage .pointBox__item:nth-child(2) {
    border: none;
    border: none;
    padding: var(--gutter-narrow) 0;
    margin: var(--gutter-narrow) 0;
    border-top: 2px dotted var(--color-lightbrown);
    border-bottom: 2px dotted var(--color-lightbrown);
  }

  /*
===== image用 ==========================================
*/
  .attachmentPage p {
    margin-bottom: 20px;
  }

  .attachmentPage .content ul {
    margin: 20px;
    padding: 20px;
    background: #F4F4F4;
    border: 1px solid #E6E6E6;
  }

  .researchPage .researchBox .preparation {
    text-align: center;
  }

  /*
===== 予約モーダル ==========================================
*/
  #yoyaku_modal .modal_item dl {
    display: inline-block;
    position: relative;
    padding-bottom: 60px;
    width: 100%;
  }

  #yoyaku_modal .modal_item dd {
    width: calc(100% - 115px);
    display: inline-block;
  }

  #yoyaku_modal .modal_item .ttl {
    font-size: 1.1em;
  }

  #yoyaku_modal .modal_item .data {
    margin: 5px;
  }

  #yoyaku_modal .modal_item .photo {
    display: inline-block;
    vertical-align: top;
    margin-right: 0;
    width: 100px;
    height: 80px;
  }

  #yoyaku_modal .modal_item .btn {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    width: calc(100% - 20px);
    margin: 0;
    white-space: nowrap;
    font-size: 0.9em;
  }


  /*
  ===== recordPage ==========================================
  */

  /*archive*/
  .archivePage .optionBox {
    margin-top: var(--gutter);
  }

  .archivePage .optionBox__itemList__item {
    margin: 0 0 2%;
    width: 50%;
  }

  .archivePage .optionBox__itemList__item:first-of-type {
    width: 100%;
  }

  .archivePage .optionBox__itemList__item input {
    display: none;
  }

  .archivePage .optionBox__itemList__item label {
    width: 96%;
    min-width: auto;
    max-height: 4em;
    margin: 0 auto;
  }

  .recordPage .itemList {
    display: block;
    padding-top: 3%;
  }

  .recordPage .itemList .item,
  .recordPage .itemList .item:nth-of-type(3n-1) {
    width: 96%;
    margin: 4% auto;
  }

  .recordPage .itemList .recordBox__item__photo {
    height: 58.5vw;
  }

  /*single*/
  .recordPage .infoBox {
    margin: 4% auto;
  }

  .recordPage .infoBox h2 {
    font-size: 1.2em;
  }

  .recordPage .infoBox__inner {
    display: block;
  }

  .recordPage .infoBox__inner__item {
    width: 100%;
  }

  .recordPage .infoBox__inner__item dt {
    width: 30%;
    flex-shrink: 0;
  }

  .recordPage .infoBox__inner__price {
    font-size: 1em;
  }

  .recordPage .voiceBox dt {
    font-size: 1em;
  }

}