@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600&family=Shippori+Mincho:wght@400;500;600;700;800&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');

:root {
  --main-max-width: 728px;
  --white: #FFFFFF;
  --black: #000000;
  --first-color: #C69364;
  --second-color: #EBD7C4;
  --third-color: #EFEAED;
  --forth-color: #CFA47C;
  --strong-color: #ED6E46;
  --gray-001: #F5F5F5;
  --pink: #FD85AF;
  --pinkwhite: #EFEAED;
  --gold: #AA8435;
  --dark: #707070;
  --cream: #FFF0CD;
  --renga: #A92C3F;
  --transparent-white: rgb(255,255,255,0.6);
  --blue: #57B3E1;
  --light-blue: #DDE9EB;
  --green: #01b2b3;
  --green-b: #6cbb5a;
  --light-orange: rgb(253,228,219,0.9);
  --light-blue-bright: #E5F2FA;
  --light-green: #E7F5E6;
}

* {
    font-feature-settings: "palt" 1;
}

sup {
    font-size: 60%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
    left: -0.4em;
}

sup.r {
    top: -1.4em;
    left: 0.5em;
}

html,
body {
  font-family: 'Zen Kaku Gothic New', sans-serif;
}

p {
    font-size: 14px;
    line-height: 1.5em;
    font-weight: 500;
}

main {
    max-width: var(--main-max-width);
    margin: 0 auto;
    padding-bottom: 120px;
    overflow-x: hidden;
}

img {
  width: 100%;
}

ul.item-list {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    margin-top: 28px;
    position: relative;
    z-index: 0;
}

ul.item-list li {
  width: 100%;
      display: flex;
      padding: 0;
      margin: 0;
}

.row {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    margin-bottom: 28px;
}

.col2 {
  width: calc(100% / 12 * 2);
}

.col3 {
  width: calc(100% / 12 * 3);
}

.col4 {
  width: calc(100% / 12 * 4);
}

.col5 {
  width: calc(100% / 12 * 5);
}

.col6 {
  width: calc(100% / 12 * 6);
}

.col7 {
  width: calc(100% / 12 * 7);
}

.col8 {
    width: calc(100% / 12 * 8);
}

.col9 {
    width: calc(100% / 12 * 9);
}

.col10 {
    width: calc(100% / 12 * 10);
}

.col11 {
    width: calc(100% / 12 * 11);
}

.col12 {
    width: 100%;
}

.row > div {
    padding: 0 10px;
}

.row > div:last-child {
    padding-right: 0;
}

.row > div:first-child {
    padding-left: 0;
}

#first-modal {
    position: fixed;
    width: 100vw;
    height: 100vh;
    background-color: rgb(255,255,255,0.6);
    z-index: 10010;
    top: 0;
    left: 0;
    margin: auto;
    /* display: flex; */
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    display: none;
    overflow: scroll;
}

#first-modal .modal-inner {
    max-width: 680px;
    margin: auto;
    width: 100%;
    padding: 20px 20px;
    background-color: var(--light-blue-bright);
    border-radius: 6px;
}

#first-modal .modal-inner .row.modal-row {
    flex-direction: column;
}

#first-modal .modal-inner .row.modal-row .col6 {
    width: 100%;
    padding: 0;
}

#first-modal .modal-inner .row.modal-row h4.modal-h {
    text-align: center;
    font-size: 24px;
    margin-bottom: 18px;
    font-weight: 600;
    margin-top: 24px;
    letter-spacing: -0.05em;
    font-family: "Shippori Mincho",serif;
}

#first-modal .modal-inner .row.modal-row p {
    text-align: center;
}

#first-modal span.strong-sent {
    font-size: 120%;
    font-weight: 600;
}

#first-modal button.modal-close {
    width: 42px;
    height: 42px;
    border: solid 2px;
    border-radius: 50px;
    margin: 0 auto;
    display: block;
    margin-top: 24px;
    position: relative;
}

#first-modal button.modal-close .closs {
    width: 24px;
    height: 2px;
    background-color: #000000;
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    top: 0;
    bottom: 0;
}

#first-modal button.modal-close .closs.btm {
    transform: rotate(-45deg);
}
#first-modal button.modal-close .closs.top {
    transform: rotate(45deg);
}

span.page {
    background-color: var(--white);
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 20px;
    font-size: 14px;
    font-weight: 600;
}

.item-inner {
    background-color: var(--gray-001);
    margin: 18px 0px 28px 0px;
    border-radius: 6px;
    /* padding: 24px 24px; */
    position: relative;
}

.row h4 {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: -0.1em;
}

ul.list {
    font-size: 12px;
    padding: 0 20px 0 20px;
    list-style: disc;
    margin-left: 2em;
    margin-top: 4px;
    margin-bottom: 4px;
}

ul.product-lists + ul.list {
    margin-top: -14px;
}

span.product-num {
    font-family: "garamond";
    position: absolute;
    right: 0;
    width: 22px;
    height: 22px;
    background-color: var(--black);
    color: var(--white);
    margin: auto;
    text-align: center;
    line-height: 1.4em;
    border-radius: 0 6px 0 0;
}

.product-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.img-wrap {
    width: 30%;
}

.Btn-inner {
    display: flex;
}

.favorite {
    display: none;
}

.favorite-label img {
    width: 26px;
    display: block;
}

.fav-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 0px 0px 0px 0px;
  padding: 18px 8px;
  width: 30%;
}

.prod-pg-wrap {
  background-color: var(--forth-color);
  width: 70%;
  padding: 12px 18px;
  /* margin: 0 -24px -24px 0px; */
  border-radius: 0 0 6px 0px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.prod-pg-wrap > img {
  width: 72px;
      /* height: 20px; */
      margin-right: 10px;
}

.product02-last-img-wrap {
    margin: 0px 0px 80px 0;
}

span.fav-tex {
    font-size: 12px;
    display: block;
}

a.prod-page {
    color: var(--white);
    background-color: var(--black);
    padding: 8px 24px;
    border-radius: 4px;
    font-size: 12px;
    width: 120px;
    height: fit-content;
}

.favorite-label {
    margin: 4px 0px 0px -4px;
}

.product-inner {
  padding-left: 18px;
  padding-right: 18px;
  width: 70%;
  /* padding-bottom: 18px; */
}

.product-inner h3 {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.1em;
    margin-bottom: 4px;
}

.product-inner span.price {
    font-size: 12px;
    line-height: 1em;
    font-weight: 600;
    margin-right: 4px;
}

main.product09 .more-wrap > .row span.ad-sub {
    padding: 0;
    margin-top: 14px;
    display: none;
}

span.supple {
    font-size: 10px;
    /* margin-left: 8px; */
    line-height: 1.1em;
    /* display: inline-block; */
    margin-top: 4px;
}

h2.pro-head.blue:first-letter {
    color: var(--blue);
}

h2.pro-head.green:first-letter {
    color: var(--green);
}

.skin-care {
    color: var(--blue);
}

.fragrance {
    color: var(--green);
}

.b-and-h-c {
    color: var(--green-b);
    font-size: 16px!important;
}

.img-wrap img {
    width: 100%;
}

button.favorite {
    display: block;
    height: 25px;
    width: 25px;
    margin: 0 auto;
    /* background-color: red; */
}

header {
  position: fixed;
      width: 100%;
      height: 70px;
      bottom: 0;
      background-color: #efefef;
      padding: 0;
      margin: 0 auto;
      z-index: 9999;
}

h4.wishlist-head {
    text-align: center;
    font-size: 10px;
    margin: 4px 0px;
    font-weight: 600;
    padding: 0 10px;
    /* letter-spacing: -0.1em; */
}

.menu-Btn-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 70px;
    padding: 19px 22px;
    /* height: 70px; */
}

span.menu-tex {
    font-size: 10px;
    font-weight: 600;
}

button#menu {
    position: relative;
    width: 100%;
    height: 28px;
}

span.menu-icon {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #000000;
    left: 0;
    right: 0;
    margin: auto;
}

span.menu-icon.btm {
    bottom: 5px;
}

span.menu-icon.top {
    top: 5px;
}

span.menu-icon.mdl {
    top: 0;
    bottom: 0;
}

.header-wrap {
    width: 100%;
    height: 100%;
    max-width: var(--main-max-width);
    margin: 0 auto;
}

.wishlist-wrap {
    /* width: 270px; */
    /* height: inherit; */
    /* display: flex; */
    overflow: hidden;
    /* flex-direction: column; */
    width: 100%;
    text-align: center;
}

.no-list-head .disc-wrap {
    display: none;
}

.header-logo {
    padding: 20px 16px;
    width: 70px;
}

.header-inner {
  display: flex;
}

a.wish-link {
    word-break: keep-all;
}

#header-wish {
    /* height: 100%; */
    display: flex;
    /* position: relative; */
    overflow-x: scroll;
    /* flex-wrap: wrap; */
    /* align-items: center; */
    /* justify-content: center; */
}

.wish-list-img-wrap {
    height: inherit;
    width: 40px;
    margin-right: 2px;
    /* padding: 0px 2px 0px 2px; */
    /* overflow-x: scroll; */
}

.wishlist-over {
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    padding-bottom: 10px;
    background-color: var(--second-color);
    padding: 0 18px;
    width: 100%;
}

.wishlist-over-inner {
    display: flex;
    overflow-x: scroll;
    width: 100%;
    justify-content: center;
    align-items: center;
}

a.wish-link img {
    width: 40px;
    animation: contraction 6s ease 0s infinite alternate none running;
    transform: scale(1);
}

@keyframes contraction {
  0% {
    transform: scale(1);
  }

  35% {
    transform: scale(1);
  }

  40% {
    transform: scale(0.8);
  }

  45% {
    transform: scale(1);
  }

  100% {
    transform: scale(1);
  }
}

.header-logo img {
    width: 40px;
}

.all-Btn {
    display: flex;
    justify-content: center;
    align-items: baseline;
    /* padding-top: 0; */
    width: 40px;
    margin-left: 2px;
}

.wish-list-img-wrap.all-Btn {
    position: absolute;
    width: 50px;
    right: 0;
    height: inherit;
    padding: 0px 6px 0px 6px;
}

.wish-list-img-wrap img {
    width: 40px;
}

#menu-window {
    position: fixed;
    height: 100vh;
    z-index: 10004;
    touch-action: pan-y;
    background-color: var(--white);
    width: 100%;
    padding: 18px 28px;
    overflow-y: scroll;
    /* top: -400vh; */
    transition: 0.5s;
    /* opacity: 0; */
    /* top: -80px; */
    /* display: none; */
}

#menu-window.close {
  opacity: 1;
  display: none;
  top: -80px;
  animation: fadeIn 0.3s ease-in 0s forwards;
  animation-direction:reverse;
}

#menu-window.open {
    opacity: 1;
    top: -80px;
    display: block;
    animation: fadeIn 0.3s ease-in 0s forwards;
    animation-direction: normal;
}

@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
    top: -80px;
    /* z-index: -9999; */
  }

  1% {
    display: block;
    opacity: 0;
    top: -80px;
    /* z-index: 9999; */
  }

  100% {
    display: block;
    opacity: 1;
    top: 0px;
    /* z-index: 9999; */
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
    display: block;
  }

  100% {
    opacity: 0;
    display: none;
  }
}

