/* COMMON */
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .common-wrapper {
    width: 960px;
    margin: 0 auto;
  }
  .wrapper-offset {
    margin: 0 -160px;
  }
}
@media print,screen and (min-width:0px) and (max-width:768px) {
  .common-wrapper {
    padding: 0 15px;
  }
  .story-index-link a, .story-index-link img {
    width: 100%;
    display: block;
  }
}

/* COMMON - HEADING */
.common-heading {
  text-align: center;
}
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .common-heading {
    margin-bottom: 20px;
  }
}
@media print,screen and (min-width:0px) and (max-width:768px) {
  .common-heading {
    height: 27px;
    margin: 0 auto;
  }
  .common-heading img {
    width: auto;
    height: 100%;
    margin: 0 auto;
    display: block;
  }
}

/* COMMON - DOCUMENT */
.common-document .document-heading {
    font-weight: 700;
    display: block;
}
.common-document .document-content {
    text-align: justify;
}
.common-document.style-dark .document-heading,
.common-document.style-dark .document-content {
    color: #231815;
}
.common-document.style-light .document-heading,
.common-document.style-light .document-content {
    color: #fff;
}
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .common-document .document-heading {
    margin-bottom: 30px;
    font-size: 2.3rem;
    line-height: 1.65;
    letter-spacing: .01em;
    white-space: nowrap;
  }
  .common-document .document-content {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: -.02rem;
  }
  .common-document.style-dark .document-heading {
    background: url("/img/brand/story/008_icon_008.png") top -1px center / 100% 37px repeat-y;
  }
  .common-document.style-light .document-heading {
    background: url("/img/brand/story/008_icon_009.png") top -1px center / 100% 37px repeat-y;
  }
}
@media print,screen and (min-width:769px) and (max-width:9999px) and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .common-document.style-dark .document-heading {
    background: url("/img/brand/story/008_icon_008.png") top -2px center / 100% 37px repeat-y;
  }
  .common-document.style-light .document-heading {
    background: url("/img/brand/story/008_icon_009.png") top -2px center / 100% 37px repeat-y;
  }
}
@media print,screen and (min-width:0px) and (max-width:768px) {
  .common-document .document-heading {
    margin-bottom: 14px;
    font-size: 2.2rem;
    line-height: 1.652;
  }
  .common-document .document-content {
    font-size: 1.6rem;
    line-height: 1.75;
    letter-spacing: -.02em;
  }
  .common-document.style-dark .document-heading {
    background: url("/img/brand/story/008_icon_008.png") top -1px center / 100% 35px repeat-y;
  }
  .common-document.style-light .document-heading {
    background: url("/img/brand/story/008_icon_009.png") top -1px center / 100% 35px repeat-y;
  }
}
@media print,screen and (max-width: 374px) {
  .common-document .document-heading {
    font-size: 1.8rem;
  }
  .common-document.style-dark .document-heading {
    background: url("/img/brand/story/008_icon_008.png") top -1px center / 100% 28px repeat-y;
  }
  .common-document.style-light .document-heading {
    background: url("/img/brand/story/008_icon_009.png") top -1px center / 100% 28px repeat-y;
  }
}

/* COMMON - BUTTON */
/* Camera */
.common-button-camera .btn-360camera {
  text-align: center;
}
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .common-button-camera {
    margin: 0 auto;
    width: 326px;
  }
  .common-button-camera.is-center img {
    width: 326px;
  }
}
@media print,screen and (min-width:0px) and (max-width:768px) {
  .common-button-camera {
    display: flex;
    justify-content: center;
    text-align: center;
  }
  .common-figure + .common-button-camera {
    margin-bottom: 30px;
  }
  .common-button-camera .btn-360camera {
    width: 70%;
    display: block;
  }
  .common-button-camera img {
    width: auto;
  }
}

/* SECTION - VISUAL */
.section-visual {
  position: relative;
}
.visual-main {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.visual-main .main-description {
  position: absolute;
  right: 0;
  left: 0;
  z-index: 2;
}
.visual-main .common-figure {
  width: 100%;
}
.visual-background {
  position: relative;
  z-index: 0;
}
.visual-background img {
  width: 100%;
}
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .visual-main .main-description {
    bottom: 62px;
  }
}
@media print,screen and (min-width:0) and (max-width:768px) {
  .visual-main .main-description {
    bottom: 12px;
  }
}

