@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@4.0.0/dist/css/yakuhanjp.css');

:root {
  --font-family: YakuHanJP, "Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,sans-serif;
  --font-family-en: "Roboto", sans-serif;
  --main-color: #333;
  --base-color: #165ca9;
  --accent-color: #009fe8;
  --point-color: #bd8968;
  --price-color: #e50012;
  --kitchen-color: #ea6877;
  --kitchen-bg: #fef2f4;
  --kitchen-title-line: #f19da7;
  --kitchen-line: #ef8e99;
  --bathroom-color: #1f96cd;
  --bathroom-bg: #e5f4fc;
  --bathroom-title-line: #6dbbde;
  --sanitary-color: #329677;
  --sanitary-bg: #eaf5ec;
  --sanitary-title-line: #7abba7;
  --safety-color: #67835e;
  --safety-bg: #e9ece7;
  --safety-title-line: #9cae96;
  --section-bg: #f5f5f5;  
  --lettering-base: .03em;
  --lettering-en: .08em;
  --section-padding: 130px;
  --section-padding-sp: 10.416667vw;
  --section-end-padding: 55px;  
  --section-end-padding-sp: 7.8125vw;  
  --product-area-padding: 120px;
  --product-image-margin-mid: 45px;
  --product-image-margin-sp: 28px;    
  --whole-padding: 40px;
  --whole-padding-sp: 5.208333vw;
  --header-hight: 80px;
  --header-hight-sp: 60px;
}
* {
  --min-viewport: 375;
  --max-viewport: 1280;  
  --slope: calc((var(--max-size) - var(--min-size)) / (var(--max-viewport) - var(--min-viewport)));
  --intercept: calc(var(--min-size) - var(--slope) * var(--min-viewport));
  --fluid-size: calc(var(--slope) * 100vw + var(--intercept) / 10 * 1rem);
  --clamp-size: clamp(var(--min-size) / 10 * 1rem, var(--fluid-size), var(--max-size) / 10 * 1rem);
  min-height: 0vw;
}
body {
  position: relative;
  line-height: 1.85;
  letter-spacing: var(--lettering-base);
  font-size: 1.6rem;
  font-family: var(--font-family);
  font-weight: 500;
  color: var(--main-color);
}
.wrap {
  display: flex;
}
.fits {
  justify-content: space-between;
}
.vertical {
  align-items: center;
}
.return {
  flex-flow: row wrap;
}
.column {
  flex-direction: column;
}
.midst {
  justify-content: center;
}
.gridbox {
  display: grid;
}
section, .section {
  padding: var(--section-padding) 0;
}
.flat-section {
  padding-bottom: 0!important;
}
.end-section {
  padding-bottom: var(--section-end-padding);
}
.container {
  margin: 0 auto;
  padding: 0 8.334%;
  width: 100%;
  max-width: 1800px;
}
.turn {
  background: var(--section-bg);
}
.turn-kitchen {
  background: var(--kitchen-bg);  
}
.turn-bathroom {
  background: var(--bathroom-bg);  
}
.turn-sanitary {
  background: var(--sanitary-bg);  
}
.turn-safety {
  background: var(--safety-bg);  
}
.en {
  letter-spacing: var(--lettering-en);
  font-family: var(--font-family-en);
}
.heading, .head-subtxt {
  text-align: center;
}
.heading {
  line-height: 1;
  font-weight: 500;
  --max-size: 58;
  --min-size: 28;
  font-size: var(--clamp-size);
  color: var(--main-color);
}
.head-subtxt {
  margin: .55em 0 50px;
  line-height: 1.4;
  --max-size: 23;
  --min-size: 14;
  font-size: var(--clamp-size);
  font-weight: 700;
  color: var(--base-color);
}
.newline {
  display: inline-block;
}
/* パーツ */
.slash-heading span {
  position: relative;
  display: inline-block;
  padding: 0 2.2em;
  letter-spacing: .05em;
  line-height: 1.4;
  --max-size: 29;
  --min-size: 18;
  font-size: var(--clamp-size);
  font-weight: 700;
  color: var(--base-color);
}
.slash-heading span::before, .slash-heading span::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 3px;
  background: var(--accent-color);
  transform: rotate(70deg);
}
.slash-heading span::before {
  left: 0;
}
.slash-heading span::after {
  right: 0;
  transform: rotate(-70deg);
}
.slash-heading span.newline {
  padding: 0;
}
.slash-heading span.newline::before, .slash-heading span.newline::after {
  content: none;
}
.kitchen-slash span {
  color: var(--kitchen-color);
}
.bathroom-slash span {
  color: var(--bathroom-color);
}
.sanitary-slash span {
  color: var(--sanitary-color);
}
.safety-slash span {
  color: var(--safety-color);
}
.kitchen-slash span::before, .kitchen-slash span::after {
  background: var(--kitchen-color);
}
.bathroom-slash span::before, .bathroom-slash span::after {
  background: var(--bathroom-color);
}
.sanitary-slash span::before, .sanitary-slash span::after {
  background: var(--sanitary-color);
}
.safety-slash span::before, .safety-slash span::after {
  background: var(--safety-color);
}
.circle-link-btn {
  display: inline-block;
  margin-top: auto;
  width: 100%;
}
.product__article__link .circle-link-btn {
  width: auto;
}
.circle-btn {
  position: relative;
  overflow: inherit!important;
}
.c-btn-txt {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  width: calc(100% - 70px);
  height: 62px;
  background: var(--point-color);
  border-radius: 9999px;
  font-weight: 700;
  --max-size: 17;
  --min-size: 15;
  font-size: var(--clamp-size);
  color: #fff;
}
.request-btn .c-btn-txt {
  font-size: 1.9rem;
}
.btn-icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 8px;
  width: 62px;
  height: 62px;
}
.btn-icon-base {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-radius: 50%;
  background: var(--point-color);
  z-index: 1;
}
.btn-icon-arrow {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background-position: 50%;
  background-position: 51%;
  background-repeat: no-repeat;
  background-size: 7px 12px;
  background-image: url(assets/images/arrow_w.svg);
  z-index: 2;
}
.shadow-title {
  border-style: solid;
  border-width: 1px;
  border-radius: 40px;
  background: #fff;
  text-align: center;
  line-height: 1;
  font-weight: 700;
  --max-size: 23;
  --min-size: 17;
  font-size: var(--clamp-size);
}
.kitchen-shadow {
  border: solid 1px var(--kitchen-title-line);
  box-shadow: 0 3px 8px rgba(234, 104, 119, 0.3);
}
.bathroom-shadow {
  border-color: var(--bathroom-title-line);
  box-shadow: 0 3px 8px rgba(31, 150, 205, 0.3);
}
.sanitary-shadow {
  border-color: var(--sanitary-title-line);
  box-shadow: 0 3px 8px rgba(50, 150, 119, 0.3);
}
.safety-shadow {
  border-color: var(--safety-title-line);
  box-shadow: 0 3px 8px rgba(103, 131, 94, 0.3);
}
.base-shadow {
  border-color: #457dba;
  box-shadow: 0 3px 8px rgba(69, 125, 186, 0.3);
}
.dashed-line {
  background-image: linear-gradient(to right, var(--base-color) 5px, transparent 5px);
  background-size: 8px 1px;
  background-repeat: repeat-x;
  background-position: left bottom;
}
.kitchen-dashed {
  background-image: linear-gradient(to right, var(--kitchen-color) 5px, transparent 5px);
}
.bathroom-dashed {
  background-image: linear-gradient(to right, var(--bathroom-color) 5px, transparent 5px);
}
.sanitary-dashed {
  background-image: linear-gradient(to right, var(--sanitary-color) 5px, transparent 5px);
}
.safety-dashed {
  background-image: linear-gradient(to right, var(--safety-color) 5px, transparent 5px);
}
.circle-list-item {
  text-indent: calc(-11px + (-.5em));
  margin-left: calc(11px + .5em);
  line-height: 1.6;
}
.circle-list-item::before {
  content: "";
  display: inline-block;
  margin-right: 7px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--kitchen-color);
}
.circle-list-item + .circle-list-item {
  margin-top: .5em;
}
.details__list .circle-list-item {
  text-indent: calc(-10px + (-.5em));
  margin-left: calc(10px + .5em);
}
.details__list .circle-list-item::before {
  width: 10px;
  height: 10px;
}
.bathroom-c-list .circle-list-item::before {
  background: var(--bathroom-color);
}
.sanitary-c-list .circle-list-item::before {
  background: var(--sanitary-color);
}
.safety-c-list .circle-list-item::before {
  background: var(--safety-color);
}
html, body {
  height: 100%;
}
header {
  height: var(--header-hight);
  padding: 0 var(--whole-padding);
  background: #fff;
}
.headbox__logo a {
  display: block;
}
#gnavi {
  margin-left: auto;
}
.gnavilist {
  position: relative;
}
.gnavilist__item {
  line-height: 1;
  letter-spacing: .07em;
  font-size: 1.5rem;
  font-weight: 700;
}
.gnavilist__item + .gnavilist__item {
  margin-left: 2.222222vw;
}
.gnavilist__item a {
  display: block;
}
.gnavi-flow a, .gnavi-contact a {
  padding: .6em 1.5em;
  border-radius: 2em;
  font-size: 1.4rem;
  color: #fff;
}
.gnavi-flow a {
  background: var(--accent-color);
}
.gnavi-contact a {
  background: var(--base-color);  
}
.gnavilist__item.gnavi-contact {
  margin-left: .69444444vw;
}
/* index */
.topvisual {
  position: relative;
/*   margin-top: 50px; */
/* 	padding: 60px 0; */
	padding: 4.1666666vw 0;
  width: 100%;
/*   height: calc(100% - 80px); */
	background: #f2ece8;
}
/*
.topvisual::before, .topvisual::after {
  content: '';
  display: block;
  position: absolute;
  width: 50%;
  height: 100%;
  background-size: cover!important;
  z-index: 1;
}
.topvisual::before {
  left: 0;
  top: 0;
  border-top-left-radius: 90px;
  background: url(assets/images/index/topvisual_left.jpg) no-repeat 84% center;
}
.topvisual::after {
  right: 0;
  bottom: 0;
  border-bottom-right-radius: 90px;
  background: url(assets/images/index/topvisual_right.jpg) no-repeat 45% center;
}
*/
.topvisual__title {
  position: relative;
/*   width: 23.6111111vw; */
  width: 26.3888888vw;
  z-index: 2;
}
.topvisual__title img {
  width: 100%;
}
.topvisual__caption {
  position: absolute;
  right: 60px;
  bottom: 25px;
  text-align: right;
  line-height: 1.5;
  font-size: 1.3rem;
  color: #fff;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, .8);
  z-index: 2;  
}
.lead {
/*   margin-top: 140px; */
  margin-top: 90px;
}
.lead__txt {
  letter-spacing: .05em;
  text-align: center;
  line-height: 1.6;
  font-weight: 700;
  --max-size: 27;
  --min-size: 18;
  font-size: var(--clamp-size);
}
.lead__txt::before, .lead__txt::after {
  content: "";
  display: block;
  margin: 0 auto 32px;
  width: 300px;
  height: 4px;
  background: linear-gradient(to right, #004097 25%, #7dccf3);
}
.lead__txt::after {
  margin: 32px auto 0;
  background: linear-gradient(to left, #004097 25%, #7dccf3);
}
#lineup {
  padding-top: 90px;
}
.line-up {
  margin-top: -15px;
}
.line-up .section {
  padding: 105px 0;
}
.line-up .lineup__section__kitchen {
  padding-top: 115px;
}
.line-up__head {
  position: relative;
  top: 15px;
  z-index: 2;
}
.line-up__subtitle {
  margin-bottom: 0;
}
.line-up-container {
  grid-template-rows: 65px auto auto;
  column-gap: 60px;
  grid-auto-flow: row;
}
.line-up-container.right-area {
  grid-template-columns: 0 28% 66.5%;
  grid-template-areas:
    "box title pickup"
    "box cat pickup"
    "box btn pickup";
  justify-content: right;
}
.line-up-container.left-area {
  grid-template-columns: 66.5% 28% 0;  
  grid-template-areas:
    "pickup title box"
    "pickup cat box"
    "pickup btn box";
  justify-content: left;
}
@media screen and (min-width: 1440px) {
  .line-up-container.right-area {
    grid-template-columns: .12fr 1fr 2.15fr;
  }
  .line-up-container.left-area {
    grid-template-columns: 2.15fr 1fr .12fr;  
  }
}
.cat-name { 
  grid-area: title;
}
.cat-summary { 
  grid-area: cat;
}
.cat-linkbtn { 
  grid-area: btn;
}
.pickup-product { 
  grid-area: pickup;  
  padding: 45px 50px 50px 50px;
  width: 100%;
  background: #fff;
  border-radius: 20px;
}
.line-up .shadow-title {
  width: 260px;
  height: 62px;
}
.lineup-title, .lineup-list {
  margin-left: 10px;
}
.lineup-title {
  margin-top: .6em;
  padding-bottom: .69444444vw;
  line-height: 1.4;
  font-weight: 700;
  --max-size: 35;
  --min-size: 21;
  font-size: var(--clamp-size);
}
.lineup-list {
  margin-top: 1.38888888vw;
  line-height: 1.4;
  font-weight: 700;
  --max-size: 19;
  --min-size: 17;
  font-size: var(--clamp-size);
}
.lineup-item + li {
  margin-top: .38194444vw;
}
.pickup-wrap {
  padding: 45px 50px 50px 50px;
  width: 100%;
  background: #fff;
  border-radius: 20px;
}
.pickup-box {
  column-gap: 40px;
  grid-template-columns: 1.192fr 1fr;
}
.pickup-titlebox {
  margin-bottom: 35px;
  text-align: center;
}
.pickup-titlebox > p {
  display: inline;
  vertical-align: middle;
}
.pickup.slash-heading span, .pickup-en-title.slash-heading span {
  padding: 0 1.9em;
  font-size: 1.7rem;
}
.pickup-en-title.slash-heading span::before, .pickup-en-title.slash-heading span::after {
  width: 23px;
  height: 2px;
}
.pickup-title {
  margin-left: .8em;
  line-height: 1.4;
  font-weight: 700;
  --max-size: 23;
  --min-size: 18;
  font-size: var(--clamp-size);
}
.pickup-img {
  aspect-ratio: 31 / 24;
}
.pickup-img img {
  width: 100%;
  min-width: 310px;
}
.pickup-list-item {
  text-indent: -18px;
  margin-left: 18px;
  line-height: 1.65;
}
.pickup-list-item::before {
  content: "";
  display: inline-block;
  margin-right: 7px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
}
.pickup-list-item + li {
  margin-top: .5555555vw;
}
.product-kitchen__title, .pickup__kitchen__title {
  color: var(--kitchen-color);
}
.product-bathroom__title, .pickup__bathroom__title {
  color: var(--bathroom-color);
}
.product-sanitary__title, .pickup__sanitary__title {
  color: var(--sanitary-color);
}
.product-safety__title, .pickup__safety__title {
  color: var(--safety-color);
}
.pickup__kitchen__item::before {
  background: var(--kitchen-color);
}
.pickup__bathroom__item::before {
  background: var(--bathroom-color);
}
.pickup__sanitary__item::before {
  background: var(--sanitary-color);
}
.pickup__safety__item::before {
  background: var(--safety-color);
}
/* キッチン */
.page-head {
  width: 100%;
  height: 400px;
  background-size: cover!important;  
}
#kitchen .page-head {
  background: url(assets/images/kitchen/main_visual.jpg?v2) no-repeat center bottom;
}
.page-head__title {
  text-align: center;
}
.page-head__txt {
  display: block;
  margin-top: .2em;
  line-height: 1;
  font-weight: 700;
  --max-size: 38;
  --min-size: 23;
  font-size: var(--clamp-size);
  color: #fff;
}
.product-area {
  padding: var(--product-area-padding) 0;
}
.product-first-area {
  padding-bottom: var(--product-area-padding);
}
.product-end-area {
  padding-top: var(--product-area-padding);
}
.leading-txt {
  margin-bottom: 65px;
  text-align: center;
}
.leading-txt span {
  --max-size: 27;
  --min-size: 18;
  font-size: var(--clamp-size);
}
.builtin__image {
  position: relative;
  margin-top: 55px;
  padding-top: 45%;
  width: 100%;
  height: 100%;
  background: url(assets/images/kitchen/topimage.jpg?v2) no-repeat center center;
  background-size: cover!important;
  aspect-ratio: 20 / 9;
}
.builtin__txt {
  position: absolute;
  left: 45px;
  bottom: 30px;
  line-height: 1.5;
  --max-size: 26;
  --min-size: 16;
  font-size: var(--clamp-size);
  color: #fff;
}
.product-cat {
  margin: 0 auto;
  padding: .8em 1em;
  width: 380px;
}
.product__article {
  margin: 70px 0 115px;
}
.main-article {
	margin-top: 50px;
}
.product-txtbox {
  width: 50.8333333%;
}
.product-imgbox {
  width: 44.1666666%;
}
#builtin .product-imgbox {
	padding-top: 2.7em;	
}
.series-name {
  padding-bottom: .5em;
  font-size: 1.8rem;
  color: var(--kitchen-color);
}
.main-article .series-name {
  font-size: 1.9rem;  
}
.product-title {
  padding: 22px 0;
  border-top: solid 3px var(--kitchen-line);
}
.product-number {
  margin-right: 15px;
  width: 32px;
  height: 32px;
  border-radius: 3px;
  background: var(--main-color);
}
.product-number > span {
  position: relative;
  right: .05em;
  line-height: 1;
  letter-spacing: -.045em;
  font-weight: 500;
  font-size: 2.0rem;
  color: #fff;  
}
.main-article .product-number {
  width: 34px;
  height: 34px;
}
.main-article .product-number > span {
  font-size: 2.2rem;
}
.product-logo {
  display: flex;
  margin-right: 15px;
}
.product-name {
  text-align: left;
  line-height: 1.4;
  font-weight: 700;
  --max-size: 20;
  --min-size: 17;
  font-size: var(--clamp-size);
}
.main-article .product-name {
  --max-size: 22;
  --min-size: 17;
  font-size: var(--clamp-size);
}
.product-summary {
  padding-top: 25px;
}
.main-article .product-summary {
  padding: 40px 0 45px;
}
.product__article__price {
  position: relative;
  font-size: 1.5rem;
}
.main-article .product__article__price {
  font-size: 1.6rem;
}
.retail-price {
  line-height: 1.75;
}
.price-details {
  margin-top: 15px;
  color: var(--price-color);
}
.main-article .price-details {
  margin-top: 20px;
}
.price-title {
  width: 144px;
  height: 37px;
  margin-right: 18px;
  padding: .3em .8em;
  border: solid 1px var(--main-color);
  border-radius: 4px;
  line-height: 1.4;
  text-align: center;
  font-size: 1.4rem;
  color: var(--main-color);
}
.main-article .price-title {
  width: 156px;
  height: 41px;
  font-size: 1.5rem;
}
.pricetitle-m {
  width: 160px;
  height: 58px;
}
.pricetitle-l {
  width: 170px;
  height: 65px;
}
.price-txt {
  margin-top: -.4em;
  line-height: 1;
  font-weight: 700;
  font-size: 1.5rem;
}
.emphasis-price .price-txt {
  font-size: 1.7rem;
}
.price {
  font-size: 4.0rem;
}
.emphasis-price .price {
  font-size: 4.6rem;
}
.yen {
  font-size: 2.0rem;
}
.emphasis-price .yen {
  font-size: 2.3rem;
}
.price-off {
  position: absolute;
  top: 0;
  right: 0;
  width: 100px;
  height: 100px;
  background: var(--price-color);
  border-radius: 50%;
  line-height: 1;
  letter-spacing: .02em;
  font-size: 2.6rem;
  font-weight: 700;
  color: #fff;
}
.discount-rate {
  font-size: 3.0rem;
}
.product-details {
  margin-top: 20px;
}
.main-article .product-details {
  margin-top: 30px;
}
.details-list-item {
  letter-spacing: 0;
  line-height: 1.4;
}
.details-list-item + .details-list-item {
  margin-top: .4em;
}
.productimg.delicia-image {
	padding-bottom: 35px;
}
.delicia-feature {
	width: 46%;
}
.delicia-accessories {
  padding: 20px 28px;
  width: 47.54089836%;
  width: 50%;
  background: #fff;
  border-radius: 10px;
  text-align: center;
  line-height: 1.5;
  letter-spacing: -.05em;
}
.delicia-accessories__image {
  width: 60%;
}
.delicia-accessories__image img {
  width: 100%;
}
.product__article__notes {
  margin-top: .8em;
}
.main-article .product__article__notes {
  margin-top: 2.2em;
}
.notes {
  text-indent: -1em;
  margin-left: 1em;
  line-height: 1.55;
  font-size: 1.3rem;
}
.notes-s {
  font-size: 1.2rem;
}
.notes li + li {
  margin-top: .3em;
}
.product__article__point__title {
  padding: .8em 1em;
  background: #ee8692;
  border-radius: 9999px;
  line-height: 1.4;
  text-align: center;
  font-weight: 700;
  font-size: 1.9rem;
  color: #fff;
}
.main-article .product__article__point__list__item + .product__article__point__list__item {
  margin-top: 20px;
}
.pointlist-image {
  overflow: hidden;  
  width: 49.0566038%;
  max-height: 200px;
}
.pointlist-txt {
  width: 45.2830189%;
  line-height: 1.65;
}
.pointlist-title {
  margin-bottom: .5em;
  text-align: left;
  line-height: 1.4;
  font-weight: 700;
  font-size: 1.7rem;
  color: var(--kitchen-color);
}
.pointlist-txt dd {
  font-size: 1.5rem;  
}
.main-article .pointlist-title {
  font-size: 1.9rem;
}
.product__article__movie {
  margin: 140px auto 0;
  width: 536px;
}
#builtin .product__article__movie {
	margin-top: 90px;
}
.movie-link {
  position: relative;  
}
.movie-linkbtn a {
  display: block;
  padding: 1em 2.5em;
  width: 480px;
  border-radius: 5px;
  background: #f1e500;
  font-size: 2.1rem;
}
.movie-linkbtn a::after {
  content: '';
  position: relative;
  top: 6px;
  display: inline-block;
  margin-left: 15px;
  width: 30px;
  height: 30px;
  background: url(assets/images/arrow_movie.svg) no-repeat;
}
.movie-illust {
  position: absolute;
  bottom: -8px;
  right: 0;
}
.product__article__movie .notes {
  margin-top: 1.5em;
  text-align: center;
}
.product__article__link {
  margin-top: 60px;
  text-align: center;
}
.main-article .product__article__link {
  margin-top: 40px;
}
.product__article__link .c-btn-txt {
  width: 490px;
}
.large-btn .c-btn-txt {
  width: 460px;
  height: 68px;
  font-size: 2.0rem;
}
.large-btn .btn-icon {
  width: 68px;
  height: 68px;
}
.product__list {
  gap: 95px 6.6666666%;
  grid-template-columns: 1fr 1fr;  
}
#other .product__list {
  gap: 120px 6.6666666%;
}
.product__list + .differ-list {
  margin-top: 120px;
  grid-template-columns: 46.666666%;
  justify-content: center;
}
.product__list__item {
  width: 100%;
}
.product__list__image {
  padding-top: 38px;
}
.product__list__image {
  aspect-ratio: 5 / 2;
  text-align: center;
}
.product__list__image.differ-image {
  aspect-ratio: 28 / 13;
}
.productimg {
  width: 64.2857143%;
}
.accessories {
  width: 30.3571429%;
}
.accessories-caption {
  margin-top: .85em;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0;
  font-size: 1.4rem;
}
.productimg img, .accessories img {
  width: 100%;
  height: auto;
}
#rangehood {
  margin: 0 auto;
}
.product__list__summary {
  flex-grow: 1;
}
.product__list__item .product-summary {
  padding: 25px 0 30px;
}
.product__list__price {
  position: relative;
  font-size: 1.5rem;
  justify-content: space-between;
}
.price-area .price-off  {
  position: static;
  margin-left: 25px;
}
.product__list__price .price-details {
  margin-top: 15px;
}
.product__list__details {
  margin-top: 1.2em;
}
.details__list {
  gap: .3em 20px;
  grid-template-columns: 1fr 1fr;
  font-size: 1.5rem;
}
.details__list .details-list-item {
  margin-top: 0;
}
.product__list__summary .notes {
  margin-top: 1em;
}
.product__article__point__list {
  column-gap: 2.5%;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}