.hankyu-img {
    max-width: 92px;
    margin: 28px auto;
}

ul.future-list-sub li {
    margin-bottom: 18px;
}

ul.future-list-sub {
    padding-left: 2.5rem;
    margin-top: 18px;
}

ul.future-list-sub li .future-sub:before {
    content: "";
    position: absolute;
    width: 8px;
    height: 2px;
    background-color: #000;
    top: 0.7em;
    left: -1em;
    margin-right: 1em;
}

ul.future-list-sub li .future-sub {
    position: relative;
}

ul.future-list-sub li .future-sub h4 {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4em;
}

a.wishlist-Btn {
    width: 100%;
    background-color: var(--blue);
    display: flex;
    padding: 21px 18px;
    color: var(--white);
    font-size: 16px;
    font-weight: 600;
    border-radius: 6px;
    max-width: 372px;
    justify-content: center;
    margin: 0 auto;
}

a.wishlist-Btn img {
  width: 9px;
      /* margin: 0px 8px; */
      display: block;
}

#load-over-wrap {
    width: 100vw;
    height: 100vh;
    position: fixed;
    background-color: var(--white);
    z-index: 10000;
}

span.left-sent {
    word-break: break-all;
    width: 7em;
    display: flex;
    align-items: center;
    letter-spacing: -0.03em;
}

span.right-sent {
  font-size: 12px;
      letter-spacing: -0.1em;
      line-height: 1.4em;
      margin-left: 14px;
}

ul.future-list {
    /* color: var(--white); */
    margin-top: 28px;
}

ul.future-list .future {
    border-left: solid 3px;
    padding-left: 1.2em;
    padding-top: 8px;
    padding-bottom: 8px;
}

.future h4 {
    font-size: 18px;
    line-height: 1.4em;
    font-weight: 600;
}

.future span {
    font-size: 12px;
    line-height: 1.4em;
    margin-bottom: 4px;
    display: block;
    font-weight: 600;
}

ul.future-list li {
    margin-bottom: 24px;
}

.brand-list-wrap {
    font-weight: 600;
}

h3.brand-list-head {
    color: var(--blue);
    margin-top: 10px;
    display: block;
    margin-bottom: 18px;
    font-size: 18px;
}

ul.brand-list {
    padding-left: 1em;
    padding-bottom: 150px;
}

ul.brand-list li {
    margin-bottom: 6px;
    letter-spacing: -0.03em;
    line-height: 1.4em;
    font-size: 16px;
}

button#menu-close {
  position: absolute;
      width: 20px;
      height: 20px;
      right: 20px;
      top: 20px;
}

span.menu-close-icon {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #000;
    top: 0;
    bottom: 0;
    margin: auto;
}

span.menu-close-icon.btm {
    transform: rotate(-45deg);
}

span.menu-close-icon.top {
    transform: rotate(45deg);
}

.arrow-wrap {
  position: fixed;
  width: 100%;
  height: 48px;
  bottom: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9998;
}

.arrow-wrap a img {
    width: 7px;
    height: 1em;
    margin: 0 7px;
    display: inline-block;
}
.arrow-wrap a {
    display: flex;
    height: 36px;
    width: 82px;
    background-color: var(--strong-color);
    color: var(--white);
    justify-content: center;
    align-items: center;
    border: solid 3px var(--white);
    font-size: 14px;
}

.arrow-wrap a.prev {
    padding-right: 10px;
}

.arrow-wrap a.next {
    padding-left: 10px;
}

img.copy-icon {
    width: 35px;
    display: block;
    margin: 28px auto;
}

.share-wrap span {
    text-align: center;
    display: block;
    margin-bottom: 24px;
    font-weight: 600;
    font-size: 14px;
}

input#share {
    display: block;
    margin: 20px auto;
    border: solid 2px var(--black);
    padding: 12px 18px;
}

button.share-reset {
    display: block;
    margin: 0 auto;
    text-decoration: underline;
    font-size: 14px;
    font-weight: 600;
}

#header-wish.no-lists {
    display: none!important;
}