/* SECTION - STORY */
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .section-story {
    padding: 30px 0 60px 0;
  }
  .story-board .board-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .story-board .common-document {
    max-width: 430px;
    flex: 1 0 auto
  }
  .story-board .board-picture {
    flex: 0 1 auto;
  }
  .story-board img {
    width: 100%;
  }
  .story-board.is-left .board-wrapper {
    padding-left: 150px;
  }
  .story-board.is-left .board-picture {
    padding: 7px 0 0 55px;
  }
  .story-board.is-right .board-wrapper {
    padding-right: 150px;
  }
  .story-board.is-right .common-document {
    order: 2
  }
  .story-board.is-right .board-picture {
    padding: 7px 55px 0 0;
    order: 1
  }
  .story-showcase {
    position: relative;
  }
  .story-showcase .showcase-image {
    position: absolute;
  }
  .story-showcase img {
    width: 100%;
  }
  /* LDK */
  .story-board.is-ldk {
    margin-bottom: 20px;
  }
  .story-board.is-ldk .board-picture {
    max-width: 724px;
  }
  .story-board.is-ldk .common-button-camera {
    width: 314px;
  }
  .story-showcase.is-ldk {
    height: 800px;
    margin-bottom: 100px;
  }
  .story-showcase.is-ldk .showcase-image:nth-child(3) {
    top: 0;
    left: 150px;
    right: 480px;
  }
  .story-showcase.is-ldk .showcase-image:nth-child(2) {
    right: 150px;
    bottom: 90px;
    left: 685px;
  }
  .story-showcase.is-ldk .showcase-image:nth-child(1) {
    right: 685px;
    bottom: 0;
    left: 150px;
  }
  /* Kitchen */
  .story-board.is-kitchen {
    margin-bottom: 100px;
  }
  .story-board.is-kitchen .board-picture.is-top {
    margin: 0 0 20px 150px;
    padding: 0;
    display: flex;
    justify-content: flex-end;
  }
  .story-board.is-kitchen .board-picture.is-left {
    max-width: 755px;
  }
  /* Magnet */
  .story-board.is-magnet {
    margin-bottom: 20px;
  }
  .story-board.is-magnet .board-wrapper {
    padding: 0 150px;
  }
  .story-board.is-magnet .board-picture.is-top {
    margin-bottom: 20px;
    padding: 0 150px;
  }
  .story-board.is-magnet .board-picture.is-right {
    max-width: 601px;
  }
  .story-showcase.is-magnet {
    height: 379px;
    margin-bottom: 100px;
    position: relative;
  }
  .story-showcase.is-magnet .showcase-image:nth-child(2) {
    right: 150px;
    bottom: 0;
    left: 743px;
  }
  .story-showcase.is-magnet .showcase-image:nth-child(1) {
    right: 598px;
    bottom: 0;
    left: 150px;
  }
  /* Bathroom */
  .story-board.is-bathroom {
    margin-bottom: -85px;
  }
  .story-board.is-bathroom .board-wrapper {
    padding: 0 230px 0 150px;
  }
  .story-board.is-bathroom .board-picture.is-left {
    max-width: 517px;
  }
  .story-board.is-bathroom .document-wrapper {
    padding-bottom: 150px;
  }
  .story-showcase.is-bathroom {
    height: 840px;
    margin-bottom: 100px;
    position: relative;
  }
  .story-showcase.is-bathroom .showcase-image:nth-child(3) {
    right: 455px;
    bottom: 0;
    left: 225px;
  }
  .story-showcase.is-bathroom .showcase-image:nth-child(2) {
    right: 668px;
    bottom: 475px;
    left: 225px;
  }
  .story-showcase.is-bathroom .showcase-image:nth-child(1) {
    right: 215px;
    bottom: 475px;
    left: 678px;
  }
}
@media print,screen and (min-width:769px) and (max-width:999px) {
  .story-board.is-left .board-wrapper {
    padding: 0 160px 0 180px;
  }
  .story-board.is-right .board-wrapper {
    padding: 0 180px 0 160px;
  }
  /* Magnet */
  .story-board.is-magnet .board-wrapper {
    padding: 0 180px
  }
  /* Bathroom */
  .story-board.is-bathroom .board-wrapper {
    padding: 0 235px 0 180px
  }
}
@media print,screen and (min-width:0) and (max-width:768px) {
  .section-story {
    padding: 20px 0 0 0;
  }
  .section-story .common-heading {
    margin-bottom: 20px;
  }
  .story-board .common-document {
    margin-bottom: 60px;
  }
  .story-board img,
  .story-showcase img {
    width: 100%;
  }
  /* LDK */
  .story-board.is-ldk .board-wrapper {
    margin-bottom: 30px;
  }
  .story-showcase.is-ldk {
    margin: 0 -3px 60px;
    display: flex;
    flex-wrap: wrap;
  }
  .story-showcase.is-ldk .showcase-image:nth-child(1),
  .story-showcase.is-ldk .showcase-image:nth-child(2) {
    width: 50%;
    padding: 0 3px 7px;
  }
  .story-showcase.is-ldk .showcase-image:nth-child(3) {
    width: 100%;
    padding: 0 3px;
  }
  /* Kitchen */
  .story-board.is-kitchen .board-wrapper {
    display: flex;
    flex-direction: column-reverse;
  }
  .story-board.is-kitchen .board-picture.is-top {
    margin-bottom: 10px;
  }
  .story-board.is-kitchen .board-picture.is-left {
    margin-bottom: 20px;
  }
  /* Magnet */
  .story-board.is-magnet .board-wrapper {
    display: flex;
    flex-direction: column-reverse;
  }
  .story-board.is-magnet .board-picture.is-top {
    margin-bottom: 14px;
  }
  .story-board.is-magnet .story-showcase {
    display: flex!important;
    flex-wrap: wrap;
    margin: 0 -3px 20px;
  }
  .story-showcase.is-magnet .showcase-image:nth-child(1) {
    width: 100%;
    padding: 0 3px 14px;
  }
  .story-showcase.is-magnet .showcase-image:nth-child(2),
  .story-showcase.is-magnet .showcase-image:nth-child(3) {
    width: 50%;
    padding: 0 3px;
  }
  /* Bathroom */
  .story-board.is-bathroom .story-showcase {
    display: flex!important;
    flex-wrap: wrap;
    margin: 0 -3px 20px;
  }
  .story-showcase.is-bathroom .showcase-image {
    width: 50%;
    padding: 0 3px;
  }
  .story-showcase.is-bathroom .showcase-image:nth-child(1),
  .story-showcase.is-bathroom .showcase-image:nth-child(2) {
    padding: 0 3px 14px;
  }
}