.product__article__point__list li {
  width: 380px;
  width: 100%;
}
.product__list__link .c-btn-txt {
  width: 490px;
  width: calc(100% - 70px);
}
.special-price {
  border-color: var(--price-color);
  background: #fff;
  color: var(--price-color);
}
.special-price > span {
  font-size: 1.5rem;  
}
.other-lead {
  padding: 1.7em 0 1.3em;
  text-align: center;
  line-height: 1.5;
  font-size: 2.2rem;
  color: var(--kitchen-color);
}
#other .product__list__image {
  text-align: center;
}
.nogridlist .details-list-item + .details-list-item {
  margin-top: .3em;
}
.medama {
  position: relative;
}
.medama-mark {
  top: inherit;
  bottom: -10px;
  right: inherit;
  left: -28px;
  width: 96px;
  height: 96px;
  background: #dbe900;
  background: #f2e603;
  line-height: 1.2;
  font-size: 2.1rem;
  color: var(--main-color);
}
.product__article__price .medama-mark {
  top: 15px;
  bottom: inherit;
  right: 0;
  left: inherit;
}
#rangehood .product-cat {
  margin-bottom: 60px;
}
#rangehood .product__list__image {
  justify-content: flex-end;
}
.discount-box {
  margin-top: -20px;
  padding: 1.5em 1em;
  width: 200px;
  width: 35.7142857%;
  border: solid 1px #b5b5b5;
  border-radius: 10px;
  line-height: 1.3;
  font-weight: 700;
}
.discount {
  display: block;
  font-size: 2.0rem;
  color: var(--price-color);
}
.discount .price {
  font-size: 2.8rem;
}
.discount .yen {
  font-size: 1.5rem;
}
.discount .zei {
  font-size: 1.2rem;
}
.komelist {
  text-indent: -1.8em;
  margin-left: .8em;
}
#systemkitchen .other-lead, #bathroom .other-lead, #gas-alarm .other-lead {
  padding: 2em 0 2.2em;
}
#systemkitchen .product__article {
  margin: 0;
}
.pointlist {
  margin-top: 50px;
}
.pointlist .pointlist-img {
  width: 55.2631579%;
}
.pointlist .pointlist-txt {
  width: 38.4210526%;
  line-height: 1.5;
}
/* バスルーム */
#bathroom .page-head {
  background: url(assets/images/bathroom/main_visual.jpg?v2) no-repeat center center;
}
.bathroom-slash span {
  padding: 0 3em;
}
.bathroom-slash span::before, .bathroom-slash span::after {
  top: inherit;
  bottom: .8em;
}
#bathroom .product__article {
  margin-bottom: 0;
}
#bathroom .product-title {
  border-color: #57b0d9;
}
@media screen and (max-width: 1365px) {
  #ecojozu .product-title {
    flex-direction: column;
    align-items: flex-start;
  }
  #ecojozu .product-name {
     margin-top: .35em;
  }
}
.present {
  position: relative;
  display: inline-block;
}
.present-txt {
  width: 530px;
  margin: 25px 0;
  padding: 1.5em 2em;
  border: solid 1px #b5b5b5;
  border-radius: 9px;
  background: #fff;
  text-align: left;
  line-height: 1.6;
  letter-spacing: 0;
}
.present-img {
  position: absolute;
  top: 50%;
  right: -85px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.present-img img {
  border-radius: 9999px;
}
.emphasis-txt {
  color: var(--base-color);
}
#bathroom .pointlist-title, #bathroom .other-lead, #bathroom .series-name {
  color: var(--bathroom-color);
}
#ecojozu .product__list__image {
  aspect-ratio: 140 / 81;
}
#ecojozu .productimg {
  width: 214px;
  width: 38.2142857%;
}
.roundlist {
  margin: 0 0 auto 30px;
}
.roundlist__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  background: #d2eaf5;
  border-radius: 9999px;
  font-size: 1.8rem;
  color: var(--base-color);
}
.roundlist__item + .roundlist__item {
  margin-top: 10px;
}
#dryhot .product__article {
  margin-top: 0!important;
}
.dryhot-image__wrap {
  position: relative;  
}
.dryhot-image .roundlist {
  position: absolute;
  left: 0;
  bottom: 20px;
  margin: 0;
  width: 310px;
}
.dryhot-image .roundlist__item {
  margin: 0;
  background: #5085be;
  color: #fff;  
}
#dryhot .product__article__link {
  margin-top: 40px;
}
.square-image img {
  width: 100%;
}
/* サニタリー */
#sanitary .page-head {
  background: url(assets/images/sanitary/main_visual.jpg?v2) no-repeat left 21%;
}
.short-cont-area {
  margin: 0 auto;
  width: 78.3333333%;
  min-width: 940px;
}
#sanitary .short-cont-area {
  margin-top: 55px;
}
.dryer__main-unit {
  grid-template-columns: 1.76fr 1fr; 
  grid-template-rows: 1fr 1fr; 
  grid-template-areas: 
    "kanta1 kanta2"
    "kanta1 kanta3";
  width: 100%;
  height: auto;
  aspect-ratio: 47 / 27;
}
.kantaimg-out {
  grid-area: kanta1;
}
.kantaimg-led {
  grid-area: kanta2;
}
.kantaimg-design {
  grid-area: kanta3;
}
.main-unit__item {
  position: relative;
}
.main-unit__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-unit__caption {
  position: absolute;
  left: 1.6em;
  bottom: 1.2em;
  font-size: 1.2rem;
  color: #fff;
}
#sanitary .product-title {
  border-color: #65b099;
}
.short-wrap {
  margin: 45px 0 0 0;
}
#sanitary .short-wrap {
  aspect-ratio: 188 / 63;
}
.dryer-image {
  width: 31.9148936%;
}
.dryer-image-kanta, .dryer-image-kanta img {
  width: 100%;
  height: 100%;  
}
.dryer-image-kanta img {
  object-fit: cover;
}
.short-wrap .product-summary {
  padding-top: 0;
  width: 580px;
  width: 61.7021277%;
}
.dryer-kanta .product__article__link {
  margin-top: 45px;
}
.dryer__link {
  position: relative;
  width: 100%;
  height: 92px;
  background: #fff;
  border: solid 1px var(--sanitary-color);
  border-radius: 5px;
}
.dryer__link a {
  width: 100%;
  height: 100%;
  line-height: 1.4;
  --max-size: 22;
  --min-size: 16;
  font-size: var(--clamp-size);
  font-weight: 700;
  color: var(--sanitary-color);
}
.dryer__link a::after {
  content: "";
  position: absolute;
  right: 45px;
  display: inline-block;
  width: 8px;
  height: 14px;
  background: url(assets/images/sanitary/arrow_green.svg) no-repeat center center;
}
#sanitary .sanitary-article {
  margin-bottom: 0;
}
.sanitary-article .product-imgbox {
  width: 34.1666666%;
}
.sanitary-article .product-txtbox {
  width: 60%;
}
.sanitary-article .product__article__link {
  margin-top: 35px;
  text-align: left;
}
/* セーフティー */
#safety .page-head {
  background: url(assets/images/safety/main_visual.jpg?v2) no-repeat left 88%;
}
#safety .other-lead {
  color: var(--safety-color);
}
#safety .product-title {
  border-color: #8da286;
}
#gas-alarm .safety-article {
  margin: 0;
}
#fire-alarm .safety-article {
  margin-bottom: 0;
}
.alarm-feature {
  width: 44.6808511%;
}
.safety-article .product-summary {
  width: 48.9361702%;
}
.alarm-feature__image {
  margin: 0 auto;
  width: 48.0952381%;
}
.alarm-feature__image img {
  width: 100%;
}
.alarm-feature__summary {
  margin: 40px 0 35px;
}
.safety-article .discount-box {
  margin-top: 0;
  width: 100%;
  background: #fff;
  text-align: center;
}
.safety-article .details__list {
  width: 195px;
}
.price-alarm + .price-alarm {
  margin-top: 30px;
}
.safety-article .special-price {
  width: 82px;
  height: 39px;
}
.safety-article .special-price > span {
  font-size: 1.6rem;  
}
.safety-article .circle-link-btn {
  margin-top: 22px;
}
/* 共通 */
.flow__summary {
  padding-bottom: var(--section-padding);  
}
.flow__summary__item {
  position: relative;
  margin-top: 12px;
  padding: 42px 40px 35px;
  border: solid 2px var(--base-color);
  border-radius: 12px;
  background: #fff;
  line-height: 1.7;
}
.step-number {
  position: absolute;
  top: -23px;
  left: -23px;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background: var(--base-color);
  letter-spacing: 0;
  line-height: 1;
  font-size: 3.5rem;
  color: #fff;  
}
.flow__summary li:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: -40px;
  margin: auto;
  width: 24px;
  height: 24px;
  border-top: 3px solid var(--accent-color);
  border-right: 3px solid var(--accent-color);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.flow__summary {
  grid-template-columns: repeat(3, 1fr);
  column-gap: 66px;
}
.flow__summary__item__icon {
  margin-bottom: 22px;
  height: 92px;
}
.flow__summary__item__txt {
  --max-size: 17;
  --min-size: 15;
  font-size: var(--clamp-size);
}
.showroom__section__head {
  text-align: center;
}
.showroom__section__subhead {
  margin: 20px 0 60px;
}
.reserve-txt {
  display: block;
  margin: 35px 0 .25em;
}
.reserve-notes {
  display: block;
  margin-top: 26px;
  font-size: 1.4rem;
}
.showroom__list {
  grid-template-columns: repeat(2, 1fr);
  gap: 50px 4.1666666%;
}
.showroom__list__item {
  line-height: 1.5;
}
.showroom__list__item dl {
  width: 33.0434783%;
}
.showroom__list__item__name {
  margin-bottom: 1em;
  font-weight: 700;
  --max-size: 20;
  --min-size: 17;
  font-size: var(--clamp-size);
}
.showroom__list__item__link a {
  display: block;
  margin-top: 18px;
  padding: .7em;
  background: var(--point-color);
  border-radius: 4px;
  text-align: center;
  font-size: 1.4rem;
  color: #fff;
}
.showroom__list__item__map {
  width: 60.8695652%;
  border: solid 1px #c9caca;
}
.showroom__list__item__map img {  
  width: 100%;
}
.banner__image {
  text-align: center;
}
.annotation {
  padding-top: 80px;
  width: 100%;
  letter-spacing: .02em;
  font-size: 1.4rem;
  font-size: clamp(1.2rem, 1.117rem + 0.35vw, 1.4rem);
}
.annotation__item {
  display: inline;
  margin-right: .35em;
}
.contact {
  text-align: center;
}
.contact-subhead {
  --max-size: 19;
  --min-size: 15;
  font-size: var(--clamp-size);
}
.business-hours {
  display: inline-block;
  margin: 0 .7em 0 .6em;
  padding: 0 .6em;
  border: solid 1px #333;
  --max-size: 16;
  --min-size: 13;
  font-size: var(--clamp-size);
}
.contact__list {
  grid-template-columns: repeat(auto-fit, minmax(380px,1fr));
  gap: 22px 32px;
  margin-top: 47px;
}
.contact__list__item {
  padding: 35px;
  border-radius: 12px;
  background: var(--base-color);
  line-height: 1.65;
  font-weight: 700;
  color: #fff;
}
.contact__list__item__branch {
  margin-bottom: .1em;
  --max-size: 26;
  --min-size: 19;
  font-size: var(--clamp-size);
}
.branch-name {
  display: block;
  --max-size: 18;
  --min-size: 14;
  font-size: var(--clamp-size);
  font-weight: 500;
}
.contact__list__item__tel, .contact__list__item__tel a {
  letter-spacing: .05em;
  --max-size: 34;
  --min-size: 22;
  font-size: var(--clamp-size);
  color: var(--section-bg-org);
}
.contact__list__item__tel::before {
  content: '';
  display: inline-block;
  margin-right: 10px;
  width: 20px;
  height: 24px;
  background: url(assets/images/icon_tel.svg) no-repeat;
  background-size: contain;
}
.contact__section__linkbtn {
  margin: 55px auto 0;
  width: 260px;
}
.contact__section__linkbtn a {
  display: block;
  padding: .5em;
  width: 100%;
  height: 100%;
  border: solid 1px #c9caca;
  border-radius: 5px;
  background: #fff;
  font-size: 1.5rem;
}
footer {
  padding: 35px 0 20px;
  text-align: center;
}
.copyright {
  margin-top: 1.4em;
  letter-spacing: .05em;
  font-size: clamp(1rem, 0.917rem + 0.35vw, 1.2rem);
  font-weight: 400;  
}
.for-sp  {
  display: none;
}
.contact-button {
  display: none;
}
/* 特定商取引法に基づく表示 */
.outline {
  padding-top: 90px;
}
.outline__body {
  margin-top: 65px;
  border-top: solid 1px #ccc;  
}
.outline__item {
  border-bottom: solid 1px #ccc;  
}
.outline__item-name, .outline__item-detail {
  padding: 1.65em 3em;
}
.outline__item-name {
  width: 25%;
  background-color: #f5f5f5;
  text-align: left;
}
.outline__item-detail {
  flex: 1;  
}
.item-detail__list  {
  padding-left: 1.5em;
}
.item-detail__item  {
  list-style: disc;
}
.item-detail__item .notes {
  display: block; 
  font-size: 1.4rem;
}
.item-detail__wrap + div, .item-detail__txt + p {
  margin-top: .9em;
}
.loading {
  width: 100%;
  height: 100%;
  transition: all 1s;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
  opacity: 1;
  visibility: visible;
}
.loading.is-active {
  opacity: 0;
  visibility: hidden;
}
.loading-box {
  width: 100%;
  height: 100%;
  transition: all 1s;
  z-index: 999999;
  opacity: 0;
  visibility: hidden;
}
.loading-box.is-active {
  opacity: 1;
  visibility: visible;
}
.loading-logo {
  width: 206px;
  height: auto;
}
.loading-logo img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .loading-logo {
    width: 150px;
  }
}
@media screen and (min-width: 1366px) {
  .linkbtn, .gnavilist a {
    transition: opacity .5s ease;
  }
  .linkbtn:hover, .gnavilist a:hover {
    opacity: .6;
  } 
  h1 a:hover img {
    opacity: 1;
  }
}
    