header.is-wishList-header .wishlist-over {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.home-001 {
    background-image: url(../img/home-top.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 80vh;
        overflow: hidden;
}

main.home-001 img.hankyu {
    max-width: 92px;
    position: absolute;
    margin: 0;
    display: block;
    text-align: right;
    left: 20px;
    top: 0;
}

main.home-001 h3.product01-002:before, main.home-001 h3.product01-002:after {
    background-color: var(--black);
}

main.home-001 h3.product01-002:after {
  right: auto;
}

main.home-001 h3.product01-002 {
    font-size: 22px;
    font-family: 'Shippori Mincho';
    color: var(--black);
    text-align: left;
    margin: 0 0 0 32px;
}

.home-001 img.home-top-003 {
    width: 100%;
    padding: 0 18px;
}

img.home-ora {
    max-width: 174px;
    margin-bottom: 20px;
    margin-left: 10px;
}

h3.home-002 {
    font-weight: 400;
    font-size: 28px;
    position: relative;
    color: var(--white);
    text-align: center;
}

h2.home-003 {
    font-size: 45px;
    font-weight: 600;
    text-align: center;
    color: var(--pink);
    line-height: 1em;
    margin-top: 12px;
    margin-bottom: 28px;
}

h2.home-003 img {
    display: inline-block;
    width: 0.8em;
    vertical-align: middle;
    margin-left: 7px;
}

main.home-001 + .product01-005 {
    padding-bottom: 140px;
}

p.tex-center {
    text-align: center;
    letter-spacing: -0.04em;
}

p.mincho {
    font-family: 'Shippori Mincho';
}

h5.other-items.renga {
    background-color: var(--renga);
}

span.home-004 {
    font-size: 17px;
    color: var(--white);
    text-align: center;
    margin: 0 auto;
    display: flex;
    border-top: double 4px var(--white);
    border-bottom: double 4px var(--white);
    align-items: center;
    justify-content: center;
    width: 210px;
}

img.cancamlogo-home {
    width: 37px;
    margin-left: 20px;
}

main.home-001 .top-wrap {
    height: calc(88vh - 80px);
    display: flex;
    flex-direction: column;
    justify-content: end;
}

main.product01 .top-wrap {
    background-image: url(../img/001-top.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 74vh;
}

main.product02 .top-wrap2 {
    background-image: url(../img/002-top.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 74vh;
}

.product01-wrap {
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: end;
    height: 72vh;
    padding: 0 18px;
}

h3.product01-002 {
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    display: block;
    margin: 0 auto;
    color: var(--white);
    position: relative;
}

h3.product01-002:before, h3.product01-002:after {
    content: "";
    position: absolute;
    margin: auto;
    top: 0;
    width: 20px;
    height: 1px;
    background-color: var(--white);
}

h3.product01-002:after {
    right: -22px;
    transform: rotate(-65deg);
    top: 10px;
}

h3.product01-002:before {
    left: -22px;
    transform: rotateZ(65deg);
    top: 10px;
}

h2.product01-003 {
    font-size: 45px;
    color: var(--strong-color);
    font-weight: 600;
    letter-spacing: -0.1em;
    text-align: center;
    margin: 12px auto;
    font-family: 'Shippori Mincho', serif;
}

p.product01-004 {
    padding: 0px 18px;
    color: var(--white);
    font-size: 24px;
    text-align: center;
    display: block;
    margin: 0 auto;
    font-family: 'Shippori Mincho', serif;
    font-weight: 400;
    letter-spacing: -0.1em;
}

.product01-005 {
    text-align: left;
    padding: 14px 18px 24px 18px;
    font-size: 14px;
    line-height: 1.5em;
}

.product01-005 span {
    font-size: 12px;
    line-height: 1.4em;
    margin-top: 12px;
    display: block;
}

.product01-006 {
    /* background-color: var(--pinkwhite); */
    position: relative;
    /* top: 88px; */
    margin-top: 88px;
    /* margin-bottom: 80px; */
}

.product01-006-inner {
    /* top: -52px; */
    position: relative;
    padding: 0 18px;
    /* height: calc(100% - 30px); */
    /* height: 40%; */
    /* margin-top: -20px; */
}

.product01-006-inner h3 {
    font-size: 18px;
    font-weight: 600;
}

.product01-006-inner h3.\30 06-01 img {
    width: 108px;
    position: absolute;
    left: -20px;
    top: -90px;
}

.product01-006-inner.type2 h3.\30 06-01 img {
    top: -70px;
    /* position: relative; */
    left: -20px;
    /* width: 100px; */
    /* height: initial; */
}

.product01-006-inner.type2 h3 {
    display: flex;
    height: 60px;
}

.product02 .product01-006 {
    margin-top: 28px;
}

.type2 span.\30 06-h2 {
    color: var(--renga);
    letter-spacing: -0.1em;
}

.type2 span.\30 06-h2:before {
    background-image: url(../img/product-top-004.png);
    width: 110%;
    height: 100px;
}

.product02 span.\30 06-h1 {
    display: block;
    position: absolute;
    width: calc(100% - 55px);
    left: 55px;
}

.product01 span.\30 06-h1 {
    display: block;
    /* position: absolute; */
    width: calc(100% - 55px);
    left: 55px;
}

span.\30 06-h2 {
    font-size: 35px;
    color: var(--gold);
    position: relative;
    z-index: 1;
}

span.\30 06-h2:before {
    content: "";
    top: -20px;
    left: -8px;
    position: absolute;
    background-image: url(../img/2-2.png);
    width: 160%;
    height: 110%;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1;
}

span.\30 06-h3 {
    font-size: 24px;
    letter-spacing: -0.05em;
}

.product01-006-inner p {
    font-size: 14px;
    margin: 24px 0 34px 0;
    line-height: 1.4em;
}

/* .product01-006-inner h3.\30 06-01 {
    margin-top: -12px;
} */

.product01-006-inner h3.\30 06-02 {
    margin-top: -22px;
}

.product01-006-inner p.mgbtm-no {
    margin: 24px 0 0px 0;
}

.product01-006:after {
    bottom: 10px;
}
.product01-006:before {
    top: 10px;
}
/* .product01-006:before, .product01-006:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    background-color: var(--white);
    margin: auto;
} */

.product01-007 {
    background-color: var(--gray-001);
    font-size: 14px;
    line-height: 1.4em;
    margin: 0 18px;
    padding: 18px 24px;
    border-radius: 4px;
    position: relative;
}

h4.howto-h:before, h4.howto-h:after {
    position: absolute;
    content: "";
    border-left: double 4px #707070;
    height: 20px;
    width: 160px;
    margin: auto;
    right: 0;
    left: 0;
}

h4.howto-h {
    font-family: 'Barlow Condensed';
    font-size: 20px;
    text-align: center;
    margin-bottom: 18px;
    position: relative;
    display: block;
}

h4.howto-h:after {
    right: -100%;
}

h4.howto-h:before {
    left: 0;
}

h5.other-items {
    font-family: "Barlow Condensed";
    font-size: 20px;
    text-align: center;
    display: flex;
    width: 90px;
    height: 90px;
    margin: 0 auto;
    background-color: var(--gold);
    border-radius: 100%;
    justify-content: center;
    align-items: center;
    color: var(--white);
    margin-top: 48px;
}

/* .product01-007:before {
    position: absolute;
    content: "HOW TO";
    font-weight: 600;
    font-family: "Futura";
    top: -10px;
    font-size: 16px;
    color: var(--first-color);
} */

h4.product01-008 span {
    color: var(--black);
    margin: 10px 12px;
}

h4.product01-008 {
    margin: 60px auto 10px auto;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    color: var(--strong-color);
}

.item .disc-wrap:after {
    background-color: #F3F3F3;
    width: 20px;
    height: 20px;
    left: -15px;
    top: 6px;
    z-index: -2;
}

.item .disc-wrap:before {
    background-color: #CFCFCF;
    width: 33px;
    height: 33px;
    left: -38px;
    top: -15px;
    opacity: 0.7;
}

.item .disc-wrap:before, .item .disc-wrap:after {
    position: absolute;
    content: "";
    border-radius: 100%;
    z-index: -1;
}

.item .disc-wrap {
    font-weight: 600;
    position: relative;
    color: var(--gold);
    font-size: 14px;
}

h3.product-02-002-01 .sub {
    font-size: 14px;
    display: block;
}

h3.product-02-002-01 {
  font-size: 27px;
      font-weight: 600;
      color: var(--strong-color);
      margin-top: 68px;
      margin-bottom: 28px;
}

.product-02-002 {
    position: relative;
    padding: 0 18px;
}

.product-02-002 img.sub-img {
    position: absolute;
    top: -50px;
    width: 120px;
    right: 10px;
}

.product-02-002 > p {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 24px;
}

.product-02-002 > span {
    font-size: 12px;
    /* padding: 0 24px; */
    margin-bottom: 28px;
    display: block;
}

.pro-disc, .product-03-002 {
    position: relative;
    padding: 0 18px;
    margin-bottom: 18px;
}

.pro-disc-head, h3.product-03-002-01 {
    text-align: center;
    /* color: var(--strong-color); */
    font-weight: 600;
    font-size: 20px;
    margin: 24px 0 18px 0;
}

.more-wrap {
    background-color: var(--cream);
    padding: 24px 0px;
    margin-top: 38px;
}

span.more img {
    max-width: 138px;
    display: block;
    margin: 0 auto;
}

span.more:before, span.more:after {
    content: "";
    position: absolute;
    width: 30%;
    height: 1px;
    background-color: var(--dark);
    bottom: 0;
    overflow: hidden;
}

span.more:after {
    right: 0;
}

span.more:before {
    left: 0;
}

span.more {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.more-wrap ul.item-list {
    margin-top: 18px;
}

.more-wrap .disc-wrap {
    display: none;
}

.pro-disc p,
.product-03-002 p {
    font-size: 14px;
    line-height: 1.4em;
}

span.ad-sub {
    font-size: 12px;
    padding: 0 18px;
    display: block;
}

.no-disc .disc-wrap {
  display: none;
}

.no-favorite .fav-wrap {
    display: none;
}

.no-favorite .prod-pg-wrap {
    width: 100%;
}

.no-favorite .prod-pg-wrap > img {
    width: 132px;
}

.sns-icon-inner {
    display: flex;
    max-width: 260px;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    padding: 18px 18px;
}

img.sns-icon {
    width: 42px;
}

.top-wrap h2 .sub {
    display: block;
    font-size: 12px;
    font-weight: 400;
    font-family: 'Zen Kaku Gothic New';
    margin-top: 8px;
    line-height: 1em;
}

.top-wrap h2.pro-head {
    font-size: 45px;
    font-weight: 500;
    text-align: center;
    font-family: 'Barlow Condensed';
    line-height: 0.9em;
    margin-top: -20px;
}
.top-wrap.vertically h2.pro-head {
    font-size: 45px;
    font-weight: 500;
    text-align: center;
    font-family: 'Barlow Condensed';
    line-height: 0.9em;
    margin-top: -22px;
}

span.cat {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: 113px;
    text-align: center;
    background-color: var(--transparent-white);
    border-right: solid 1px;
    border-left: solid 1px;
    border-bottom: solid 1px;
    padding: 8px 0px;
    border-radius: 0px 0px 10px 10px;
    font-family: 'Barlow Condensed';
    font-size: 18px;
}

.make-up {
    color: var(--strong-color);
}

h2.orange:first-letter {
    color: var(--strong-color);
}

h2.green-b:first-letter {
    color: var(--green-b);
}



.renga .disc-wrap {
    color: var(--renga);
}

img.product02-last-img {
    padding: 0 18px;
}

.product-03-002.pro-disc.campaign-elm {
    position: relative;
    margin: 100px 0px 0px 0px;
}

.product-03-002.pro-disc.campaign-elm:before {
    content: "";
    position: absolute;
    width: 240px;
    height: 240px;
    background-color: var(--light-blue);
    z-index: -1;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 100%;
}

.product-03-002.pro-disc.campaign-elm h3.product-03-002-01.pro-disc-head {
    font-size: 16px;
    line-height: 1.6em;
    letter-spacing: -0.08em;
    display: block;
}

.product-03-002.pro-disc.campaign-elm h3.product-03-002-01.pro-disc-head span.blue-strong {
    color: var(--blue);
    font-size: 20px;
    display: block;
}

h4.pro-17-m-h {
    line-height: 1.6em;
}

main.product16 .top-wrap {
    /* overflow-x: hidden; */
    position: relative;
    margin-bottom: 100px;
}

img.product16-top {
    width: 122%;
    position: relative;
    left: -16px;
    top: -13px;
}

img.product16-02 {
    position: absolute;
    bottom: -56px;
    max-width: 346px;
    z-index: 1;
}

img.product16-01 {
    position: absolute;
    bottom: -92px;
    max-width: 286px;
    right: 0;
    z-index: 0;
}

.ques {
    padding: 0 20px;
    position: relative;
    margin: 24px 0 24px 0px;
}

.ques:before {
    content: "";
    position: absolute;
    width: 1000px;
    height: 1000px;
    background-color: var(--light-orange);
    left: 50%;
    right: 0;
    top: 40px;
    bottom: 0;
    margin: auto;
    border-radius: 100%;
    transform: translate(-50%, 0px);
    z-index: -1;
}

h3.ques-h {
    font-size: 40px;
    text-align: center;
    font-family: "Zen Kaku Gothic New";
    font-weight: 600;
    margin-bottom: 38px;
    letter-spacing: -0.1em;
}

h3.ques-h img {
    width: 60px;
    display: block;
    margin: 8px auto;
    padding: 2px;
}

span.q-h-strong.orange {
    color: var(--strong-color);
}

span.q-h-normal {
    font-family: 'Shippori Mincho';
}

h4.ques-h-s {
    font-size: 20px;
    text-align: center;
    margin-bottom: 18px;
    font-weight: 600;
    letter-spacing: -0.1em;
}

h4.ques-h-s img {
    width: 32px;
    display: block;
    margin: 0px auto 12px auto;
}

ul.product-lists.item-list.orange .disc-wrap {
    color: var(--strong-color);
}

img.product16-05 {
    width: 115px;
    position: absolute;
    top: -24px;
    right: -20px;
}

.ques ul.product-lists {
    margin-top: 80px;
    padding: 0;
}

.howto img {
    max-width: 180px;
    margin: 8px auto 18px auto;
    display: block;
}

h5.other-items.orange {
    background-color: var(--strong-color);
}

.ques.ques-sec:before {
    width: 560px;
    height: 560px;
    top: 210px;
}

.ques.ques-sec.blue:before {
    background-color: var(--light-blue);
}

.ques.ques-sec {
    margin-top: 58px;
}

.ques.ques-sec + ul.product-lists {
    margin-top: 80px;
}

ul.product-lists.blue .disc-wrap {
    color: var(--blue);
}

span.ques-inline img {
    display: inline-block;
    margin: 0 0 0 8px;
}

span.ques-inline {
    display: block;
    font-size: 20px;
    line-height: 2em;
}

span.q-h-strong.blue {
    color: var(--blue);
}

main.product28 .ques.ques-sec:before {
    bottom: -100px;
}

img.product-top-28 {
    width: 110%;
    position: relative;
    left: -26px;
    top: -28px;
}

main.product28 .top-wrap {
    position: relative;
}

img.product28-02 {
    position: absolute;
    bottom: 0px;
    width: 334px;
    left: 18px;
}

img.product28-03 {
    position: absolute;
    bottom: 210px;
    width: 192px;
    right: 0;
}

main.product28 .ques.ques-sec + ul.product-lists {
    margin-top: 48px;
}

main.featured-list.blue .top-wrap {
    background-color: var(--light-blue-bright);
}

main.featured-list .top-wrap {
    padding: 72px 20px;
}

main.featured-list .top-wrap h2 {
    font-family: "Shippori Mincho";
    font-size: 32px;
}

main.featured-list .top-wrap h2 .p33-h-sub {
    font-family: "Zen Kaku Gothic New";
    font-size: 16px;
    font-weight: 600;
    display: block;
    line-height: 1.4em;
    margin-bottom: 12px;
}

main.featured-list .top-wrap h2 span.p33-h-mid {
    line-height: 1.4em;
    letter-spacing: -0.1em;
    display: block;
    position: relative;
}

main.featured-list .top-wrap h2 span.p33-h-main {
    font-size: 52px;
    letter-spacing: -0.16em;
    color: var(--blue);
    margin-bottom: 20px;
    display: block;
}

main.featured-list .top-wrap > img {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -43px;
    margin: auto;
}

main.featured-list .top-wrap {
    position: relative;
    margin-bottom: 0px;
}

main.featured-list .pro-disc h3 {
    font-family: "Shippori Mincho", serif;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    letter-spacing: -0.05em;
    line-height: 1.5em;
    margin: 34px 0px 18px 0px;
}

main.featured-list .pro-disc img {
    margin: 18px 0px;
}

main.featured-list .top-wrap h2 span.p33-h-mid:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 42px 23px 0 0px;
    border-color: var(--blue) transparent transparent transparent;
    top: 17px;
    right: 10px;
    z-index: 0;
    transform: rotate(23deg);
}

main.featured-list .top-wrap h2 span.p33-h-mid:before {
    content: "要Check!";
    position: absolute;
    font-size: 20px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    right: 0;
    letter-spacing: -0.03em;
    background-color: var(--blue);
    color: var(--white);
    padding: 0px 12px;
    top: 0;
    font-weight: 400;
    line-height: 1.8em;
    z-index: 1;
}

main.featured-list .on-top-line:before {
    content: "";
    position: absolute;
    width: calc(100% - 20px);
    height: 4px;
    background-color: var(--gold);
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
}

main.featured-list .pro-disc h3 {
    font-family: "Shippori Mincho", serif;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    letter-spacing: -0.05em;
    line-height: 1.5em;
    margin: 34px 0px 18px 0px;
    padding-top: 32px;
}

main.featured-list ul.product-lists {
    margin-bottom: -24px;
}

main.featured-list.green .top-wrap {
    background-color: var(--light-green);
}

main.featured-list span.p44-h-sub {
    font-family: 'Zen Kaku Gothic New';
    font-weight: 600;
    font-size: 16px;
    display: block;
    letter-spacing: -0.05em;
}

main.featured-list span.p44-h-mid {
    font-size: 48px;
    font-weight: 600;
    text-align: center;
    display: block;
    letter-spacing: -0.1em;
    margin: 12px 0 48px 0px;
    position: relative;
}

main.featured-list.product44 .top-wrap {
    padding-bottom: 42px;
}

main.featured-list span.p44-h-mid:before {
    content: "";
    position: absolute;
    background-image: url(../img/product44-01.svg);
    width: 821px;
    height: 27px;
    bottom: -30px;
}

main.featured-list.green .on-top-line:before {
    background-color: var(--green);
}

main.product44.featured-list .pro-disc > img {
    width: 38%;
    margin: 34px auto 0px auto;
    display: block;
}

main.product44.featured-list .pro-disc > img.product44-img01 {
    width: 114px;
}

main.product44.featured-list .pro-disc > img.product44-img02 {
    width: 120px;
}

.top-wrap .row {
    padding: 0 0;
}

main.product47 .top-wrap {
    padding-right: 0;
    padding-left: 0;
}

.salon-info span.p47-h-sub {
    font-family: 'Zen Kaku Gothic New';
    font-size: 16px;
    line-height: 1.4em;
    display: block;
    font-weight: 600;
    letter-spacing: -0.1em;
    width: 110%;
    margin-left: -12px;
}

.salon-info span.p47-h-mid {
    font-size: 52px;
    color: var(--blue);
    letter-spacing: -0.07em;
    line-height: 1em;
    margin-top: 10px;
    display: block;
    font-weight: 600;
    margin-left: -20px;
}

.salon-info span.p47-h-mid span:last-child {
    margin-left: -0.3em;
}
.salon-info span.p47-h-mid span:nth-child(1) {
    margin-left: 0.3em;
}

main.product47 .top-wrap .col8 {
    padding-left: 10px;
    padding-right: 20px;
}

main.product47 .top-wrap p {
    padding: 0 20px;
}

main.featured-list.salon-info .pro-disc h3 {
    font-family: 'Barlow Condensed';
    font-size: 45px;
    display: block;
    line-height: 1em;
    letter-spacing: 0em;
}

main.product48.featured-list.salon-info .pro-disc h3 {
    font-family: "Zen Kaku Gothic New";
    letter-spacing: -0.06em;
}

main.featured-list.salon-info .pro-disc h3 span.sub {
    font-family: 'Zen Kaku Gothic New';
    font-size: 12px;
    display: block;
    line-height: 1.4em;
    margin-top: 10px;
    font-weight: 500;
}

main.featured-list.salon-info .pro-disc .row {
    padding: 0;
}

main.featured-list.salon-info .pro-disc img {
    margin: 0px 0px;
}

main.featured-list.salon-info .pro-disc h4 {
    font-size: 20px;
    text-align: center;
    font-weight: 600;
    line-height: 1.5em;
    margin-bottom: 18px;
}

main.featured-list.salon-info .pro-disc span.ad-sub {
    padding: 0;
    margin-top: 18px;
    margin-bottom: 18px;
    line-height: 1.4em;
}

.salon-disc {
    background-color: var(--cream);
    margin: 170px 20px 40px 20px;
    padding: 90px 18px 28px 18px;
    position: relative;
}

.salon-disc > .row {
    position: absolute;
    top: -102px;
    padding: 0;
    margin: 0 -18px;
    align-items: end;
}

span.salon-sub {
    background-color: black;
    color: var(--white);
    display: table;
    font-size: 14px;
    padding: 2px 4px;
    line-height: 1em;
    font-family: 'Zen Kaku Gothic New';
    font-weight: 400;
}

h3.salon-h {
    font-size: 24px;
    font-family: 'Shippori Mincho';
    font-weight: 600;
    line-height: 1.4em;
}

.salon-disc h4 {
    font-size: 16px;
    font-weight: 600;
    margin-top: 32px;
    display: block;
}

.salon-disc span.ad-sub {
    padding: 0;
    margin-bottom: 10px;
    margin-top: 4px;
    line-height: 1.4em;
}

.salon-disc h4 span.num {
    font-size: 24px;
    font-family: 'Barlow Condensed';
    font-weight: 500;
    margin-right: 0.3em;
    line-height: 1em;
}

.salon-disc .price-wrap {
    display: flex;
    justify-content: right;
    margin: 12px 0px 10px 0px;
    font-size: 16px;
    font-weight: 600;
    color: var(--blue);
}

.salon-disc .price-wrap span {
    font-size: 20px;
    line-height: 0.9em;
    margin-left: 7px;
}

.salon-disc > img {
    position: absolute;
    top: -128px;
    max-width: 230px;
    right: 0;
    left: 0;
    margin: auto;
}

.salon-disc.sp-elm {
    margin: 130px 20px 40px 20px;
    padding: 50px 18px 28px 18px;
}

.salon-info.blue .on-top-line:before {
    background-color: var(--blue);
}

main.featured-list.product48 h2.p48-h-sub {
    font-size: 47px;
    color: var(--blue);
    font-weight: 600;
    letter-spacing: -0.06em;
    line-height: 1em;
    margin-bottom: 14px;
}

main.featured-list.salon-info img.topic {
    width: 117px;
    margin: 28px auto;
    display: block;
}

main.featured-list.info-elm .pro-disc h3 span.sub {
    font-size: 18px;
    letter-spacing: -0.05em;
    margin-bottom: 8px;
    font-weight: 600;
}

main.featured-list.info-elm .pro-disc h3 {
    margin: 0 0 18px 0;
    padding: 0;
    font-size: 31px;
    line-height: 1.3em;
}

main.featured-list.info-elm .info-disc {
    position: relative;
    padding: 0 18px;
    margin-bottom: 38px;
}

main.featured-list.info-elm .info-disc span.p48-m {
    font-family: 'Zen Kaku Gothic New';
    font-size: 18px;
    display: block;
    text-align: center;
    margin: 18px 0 18px 0px;
    /* color: var(--blue); */
    position: relative;
    letter-spacing: 0;
}

main.featured-list.info-elm .info-disc .p48-line:before, main.featured-list.info-elm .info-disc .p48-line:after {
    content: "";
    position: absolute;
    height: 100%;
    width: 4px;
    background-color: #000000;
    top: 0;
    bottom: 0;
    margin: auto;
}

main.featured-list.info-elm .info-disc .p48-line:after {
    right: 0;
}

main.featured-list.info-elm .info-disc .p48-line:before {
    left: 0;
}

main.featured-list.info-elm .info-disc h4 span.info-sub {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    display: block;
    margin-bottom: 18px;
    letter-spacing: 0;
}

main.featured-list.info-elm .info-disc p {
    margin-top: 20px;
}

main.featured-list.info-elm .info-disc.after-elm:after {
    width: calc(100% - 40px);
    height: 4px;
    background-color: var(--blue);
    content: "";
    position: absolute;
    bottom: -40px;
    left: 0;
    right: 0;
    margin: auto;
}

main.featured-list.info-elm .info-disc.after-elm {
    margin-top: 64px;
}

img.product-48-06 {
    width: 204px;
    margin: 24px auto;
    display: block;
}

img.product-48-07 {
    width: 147px;
    margin: 24px auto;
    display: block;
}

img.product-48-08 {
    width: 214px;
    margin: 24px auto;
    display: block;
}

img.product-48-09 {
    width: 280px;
    margin: 24px auto;
    display: block;
}

img.product-48-10 {
    width: 100%;
    margin: 24px auto;
    display: block;
}

span.wishlist-h-m:first-letter {
    color: var(--blue);
}

h2.wishlist-h {
    font-family: 'Zen Kaku Gothic New';
    font-weight: 600;
    text-align: center;
    font-size: 20px;
}

.top-b {
    width: 100%;
    height: 30px;
    background-color: var(--light-blue-bright);
    margin-bottom: 28px;
}

span.wishlist-h-m {
    font-size: 45px;
    font-weight: 500;
    text-align: center;
    font-family: 'Barlow Condensed';
    line-height: 0.9em;
    display: block;
    margin: 34px 0 24px 0px;
}

main.home-001 .top-wrap.landscape {
    display: none;
}

main.product09 ul.list.landscape {
    display: none;
}
main.product09 span.ad-sub.landscape {
    display: none;
}

br.landscape {
    display: none;
}

.product01 .row.landscape {
  display: none;
}

main.product02 .row.landscape {
    display: none;
}

main.product16 .row.landscape {
    display: none;
}

main.product28 .row.landscape {
    display: none;
}

.row.landscape.p-33-wrap {
    flex-direction: column;
    padding: 0;
}

.row.landscape.p-33-wrap .col6 {
    width: 100%;
}

.row.landscape.p-33-disc {
  display: none;
}


main.product47 .row.landscape {
    display: none;
}

main.product47 .row.landscape.course.p-47-a-c {
    display: flex;
    flex-direction: column;
    padding: 0;
}

main.product47 .row.landscape.course.p-47-a-c .col6 {
    width: 100%;
    padding: 0;
}

main.product48 .row.landscape.p-48-01 .col2 {
    width: 100%;
}
main.product48 .row.landscape.p-48-01 .col10 {
    width: 100%;
}

main.product48 .row.landscape.p-48-01 {
    flex-direction: column;
}

main.product48 .row.landscape.p-48-02 > div {
    width: 100%;
}
main.product48 .row.landscape.p-48-02 {
    flex-direction: column;
    padding: 0;
}
main.product48 .row.landscape.p-48-03 > div {
    width: 100%;
}
main.product48 .row.landscape.p-48-03 {
    flex-direction: column;
    padding: 0;
}

img.arrow-b {
    width: 0.5em;
    margin: 0 10px 0 0px;
}

.wishlist-wrap a {
    font-weight: 600;
    font-size: 14px;
}

.pc {
  display: none!important;
}
.sp {
  display: block!important;
}

ul.brand-list li {
    margin: 6px 0;
}

.top-wrap.vertically > img {
    position: relative;
    z-index: -1;
    top: 0;
    object-fit: cover;
    height: 66vh;
}


.top-wrap + .product-03-002.pro-disc span.ad-sub,
.top-wrap.vertically + .product-03-002.pro-disc span.ad-sub {
    padding: 0;
    margin-top: 18px;
}

.more-wrap .row {
    margin-top: 24px;
}

span.pro17.sub {
    display: block;
    font-size: 14px;
    font-weight: 500;
}

span.pro17.more-sub {
    display: block;
    margin-bottom: 14px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.6em;
}

span.pro17.more-sub span {
    font-size: 28px;
}

main.featured-list .pro-disc h3 span.sub {
    display: block;
    font-family: 'Zen Kaku Gothic New';
    color: var(--blue);
    font-size: 18px;
}

main.product48.featured-list.salon-info.info-elm.blue .pro-disc h3 span.sub {
    color: #000000;
}

main.product48.featured-list.info-elm .info-disc.after-elm span.p48-m {
    color: var(--blue);
    font-size: 30px;
}

img.product-48-11 {
    width: 235px;
    margin: 28px auto;
    display: block;
}

ul.product-lists .item .disc-wrap p {
    line-height: 1.2em;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: -1.45px;
}

.row.landscape.p-48-01 .product-03-002.pro-disc.sp-elm {
    padding: 0;
}

.row.landscape.p-48-02 .col6:first-child {
    margin-top: 0;
}

.row.landscape.p-48-02 .col6 {
    padding: 0;
    position: relative;
    margin-top: 28px;
}

.row.landscape.p-48-02 .col6:after {
  width: calc(100% - 40px);
  height: 4px;
  background-color: var(--blue);
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  margin: auto;
}

.row.landscape.p-48-02 .col6:last-child:after {
  display: none;
}

.row.landscape.p-48-03 .col6 {
    padding: 0;
}

.row.landscape.p-48-03 .col6 .info-disc.after-elm {
    padding: 0;
}

.row.landscape.p-48-03 .info-disc.after-elm > p, .row.landscape.p-48-03 .info-disc.after-elm > img {
    padding: 0 20px;
}

#first-modal.first-modal-wishlist h4.modal-h {
    font-size: 18px!important;
}

#first-modal.first-modal-wishlist h5 {
    font-size: 16px;
    font-weight: 600;
}

#first-modal.first-modal-wishlist h5 + p {
    text-align: left!important;
    line-height: 1.4em;
    margin: 8px 0 18px 0px;
}

ul.wl-cp-list {
    list-style-type: decimal;
    padding: 0 0 0 1.2em;
}

ul.wl-cp-list li {
    margin-bottom: 12px;
    line-height: 1.4em;
    font-size: 14px;
}

.product-inner-wrap {
    line-height: 0.7em;
}

main.wishlist .top-wrap .share-wrap p {
    text-align: center;
    margin-top: 18px;
}

button.cp-modal-open {
    display: inline-block;
    text-decoration: underline;
    vertical-align: baseline;
    font-weight: 600;
}

main.wishlist .prod-pg-wrap {
    height: 74px;
    border-radius: 0px 0px 6px 6px;
}

@media screen and (min-width: 680px){
  #first-modal.first-modal-wishlist .modal-inner .row.modal-row h4.modal-h + p {
      margin-bottom: 18px;
  }
  ul.product-lists + ul.list {
      margin-top: 0;
  }
  main.featured-list.info-elm .info-disc.after-elm:after {
    width: calc(100% - 20px);
  }
  .row.landscape.p-48-03 .col6 .info-disc.after-elm > ul.product-lists.item-list.blue {
      padding: 0 10px;
  }
  main.home-001 img.hankyu {
      left: 0px;
  }
  main.home-001 .top-wrap.landscape span {
      font-size: 12px;
      text-align: center;
      display: block;
      margin: 10px auto;
  }
  main.featured-list.info-elm .info-disc p {
      margin-top: 0;
  }
  span.pro17.more-sub br {
      display: none;
  }
  .row.landscape.p-33-disc h3 span.sub {
    display: block;
    font-family: 'Zen Kaku Gothic New';
    color: var(--blue);
    font-size: 18px;
  }
  main.product09 .more-wrap > .row span.ad-sub {
      padding: 0;
      margin-top: 14px;
      display: block;
  }
  #first-modal .modal-inner .row.modal-row p br.land {
    display: none;
  }
  #first-modal .modal-inner .row.modal-row {
      flex-direction: row;
      align-items: baseline;
  }
  #first-modal .modal-inner .row.modal-row h4.modal-h {
      text-align: left;
  }
  #first-modal .modal-inner .row.modal-row p {
      text-align: left;
  }
  #first-modal .modal-inner .row.modal-row .col6:last-child {
      width: 10%;
  }
  #first-modal .modal-inner .row.modal-row .col6:first-child {
      width: 90%;
  }
  #first-modal .modal-inner {
      max-width: 500px;
      margin: 0 auto auto auto;
      top: 32px;
      position: relative;
  }
  .top-wrap.vertically > img {
      position: relative;
      z-index: -1;
      top: 0;
  }
  header {
      width: 70px;
      height: 100%;
  }
  .header-inner {
      flex-direction: column;
      height: 100%;
      align-items: center;
  }
  ul.brand-list li {
      padding: 0 18px;
      margin: 6px 0;
  }
  .menu-Btn-inner {
      height: 70px;
  }
  .wishlist-over {
      overflow-y: hidden;
      padding: 0px 0 8px 0;
      justify-content: center;
      align-items: center;
      height: 100%;
  }
  .wishlist-over-inner {
      display: flex;
      flex-direction: column;
      overflow-y: scroll;
  }
  .wish-list-img-wrap {
      width: 40px;
      margin-right: 0;
      margin-bottom: 2px;
  }
  .all-Btn {
      margin-left: 0;
  }
  .home-001 {
    background-image: initial;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    padding-bottom: 0;
    width: calc(100% - 70px);
    max-width: 100%;
    margin-right: 0;
  }
  main.home-001 .top-wrap {
      background-image: url(../img/home-top.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      height: 100vh;
  }
  main.home-001 .top-wrap img.hankyu {
      display: none;
  }
  main.home-001 .top-wrap h3.product01-002 {
    display: none;
  }
  main.home-001 .top-wrap h2.home-003 {
      display: none;
  }
  main.home-001 .top-wrap.landscape {
      background-image: none;
      display: block;
      background: rgb(255,255,255);
      background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(254,245,225,1) 100%);
  }
  main.home-001 .top-wrap.landscape img.hankyu {
      display: block;
      position: relative;
      margin: 20px auto;
  }
  main.home-001 .top-wrap.landscape img.home-ora {
      display: none;
  }
  main.home-001 .top-wrap.landscape h3.product01-002 {
      display: block;
      margin: 0 auto;
      text-align: center;
  }
  main.home-001 .top-wrap.landscape h2.home-003 {
      display: block;
      margin: 4px 0 18px 0px;
  }
  .home-001 .top-wrap {
      width: 40%;
  }
  .home-001 .top-wrap.landscape {
      width: 60%;
  }
  .product01-005.landscape {
      display: none;
  }
  .arrow-wrap {
      height: 55px;
      bottom: 0;
      left: 80px;
      justify-content: flex-start;
  }
  img.home-ora {
      max-width: 144px;
      margin-bottom: 60px;
      margin-left: 37px;
  }
  h3.product01-002:before {
      left: 80px;
      transform: rotateZ(65deg);
      top: 10px;
  }
  main.home-001 .top-wrap.landscape h2.home-003 img.home-top-003 {
      width: 80%;
      margin: 0px 0px 0px 0px;
  }
  main {
      max-width: calc(100% - 70px);
      margin: 0px 0 0px auto;
      padding-bottom: 54px;
      overflow-x: hidden;
  }
  .top-wrap .cat+img {
      width: 35%;
      object-fit: initial;
          height: initial;
  }
  /* span.cat {
      margin: 0 calc(100% - 113px - 70px - 55%) 0px auto;
  } */
  span.cat {
      margin: 0 calc(35% - 32px - 70px) 0px auto;
  }
  .top-wrap h2.pro-head {
      margin-top: -162px;
      width: calc(100% - 35%);
      margin-right: 0;
      margin-left: auto;
  }
  .top-wrap + .pro-disc {
      width: calc(100% - 35%);
      margin-right: 0;
      margin-left: auto;
      padding-left: 20px;
  }
  h3.salon-h {
      padding-left: 18px;
  }
  main.product47.featured-list.salon-info.blue .product-03-002.pro-disc.on-top-line {
      padding: 0 20px;
  }
  main.product47.featured-list.salon-info.blue .product-03-002.pro-disc.on-top-line:before {
      width: calc(100% - 40px);
  }
  ul.item-list {
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: flex-start;
  }
  ul.item-list li {
      width: 50%;
  }
  ul.item-list li:nth-child(odd) {
      padding-right: 5px;
  }
  ul.item-list li:nth-child(even) {
      padding-left: 5px;
  }
  .item-inner {
      margin: 5px 0px 5px 0px;
  }
  span.more:before {
      left: 0;
  }
  span.more:before, span.more:after {
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
  }
  span.more {
  display: block;
  }
  span.more:before {
      left: 300px;
  }
  span.more:after {
      right: 300px;
  }
  .prod-pg-wrap {
    padding: 8px 8px;
  }
  a.prod-page {
    width: 100%;
    text-align: center;
    padding: 8px 8px;
        word-break: keep-all;
  }
  .row.landscape.p-33-wrap .col6:nth-child(even) {
  }

  .row.landscape.p-33-wrap .col6:nth-child(odd) {
  }
  .row.landscape.p-33-wrap .col6:nth-child(odd) .pro-disc, .product-03-002, .row.landscape.p-33-wrap .col6:nth-child(odd) ul.product-lists {
      padding: 0 5px 0 18px;
  }
  .row.landscape.p-33-wrap .col6:nth-child(even) .pro-disc, .product-03-002, .row.landscape.p-33-wrap .col6:nth-child(even) ul.product-lists {
    padding: 0 18px 0 5px;
}
  .prod-pg-wrap > img {
  width: 100px;
  }
  .top-wrap.vertically h2.pro-head {
      margin-top: -278px;
  }
  main.product09 ul.list.landscape {
      display: block;
      margin-left: 0;
      margin-top: 18px;
  }
  main.product09 span.ad-sub.landscape {
      display: block;
      padding: 0;
  }
  main.product09 ul.list {
      display: none;
  }
  main.product09 span.ad-sub {
      display: none;
  }
  main.product10 .product-03-002.pro-disc,
  main.product22 .product-03-002.pro-disc,
  main.product27 .product-03-002.pro-disc,
  main.product38 .product-03-002.pro-disc {
      margin-bottom: 80px;
  }
  .top-wrap + .pro-disc + span.ad-sub {
      width: calc(100% - 35%);
      margin-right: 0;
      margin-left: auto;
  }
  .campaign-elm h3.product-03-002-01.pro-disc-head span.normal-black {
      display: block;
  }
  .campaign-elm h3.product-03-002-01.pro-disc-head {
      margin-bottom: 100px;
  }
  span.more:before, span.more:after {
      width: 140px;
  }
  .product01-wrap {
    display: none;
  }
  .product01 .row.landscape {
    display: flex;
  }
  main.product01 .top-wrap {
      background-image: none;
  }
  main.product01 .row.landscape .col5 {
    background-image: url(../img/001-top.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100vh;
  }
  main.product01 .top-wrap {
      height: auto;
  }
  h3.product01-002 {
      color: #000000;
  }
  h3.product01-002:before, h3.product01-002:after {
      background-color: #000000;
      right: 0;
      left: 0;
  }
  h3.product01-002:after {
      right: -280px;
  }
  h3.product01-002:before {
      left: -280px;
  }
  p.product01-004 {
      color: #000000;
      margin-bottom: 18px;
  }
  h2.product01-003 {
    margin: 12px auto 0px auto;
  }
  .product01 .row.landscape .col5 {
      padding: 0;
  }
  .product01 .row.landscape .col7 {
      height: 100vh;
      padding: 0 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      background: rgb(255,255,255);
      background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(254,245,225,1) 100%);
  }
  .product01 .product01-005 p {
      display: none;
  }
  .product01 .product01-005 {
      padding: 0 20px 38px 20px;
  }
  .product01 span.\30 06-h2 br {
      display: none;
  }
  span.\30 06-h2:before {
      background-image: url(../img/2-2-l.png);
      background-size: cover;
      top: 2px;
      background-position: center;
      z-index: -1;
      height: 80px;
      width: 125%;
      left: -20px;
  }
  span.\30 06-h3 {
      position: relative;
      z-index: 1;
  }
  h4.howto-h:after {
      right: -308px;
  }
  .item .disc-wrap:before {
      left: 0px;
      top: 0;
  }
  .item .disc-wrap:after {
      left: 23px;
      top: 21px;
  }
  .item .disc-wrap {
      margin-top: 28px;
      padding-left: 48px;
      height: 3em;
      display: flex;
      align-items: center;
  }
  main.product02 .col5 {
      background-image: url(../img/002-top.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      height: 100vh;
  }
  main.product02 .top-wrap2 {
      display: none;
  }
  main.product02 .row.landscape {
      display: flex;
      padding: 0;
      max-width: 100%;
  }
  .product02 span.\30 06-h1 {
      display: block;
      position: relative;
      width: calc(100% - 55px);
      left: 55px;
  }
  main.product02 .row > div {
      padding: 0;
  }
  .product02 span.\30 06-h1 {
      display: block;
      position: relative;
      width: 100%;
      left: 0;
      text-align: center;
      font-weight: 600;
      margin-bottom: 18px;
  }
  .product02 span.\30 06-h2 {
      color: var(--renga);
  }
  .product02 span.\30 06-h2:before {
      background-image: url(../img/product-top-004.png);
      width: 110%;
      height: 60px;
  }
  .product02 h3.\30 06-01 img {
    width: 92px;
    position: absolute;
    top: 0;
  }
  .product02 h3.\30 06-01 {
      position: relative;
  }
  .product02 h3.\30 06-01 img {
      width: 92px;
      position: absolute;
      top: -73px;
      left: -18px;
  }
  main.product02 .row .col7 {
      padding: 0 20px;
      height: 100vh;
      display: flex;
      flex-direction: column;
      justify-content: center;
      background: linear-gradient(135deg, rgba(255,255,255,1) 0%, rgba(254,245,225,1) 100%);
  }
  main.product02 .product01-006 {
      display: none;
  }
  img.product02-last-img {
      max-width: 382px;
  }
  .product02-last-img-wrap {
      margin: 12px auto 28px auto;
      max-width: 382px;
  }
  main.product16 .top-wrap {
      display: none;
  }
  main.product16 .row.landscape {
      display: flex;
      /* margin-bottom: 70px; */
      padding: 0;
  }
  img.product16-top {
      width: 152%;
      position: relative;
      left: -36px;
      top: -3px;
      z-index: -1;
  }
  img.product16-02 {
      position: relative;
      bottom: 0;
      max-width: 346px;
      z-index: 1;
      margin-bottom: 40px;
  }
  img.product16-01 {
      position: absolute;
      bottom: 90px;
      max-width: 246px;
      right: 0;
      z-index: 1;
      margin: 0 0 0px auto;
      display: block;
  }
  main.product16 .col7 {
      position: relative;
  }
  main.product16 .product-03-002.pro-disc {
      display: none;
  }

  main.product16 .ques.ques-first {
      margin: 42px 0 24px 0px;
  }
  .ques:before {
      width: 1132px;
      height: 1132px;
      top: 460px;
  }
  main.product16 .ques-first ul.item-list li:nth-child(odd) {
      padding-right: 0px;
      padding-left: 5px;
  }

  main.product16 .ques-first ul.item-list li:nth-child(even) {
      padding-right: 5px;
      padding-left: 0;
  }
  .ques.ques-sec:before {
      width: 658px;
      height: 658px;
      top: 320px;
  }
  .ques > p {
      max-width: 382px;
      margin: 0 auto;
  }
  .ques.ques-sec + ul.product-lists {
      margin-top: 0;
  }
  img.product16-05 {
      top: -44px;
      right: 0;
      left: 0;
      margin: auto;
  }
  main.product16 .howto img {
      margin: 8px auto 18px 0;
      max-width: calc(100% - 72%);
  }
  main.product16 .howto p {
      width: 72%;
      position: absolute;
      top: 56px;
      margin: 0 auto 0 auto;
      right: 0;
      padding: 0 20px;
  }
  .no-disc .item .disc-wrap {
      display: none;
  }
  main.product28 .top-wrap {
      display: none;
  }
  main.product28 .row.landscape {
      display: flex;
  }
  img.product-top-28 {
      width: 110%;
      position: relative;
      left: -30px;
      top: -14px;
  }
  .row.landscape {
      padding: 0;
      position: relative;
  }
  .row.landscape .col5 {
      padding: 0;
  }
  .row.landscape .col7 {
      padding: 0 20px;
  }
  img.product28-02 {
      position: relative;
      left: 0;
      width: 280px;
  }
  img.product28-03 {
      position: absolute;
      bottom: initial;
      width: 128px;
      right: 0;
      top: 28px;
  }
  img.product28-02 {
      position: relative;
      left: 0;
      width: 300px;
      margin: 0px 0 18px 0px;
  }
  main.product28 .product-03-002.pro-disc {
      display: none;
  }
  main.product28 {
      padding-bottom: initial;
  }
  main.product28 ul.product-lists.item-list {
      margin: 0px 0 150px 0;
  }
  main.product28 .ques.ques-sec + ul.product-lists {
      margin-top: 0px;
  }
  main.product33 .top-wrap {
      padding: 80px 80px;
      margin-bottom: 48px;
  }
  main.featured-list .top-wrap h2 span.p33-h-mid br {
      display: none;
  }
  main.featured-list .top-wrap h2 span.p33-h-mid:before {
      right: -17px;
      top: -50px;
  }
  main.featured-list .top-wrap h2 span.p33-h-mid:after {
      top: -34px;
      right: -9px;
  }
  main.featured-list .top-wrap h2 .p33-h-sub {
      margin-bottom: 0;
  }
  main.featured-list .top-wrap h2 span.p33-h-main {
      font-size: 80px;
      letter-spacing: -0.19em;
  }
  main.featured-list .top-wrap > img {
      max-width: 420px;
  }
  main.product33 .top-wrap p, main.featured-list .top-wrap h2 {
      max-width: 496px;
      margin: 0 auto;
  }
  .product33 .top-wrap + .pro-disc {
      width: 100%;
      display: flex;
  }
  .row.landscape.p-33-wrap {
      flex-direction: row;
      padding: 0;
      flex-wrap: wrap;
      align-items: stretch;
      justify-content: flex-start;
  }
  .row.landscape.p-33-wrap .col6 {
      width: 50%;
      padding: 0;
      margin-top: 58px;
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
  }
  .row.landscape.p-33-wrap ul.product-lists {
      margin-bottom: 0;
      padding: 0 20px;
  }
  .row.landscape.p-33-wrap ul.product-lists li {
      width: 100%;
  }
  ul.item-list li:nth-child(odd),
  ul.item-list li:nth-child(even) {
    /* padding-right: 0;
    padding-left: 0; */
  }
  .row.landscape.p-33-disc h3 {
      font-family: "Shippori Mincho", serif;
      font-size: 20px;
      font-weight: 600;
      text-align: left;
      letter-spacing: -0.05em;
      line-height: 1.5em;
      margin: 34px 0px 18px 0px;
      padding-top: 32px;
  }
  .row.landscape.p-33-disc {
      padding: 0 20px;
  }
  .product33 .top-wrap + .pro-disc {
      width: 100%;
      display: none;
  }
  .product33 .row.landscape.p-33-disc + ul.item-list li:nth-child(odd) {
    padding-right: 5px;
  }
  .product33 .row.landscape.p-33-disc + ul.item-list li:nth-child(even) {
    padding-left: 5px;
  }
  main.featured-list span.p44-h-mid {
      text-align: left;
  }
  main.product44 p {
      max-width: 484px;
      margin: 0 auto;
  }
  main.product44.featured-list .top-wrap {
      height: 100vh;
  }
  .product44 .row.landscape.p-33-wrap .col6:nth-child(2) .product-03-002.pro-disc.on-top-line:before {
      display: none;
  }
  .product44 .row.landscape.p-33-wrap {
    top: -80px;
  }
  main.product44.featured-list .pro-disc > img {
      margin: 34px auto 0px 0;
  }
  main.product47 .top-wrap .col5 {
      display: flex;
      justify-content: end;
  }
  main.product47 .top-wrap .col5 img {
      width: 127px;
  }
  main.product47 .top-wrap .row {
      max-width: 520px;
      margin: 18px auto;
  }
  .salon-info span.p47-h-sub {
      margin-left: -32px;
  }
  main.product47 .top-wrap p {
      padding: 0 20px;
      max-width: 520px;
      margin: 18px auto;
  }
  main.product47 .top-wrap {
      height: 100vh;
      max-height: 390px;
      padding: 54px 20px;
  }
  main.product47 .top-wrap + .product-03-002.pro-disc {
      display: none;
  }
  main.product47 .row.landscape {
      display: flex;
      padding: 0 18px;
      margin-top: 28px;
  }
  main.product47 .salon-disc.sp-elm.land-no {
      display: none;
  }
  main.product47 .row.landscape.course.p-47-a-c {
      display: flex;
      flex-direction: row;
      padding: 0;
      align-items: stretch;
  }
  main.product47.featured-list.salon-info .pro-disc h3 {
      text-align: left;
  }

  main.product47.featured-list.salon-info .pro-disc h3 br {
      display: none;
  }
  main.product47.featured-list.salon-info .pro-disc h4 {
      text-align: left;
  }
  main.product47 img.dd-im {
      width: 115px;
  }
  main.product47 .row.landscape.salon-disc.sp-elm {
    background-color: transparent;
    margin: 0 0 -50px 0;
    padding: 0 20px;
    position: relative;
    z-index: 1;
  }
  main.product47 .row.landscape.salon-disc.sp-elm h3.salon-h br {
      display: none;
  }
  main.product47 .row.landscape.course {
      align-items: stretch;
      padding: 0;
  }
  main.product47 .col6.salon-disc {
      padding: 0px 18px 28px 18px;
      margin: 0 20px 0 20px;
  }
  main.product47 .row.landscape span.ad-sub {
      padding: 0;
      margin-top: 18px;
  }
  main.product47 .row.landscape h4 {
      margin-bottom: 18px;
  }
  main.featured-list.salon-info .row.landscape.kaatsu h3 {
      font-family: 'Barlow Condensed';
      font-size: 45px;
      display: block;
      line-height: 1em;
      letter-spacing: 0em;
  }
  main.featured-list.salon-info .row.landscape.kaatsu h3 span.sub {
      font-family: 'Zen Kaku Gothic New';
      font-size: 12px;
      display: block;
      line-height: 1.4em;
      margin-top: 10px;
      font-weight: 500;
  }
  main.product47 .row.landscape.kaatsu-disc {
      margin-top: -30px;
  }
  main.product48 .top-wrap {
      height: 100vh;
      max-height: 390px;
  }
  main.product48 .top-wrap h2, main.product48 .top-wrap p {
      max-width: 520px;
      margin: 0 auto;
  }
  main.product48 .top-wrap + .pro-disc {
      width: 100%;
  }
  main.product48 .row.landscape.p-48-01 .col2 {
      width: calc(100% / 12 * 2);
  }
  main.product48 .row.landscape.p-48-01 .col10 {
      width: calc(100% / 12 * 10);
  }
  main.product48 .product-03-002 {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      margin-bottom: 0;
  }
  main.product48 .row.landscape.p-48-01 {
      flex-direction: column;
      padding: 0 20px;
  }
  main.product48 .row.landscape.p-48-01 .col10 h3 br {
      display: none;
  }
  main.featured-list.info-elm .pro-disc h3 {
      margin: 0 0 18px 0;
      padding: 0;
      font-size: 31px;
      line-height: 1.3em;
      text-align: left;
      margin-left: 20px;
  }
  main.product48 .row.landscape.p-48-02,main.product48 .row.landscape.p-48-03 {
      flex-direction: row;
      padding: 0;
      flex-wrap: wrap;
      justify-content: flex-start;
  }
  main.product48 .row.landscape.p-48-02 {
      align-items: baseline;
  }
  main.product48 .row.landscape.p-48-03 ul.product-lists li {
      width: 100%;
      padding: 0!important;
  }
  main.product48 .row.landscape.p-48-02 > div,main.product48 .row.landscape.p-48-03 > div {
      width: 50%;
  }
  main.product48 .row.landscape.p-48-03 {
      align-items: stretch;
  }
  #menu-window {
      width: calc(100% - 70px);
      right: 0;
  }
  ul.future-list > li:nth-child(odd) {
      padding-right: 14px;
  }
  ul.future-list > li:nth-child(even) {
      padding-left: 14px;
  }

  ul.future-list > li {
      margin-bottom: 24px;
      width: 50%;
  }
  ul.brand-list > li {
      width: 50%;
  }
  ul.brand-list {
      display: flex;
      flex-wrap: wrap;
  }
  main.home-001 h3.product01-002:after {
      right: -280px;
      top: 14px
  }
  ul.future-list li {
      width: 50%;
  }
  ul.future-list {
      /* color: var(--white); */
      margin-top: 28px;
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
  }
  .wishlist-wrap a {
      font-weight: 600;
      font-size: 14px;
      writing-mode: vertical-rl;
  }
  img.arrow-b {
      display: none;
  }
  .row.landscape.p-33-disc {
      display: flex;
  }
  main.product33.featured-list .top-wrap > img.sp {
      display: none!important;
  }
  main.product33.featured-list .top-wrap > img.pc {
      display: block!important;
      max-width: initial;
      bottom: -37px;
  }
  ul.future-list li ul.future-list-sub li {
      width: 100%;
  }
  .home-001 {
      height: 100vh;
  }
}