/* SECTION - FAVORITE */
/* Button */
.favorite-button .button-wrapper {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-decoration: none;
}
.favorite-button .button-content {
  border: solid #9ec0d3;
  border-width: 1px 0;
  font-weight: 700;
  color: #000;
}
/* Product */
.favorite-product {
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
}
.favorite-product .product-wrapper {
  margin: 0 auto;
}
.favorite-product .product-title {
  color: #fff;
}
@media print,screen and (min-width:769px) and (max-width:9999px) {
  .section-favorite {
    margin-bottom: 60px;
  }
  /* Board */
  .favorite-board {
    margin-bottom: 100px;
  }
  .favorite-board .board-wrapper {
    padding-right: 65px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .favorite-board .common-document {
    width: 510px;
    padding: 65px 70px;
    flex: 0 0 auto;
    position: relative;
    order: 2
  }
  .favorite-board .board-picture {
    width: calc(100% - 510px);
    flex: 0 0 auto;
    position: relative;
    z-index: 0;
    mix-blend-mode: multiply;
    order: 1
  }
  .favorite-board .board-picture img {
    width: 129%;
    max-width: 909px;
  }
  .favorite-board .document-heading {
    margin-bottom: 19px;
  }
  .favorite-board .document-wrapper {
    position: relative;
    z-index: 2;
  }
  .favorite-board .common-document .document-heading,
  .favorite-board .common-document .document-content {
    letter-spacing: 0;
  }
  .favorite-board .common-document:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background: #9ec0d3;
    mix-blend-mode: multiply;
  }
  /* Button */
  .favorite-button {
    margin-bottom: 90px;
    padding: 0 12%;
    display: flex;
    justify-content: center;
  }
  .favorite-button .button-wrapper {
    margin-right: 19px;
    padding: 2px 0 1px 88px;
    background: url(/img/brand/story/008_icon_002.png) left -1px top 0px / auto 106px no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
  }
  .favorite-button .button-content {
    margin-top: 2px;
    padding: 36px 55px 35px 0;
    background: url(/img/brand/story/008_icon_003.png) right center / 40px auto no-repeat;
    font-size: 3.4rem;
    line-height: 1;
    letter-spacing: .02em;
  }
  /* Product */
  .favorite-product {
    padding: 0 12%;
  }
  .favorite-product .product-wrapper {
    width: 644px;
    margin: 0 auto;
    padding-left: 11px;
  }
  .favorite-product .product-title {
    margin-bottom: 20px;
    padding: 15px 0 31px 0;
    background: url("/img/brand/story/008_bg_001.png") center top / 100% 70% no-repeat, url("/img/brand/story/008_bg_002.png") center bottom / 100% auto no-repeat;
    font-size: 2.3rem;
    line-height: 1.39;
    letter-spacing: .09em;
  }
  .story-product {
    margin: 0;
  }
  .story-product ul {
    margin-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .story-product ul li {
    width: 287px;
    margin: 0;
    padding-bottom: 20px;
    box-sizing: border-box;
    display: block;
  }
  .story-product ul li:nth-of-type(even) {
    margin: 0;
  }
  .story-product ul .story-product-right,
  .story-product ul .story-product-right a {
    width: 100%;
    display: block;
  }
}
@media print,screen and (min-width:769px) and (max-width:9999px) and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  /* Board */
  .favorite-board .common-document {
    background: rgba(159,193,212,.75);
    z-index: 1;
  }
  .favorite-board .common-document:after {
    display: none;
    mix-blend-mode: normal;
  }
  /* Button */
  .favorite-button .button-content {
    padding: 38px 55px 33px 0;
  }
  /* Product */
  .favorite-product .product-title {
    padding: 20px 0 26px 0;
  }
  .story-product ul .story-product-right a {
    padding: 13px 30px 7px 10px;
  }
}
@media print,screen and (min-width:769px) and (max-width:1149px) {
  /* Product */
  .section-favorite .common-wrapper {
    width: 100%;
  }
  .favorite-board .board-wrapper {
    padding: 0 160px 0 95px;
  }
}
@media print,screen and (min-width:0) and (max-width:768px) {
  .section-favorite {
    padding-bottom: 99px;
  }
  .section-favorite .common-heading {
    margin-bottom: 29px;
  }
  /* Board */
  .favorite-board .common-heading {
    margin-bottom: 29px;
  }
  .favorite-board .common-document {
    padding: 2% 5%;
    background: #9fc1d4;
  }
  .favorite-board .common-document .document-heading {
    font-size: 1.9rem;
    line-height: 3.5rem;
  }
  .favorite-board .common-document.style-dark .document-heading {
    background: url("/img/brand/story/008_icon_008.png") top center / 100% 35px repeat-y
  }
  .favorite-board .common-document.style-light .document-heading {
    background: url("/img/brand/story/008_icon_009.png") top center / 100% 35px repeat-y
  }
  .favorite-board .common-document .document-content {
    letter-spacing: 0;
  }
  .favorite-board {
    margin-bottom: 56px;
  }
  .favorite-board .board-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
  .favorite-board .board-picture {
    margin-bottom: 0px;
  }
  /* Button */
  .favorite-button {
    margin-bottom: 40px;
  }
  .favorite-button .button-wrapper {
    margin-left: -1px;
    padding: 0 0 0 42px;
    background: url(/img/brand/story/008_icon_002.png) center left / 42px auto no-repeat;
    display: block;
    text-decoration: none;
  }
  .favorite-button .button-content {
    padding: 11px 10px 9px 1px;
    background: url(/img/brand/story/008_icon_003.png) right center / 20px auto no-repeat;
    font-size: 1.7rem;
    letter-spacing: .086em;
    line-height: 2.25;
  }
  /* Product */
  .favorite-product .product-title {
    margin-bottom: 0px;
    padding: 4.27vw 0 4.5vw 0;
    background:
        url("/img/brand/story/008_bg_001.png") center top / 100% 40% no-repeat,
        url("/img/brand/story/008_bg_002_sp.png") center bottom / 100% auto no-repeat;
    font-size: 2rem;
    line-height: 1.2;
    letter-spacing: .1em;
  }
  .story-product ul li {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .story-product ul .story-product-img,
  .story-product ul.only .story-product-img {
    max-width: 326px;
    margin-right: 0;
    padding-right: 20px;
    flex: 1 1 auto;
    display: block;
  }
  .story-product .story-product-img a,
  .story-product .story-product-img img {
    width: 100%;
    display: block;
  }
  .story-product ul .story-product-right,
  .story-product ul.only .story-product-right {
    width: 160px;
    flex: 0 0 auto;
    display: block;
  }
}
@media print,screen and (max-width: 374px) {
  .favorite-board .common-document .document-heading {
    font-size: 1.8rem;
  }
}

/* SECTION - PROFILE */
.section-profile .common-heading {
  position: relative;
  z-index: 1;
}
.profile-showcase .detail-text {
  text-align: justify;
}

@media print,screen and (min-width:769px) and (max-width:9999px) {
  .section-profile {
    padding: 60px 0 40px 0;
    background: #e9e9e9;
  }
  .section-profile .common-heading {
    padding-left: 125px;
  }
  .profile-showcase {
    margin: -84px auto 0 auto;
    padding: 0 0 0 27%;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
  }
  .profile-showcase .showcase-thumbnail {
    width: 264px;
    max-width: 264px;
    flex: 0 0 auto;
  }
  .profile-showcase .showcase-thumbnail img {
    width: 100%;
  }
  .profile-showcase .showcase-detail {
    width: 365px;
    padding-left: 50px;
    line-height: 1.75;
  }
  .profile-showcase .detail-title {
    font-size: 1.8rem;
  }
  .profile-showcase .detail-name small,
  .profile-showcase .detail-text {
    font-size: 1.5rem;
    line-height: 1.75;
  }
  .profile-showcase .detail-name {
    font-size: 1.8rem;
    margin-bottom: 6px;
  }
  .profile-showcase .detail-title {
    margin-bottom: 16px;
  }

  /* SECTION - MEMBER */
  .section-member {
    padding: 133px 0 141px 0;
  }
  .section-member .common-heading {
    padding-left: 25px;
  }
}
@media print,screen and (min-width:0px) and (max-width:768px) {
  /* SECTION - PROFILE */
  .section-profile {
    padding: 0 15px;
  }
  .section-profile .common-wrapper {
    padding: 8% 5%;
    background: #eaeaea;
  }
  .section-profile .common-heading {
    margin-bottom: 5%;
  }
  .section-profile .showcase-thumbnail {
    width: 100%;
    margin: 5% 0 3% 0;
  }
  .section-profile .showcase-thumbnail img {
    width: 100%;
  }
  .profile-showcase .showcase-detail {
    margin-top: 0px;
  }
  .profile-showcase .detail-name,
  .profile-showcase .detail-title {
    font-size: 1.7rem;
  }
  .profile-showcase .detail-name small,
  .profile-showcase .detail-text {
    font-size: 1.5rem;
  }
  .profile-showcase .detail-title {
    margin-bottom: 2%;
  }

  .profile-showcase .detail-name,
  .profile-showcase .detail-title,
  .profile-showcase .detail-text {
    line-height: 1.75;
  }

  .section-slider-wrapper {
    padding-top: 0;
  }
  .section-slider-wrapper>:first-child {
    margin-top: 30px;
  }
}

.story-product ul .story-product-right .no-link {
  display: inline-block;
  padding: 21px 10px 22px;
  border: 2px solid #A1C3D6;
  border-radius: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 130%;
  text-decoration: none;
  text-align: left;
  width: 100%;
}
@media print,screen and (max-width:768px) {
  .story-product ul .story-product-right .no-link {
    display: inline-block;
    padding: 19px 10px;
    margin-top: 0;
    vertical-align: middle;
    font-size: 1.4rem;
  }
}