/*-------------------------------------------------
 * mediaqueriess
-------------------------------------------------*/
@media screen and (max-width: 1279px) {
  section, .section, .product-area {
    padding: var(--section-padding-sp) 0;
  }
  .end-section {
    padding-bottom: var(--section-end-padding-sp);
  }
  .product-first-area {
    padding-bottom: var(--section-padding-sp);
  }
  .product-end-area {
    padding-top: var(--section-padding-sp);
  }
  .container {
    padding: 0 var(--whole-padding-sp);
  }
  .head-subtxt {
    margin: .35em 0 5.208333vw;
  }
   @media screen and (max-width: 1179px) {
    .headbox {
      width: 100%;
      z-index: 9999;
    }
    .no-scroll .headbox {
      background: #fff;
    }
    .headbox__toggle {
      display: flex;
      align-items: center;
      justify-content: center;
      -webkit-transition: all .4s;
      transition: all .4s;
      z-index: 9999;
    }
    .headbox__toggle__trigger, .headbox__toggle__trigger span {
      display: inline-block;
      -webkit-transition: all .4s;
      transition: all .4s;ss
    }
    .headbox__toggle__trigger {
      position: relative;
      width: 34px;
      height: 28px;
      cursor: pointer;
    }
    .headbox__toggle__trigger span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      border-radius: .001%;
      background: var(--accent-color);
      z-index: 9999;
    }
    .headbox__toggle__trigger span:nth-of-type(1) {
      top: 0;
    }
    .headbox__toggle__trigger span:nth-of-type(2) {
      top: 13px;
    }
    .headbox__toggle__trigger span:nth-of-type(2)::after {
      position: absolute;
      top: 0;
      left: 0;
      content: '';
      width: 100%;
      height: 2px;
      border-radius: .001%;
      background: var(--accent-color);
      -webkit-transition: all .4s;
      transition: all .4s;
    }
    .headbox__toggle__trigger span:nth-of-type(3) {
      bottom: 0;
    }
    .headbox__toggle__trigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(8px) scale(0);
      transform: translateY(8px) scale(0);
    }
    .headbox__toggle__trigger.active span:nth-of-type(2) {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
    }
    .headbox__toggle__trigger.active span:nth-of-type(2)::after {
      -webkit-transform: rotate(90deg);
      transform: rotate(90deg);
    }
    .headbox__toggle__trigger.active span:nth-of-type(3) {
      -webkit-transform: translateY(-8px) scale(0);
      transform: translateY(-8px) scale(0);
    }
    .hide {
      overflow: hidden;
      visibility: hidden;
      opacity: 0;
    }
    .animation {
      -webkit-transition-property: opacity, visibility;
      transition-property: opacity, visibility;
      -webkit-transition-duration: .3s;
      transition-duration: .3s;
      -webkit-transition-timing-function: ease-in;
      transition-timing-function: ease-in;
    }
    .no-scroll {
      overflow: hidden;
    }
    #gnavi {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      margin: var(--header-hight) 0 0 0;
      width: 100%;
      height: calc(100% - var(--header-hight));
      -webkit-overflow-scrolling: touch;
      overflow: auto;
      background: #f1f5fa;
      z-index: 99;
    }
    #gnavi nav {
      display: flex;
      align-items: center;
      margin: 0 auto;
      width: 100%;
      height: 100%;
    }
    .gnavilist {
      flex-flow: row wrap;
      justify-content: space-between;
      padding: 0 var(--whole-padding-sp);
      width: 100%;
      max-height: 100%;
    }
    .gnavilist__item {
      width: calc((100% - 2.65625vw) / 2);
      height: auto;
/*       border-bottom: solid 1px var(--accent-color); */
      text-align: center;
      font-size: 1.6rem;
    }