@media screen and (min-width: 980px){
  main.featured-list.info-elm .info-disc span.p48-m {
      line-height: 1.4em;
  }
  main.featured-list.info-elm .info-disc h4 span.info-sub {
      line-height: 1.2em;
  }
  .row.landscape.p-48-02 img {
      margin-bottom: 20px;
  }
  .product-lists + ul.list {
      margin-top: -38px!important;
      font-size: 14px;
  }
  main.home-001 .top-wrap.landscape h3.product01-002 {
    font-size: 32px;
  }
  main.home-001 h3.product01-002:after {
      right: -110%;
      top: 20px;
  }
  .top-wrap h2 .sub {
      margin-top: 18px;
  }
  a.wish-link {
      word-break: keep-all;
      margin-bottom: 4px;
  }
  p {
      font-size: 16px;
      line-height: 1.5em;
      font-weight: 500;
  }
  h3.product01-002 {
      font-size: 22px;
  }
  h3.product01-002:before {
      top: 14px;
  }
  h3.product01-002:before, h3.product01-002:after {
      width: 30px;
  }
  h3.product01-002:after {
      right: -110%;
  }
  h3.product01-002:before {
      left: -110%;
  }
  h3.product01-002:after {
      top: 14px;
  }
  h2.product01-003 {
      font-size: 72px;
  }
  p.product01-004 {
      font-size: 28px;
  }
  .product02 h3.\30 06-01 {
      width: 598px;
  }
  span.\30 06-h2 {
      font-size: 62px;
  }
  span.\30 06-h3 {
      font-size: 33px;
  }
  main.product02 .row .col7 {
      padding: 0 40px;
  }
  #first-modal .modal-inner .row.modal-row p br.land {
    display: block;
  }
  #first-modal .modal-inner .row.modal-row {
      flex-direction: column;
      align-items: center;
  }
  #first-modal .modal-inner .row.modal-row h4.modal-h {
      text-align: center;
  }
  #first-modal .modal-inner .row.modal-row p {
      text-align: center;
  }
  #first-modal .modal-inner .row.modal-row .col6:last-child {
      width: 50%;
  }
  #first-modal .modal-inner .row.modal-row .col6:first-child {
      width: 50%;
  }
  #first-modal .modal-inner {
      max-width: 680px;
      margin: auto;
      top: 0;
      position: static;
  }
  img.home-ora {
      max-width: 228px;
      position: absolute;
      top: 40%;
      bottom: 0;
      left: 40px;
      margin: auto;
  }
  header {
      width: 100%;
      height: 70px;
      max-width: 428px;
      margin: 0 auto;
      right: 0;
      left: 0;
  }
  .header-inner {
      flex-direction: row;
      height: 100%;
  }
  .wishlist-over {
      overflow-x: hidden;
      display: flex;
      flex-direction: column;
      /* padding-bottom: 10px; */
      /* background-color: var(--second-color); */
      padding: 0 18px;
      justify-content: initial;
    align-items: initial;
    height: 100%;
  }
  .wishlist-over-inner {
      display: flex;
      flex-direction: row;
      overflow: auto;
  }
  #header-wish {
      overflow-x: scroll;
  }
  .wish-list-img-wrap {
      width: 40px;
      margin-right: 2px;
      margin-bottom: 0px;
  }
  #header-wish::-webkit-scrollbar-thumb {
      border-radius: 20px;
      background-color: #aaa;
  }

  #header-wish::-webkit-scrollbar {
      width: 0px;
      height: 5px;
      border-radius: 20px;
      background-color: #efefef;
  }
  .arrow-wrap {
      height: 55px;
      bottom: 70px;
      left: 0;
      justify-content: center;
  }
  main.home-001 .top-wrap.landscape {
      display: flex;
      justify-content: center;
  }
  .home-001 {
      width: 100%;
  }
  main {
      max-width: 100%;
      padding-bottom: 180px;
  }
  main > *:not(.top-wrap) {
      max-width: 1200px;
      margin: 0 auto;
  }
  span.cat {
      margin: 0 0 0px auto;
      right: calc(65% / 2 - 113px / 2);
  }
  .top-wrap h2.pro-head {
      margin-top: -28%;
  }
  .product-03-002.pro-disc + ul.product-lists.item-list, .product-03-002.pro-disc + span.ad-sub + ul.product-lists.item-list {
      margin-top: 80px;
  }
  .pro-disc p, .product-03-002 p {
      font-size: 16px;
      line-height: 1.4em;
  }
  .pro-disc-head, h3.product-03-002-01 {
      font-size: 26px;
      line-height: 1.4em;
  }
  .top-wrap h2 .sub {
      font-size: 20px;
  }
  .top-wrap h2.pro-head br {
      display: none;
  }
  ul.item-list li {
      width: 33%;
  }
  main ul.product-lists li {
      padding: 0 18px;
      margin-bottom: 38px;
  }
  main ul.product-lists {
      padding: 0 0;
      margin-bottom: 8px;
  }
  ul.item-list li:nth-child(odd) {
      padding-right: 18px;
  }
  ul.item-list li:nth-child(even) {
      padding-left: 18px;
  }
  main .more-wrap {
      margin-top: 48px;
  }
  /* .top-wrap.vertically + .product-03-002.pro-disc + ul.product-lists.item-list.no-disc {
      margin-top: calc(38% - 38vh);
  } */
  .top-wrap.vertically + .product-03-002.pro-disc + ul.product-lists.item-list.no-disc {
      margin-top: 80px;
  }
  .row h4 {
      font-size: 28px;
      font-weight: 600;
      letter-spacing: -0.03em;
      line-height: 1.4em;
  }
  /* ul.list {
      font-size: 18px;
      line-height: 1.4em;
  } */
  .more-wrap span.ad-sub.landscape {
      font-size: 18px;
      line-height: 1.4em;
  }
  .more-wrap .col5 img {
      max-width: 382px;
      margin: 0 0 0 auto;
      display: block;
  }
  img.product16-02 {
      max-width: 512px;
  }
  .product01-006-inner h3 {
      position: relative;
      margin-top: 72px;
  }
  .product01-006-inner h3.\30 06-01 img {
      left: -34px;
      top: -73px;
      z-index: -1;
  }
  .product02 h3.\30 06-01 {
      position: relative;
      display: block;
      /* width: 340px; */
      margin: 0 auto;
  }
  .product02 h3.\30 06-01 img {
      width: 112px;
      position: absolute;
      top: -75px;
      left: -68px;
  }
  .product01 .row.landscape .col7 {
      padding: 0 40px;
  }
  span.\30 06-h2:before {
      height: 120px;
  }
  span.\30 06-h2 {
      z-index: -1;
  }
  .product02 span.\30 06-h2 {
      color: var(--renga);
      z-index: 1;
  }
  .product02 span.\30 06-h2:before {
      height: 100px;
  }
  main > .howto {
      max-width: 844px;
  }
  img.product02-last-img {
      position: relative;
      width: 33%;
      right: 0;
      margin-top: 0;
      display: block;
      margin: 28px auto 28px auto;
  }
  img.product16-02 {
      max-width: 82vw;
      margin-bottom: 67px;
      width: 47vw;
      max-height: 420px;
      margin-left: 40px;
  }
  img.product16-01 {
      bottom: 94px;
      max-width: 432px;
  }
  img.product16-01 + p {
      max-width: 550px;
      margin: 0 0 0 auto;
  }
  main.product16 .row.landscape {
      width: 100vw;
      max-width: 100%;
      margin-bottom: 32px;
  }
  .ques > p {
      max-width: 827px;
      margin: 0 auto;
  }
  main.product16 .ques.ques-first {
      margin: 42px auto 24px auto;
  }
  main.product16 h5.other-items {
      margin: 38px auto 4px auto;
  }
  br.pc {
    display: none;
  }
  .product-03-002.pro-disc.campaign-elm + ul.product-lists.item-list.no-disc {
      margin-top: 0px;
  }
  .product-03-002.pro-disc.campaign-elm {
      position: relative;
      margin: calc(24% - 20vh) auto 0px auto;
  }
  .product-03-002.pro-disc.campaign-elm {
      position: relative;
      margin: 138px auto 0px auto;
  }
  span.ad-sub {
      font-size: 14px;
  }
  .more-wrap .row span.ad-sub.pc {
      padding: 0;
      margin-top: 10px;
  }
  .pc {
    display: block!important;
  }
  .sp {
    display: none!important;
  }
  main.product28 ul.product-lists.item-list {
      margin: 0px auto 150px auto;
  }
  img.product28-02 {
      width: 35vw;
  }
  img.product-top-28 {
      width: 110%;
      position: relative;
      left: -10px;
      top: -14px;
  }
  main.product28 .row.landscape {
      display: flex;
      max-width: 100%;
  }
  main.product28 .row.landscape .col7 {
      position: relative;
      padding-left: 80px;
  }
  img.product28-03 {
      position: absolute;
      bottom: initial;
      width: 16vw;
      right: 0;
      top: 28px;
  }
  main.product28 .ques > p {
      max-width: 520px;
  }
  .row.landscape.p-33-disc {
      display: flex;
      margin-bottom: 24px;
  }
  .row.landscape.p-33-disc p.pc {
      margin-top: 18px;
  }
  .row.landscape.p-33-wrap .col6 {
      width: 33%;
  }
  .product33 .product-03-002.pro-disc + ul.product-lists.item-list {
      margin-top: 0;
  }
  main.featured-list .top-wrap h2 {
      max-width: 100%;
      text-align: center;
      width: 100%;
  }
  main.product33 .top-wrap p {
    max-width: 720px;
  }
  main.featured-list .top-wrap h2 span.p33-h-mid {
      max-width: initial;
      margin: 0 auto;
      font-size: 36px;
      width: 660px;
  }
  .row.landscape.p-33-wrap .col6:nth-child(odd) .pro-disc, .product-03-002, .row.landscape.p-33-wrap .col6:nth-child(odd) ul.product-lists {
      padding: 0 18px 0 18px;
  }
  .row.landscape.p-33-wrap .col6:nth-child(even) .pro-disc, .product-03-002, .row.landscape.p-33-wrap .col6:nth-child(even) ul.product-lists {
      padding: 0 18px 0 18px;
  }
  main.featured-list .top-wrap > img {
      max-width: 100%;
      bottom: -4.7vw;
  }
  main.featured-list span.p44-h-mid {
      text-align: center;
      font-size: 72px;
  }
  main.featured-list span.p44-h-sub {
      font-size: 24px;
  }
  main.featured-list span.p44-h-mid:before {
      width: 80%;
      height: 27px;
      bottom: -30px;
      right: 0;
      left: 0;
      margin: auto;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
  }
  main.product44.featured-list .top-wrap {
      min-height: 580px;
      height: 70vh;
      display: flex;
      flex-direction: column;
      justify-content: center;
  }
  .product44 .row.landscape.p-33-wrap {
    top: 0;
  }
  .product44 .product-03-002.pro-disc + ul.product-lists.item-list {
      margin-top: auto;
      margin-bottom: 0;
  }
  .product44 .row.landscape.p-33-wrap .col6 {
      justify-content: stretch;
  }
  main.product44.featured-list .pro-disc > img {
    margin: 34px auto 0px auto;
  }
  main.product47 .top-wrap .row {
      max-width: 580px;
      margin: 18px auto;
  }
  .salon-info span.p47-h-mid span:nth-child(1) {
      margin-left: 0.9em;
  }
  .salon-info span.p47-h-mid span:last-child {
      margin-left: -1.6em;
  }
  main.product47 .top-wrap .col5 img {
      width: 182px;
  }
  main.product47 .top-wrap p {
      padding: 0 0px;
      max-width: 580px;
      margin: 18px auto;
  }
  main.featured-list.salon-info .row.landscape.kaatsu h3 {
      font-size: 62px;
  }
  main.featured-list.salon-info .row.landscape.kaatsu h3 span.sub {
      font-size: 16px;
  }
  main.product47 .row.landscape h4 {
      margin-bottom: 18px;
      font-size: 20px;
  }
  main.product47 .row.landscape h4 br {
      display: none;
  }
  main.product47 .row.landscape.salon-disc.sp-elm {
      margin: 42px auto -80px auto;
  }
  main.product47 img.dd-im {
      width: 182px;
  }
  h3.salon-h {
      padding-left: 0;
  }
  .salon-disc h4 {
      margin-top: 82px;
  }
  h3.salon-h {
      font-size: 32px;
  }
  span.salon-sub {
    font-size: 18px;
  }
  main.featured-list.product48 h2.p48-h-sub {
      font-size: 72px;
      text-align: left;
  }
  main.product48 .top-wrap p {
      max-width: 720px;
      margin: 0 auto;
  }
  main.product48 .top-wrap {
      height: 100vh;
      max-height: 440px;
  }
  main.product48 .row.landscape.p-48-02 .col6, main.product48 .row.landscape.p-48-03 .col6 {
      width: 33%;
  }
  h2.wishlist-h br {
      display: none;
      font-size: 20px;
  }
  main.wishlist ul#products {
      margin: 64px auto;
  }
  main.wishlist ul#products li {
      padding: 14px 18px;
  }
  .wishlist-wrap a {
      writing-mode: horizontal-tb;
  }
  img.arrow-b {
      display: inline-block;
  }
  span.wishlist-h-m {
      font-size: 72px;
  }
  span.left-sent {
      width: 7.2em;
  }
  #menu-window {
      width: 100%;
  }
  .menu-window-inner {
      max-width: 1200px;
      margin: 0 auto;
  }
  .top-wrap {
      height: 60vh;
      width: 100%;
  }
  .top-wrap.vertically {
      height: 100vh;
  }
  /* .top-wrap .cat+img {
      width: auto;
      height: 60vh;
      min-width: 512px;
  } */
  .top-wrap .cat+img {
      width: auto;
      height: auto;
      max-width: 512px;
  }
  /* .top-wrap.vertically .cat+img {
      height: 100vh;
      min-width: 512px;
  } */
  .top-wrap.vertically .cat+img {
      height: auto;
      max-width: 512px;
  }
  .top-wrap + .product-03-002.pro-disc {
      position: absolute;
      right: 0;
      top: calc(60vh / 2 - 100px);
      margin-top: 82px;
      max-width: 100%;
      padding: 0 40px 0 20px;
  }
  .top-wrap h2.pro-head {
      font-size: 72px;
      margin-top: -70px;
      position: absolute;
      right: 0;
      top: calc(60vh / 2 - 92.8px / 2);
  }
  .top-wrap.vertically h2.pro-head {
      margin-top: -70px;
      top: calc(86vh / 2 - 92.8px / 2);
      font-size: 72px;
      position: absolute;
      right: 0;
  }
  .top-wrap.vertically + .product-03-002.pro-disc {
      top: calc(86vh / 2 - 100px);
      margin-top: 70px;
  }
  main.product33 .top-wrap {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 531px;
  }
  main.featured-list .top-wrap h2 .p33-h-sub {
      font-size: 24px;
  }
  main.featured-list .top-wrap h2 span.p33-h-main {
      font-size: 80px;
      letter-spacing: -0.19em;
      margin: 28px 0;
  }
  .row.landscape.p-33-disc h3 {
      font-size: 38px;
  }
  .row.landscape.p-33-wrap ul.product-lists li {
      padding: 0;
  }
  main.featured-list .pro-disc h3 {
      margin: 0px 0px 18px 0px;
  }
  .product33 .row.landscape.p-33-disc + ul.item-list li:nth-child(odd), .product33 .row.landscape.p-33-disc + ul.item-list li:nth-child(even) {
      padding-right: 18px;
  }
  .product33 .row.landscape.p-33-disc + ul.item-list li:nth-child(even) {
      padding-left: 18px;
  }
  .product44 .row.landscape.p-33-wrap .col6:nth-child(3) .product-03-002.pro-disc.on-top-line:before {
    display: none;
  }
  .row.landscape.p-33-wrap span.ad-sub {
      padding: 0;
      margin-top: 10px;
  }
  main.product47 .top-wrap {
      height: 70vh;
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 531px;
  }
  .salon-info span.p47-h-sub {
      font-size: 24px;
  }
  .salon-info span.p47-h-mid {
      font-size: 72px;
  }
  main.product47 .row.landscape.course {
    margin-bottom: 40px;
  }
  main.product48 .top-wrap h2 {
      width: 717px;
  }
  main.product48 .top-wrap {
      height: 70vh;
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 531px;
  }
  main.wishlist .top-wrap {
      display: flex;
      flex-direction: column;
      justify-content: center;
      min-height: 580px;
  }
  .top-b {
      position: absolute;
      top: 0;
  }
}