/*
    .gnavilist__item:first-child {
      width: 100%;
      border-top: solid 1px var(--accent-color);
    }
*/
/*
    .gnavilist__item:nth-last-child(-n+2) {
      margin-top: 40px;
      border: none;
    } 
*/ 
    .gnavilist__item a {
      display: block;
      padding: 1.15em 0;
      width: 100%;
      height: auto;
    }
    .gnavilist__item + .gnavilist__item {
      margin-left: 0;
    }
    .gnavi-flow a, .gnavi-contact a {
      font-size: 1.6rem;
    }
  }  
  /* index */
  .topvisual {
/*     padding: 45px 0; */
    padding: 5.859375vw 0;
  }
/*
  .topvisual::before {
    background-position-x: 44%;
  }
*/
  .topvisual__title {
/*     width: 34.375vw; */
    width: 36.4583333vw;
  }
/*
  .topvisual__caption {
    right: auto;
    left: 35px;
    bottom: 18px;
    text-align: left;
    font-size: 1.2rem;
  }
*/
  .lead {
/*     margin-top: 11.71875vw; */
    margin-top: 9.11458333vw;
  }
  #lineup {
    padding-top: 9.11458333vw;
  }
  .line-up .section {
    padding: 10.4166667vw 0;
  }
  .line-up {
    margin-top: -7.16145833vw;
  }
  .line-up__head {
    top: 7.16145833vw;
  }
  .pickup-wrap {
    padding: 28px 30px 30px;
  }  
  .line-up-container.right-area, .line-up-container.left-area {
    column-gap: 40px;
  }
  .line-up-container.right-area {
    grid-template-columns: 1fr 2.5fr;
    grid-template-areas:
      "title pickup"
      "cat pickup"
      "btn pickup";
  }
  .line-up-container.left-area {
    grid-template-columns: 2.5fr 1fr;
    grid-template-areas:
      "pickup title"
      "pickup cat"
      "pickup btn";
  }  
  @media screen and (max-width: 1023px) {
    .line-up-container.right-area, .line-up-container.left-area {
      grid-template-rows: auto auto auto;
      column-gap: 30px;
      grid-template-areas:
          "title title"
          "pickup pickup"
          "cat btn";
    }
    .line-up-container.right-area, .line-up-container.left-area {
      grid-template-columns: 1fr 1fr;
    } 
    .lineup-list {
      display: flex;
      justify-content: space-between;
      flex-flow: row wrap;
      margin-bottom: 0;
    }
    .lineup-item, .lineup-item + li {
      margin-top: 5px;
      width: 48%;
    }
    .line-up .shadow-title {
      margin: 0 auto 36px;
    }    
  }  
  .lineup-box {
    width: 100%;
  }
  .lineup-title {
    margin-top: .8em;
    padding-bottom: 15px;
  }
  .lineup-list {
    margin-top: 20px;
    line-height: 1.6;
  }
  .pickup-product {
    padding: 35px 35px 40px;
  }  
  .pickup-box {
    column-gap: 30px;
  }
  .pickup-titlebox {
    margin-bottom: 23px;
  }
  .pickup-titlebox > p {
    display: block;
    margin: .3em 0 0 0;
  }
  .pickup-img {
    aspect-ratio: auto;
  }
  .pickup-img img {
    min-width: 100%;
  }
  .pickup-list-item + li {
    margin-top: 10px;
  }
  .pickup-list-item br:not(.no-change) {
    display: none;
  }  
  /* キッチン */
  .page-head {
    height: 300px;
  }
  .leading-txt {
    margin-bottom: 5.208333333vw;
  }
  .builtin__txt {
    left: 30px;
    bottom: 22px;
  }
  .product__article {
    margin: 5.20833333vw 0 var(--section-padding-sp);
  }
  .product-title, .price-details {
    flex-direction: column;
    align-items: flex-start;
  }
  .product-name {
    margin-top: .35em;
  }
  .price-txt {
    margin-top: .5em;
  }
  .delicia-feature {
	  width: 60%;
  }
  .delicia-accessories {
    flex-direction: column;
    width: 35%;
  }
  .delicia-accessories__image {
    margin-top: 10px;
    width: 100%;
  }
  #builtin .product-imgbox {
	  padding: 0;
  }
  .product__article__point__list {
    margin-top: 42px;
  }
  .product__list, #other .product__list {
    gap: 50px;
  }
  .product__list + .differ-list {
    margin-top: var(--section-padding-sp);
    grid-template-columns: 51%;
  }
  .product__list__price {
    justify-content: space-between;
  }
  .medama-mark {
    width: 88px;
    height: 88px;
    font-size: 1.9rem;
  } 
  @media screen and (max-width: 1023px) {
    .product__article, .product__article__body {
      flex-direction: column;
      align-items: flex-start;    
    }
    .product-txtbox, .product-imgbox {
      width: 100%;
    }
    .product-title, .price-details, .delicia-accessories {
      flex-direction: row;
      align-items: center;
    }
    .product-name {
      margin: 0;
    }
    .price-txt {
      margin-top: -.4em;
    }
    .builtin__image {
      margin-top: var(--product-image-margin-mid);
      height: 400px;
      aspect-ratio: auto;
    }
    .delicia-feature {
	    width: auto;
    }
    .delicia-accessories {
      width: 48%;
    }
    .delicia-accessories__image {
      margin: 0;
      width: 60%;
    }
    .product__article__movie {
      margin-top: 110px;
    }
    .product__list, #other .product__list {
      gap: 60px 0;
      grid-template-columns: 1fr;
    }
    #other .product__list {
      row-gap: 80px;
      grid-template-columns: 1fr;
    }
    .product__list__image {
      width: 88%;
      margin: 0 auto;
    }
    .square-image {
      margin: 0 auto 55px;
      width: 68%;
    }
    .product__article__point__list {
      column-gap: 26px;
    }
    .pointlist-item.horizontal {
      flex-direction: column;
      justify-content: flex-start;
    }
    .pointlist .pointlist-img, .pointlist .pointlist-txt {
      width: 100%;
    }
    .pointlist-title {
      margin: .8em 0 .4em;
    }
  }  
  /* バスルーム */
  #bathroom .page-head {
    background-position-x: 64%;
  }
  .systembath__article__image .square-image {
    height: 79%;
  }
  .systembath__article__image .square-image img {
    height: 100%;
    object-fit: cover;
  }
  .present {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 1.6em;
    margin: 25px 0;
    padding: 1.5em 1.8em;
    width: 100%;
    border: solid 1px #b5b5b5;
    border-radius: 9px;
    background: #fff;
  }
  .present-txt {
    margin: 0;
    padding: 0;
    width: 60%;
    border: none;
    background: none;
  }
  .present-img {
    position: static;
    transform: none;
  }
  .dryhot-image .roundlist {
    position: relative;
    margin-top: 20px;
  }
  @media screen and (max-width: 1023px) {
    #bathroom .product__article {
      margin-top: var(--product-image-margin-mid);
    }
    .systembath__article__image .square-image {
      height: auto;
    }
    .present {
      justify-content: center;
      column-gap: 35px;
    }
    .present-txt {
      width: auto;
    }
    .dryhot-image__wrap .square-image {
      margin-bottom: -20px;
    }
    .dryhot-image .roundlist {
      top: -55px;
      left: 16.5%;
      margin: 0;
    }
  }
  /* サニタリー */
  #sanitary .page-head {
    background-position-x: 25%;
  }
  .short-cont-area {
    width: 100%;
    min-width: 100%;
  }
  #sanitary .short-cont-area {
    margin-top: var(--product-image-margin-mid);    
  }
  .dryer__image {
    margin-bottom: 55px;
  }
  .dryer__main-unit {
    grid-template-columns: 1.76fr 1fr; 
    grid-template-rows: 1fr 1fr; 
    grid-template-areas: 
      "kanta1 kanta2"
      "kanta1 kanta3";
  }
  .dryer-kanta .product__article {
    margin: 0 0 72px;
  }
  #sanitary .short-wrap {
    aspect-ratio: auto;
  }  
  .sanitary-article .product__article__link .circle-link-btn {
    width: 100%;
  }
  .sanitary-article .product__article__link .c-btn-txt {
    width: calc(100% - 70px);
  }
  .sanitary-article .product-imgbox {
    width: 40.1666666%;
  }
  .sanitary-article .product-txtbox {
    width: 54%;
  } 
  @media screen and (max-width: 1023px) {
    #sanitary .short-cont-area {
      margin-top: var(--product-image-margin-mid);
    }
    .short-wrap {
      flex-direction: column;
      row-gap: 40px;
    }
    .short-wrap .product-summary, .sanitary-article .product-imgbox, .sanitary-article .product-txtbox {
      width: 100%;
    }
    #sanitary .sanitary-article, #fire-alarm .safety-article {
      margin-top: var(--product-image-margin-mid);
    }
    .sanitary-article .product-imgbox .square-image {
      width: 58%;
    }
    .dryer__main-unit {
      aspect-ratio: 47 / 32;
    }
    .dryer-image {
      width: 43%;
    }
    .dryer-kanta .product__article__link {
      margin-top: 35px;
    }
    .dryer-kanta .product__article__link .circle-link-btn {
      width: 100%;
    }
    .dryer-kanta .large-btn .c-btn-txt {
      width: calc(100% - 70px);
    }
  }
  /* セーフティー */
  #safety .page-head {
    background-position-x: center;
  }
  .alarm-feature__summary {
    justify-content: center;
  }
  @media screen and (max-width: 1023px) {
    .alarm-feature {
      width: 100%;
    }
    .alarm-feature__image {
      width: 34%;
    }
  }   
  /* 共通 */
  .flow__summary {
    padding-bottom: var(--section-padding-sp);
  }
  @media screen and (max-width: 1079px) {
    .flow__summary {
      grid-template-columns: 1fr;
      row-gap: 40px;
    }
    .flow__summary li:not(:last-child)::after {
      top: auto;
      bottom: -33px;
      right: calc(50% - 12px);
      transform: rotate(135deg);    
    }
    .step-number {
      top: -18px;
      left: -18px;
      width: 54px;
      height: 54px;
      font-size: 3.2rem;
    }
  }
  .showroom__section__subhead {
    margin-bottom: 5.859375vw;
  }
  .reserve-txt {
    margin-top: 4.8vw;
  }
  .reserve-notes {
    margin-top: 4vw;
  }
  .showroom__list__item {
    flex-direction: column-reverse;
  }
  .showroom__list__item dl, .showroom__list__item__map {
    width: 100%;
  }
  .showroom__list__item dl {
    margin-top: 16px;
  }
  .showroom__list__item__name {
    margin-bottom: .2em;
  }
  .contact__section__linkbtn {
    margin-top: 5.20833333vw;
  }  
  /* 特定商取引法に基づく表示 */
  .outline {
    padding-top: 45px;
  }
  .outline__body {
    margin-top: 52px;
  }
  .outline__item-name, .outline__item-detail {
    padding: 1.35em 1.5em;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.5rem;
  }
  h1, .f-logo {
    width: 124px;
  }
  .head-subtxt {
     font-size: 1.4rem;
  }
  .c-btn-txt {
    width: calc(100% - 52px)!important;
    height: 46px!important;
  }
  .large-btn .c-btn-txt, .request-btn .c-btn-txt {
    font-size: 1.6rem;
  }
  .btn-icon, .large-btn .btn-icon {
    margin-left: 6px;
    width: 46px;
    height: 46px;
  }
  .shadow-title {
    width: 68%;
    padding-top: .65em;
    padding-bottom: .65em;
    box-shadow: 0 2px 5px rgba(234, 104, 119, 0.3);
  }
  .bathroom-shadow {
    box-shadow: 0 2px 5px rgba(31, 150, 205, 0.3);
  }
  .sanitary-shadow {
    box-shadow: 0 2px 5px rgba(50, 150, 119, 0.3);
  }
  .safety-shadow {
    box-shadow: 0 2px 5px rgba(103, 131, 94, 0.3);
  }
  .base-shadow {
    box-shadow: 0 2px 5px rgba(69, 125, 186, 0.3);
  }
  header {
    padding: 0 var(--whole-padding-sp);
    height: var(--header-hight-sp);
  }
  .headbox__toggle__trigger {
    width: 24px;
    height: 18px;
  }
  .headbox__toggle__trigger span, .headbox__toggle__trigger span:nth-of-type(2)::after {
    height: 2px;
  }
  .headbox__toggle__trigger span:nth-of-type(2) {
    top: 8px;
  }
  #gnavi {
    margin-top: var(--header-hight-sp);
    height: calc(100% - var(--header-hight-sp));
  }
  .gnavilist__item, .gnavi-flow a, .gnavi-contact a {
    font-size: 1.4rem;
  }
  .gnavilist__item:nth-last-child(-n+2) {
    margin-top: 25px;
  }
  .gnavilist__item a {
    padding: .95em;
  }
  /* index */
  .topvisual {
/* 	  margin-top: 6.66666666vw; */
/* 		padding: 30px 0; */
		padding: 8vw 0;
/*     height: calc(100% - var(--header-hight-sp)); */
  }
  @media screen and (max-width: 600px) {
/*
    .topvisual::before, .topvisual::after {
      width: 100%;
      height: 50%;
    }
    .topvisual::before {
      top: auto;
      bottom: 0;
      border-top-left-radius: 0;
      border-bottom-right-radius: 80px;
      background: url(assets/images/index/topvisual_left_sp.jpg) no-repeat right top;
    }
    .topvisual::after {
      bottom: auto;
      top: 0;
      border-bottom-right-radius: 0;
      border-top-left-radius: 80px;
      background: url(assets/images/index/topvisual_right_sp.jpg) no-repeat center 28%;
    }
*/
    .topvisual__title {
/*       margin-bottom: 20px; */
/*       width: 45.333333vw; */
      width: 50.666666vw;
    }
  }
/*
  .topvisual__caption {
    left: 20px;
    bottom: 15px;
    font-size: 1.1rem;
  }
*/
  .lead__txt::before, .lead__txt::after {
    height: 3px;
  }
  .lead__txt::before {
    margin-bottom: 18px;
  }
  .lead__txt::after {
    margin-top: 18px;
  }
  .line-up {
    margin-top: -8vw;
  }
  .line-up__head {
    top: 8vw;
  }  
  .line-up-container.right-area, .line-up-container.left-area {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto auto;
    gap: 0;
    grid-template-areas:
        "title"
        "pickup"
        "cat"
        "btn"; 
  }
  .lineup-box {
    flex-direction: column;
  }
  .line-up .shadow-title {
    margin-bottom: 25px;
    width: 230px;
    height: 50px;
  }
  .lineup-list {
    margin-top: 15px;
    margin-bottom: 23px;
  }
  .lineup-summary, .circle-link-btn, .product__article__link .circle-link-btn {
    width: 100%;
  }
  .pickup-product {
    padding: 30px 5.333333vw 32px;
    border-radius: 15px;
  }
  .pickup-box {
    row-gap: 22px;
    grid-template-columns: 1fr;
  }
  .pickup-title {
    font-size: 1.8rem;
  }
  .pickup-img img {
    min-width: inherit;
    max-width: 400px;
  }
  .pickup__sanitary__img, .pickup__safety__img {
    margin: 0 auto;
    width: 85%;
  }  
  /* キッチン */ 
  .page-head {
    height: 150px;
  }
  .builtin__image {
    margin-top: var(--product-image-margin-sp);
  }
  .builtin__image {
    height: 260px;
  }
  .builtin__txt {
    left: 15px;
    bottom: 12px;
    font-size: 1.6rem;
  }
  .series-name, .main-article .series-name {
    font-size: 1.6rem;
  }
  .product-title, .price-details {
    flex-direction: column;
    align-items: flex-start;
  }
  .product-title {
    padding: 15px 0;
  }
  .product-name {
    margin-top: .3em;
  }
  .product-name, .main-article .product-name {
    font-size: 1.7rem;
  }
  .product-logo img {
    width: auto;
    height: 18px;
  }
  .product__list__title .product-number, .main-article .product-number {
    width: 28px;
    height: 28px;
  }
  .product__list__title .product-number > span, .main-article .product-number > span {
    font-size: 1.6rem;
  }
  .main-article .product-summary {
    padding: 7.4666666vw 0 8vw;
  }
  .main-article .price-details {
    margin-top: 10px;
  }
  .price-title, .main-article .price-title {
    padding: .35em .5em;
    width: 170px;
    height: auto;
  }
  .price-title, .main-article .price-title, .retail-price, .main-article .product__article__price {
    font-size: 1.4rem;
  }
  .price-txt {
    margin-top: .5em;
  }
  .price-txt, .emphasis-price .price-txt {
    font-size: 1.5rem;
  }
  .price, .emphasis-price .price {
    font-size: 3.3rem;
  }
  .yen, .emphasis-price .yen {
    font-size: 2.0rem;
  }
  .price-off, .price-area .price-off {
    position: absolute;
    top: auto;
    bottom: 0;
    width: 80px;
    height: 80px;
    font-size: 2.2rem;
  }
  .discount-rate {
    font-size: 2.5rem;
  }
  .medama-mark {
    top: 20px;
    left: 0;
    bottom: auto;
    width: 68px;
    height: 68px;
    font-size: 1.6rem;
  }
  .main-article .product-details {
    flex-direction: column;
    row-gap: 20px;
    margin-top: 20px;
  }
  .delicia-accessories {
    justify-content: center;
    width: 100%;
    padding: 20px;
  }
  .delicia-accessories__image {
    margin-left: 15px;
    width: 42%;
  }
  .main-article .product__article__notes {
    margin-top: 1.6em;
  }
  .product__article__point__list li {
    align-items: inherit;
  }
  .main-article .pointlist-title, .pointlist-title {
    margin-top: 0;
    font-size: 1.6rem;
  }
  .pointlist-image {
    height: 39.7333333vw;
  }
  .pointlist-image img {
    object-fit: cover;
    width: auto;
    height: 100%;
  }
  .pointlist-txt dd {
    font-size: 1.4rem;
  }
  .product__article__movie, .movie-linkbtn a {
    width: 100%;
  }
  .product__article__movie, #builtin .product__article__movie {
    margin-top: 75px;
  }
  .movie-linkbtn a {
    padding: 1em 60px 1em 5%;
    text-align: left;
    font-size: 1.6rem;
  }
  .movie-linkbtn a::after {
    margin-left: 7px;
    width: 24px;
    height: 24px;
  }
  .movie-illust {
    bottom: -7px;
    right: -8px;
    width: 26vw;
  }
  .main-article .product__article__link {
    margin-top: 20px;
    width: 100%;
  }
  .product__list {
    gap: 40px 0;
  }
  #other .product__list {
    gap: 50px 0;
  }
  .product__list + .differ-list {
    margin-top: 50px;
  }
  .product__list__item .product-summary {
    padding: 20px 0 25px;
  }
  .product__list__image, .product__list__image.differ-image {
    flex-direction: column;
    aspect-ratio: auto;
    padding-top: 7.4666666vw;
    width: 100%;
  }
  .productimg {
    width: 90%;
  }
  .productimg.delicia-image {
	  padding-bottom: 25px;
  }
  .accessories {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    column-gap: 10px;
    margin-top: 25px;
    width: 100%;
  }
  .accessories img {
    width: 44%;
  }
  .accessories-caption {
    font-size: 1.4rem;
  }
  .other-lead {
    padding: 1em 0;
    font-size: 1.7rem;
  }
  #systemkitchen .other-lead, #bathroom .other-lead, #gas-alarm .other-lead {
    padding: 1em 0 1.2em;
  }
  #rangehood .product-cat {
    margin-bottom: 30px;
  }
  .discount-box {
    margin-top: 25px;
    padding: 1em;
    width: 100%;
  }
  .discount-box br {
    display: none;
  }
  .square-image {
    margin-bottom: 30px;
    width: 100%;
  }
  .product__article__price .medama-mark {
    top: -55px;
    right: -2px;
  }
  .product__article__point__list {
    grid-template-columns: 1fr;
    gap: 18px 0;
    margin-top: 30px;
  }
  .pointlist-item.horizontal {
    flex-direction: row;
    justify-content: space-between;
   }
  .pointlist .pointlist-img {
    width: 49.0566038%;
  }
  .pointlist .pointlist-txt {
    width: 45.2830189%;    
  }
  .product__article__link, #dryhot .product__article__link {
    margin-top: 30px;
  }  
  /* バスルーム */
  #bathroom .page-head {
    background-position-x: 57%;
  }
  #bathroom .product__article {
    margin-top: var(--product-image-margin-sp);
  }
  #dryhot .product__article {
    margin-top: 5px!important;
  }
  #systembath .details__list {
    flex-flow: row wrap;
    justify-content: space-between;
    column-gap: 0
  }
  #systembath .details__list__item {
    width: 43%;
  }
  .present {
    flex-direction: column;
    gap: 15px 0;
  }
  .present-txt, .present-img {
    text-align: center;
  }
  .present-img {
    width: 50%;
  }
  #ecojozu .product__list__image {
    flex-direction: row;
    aspect-ratio: auto;
    padding-top: 8.5333333vw;
    width: 100%;
  }
  #ecojozu .productimg {
    width: 48%;
  }
  .dryhot-image__wrap .square-image {
    margin-bottom: 15px;
  }
  .dryhot-image .roundlist {
    justify-content: center;
    column-gap: 8px;
    position: static;
    margin-bottom: 25px;
    width: 100%;
  }
  .roundlist__item {
    width: 64px;
    height: 64px;
  }
  /* サニタリー */
  #sanitary .page-head {
    background-position-x: 40%;
  }
  #sanitary .short-cont-area, #sanitary .sanitary-article, #fire-alarm .safety-article {
    margin-top: var(--product-image-margin-sp);
  }
  .dryer__image {
    margin-bottom: 30px;
  }
  .dryer__main-unit {
    grid-template-rows: 100vw 48vw;
    grid-template-areas:
      "kanta1 kanta1"
      "kanta2 kanta3";
    aspect-ratio: auto;
  }
  .main-unit__caption {
    left: 1.2em;
    bottom: 1em;
    font-size: 1.1rem;
  }
  .short-wrap {
    row-gap: 22px;
    margin-top: 8.5333333vw;
  }
  .dryer-image {
    width: 60%;
  }
  .short-wrap .product-summary {
    width: 100%;
  }
  .dryer-kanta .product__article {
    margin-bottom: 48px;
  }
  .dryer-kanta .product__article__link, .sanitary-article .product__article__link {
    margin-top: 25px;
  }
  .sanitary-article .product-imgbox .square-image {
    width: 80%;
  }
  .dryer__link {
    height: auto;
    text-align: center;
  }
  .dryer__link a {
    padding: .85em 1em;
  }
  .dryer__link a::after {
    right: 19px;
  }  
  /* セーフティ */
  .gas-alarm__lead.slash-heading span {
    padding: 0 2.5em;
  }
  #safety .product-logo img {
    height: 14px;
  }
  .alarm-feature__image {
    width: 44%;
  }
  .alarm-feature__summary {
    margin: 1.2em 0;
  }
  .safety-article .details__list {
    width: auto;
  }
  .safety-article .details__list + ul {
    margin-left: 1.3em;
  }       
  /* 共通 */ 
  .flow__summary {
    row-gap: 32px;
  }
  .flow__summary__item {
    margin-top: 5px;
    padding: 6.038647vw 6.038647vw 4.830918vw;
  }
  .step-number {
    top: -16px;
    left: -10px;
    width: 42px;
    height: 42px;
    font-size: 2.2rem;
  }
  .flow__summary__item__icon {
    margin-bottom: 12px;
    height: 88px;
  }
  .flow__summary li:first-child img {
    width: auto;
    height: 70px;
  }
  .flow__summary li:nth-child(2) img {
    width: auto;
    height: 88px;
  }
  .flow__summary li:not(:last-child)::after {
    bottom: -26px;
  }
  .showroom__section__subhead {
    margin-bottom: 28px;
  }
  .showroom__list {
    row-gap: 30px;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  }
  .annotation {
    padding-top: 8.454106vw;
  }
  .business-hours {
    margin-top: .2em;
    margin-bottom: .2em;
  }
  .contact__list {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 22px;
  }
  .contact__list__item {
    padding: 18px;
  }
  .contact__list__item__tel::before {
    position: relative;
    top: 1px;
    margin-right: 5px;
    width: 14px;
    height: 17px;
  }
  .contact__section__linkbtn a {
    font-size: 1.3rem;
  }
  footer {
    padding: 20px 0 13px;
  }
  .f-logo {
    margin: 0 auto;
  }
  .copyright {
    margin-top: .9em;
  }
  .contact-button {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    background: #fff;
    z-index: 3;
  }
  .contact-button__list {
    gap: 0;
    margin: 0;
  }
  .contact-button__item {
    width: 49.9%;
    width: calc((100% - 2px) / 2);
    padding: 0;
    border-radius: 0;
    line-height: 1.4;
  }
  .contact-button__item a {
    display: block;
    padding: 10px 5px;
  }
  .contact-button__text {
    margin: 0;
    font-size: 1.4rem;
    color: #fff;
  }
  .contact-button__text .branch-name {
    font-size: 1.0rem;
  }
  .contact-button__tel, .contact-button__tel a {
    line-height: 1.3;
    font-size: 1.4rem;
    color: #fff;
  }
  .contact-button__tel::before {
    vertical-align: middle;
    top: 0;
    margin-right: 3px;
    width: 10px;
    height: 14px;
  }
  /* 特定商取引法に基づく表示 */
  .shadow-title {
    width: 78%;
  }
  .outline {
    padding-top: 25px;
  }
  .outline__body {
    margin-top: 30px;
  }
  .outline__item {
    flex-direction: column;
  }
  .outline__item-name {
    padding: .3em 0;
    width: 100%;
    border-bottom: solid 1px #ccc;
    text-align: center;
    font-size: 1.4rem;
  }
  .outline__item-detail {
    padding: 1.2em 0;
  }
  /* バナー */
  @media screen and (max-width: 480px) {  
    .for-pc  {
      display: none;
    }
    .for-sp  {
      display: block;
    }
  }
}