@media screen and (min-width: 980px) and (max-width: 1200px){
  img.product16-02 {
      max-width: 52vh;
      margin-bottom: 67px;
      width: 66vh;
      max-height: 410px;
      margin-left: 0px;
  }
  img.product16-01 {
      bottom: 94px;
      max-width: 350px;
  }
}

@media screen and (min-width: 1920px){
  /* .top-wrap {
      max-width: 1920px;
      max-height: 1080px;
      margin: 0 auto;
  } */
  span.cat {
      width: 143px;
      font-size: 28px;
  }
  .top-wrap h2.pro-head {
      font-size: 120px;
  }
  .pro-disc-head, h3.product-03-002-01 {
      font-size: 34px;
  }
  .pro-disc p, .product-03-002 p {
      font-size: 18px;
  }
  .top-wrap + .product-03-002.pro-disc {
      margin-top: 120px;
  }
  .top-wrap h2.pro-head {
      margin-top: -120px;
  }
  .top-wrap.vertically h2.pro-head {
      margin-top: -120px;
  }
  .top-wrap.vertically + .product-03-002.pro-disc {
      margin-top: 120px;
  }
  .top-wrap h2 .sub {
      font-size: 24px;
      margin-top: 24px;
  }
  .top-wrap .cat+img {
      width: auto;
      height: 60vh;
      max-width: initial;
  }
  .top-wrap.vertically .cat+img {
      height: 100vh;
      max-width: initial;
  }
  .top-wrap .cat+img {
      width: auto;
      height: auto;
      max-width: 664px;
  }
  .top-wrap.vertically .cat+img {
      /* height: auto; */
      max-width: 980px;
  }
  img.product16-01 + p {
      max-width: 720px;
  }
  p {
    font-size: 16px;
  }
  img.product16-02 {
      max-width: 82vw;
      width: 52vw;
      max-height: 520px;
  }
  img.product16-01 {
      max-width: 530px;
  }
  main.featured-list .top-wrap h2 .p33-h-sub {
      font-size: 24px;
  }
  main.featured-list .top-wrap h2 {
      max-width: 100%;
      width: 100%;
  }
  main.featured-list .top-wrap h2 span.p33-h-mid {
      font-size: 46px;
      width: 838px;
  }
  main.featured-list .top-wrap h2 span.p33-h-main {
      font-size: 140px;
  }
  main.product33 .top-wrap p {
    max-width: 980px;
    font-size: 24px;
  }
  main.product33 .top-wrap {
      min-height: 717px;
  }
  main.featured-list span.p44-h-sub {
      font-size: 34px;
  }
  main.featured-list span.p44-h-mid {
      font-size: 142px;
  }
  main.product44 .top-wrap p {
      max-width: 980px;
      margin: 0 auto;
      font-size: 24px;
  }
  main.featured-list span.p44-h-mid:before {
      height: 38px;
      bottom: -40px;
  }
  main.product47 .top-wrap .row {
      max-width: 980px;
      width: 100%;
  }
  .salon-info span.p47-h-sub {
      font-size: 34px;
  }
  .salon-info span.p47-h-mid {
      font-size: 142px;
  }
  main.product47 .top-wrap .col5 img {
      width: 420px;
  }
  main.product47 .top-wrap p {
      max-width: 980px;
      font-size: 24px;
  }
  main.product47 .top-wrap {
      min-height: 717px;
  }
  main.product48 .top-wrap {
    min-height: 717px;
  }
  main.featured-list.product48 h2.p48-h-sub {
      max-width: initial;
      width: auto;
      font-size: 142px;
  }
  main.product48 .top-wrap p {
      max-width: 1030px;
      margin: 0 auto;
      font-size: 24px;
  }
  span.wishlist-h-m {
      font-size: 142px;
      margin: 52px 0 42px 0;
  }
  img.home-ora {
      max-width: 228px;
  }
}
