@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville&display=swap');

@font-face {
  font-family: "Utsukushi";
  src: url("fonts/UtsukushiFONT.woff") format('woff')
}

@font-face {
  font-family: 'ALoveofThunderRegular';
  font-style: normal;
  font-weight: normal;
  src: local('A Love of Thunder Regular'), url('fonts/ALoveofThunder.woff') format('woff')
}

@media screen and (max-width:767px) {
  #navArea nav {
    position: fixed;
    top: 0;
    left: -100%;
    bottom: 0;
    width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: 0.5s;
    z-index: 300
  }
}

@media screen and (min-width:768px) {
  #navArea nav {
    display: flex;
    position: fixed;
    top: 0;
    left: -100%;
    bottom: 0;
    width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transition: 0.5s;
    z-index: 300
  }
}

#navArea.open nav {
  left: 0
}

@media screen and (max-width:767px) {
  #navArea nav {
    background-color: white;
    font-family: 'ALoveofThunderRegular';
    font-weight: 500
  }

  #navArea nav .nav {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    width: 100%
  }

  #navArea nav .nav ul {
    list-style-type: none;
    margin: auto;
    padding: 0;
    text-align: center
  }

  #navArea nav ul li a {
    color: #3b3b3b;
    display: block;
    font-size: 18px;
    letter-spacing: 0.4em;
    line-height: 3
  }

  #navArea nav .left .logo img {
    margin: auto;
    width: 80px
  }

  #navArea nav .left .link {
    text-align: center;
    width: 100%
  }

  #navArea nav .right {
    color: black;
    font-size: 15px;
    padding: 0 40px
  }

  #navArea nav .right h2 {
    background-image: url(images/arrow_03@2x.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 10px;
    font-size: 12px;
    font-weight: 500;
    margin: 0 0 8px;
    padding-left: 20px
  }

  #navArea nav .right ul {
    font-size: 15px;
    font-weight: 500;
    list-style-type: none;
    margin: 0 0 10px;
    padding: 0 0 0 20px
  }

  #navArea nav .right ul li {
    line-height: 1.5
  }

  #navArea nav .right a {
    color: black
  }

  #navArea nav .right a:hover {
    color: #eff964
  }

  #navArea nav .right .link a {
    display: block;
    margin: 0 0 15px
  }
}

@media screen and (min-width:768px) {
  #navArea nav {
    display: flex;
    font-family: 'Yantramanav', sans-serif;
    font-weight: 500
  }

  #navArea nav .left {
    background-color: #eff964;
    display: flex;
    flex-wrap: wrap;
    width: 50%
  }

  #navArea nav .left .logo {
    margin: auto auto 6vw;
    text-align: center;
    width: 100%
  }

  #navArea nav .left .logo img {
    margin: auto;
    width: 14vw
  }

  #navArea nav .left .link {
    text-align: center;
    width: 100%
  }

  #navArea nav .left .link a {
    display: block;
    margin: 0 auto 1.8vw;
    text-align: center;
    width: 35vw
  }

  #navArea nav .right {
    background-color: white;
    color: black;
    font-size: 1.67vw;
    font-size: clamp(13px, 1.67vw, 32px);
    padding: 5.5vw 1vw 5.5vw 8vw;
    width: 50%
  }

  #navArea nav .right h2 {
    background-image: url(images/arrow_03@2x.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 1vw;
    font-size: 1.46vw;
    font-size: clamp(11px, 1.46vw, 28px);
    font-weight: 500;
    margin: 0 0 1.5vw;
    padding-left: 1.9vw
  }

  #navArea nav .right ul {
    font-size: 1.67vw;
    font-size: clamp(13px, 1.67vw, 32px);
    font-weight: 500;
    list-style-type: none;
    margin: 0 0 3.5vw;
    padding: 0 0 0 1.9vw
  }

  #navArea nav .right ul li {
    line-height: 1.8
  }

  #navArea nav .right a {
    color: black
  }

  #navArea nav .right a:hover {
    color: #eff964
  }
}

@keyframes equalizer01 {
  0% {
    width: 70%
  }

  10% {
    width: 50%
  }

  20% {
    width: 70%
  }

  30% {
    width: 10%
  }

  40% {
    width: 50%
  }

  50% {
    width: 70%
  }

  60% {
    width: 50%
  }

  70% {
    width: 10%
  }

  80% {
    width: 70%
  }

  90% {
    width: 10%
  }

  100% {
    width: 70%
  }
}

@keyframes equalizer02 {
  0% {
    width: 30%
  }

  10% {
    width: 20%
  }

  20% {
    width: 40%
  }

  30% {
    width: 10%
  }

  40% {
    width: 20%
  }

  50% {
    width: 30%
  }

  60% {
    width: 20%
  }

  70% {
    width: 10%
  }

  80% {
    width: 40%
  }

  90% {
    width: 10%
  }

  100% {
    width: 30%
  }
}

@media screen and (max-width:767px) {
  .toggle_btn {
    display: block;
    position: fixed;
    top: 22px;
    right: 30px;
    width: 24px;
    height: 24px;
    transform: translate(0, 0);
    transition: all 0.5s;
    cursor: pointer;
    z-index: 200000
  }
}

@media screen and (min-width:768px) {
  .toggle_btn, #navArea {
    display: none
  }
}

.open .toggle_btn {}

@media screen and (max-width:767px) {
  .toggle_btn span {
    display: block;
    position: absolute;
    left: 0;
    width: 24px;
    height: 3px;
    background-color: black;
    transition: all 0.5s
  }

  #navArea.open .toggle_btn span {
    background-color: black
  }

  .toggle_btn span:nth-child(1) {
    top: 5px;
    width: 24px
  }

  .toggle_btn span:nth-child(2) {
    top: 12px;
    width: 24px
  }

  .toggle_btn span:nth-child(3) {
    top: 19px;
    width: 24px
  }
}

#navArea.black.open .toggle_btn span {
  background-color: white
}

.open .toggle_btn span {
  width: 30px
}

.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
  top: 5px
}

.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset
}

.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -10px) rotate(45deg);
  animation: unset;
  top: 25px
}

@media screen and (max-width:767px) {
  .open .toggle_btn span:nth-child(1) {
    top: 5px
  }

  .open .toggle_btn span:nth-child(3) {
    top: 25px;
    margin-left: 0
  }
}

#mask {
  display: none
}

.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.8;
  cursor: pointer;
  transition: all 0.5s;
  z-index: 111
}

.pagination {
  list-style-type: none;
  padding-left: 0;
  margin: 30px 0
}

.pagination, .pagination li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center
}

.pagination a {
  font-weight: 300;
  padding-top: 1px;
  text-decoration: none;
  border: 1px solid #ddd;
  border-left-width: 0;
  min-width: 36px;
  min-height: 36px;
  color: #333
}

.pagination li:not([class*="current"]) a:hover {
  background-color: #eee
}

.pagination li:first-of-type a {
  border-left-width: 1px
}

.pagination li.first span, .pagination li.last span, .pagination li.previous span, .pagination li.next span {
  position: absolute;
  top: -9999px;
  left: -9999px
}

.pagination li.first a::before, .pagination li.last a::after, .pagination li.previous a::before, .pagination li.next a::after {
  display: inline-block;
  font-family: Fontawesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transform: translate(0, 0)
}

.pagination li.first a::before {
  content: "<<"
}

.pagination li.last a::after {
  content: ">>"
}

.pagination li.previous a::before {
  content: "<"
}

.pagination li.next a::after {
  content: ">"
}

.pagination li.current a {
  background-color: #ddd;
  cursor: default;
  pointer-events: none
}

.pagination>li:first-child>a {
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px
}

.pagination>li:last-child>a {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px
}

.pagination>li>a, .pagination>li>span {
  color: black
}

.pagination>li>a:focus, .pagination>li>a:hover, .pagination>li>span:focus, .pagination>li>span:hover {
  color: #7d7d7d
}

@media only screen and (max-width:680px) {
  .pagination li.first, .pagination li.last {
    position: absolute;
    top: -9999px;
    left: -9999px
  }

  .pagination li.previous a {
    border-left-width: 1px
  }
}

@media only screen and (max-width:500px) {
  .pagination li {
    position: absolute;
    top: -9999px;
    left: -9999px
  }

  .pagination li.current, .pagination li.first, .pagination li.last, .pagination li.previous, .pagination li.next {
    position: initial;
    top: initial;
    left: initial
  }

  .pagination li.previous a {
    border-left-width: 0
  }
}

@media only screen and (max-width:400px) {
  .pagination li.first, .pagination li.last {
    position: absolute;
    top: -9999px;
    left: -9999px
  }

  .pagination li.previous a {
    border-left-width: 1px
  }
}

@media only screen and (max-width:240px) {
  .pagination li {
    width: 50%
  }

  .pagination li.current {
    order: 2;
    width: 100%;
    border-left-width: 1px
  }
}

.animation.animationtotop {
  opacity: 0 !important;
  transform: translateY(30px);
  transition: all 1s 0s ease
}

.animation.animationtotop.active {
  opacity: 1 !important;
  transform: translateY(0)
}

.animation.animationtoright {
  opacity: 0 !important;
  transform: translateX(-30px);
  transition: all 1s 0s ease
}

.animation.animationtoright.active {
  opacity: 1 !important;
  transform: translateX(0)
}

.animation.animationtoleft {
  opacity: 0 !important;
  transform: translateX(30px);
  transition: all 1s 0s ease
}

.animation.animationtoleft.active {
  opacity: 1 !important;
  transform: translateX(0)
}

.animation02 {
  overflow: hidden;
  position: relative
}

.animation02 img {
  display: block;
  opacity: 0;
  position: relative;
  transition: all 1s 0.3s ease;
  width: 100%;
  z-index: 0
}

.animation02::before {
  background: white;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transform: translateX(0);
  transition: all 0.8s 0.4s ease;
  width: 100%;
  z-index: 1
}

.animation02.active:before {
  transform: translateX(100%)
}

.animation02.active img {
  opacity: 1
}

@keyframes fadein {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

body {
  color: #707070;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif
}

body.home, body.contact {
  color: #2b2b2b
}

a {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease
}

img, video {
  height: auto;
  max-width: 100%
}

video {
  position: relative
}

@media screen and (min-width:768px) {
  .orderform .wrap {
    box-shadow: 0 0 8px #ddd;
    margin: auto;
    width: 800px
  }
}

@media screen and (max-width:767px) {
  .orderform .footer {
    background-color: #685744;
    color: white;
    padding: 16px;
    text-align: center
  }

  .orderform .footer img {
    width: 70px
  }

  .orderform .wrap {
    overflow-x: hidden
  }

  .orderform .mainimg {
    margin: 0 auto 38px;
    width: 100%
  }

  .orderform .mainimg img {
    width: 100%
  }
}

@media screen and (min-width:768px) {
  .orderform .footer {
    background-color: #685744;
    color: white;
    padding: 35px 0 25px;
    text-align: center
  }

  .orderform .footer img {
    width: 70px
  }

  .orderform .mainimg {
    margin: 0 auto 50px;
    width: 100%
  }

  .orderform .mainimg img {
    width: 100%
  }
}

@media screen and (max-width:767px) {
  .orderform .pr {
    font-size: 18px;
    font-weight: 300;
    letter-spacing: 0.2em;
    line-height: 1.7;
    margin: 0 auto 50px;
    text-align: center
  }

  .orderform h1 {
    font-family: kozuka-mincho-pr6n, serif;
    font-weight: 700;
    font-style: normal;
    font-size: 16px;
    line-height: 1.4;
    margin: 0 auto 25px;
    text-align: center
  }

  .orderform h1 {
    margin-bottom: 30px
  }

  .orderform .catch {
    margin: 0 80px 75px;
    text-align: center
  }

  .orderform .catch {
    margin: 0 80px 60px
  }

  .orderform .catch p {
    color: #aeb6aa;
    font-size: 80px;
    font-weight: bold;
    margin: 0 auto
  }
}

@media screen and (min-width:768px) {
  .orderform .pr {
    font-size: 24px;
    font-weight: 300;
    letter-spacing: 0.2em;
    line-height: 1.7;
    margin: 0 auto 140px;
    text-align: center
  }

  .orderform h1 {
    font-family: kozuka-mincho-pr6n, serif;
    font-weight: 700;
    font-style: normal;
    font-size: 25px;
    line-height: 1.4;
    margin: 0 auto 15px;
    text-align: center
  }

  .orderform h1 {
    margin-bottom: 20px
  }

  .orderform .catch {
    margin: 0 auto 110px;
    text-align: center
  }

  .orderform .catch {
    margin: 0 auto 80px
  }

  .orderform .catch p {
    color: #aeb6aa;
    font-size: 80px;
    font-weight: bold;
    margin: 0 auto
  }
}

@media screen and (max-width:767px) {
  .orderform .group02 {
    font-size: 18px;
    margin: 0 auto 110px 30px
  }

  .orderform .group02 .notice01 {
    font-size: 12px;
    margin: 0 0 20px
  }

  .orderform .group03 {
    background-color: rgba(102, 89, 72, 0.1);
    border: 1px solid #665948;
    display: none;
    margin: 0 auto 110px;
    padding: 20px
  }

  .orderform .mw_wp_form_confirm .group03 {
    background: none;
    border: none;
    display: block;
    margin: 0;
    padding: 0
  }

  .orderform .group03 h4 {
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto 30px
  }

  .orderform .mw_wp_form .group02 .horizontal-item+.horizontal-item {
    margin-left: 0
  }

  .orderform .product {
    color: #474645;
    margin: 0 auto 45px;
    text-align: center
  }

  .orderform .product .image {
    margin: 0 auto 10px;
    width: 60%
  }

  .orderform .product .image {
    margin: 0 auto 10px;
    width: 100%
  }

  .orderform .product .image img {
    margin: auto
  }

  .orderform .product h2 {
    font-family: "Utsukushi", serif;
    font-size: 26px;
    margin: 0 auto 10px
  }

  .orderform .product h3 {
    font-family: "Utsukushi", serif;
    font-size: 16px;
    margin: 0 auto 8px
  }

  .orderform .product .size {
    font-family: "Utsukushi", serif;
    font-size: 13px;
    margin: 0 auto 15px
  }

  .orderform .product .data .teika {
    font-family: "Times New Roman", serif;
    font-size: 18px;
    font-weight: normal;
    margin: 0 0 10px
  }

  .orderform .product .data h6 {
    color: #c00;
    font-size: 32px;
    font-weight: normal;
    margin: 0 0 10px
  }

  .orderform .product .data h6 .yen {
    font-size: 25px
  }

  .orderform .product .data h6 .tax {
    font-size: 20px
  }

  .orderform .product .desc {
    font-family: kozuka-gothic-pr6n, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 12px;
    line-height: 1.5
  }

  .orderform .product .desc {
    margin-bottom: 25px
  }

  .orderform .block09 .block06.block07 {
    border-top: 1px solid rgba(112, 112, 112, 0.5);
    margin-top: 30px;
    padding: 15px 0 0 0
  }
}

@media screen and (min-width:768px) {
  .orderform .productgroup {
    display: flex;
    justify-content: space-between;
    margin: auto;
    width: 600px
  }

  .orderform .productgroup {
    display: block
  }

  .orderform h3 {
    font-size: 25px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 0 30px 65px
  }

  .orderform .group02 {
    font-size: 18px;
    margin: 0 auto 110px;
    width: 600px
  }

  .orderform .group02 .notice01 {
    font-size: 12px;
    margin: 0 0 20px
  }

  .orderform .group03 {
    background-color: rgba(102, 89, 72, 0.1);
    border: 1px solid #665948;
    display: none;
    margin: 0 auto 110px;
    padding: 30px;
    width: 600px
  }

  .orderform .mw_wp_form_confirm .group03 {
    background: none;
    border: none;
    display: block;
    margin: 0;
    padding: 0;
    width: 600px
  }

  .orderform .group03 h4 {
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto 30px
  }

  .orderform .product {
    color: #474645;
    margin: 0 auto 110px;
    text-align: center;
    width: 33.333%
  }

  .orderform .product {
    display: flex;
    width: 100%
  }

  .orderform .product .image {
    margin: 0 auto 20px;
    width: 170px
  }

  .orderform .product .image {
    margin: 0 auto 20px 0;
    width: 80%
  }

  .orderform .product .data {
    margin: 40px auto auto 20px;
    text-align: left;
    width: calc(100% - 160px)
  }

  .orderform .product h2 {
    font-family: "Utsukushi", serif;
    font-size: 24px;
    margin: 0 auto 10px
  }

  .orderform .product .data h4 {
    font-family: "Utsukushi", serif;
    font-size: 30px;
    font-weight: normal;
    margin: 0 auto 10px
  }

  .orderform .mw_wp_form_confirm .product .data h4 {
    display: none
  }

  .orderform .product h3 {
    font-family: "Utsukushi", serif;
    font-size: 14px;
    margin: 0 auto 10px
  }

  .orderform .product .data h5 {
    font-family: "Utsukushi", serif;
    font-size: 18px;
    margin: 0 0 10px
  }

  .orderform .product .size {
    font-family: "Utsukushi", serif;
    font-size: 12px;
    margin: 0 auto 15px
  }

  .orderform .product .size {
    font-family: sans-serif;
    font-size: 15px;
    margin: 0 0 0 15px
  }

  .orderform .product .data .teika {
    font-family: "Times New Roman", serif;
    font-size: 18px;
    font-weight: normal;
    margin: 0 0 10px
  }

  .orderform .product .data h6 {
    color: #c00;
    font-size: 32px;
    font-weight: normal;
    margin: 0 0 10px
  }

  .orderform .product .data h6 .yen {
    font-size: 20px
  }

  .orderform .product .data h6 .tax {
    font-size: 12px
  }

  .orderform .product .desc {
    display: none
  }

  .orderform .product .desc {
    display: block;
    font-size: 18px;
    line-height: 1.4;
    margin: 0 0 25px
  }

  .orderform .product select {
    font-size: 15px;
    padding: 10px 40px
  }

  .orderform .block08 {
    margin: auto auto 120px;
    width: 600px
  }

  .orderform .block08 .block05 h4 {
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 0 10px
  }

  .orderform .block08 .block05 .form05 {
    font-size: 18px;
    margin: 0 0 50px
  }

  .orderform .block05 .form05.form06 {
    font-size: 18px;
    margin: 0
  }

  .orderform .block09 {
    margin: auto;
    width: 670px
  }

  .orderform .mw_wp_form_confirm .block09 {
    margin: 0 auto 0;
    padding: 0;
    width: 600px
  }

  .orderform .block09 .block06 {
    align-items: center;
    display: flex;
    margin-bottom: 15px
  }

  .orderform .block09 .block06 h4 {
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 5px auto auto 0;
    width: 180px
  }

  .orderform .block09 .block06 .form05 {
    font-size: 18px;
    margin: auto 0;
    width: calc(100% - 180px)
  }

  .orderform .block09 .block06.block07 {
    border-top: 1px solid #707070;
    margin-top: 50px;
    padding: 35px 0 0 0
  }

  .orderform .block09 .block11 {
    align-items: center;
    display: flex
  }

  .orderform .block09 .block11 h4 {
    margin: auto auto auto 0;
    white-space: nowrap;
    width: 60%
  }

  .orderform .block09 .block11 .form05 {
    margin: auto 0 auto auto;
    width: 40%
  }
}

@media screen and (max-width:767px) {
  .orderform .campaign {
    color: #474645;
    text-align: center
  }

  .orderform .campaign .image {
    margin: 30px 70px
  }

  .orderform .campaign .image {
    margin: 0 30px 90px
  }

  .orderform .campaign .sample .en {
    font-size: 36px;
    font-weight: bold;
    margin: 0 auto 10px;
    text-align: center
  }

  .orderform .campaign .sample .ja {
    font-size: 17px;
    font-weight: bold;
    margin: 0 auto 15px;
    text-align: center
  }

  .orderform .campaign h2 {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.2em;
    line-height: 1.53;
    margin: 0 auto 38px
  }

  .orderform .campaign .kikan {
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.53;
    margin: 0 auto 25px
  }

  .orderform .campaign .notice {
    color: #c90944;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin: 0 auto 50px
  }

  .orderform .campaign h3 {
    border-bottom: 1px solid #707070;
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 50px 15px;
    padding: 0 0 25px
  }
}

@media screen and (min-width:768px) {
  .orderform .campaign {
    color: #474645;
    text-align: center
  }

  .orderform .campaign .image {
    margin: 0 auto 50px
  }

  .orderform .campaign .sample .en {
    font-size: 36px;
    font-weight: bold;
    margin: 0 auto 10px;
    text-align: center
  }

  .orderform .campaign .sample .ja {
    font-size: 17px;
    font-weight: bold;
    margin: 0 auto 25px;
    text-align: center
  }

  .orderform .campaign h2 {
    font-size: 24px;
    font-weight: 400;
    letter-spacing: 0.1em;
    line-height: 1.63;
    margin: 0 auto 50px
  }

  .orderform .campaign h2 {
    margin: 0 auto 100px
  }

  .orderform .campaign .kikan {
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 0.1em;
    line-height: 1.63;
    margin: 0 auto 40px
  }

  .orderform .campaign .notice {
    color: #c90944;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin: 0 auto 40px
  }

  .orderform .campaign h3 {
    border-bottom: 1px solid #707070;
    font-weight: 400;
    font-size: 18px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 70px 35px;
    padding: 0 0 25px
  }
}

@media screen and (max-width:767px) {
  .orderform .mw_wp_form {
    padding: 0 30px
  }

  .orderform .mw_wp_form h3 {
    font-size: 17px;
    font-weight: normal;
    letter-spacing: 0.02em;
    margin: 0 0 30px
  }

  .orderform .mw_wp_form h4 {
    font-family: "Utsukushi", serif;
    font-size: 26px;
    font-weight: normal;
    margin: 0 auto 10px
  }

  .orderform .mw_wp_form .group03 h4 {
    font-family: sans-serif;
    font-size: 14px
  }

  .orderform .mw_wp_form_confirm.mw_wp_form .group03 h4 {
    display: none
  }

  .orderform .mw_wp_form .productgroup h4 {
    display: none
  }

  .orderform .mw_wp_form .form05 {
    font-size: 16px;
    margin: 0 0 20px
  }

  .orderform .mw_wp_form .form05 select {
    margin: 0 0 20px
  }

  .orderform .mw_wp_form .block05 h4 {
    font-family: sans-serif;
    font-size: 13px;
    margin: 0 0 5px
  }

  .orderform .mw_wp_form .block06 h4 {
    font-family: sans-serif;
    font-size: 13px;
    margin: 0 0 5px
  }

  .orderform .mw_wp_form h5 {
    font-family: "Utsukushi", serif;
    font-size: 16px;
    font-weight: normal;
    margin: 0 auto 5px
  }

  .orderform .mw_wp_form .block08 {
    padding: 0 25px 30px
  }

  .orderform .form01 {
    font-size: 16px;
    margin: 0 50px
  }

  .orderform .form01 h4 {
    font-weight: normal;
    margin: 0 0 10px
  }

  .orderform .block01 .form03 {
    border-bottom: 1px solid #707070;
    margin: 0 0 40px;
    padding: 0 0 20px
  }

  .orderform .block02 h4 {
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto 20px;
    text-align: center
  }

  .orderform .block02 h5 {
    font-size: 13px;
    letter-spacing: 0.2em;
    margin: 0 auto 5px
  }

  .orderform .block02 .form02 {
    margin: 0 auto 20px
  }

  .orderform textarea {
    width: 100%
  }

  .orderform .send {
    margin: 35px auto 45px;
    text-align: center
  }

  .orderform .send .btn {
    padding: 10px 22px
  }

  .orderform .send .btn-default {
    background-color: #685744;
    color: white;
    font-size: 16px
  }

  .orderform .form04 {
    font-size: 14px
  }
}

@media screen and (min-width:768px) {
  .orderform .form01 {
    font-size: 16px;
    margin: 0 70px
  }

  .orderform .block03 {
    border-bottom: 1px solid #707070;
    display: flex;
    margin: 0 0 55px;
    padding: 0 0 30px
  }

  .orderform .form01 h4 {
    font-weight: normal;
    font-size: 18px;
    letter-spacing: 0.1em;
    margin: 0 10px
  }

  .orderform .block01 .form03 {
    margin: 0
  }

  .orderform .block02 h4 {
    display: none
  }

  .orderform .block04 {
    display: flex;
    margin: 0 0 15px
  }

  .orderform .block02 h5 {
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0;
    width: 120px
  }

  .orderform .form04 {
    font-size: 14px
  }

  .orderform .mw_wp_form .form05 select {
    margin: 0 0 20px
  }

  .orderform .block02 .form02 {
    margin: 0;
    width: 400px
  }

  .orderform .send {
    margin: 50px auto;
    text-align: center
  }

  .orderform .send .btn {
    border-radius: 5px;
    padding: 10px 95px
  }

  .orderform .send .btn-default {
    background-color: #685744;
    color: white;
    font-size: 18px
  }
}

.orderform .mw_wp_form_complete {
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 1.5;
  padding: 0 70px 50px
}

.orderform .mw_wp_form_confirm .productgroup {
  margin-bottom: 50px
}

.orderform .mw_wp_form_confirm .product {
  margin: 0 auto 30px
}

@media screen and (max-width:767px) {
  .orderform .mw_wp_form_confirm .product .data {
    margin: 0 auto auto 20px;
    text-align: left
  }
}

@media screen and (min-width:768px) {
  .orderform .mw_wp_form_confirm .product .data {
    margin: 0 auto auto 0;
    text-align: left
  }
}

.orderform .mw_wp_form_confirm .product .data h4, .orderform .mw_wp_form_confirm .product .data h5, .orderform .mw_wp_form_confirm .product .data .teika, .orderform .mw_wp_form_confirm .product .image, .orderform .mw_wp_form_confirm .product .size, .orderform .mw_wp_form_confirm .product .desc, .orderform .mw_wp_form_confirm .group01 .image, .orderform .mw_wp_form_confirm .product .data h6, .orderform .mw_wp_form_confirm .zip-button {
  display: none
}

.orderform .mw_wp_form_confirm .group01 {
  display: block
}

.orderform .mw_wp_form_confirm .form04 {
  font-size: 20px
}

@media screen and (max-width:767px) {
  .orderform .group01 {
    margin: 0 30px 80px;
    width: auto
  }

  .orderform .mw_wp_form_confirm .group01 {
    margin: 0 20px 80px;
    width: auto
  }
}

@media screen and (min-width:768px) {
  .orderform .group01 {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 80px;
    width: 600px
  }
}

.orderform .mw_wp_form_confirm .block09 {
  padding: 0 20px
}

@media screen and (max-width:767px) {
  .orderform .group01 .block10 {
    font-size: 18px;
    margin: 0 auto 30px 20px;
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .orderform .group01 .block10 {
    font-size: 18px;
    margin: 0 auto 30px 20px;
    text-align: center;
    width: 45%
  }
}

.orderform .mw_wp_form_confirm .group01 .block10 {
  margin-left: 0;
  text-align: left
}

.hotel a:active, .hotel a:focus, .hotel a:hover, .hotel a:link, .hotel a:visited {
  text-decoration: none
}

.hotel a:hover {
  opacity: 0.6
}

.hotel .footer {
  display: none
}

@media screen and (max-width:767px) {
  .home, .contact, .hotel {
    padding: 80px 0 0 0
  }

  .home {
    padding: 0 0 150px
  }

  .page>.wrap>.header, .hotel .header {
    background-color: white;
    height: 80px;
    left: 0;
    margin: auto;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100000
  }

  .page>.wrap>.header .group, .contact>.wrap>.header .group, .hotel .header .group {
    align-items: center;
    display: flex;
    justify-content: space-between;
    height: 80px
  }

  .page>.wrap>.header h1, .contact>.wrap>.header h1, .hotel .header h1 {
    margin: auto auto auto 20px
  }

  .page>.wrap>.header ul, .contact>.wrap>.header ul, .hotel .header ul {
    display: none
  }
}

@media screen and (min-width:768px) {
  .home, .contact {
    padding: 195px 0 0 0
  }

  .hotel {
    padding: 80px 0 0 0
  }

  .page>.wrap>.header, .contact>.wrap>.header, .hotel .header {
    background-color: rgba(255, 255, 255, 0.7);
    height: 80px;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100000
  }

  .page>.wrap>.header .group, .contact>.wrap>.header .group, .hotel .header .group {
    align-items: center;
    display: flex;
    justify-content: space-between;
    height: 80px;
    margin: auto;
    width: 1000px
  }

  .page>.wrap>.header, .contact>.wrap>.header .group, .page>.wrap>.header .group {
    height: 100px;
    justify-content: flex-start
  }

  .page>.wrap>.header .group, .contact>.wrap>.header .group {
    margin: auto auto auto 4vw
  }

  .page>.wrap>.header h1, .contact>.wrap>.header h1, .hotel .header h1 {
    margin: auto
  }

  .page>.wrap>.header h1, .contact>.wrap>.header h1 {
    margin: auto 3vw auto auto
  }

  .page>.wrap>.header ul, .contact>.wrap>.header ul, .hotel .header ul {
    display: flex;
    list-style-type: none;
    margin: auto;
    padding: 0
  }

  .page>.wrap>.header ul li a, .contact>.wrap>.header ul li a, .hotel .header ul li a {
    color: #3b3b3b;
    font-family: 'ALoveofThunderRegular';
    font-size: 12px;
    letter-spacing: 0.4em
  }

  .page>.wrap>.header ul li a:after, .contact>.wrap>.header ul li a:after, .hotel .header ul li a:after {
    content: '/';
    display: inline-block;
    font-family: 'ALoveofThunderRegular';
    font-size: 12px;
    margin: auto 10px
  }

  .page>.wrap>.header ul li a, .contact>.wrap>.header ul li a, .page>.wrap>.header ul li a:after, .contact>.wrap>.header ul li a:after {
    font-size: 0.94vw;
    font-size: clamp(8px, 0.94vw, 18px)
  }

  .page>.wrap>.header ul li:last-child a:after, .contact>.wrap>.header ul li:last-child a:after, .hotel .header ul li:last-child a:after {
    display: none
  }

  .hotel .mainimg {
    margin: auto;
    text-align: center;
    width: 100%
  }

  .hotel .mainimg img {
    width: 100%
  }
}

.header ul li a:active, .header ul li a:focus, .header ul li a:hover {
  text-decoration: none
}

@media screen and (max-width:767px) {
  .hotel .main {
    background-color: #f7f7f7;
    color: #2b2b2b;
    margin: auto;
    padding: 30px 20px 80px;
    width: 90%
  }
}

@media screen and (min-width:768px) {
  .hotel .main {
    background-color: #f7f7f7;
    color: #2b2b2b;
    margin: auto;
    padding: 60px 56px 80px;
    width: 1000px
  }
}

.hotel #concept h2, .hotel #products h2, .hotel #sampleorder h2 {
  color: white;
  font-family: 'ALoveofThunderRegular';
  font-size: 20px;
  letter-spacing: 0.4em;
  line-height: 1;
  margin: 0 auto 30px;
  padding: 25px;
  text-align: center
}

.hotel #concept h2 {
  background-color: #aeb6aa
}

.hotel #products h2 {
  background-color: #b6c4d1
}

.hotel #sampleorder h2 {
  background-color: #e3d8bc
}

.hotel #concept .subimg, .hotel #products .subimg {
  margin: 0 auto 35px
}

@media screen and (max-width:767px) {
  .hotel #concept .group01 h3 {
    color: #aeb6aa;
    font-size: 22px;
    font-weight: bold;
    margin: 0 auto 30px;
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .hotel #concept .group01 h3 {
    color: #aeb6aa;
    font-size: 35px;
    font-weight: bold;
    margin: 0 auto 30px;
    text-align: center
  }
}

.hotel #concept .group01 .desc, .hotel #concept .group02 .desc {
  font-size: 18px;
  line-height: 1.67;
  margin: 0 0 25px
}

.hotel #concept .group01 .desc span, .hotel #concept .group02 .desc span {
  color: #aeb6aa;
  font-weight: bold
}

.hotel #concept .group01 .pr, .hotel #concept .group02 .pr {
  background-color: #aeb6aa;
  color: white;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 auto 100px;
  padding: 20px 25px
}

.hotel #concept .group02 .pr {
  margin: 0 auto 55px
}

@media screen and (max-width:767px) {
  .hotel #concept .group02 h4 {
    border-bottom: 1px solid #707070;
    color: #aeb6aa;
    font-size: 22px;
    font-weight: bold;
    margin: 0 auto 40px;
    padding: 0 0 25px;
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .hotel #concept .group02 h4 {
    border-bottom: 1px solid #707070;
    color: #aeb6aa;
    font-size: 35px;
    font-weight: bold;
    margin: 0 auto 40px;
    padding: 0 0 25px;
    text-align: center
  }
}

.hotel #concept .group02 .image01 {
  border-bottom: 1px solid #707070;
  margin: 0 auto 40px;
  padding: 0 0 35px
}

.hotel #concept .group02 .image02 {
  margin: 0 auto 70px
}

@media screen and (max-width:767px) {
  .hotel #concept .group02 .catch {
    color: #aeb6aa;
    font-size: 22px;
    font-weight: bold;
    line-height: 1.42;
    margin: 0 auto 65px;
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .hotel #concept .group02 .catch {
    color: #aeb6aa;
    font-size: 35px;
    font-weight: bold;
    line-height: 1.42;
    margin: 0 auto 65px;
    text-align: center
  }
}

.hotel #concept .group02 .logo {
  margin: 0 auto 90px;
  text-align: center
}

.hotel #concept .group02 .logo .image {
  margin: 0 auto 30px
}

.hotel #concept .group02 .logo p {
  color: #aeb6aa;
  font-size: 80px;
  font-weight: bold;
  margin: 0 auto
}

.hotel .back {
  font-family: 'ALoveofThunderRegular';
  font-size: 20px;
  letter-spacing: 0.1em;
  text-align: right
}

.hotel #concept .back a {
  color: #b6c4d1
}

.hotel #products .back a {
  color: #e3d8bc
}

@media screen and (max-width:767px) {
  .hotel #products .items {
    align-items: flex-end;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 50px;
    width: 100%
  }
}

@media screen and (min-width:768px) {
  .hotel #products .items {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 100px;
    width: 100%
  }
}

@media screen and (max-width:767px) {
  .hotel #products .items .block {
    margin: 0 auto 50px;
    text-align: center;
    width: 48%
  }
}

@media screen and (min-width:768px) {
  .hotel #products .items .block {
    margin: 0 auto;
    text-align: center
  }
}

.hotel #products .items .block .image {
  margin: 0 auto
}

.hotel #products .items .block .name .en {
  font-family: 'ALoveofThunderRegular';
  font-size: 14px;
  letter-spacing: 0.2em;
  line-height: 1;
  margin: 0 auto 5px
}

.hotel #products .items .block .name h3 {
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0.2em;
  line-height: 1;
  margin: 0 auto
}

.hotel #products .group01 {
  margin: 0 auto 40px;
  text-align: center
}

@media screen and (max-width:767px) {
  .hotel #products .group01 h4 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 26px;
    line-height: 1.46;
    margin: 0 auto 10px
  }
}

@media screen and (min-width:768px) {
  .hotel #products .group01 h4 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 30px;
    line-height: 1.46;
    margin: 0 auto 10px
  }
}

.hotel #products .group01 .desc {
  font-size: 15px;
  line-height: 2
}

.hotel #products .point {
  margin: 0 auto 80px;
  text-align: center
}

.hotel #products .point.point03 {
  margin: 0 auto 170px
}

.hotel #products .point .image {
  margin: 0 auto 15px
}

.hotel #products .point h5 {
  font-family: ten-mincho-text, serif;
  font-weight: 400;
  font-style: normal;
  font-size: 25px;
  margin: 0 auto 10px
}

.hotel #products .point .desc {
  font-size: 15px;
  line-height: 2
}

@media screen and (max-width:767px) {
  .hotel #products .product01 {
    border-bottom: 1px solid #707070;
    margin: 0 auto 100px;
    padding: 0 0 100px
  }

  .hotel #products .product01.skin {
    border-bottom: none;
    margin: 0 auto 130px;
    padding: 0
  }
}

@media screen and (min-width:768px) {
  .hotel #products .product01 {
    align-items: flex-end;
    border-bottom: 1px solid #707070;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 100px;
    padding: 0 50px 100px
  }

  .hotel #products .product01.skin {
    border-bottom: none;
    margin: 0 auto 130px;
    padding: 0 50px
  }
}

@media screen and (max-width:767px) {
  .hotel #products .product01 .left {
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .hotel #products .product01 .left {
    text-align: center;
    width: 28%
  }
}

.hotel #products .product01 .left .image {
  margin: 0 auto 40px
}

.hotel #products .product01 .left .name {
  margin: 0 auto 20px
}

.hotel #products .product01 .left .name .en {
  font-family: "Utsukushi";
  font-size: 30px;
  font-weight: normal;
  margin: 0 auto 15px
}

.hotel #products .product01 .left .name h3 {
  font-family: "Utsukushi";
  font-size: 15px;
  font-weight: normal
}

.hotel #products .product01 .left .size {
  font-size: 15px;
  margin: 0 auto 15px
}

.hotel #products .product01 .left .price {
  font-family: TimesNewRoman, Times New Roman, 'Libre Baskerville', serif;
  font-size: 35px
}

.hotel #products .product01 .left .price .yen {
  font-size: 25px
}

.hotel #products .product01 .left .price .tax {
  font-size: 20px;
  margin-left: -10px
}

@media screen and (min-width:768px) {
  .hotel #products .product01 .right {
    width: 72%
  }
}

.hotel #products .product01 .right h4 {
  font-family: ten-mincho-text, serif;
  font-size: 25px;
  font-weight: normal;
  line-height: 1.4;
  margin: 0 0 20px
}

.hotel #products .product01 .right>.desc {
  border-bottom: 1px solid #707070;
  font-size: 15px;
  line-height: 1.66;
  margin: 0 auto 20px;
  padding: 0 0 20px
}

.hotel #products .product01 .right .seibun {
  font-size: 12px;
  line-height: 2;
  margin: 0 0 25px
}

.hotel #products .product01.skin .right .seibun {
  margin: 0
}

@media screen and (max-width:767px) {
  .hotel #products .product01 .right .sub01 {
    width: 100%
  }

  .hotel #products .product01 .right .sub01 .image {
    margin: 0 auto 30px;
    width: 100%
  }

  .hotel #products .product01 .right .sub01 .image img {
    width: 100%
  }
}

@media screen and (min-width:768px) {
  .hotel #products .product01 .right .sub01 {
    display: flex;
    justify-content: space-between;
    width: 100%
  }

  .hotel #products .product01.skin .right .sub01 {
    margin: 0 0 15px
  }

  .hotel #products .product01 .right .sub01 .image {
    width: 45.7%
  }

  .hotel #products .product01.brushing .right .sub01 .image, .hotel #products .product01.skin .right .sub01 .image {
    width: 30%
  }

  .hotel #products .product01.skin .right .sub01 .seibun {
    width: 66.4%
  }
}

@media screen and (max-width:767px) {
  .hotel #products .product01 .right .pr {
    background-color: white;
    border: 1px solid #707070;
    padding: 17px;
    width: 100%
  }
}

@media screen and (min-width:768px) {
  .hotel #products .product01 .right .pr {
    background-color: white;
    border: 1px solid #707070;
    padding: 17px;
    width: 51.2%
  }

  .hotel #products .product01.brushing .right .pr {
    width: 66.4%
  }
}

.hotel #products .product01.skin .right .pr {
  width: 100%
}

.hotel #products .product01 .right .pr h5 {
  font-size: 17px;
  font-weight: bold;
  margin: 0 0 10px
}

.hotel #products .product01 .right .pr .desc {
  font-size: 15px;
  line-height: 1.66
}

.hotel #products .product01.conditioner .right .pr {
  text-align: center
}

.hotel #products .product01.conditioner .right .pr .desc01 {
  margin: 0 auto 17px
}

@media screen and (max-width:767px) {
  .hotel #products .product01 .right .pr dl {
    margin: 0
  }

  .hotel #products .product01.skin .right .pr dl {
    margin: 0 0 20px
  }

  .hotel #products .product01 .right .pr dl dt {
    font-size: 15px;
    margin: 0 0 10px
  }

  .hotel #products .product01.skin .right .pr dl dt {
    font-weight: normal
  }

  .hotel #products .product01 .right .pr dl dd {
    font-size: 12px
  }

  .hotel #products .product01.skin .right .pr dl dd {
    font-size: 13px
  }
}

@media screen and (min-width:768px) {
  .hotel #products .product01 .right .pr dl {
    display: flex;
    justify-content: space-between;
    margin: 0
  }

  .hotel #products .product01.skin .right .pr dl {
    align-items: center
  }

  .hotel #products .product01 .right .pr dl dt {
    font-size: 15px;
    width: 32.3%
  }

  .hotel #products .product01.skin .right .pr dl dt {
    font-weight: normal;
    width: 21%
  }

  .hotel #products .product01 .right .pr dl dd {
    font-size: 12px;
    width: 65%
  }

  .hotel #products .product01.skin .right .pr dl dd {
    font-size: 13px;
    width: 75%
  }
}

.hotel #sampleorder {
  margin: 0 auto 150px
}

@media screen and (max-width:767px) {
  .hotel #sampleorder h3 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
    line-height: 1.5;
    margin: 0 auto;
    text-align: center
  }
}

@media screen and (min-width:768px) {
  .hotel #sampleorder h3 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 45px;
    line-height: 1.1;
    margin: 0 auto;
    text-align: center
  }
}

.hotel #sampleorder .group01 {
  align-items: flex-end;
  display: flex;
  justify-content: space-between;
  margin: 0 auto 45px
}

.hotel #sampleorder .group01 .left {
  width: 38.4%
}

.hotel #sampleorder .group01 .right {
  width: 59%
}

@media screen and (max-width:767px) {
  .hotel #sampleorder .link a {
    background-color: #e3d8bc;
    color: white;
    display: block;
    padding: 20px;
    text-align: center
  }

  .hotel #sampleorder .link a .group {
    border: 2px solid white;
    padding: 10px
  }

  .hotel #sampleorder .link a .group .en {
    font-family: 'ALoveofThunderRegular';
    font-size: 24px;
    letter-spacing: 0.2em;
    line-height: 1;
    margin: 0 auto 10px
  }

  .hotel #sampleorder .link a .group .ja {
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1
  }
}

@media screen and (min-width:768px) {
  .hotel #sampleorder .link a {
    background-color: #e3d8bc;
    color: white;
    display: block;
    padding: 20px;
    text-align: center
  }

  .hotel #sampleorder .link a .group {
    border: 2px solid white;
    padding: 10px
  }

  .hotel #sampleorder .link a .group .en {
    font-family: 'ALoveofThunderRegular';
    font-size: 60px;
    letter-spacing: 0.2em;
    line-height: 1
  }

  .hotel #sampleorder .link a .group .ja {
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1
  }
}

.footerlogo {
  margin: 0 auto 80px;
  text-align: center
}

.bfirst {
  text-align: center
}

.mw_wp_form label.inputfile>input[type="file"] {
  display: none
}

.mw_wp_form label.inputfile {
  color: #fff;
  background-color: #685744;
  padding: 10px;
  cursor: pointer
}

@media screen and (max-width:767px) {
  .home .mainimg {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
  }

  .home .mainimg .left {
    order: 2;
    padding: 50px 15px;
    text-align: center;
    width: 100%
  }

  .home .mainimg .left img {
    margin: auto;
    width: 85%
  }

  .home .mainimg .image {
    margin-top: 80px;
    order: 1;
    width: 100%
  }
}

@media screen and (max-width:767px) {
  .home .insta01 {
    background-color: #ebeae8;
    padding: 30px
  }

  .home .insta01 .header {
    margin: 0 0 30px;
    width: 100%
  }

  .home .insta01 .header h2 {
    margin: auto auto 20px;
    width: 120px
  }

  .home .insta01 .header h3 {
    margin: auto auto 20px;
    text-align: center;
    width: 180px
  }

  .home .insta01 .header div {
    display: none
  }
}

@media screen and (min-width:768px) {
  .home .insta01 {
    background-color: #ebeae8;
    padding: 4.8vw 6.8vw
  }

  .home .insta01 .header {
    display: flex;
    justify-content: space-between;
    margin: 0 0 2vw;
    width: 100%
  }

  .home .insta01 .header h2 {
    margin: auto auto auto 0;
    width: 8.4vw
  }

  .home .insta01 .header h3 {
    margin: auto;
    text-align: center;
    width: 18vw
  }

  .home .insta01 .header div {
    margin: auto 0 auto auto;
    width: 8.4vw
  }
}

@media screen and (max-width:767px) {
  .home #concept {
    margin: auto;
    padding: 50px 30px 50px
  }

  .home #concept h2 {
    margin: 0 0 30px
  }

  .home #concept h2 img {
    width: 168px
  }

  .home #concept .group01 {
    margin: 0 auto 50px
  }

  .home #concept .group01 .image {
    margin: 0 auto 30px;
    width: 100%
  }

  .home #concept .group01 .text {
    width: 100%
  }

  .home #concept .group01 .text h3 {
    color: #aeb6aa;
    font-size: 24px;
    letter-spacing: 0.1em;
    line-height: 1.4;
    margin: 0 0 20px
  }

  .home #concept .group01 .text .desc {
    font-size: 14px;
    line-height: 1.6
  }

  .home #concept .group02 {
    border-bottom: 1px solid #707070;
    margin: 0 auto 50px
  }

  .home #concept .group02 h3 {
    border-bottom: 1px solid #707070;
    color: #aeb6aa;
    font-size: 24px;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 0 0 15px;
    padding: 0 0 15px
  }

  .home #concept .group02 .block {
    padding: 0 0 35px
  }

  .home #concept .group02 .block .image {
    margin: 0 auto 30px;
    width: 100%
  }

  .home #concept .group02 .block .text {
    font-size: 14px;
    line-height: 1.9
  }

  .home #concept .group03 {
    border-bottom: 1px solid #707070;
    margin: auto;
    padding: 0 0 50px;
    text-align: center
  }

  .home #concept .group03 .image {
    margin: 0 auto 50px;
    width: 100%
  }

  .home #concept .group03 h2 {
    color: #aeb6aa;
    font-size: 25px;
    line-height: 1.5;
    margin: 0 0 20px
  }

  .home #concept .group03 .logo {
    margin: auto auto 30px;
    width: 50%
  }

  .home #concept .group03 .birth {
    color: #aeb6aa;
    font-size: 60px;
    font-weight: bold
  }
}

@media screen and (min-width:768px) {
  .home #concept {
    margin: auto
  }

  .home #concept h2 img {
    width: 168px
  }

  .home #concept .group01 {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 110px;
    max-width: 1640px
  }

  .home #concept .group01 .image {
    width: 21%
  }

  .home #concept .group01 .text {
    width: 76%
  }

  .home #concept .group01 .text h3 {
    color: #aeb6aa;
    font-size: 35px;
    letter-spacing: 0.1em;
    line-height: 1.4;
    margin: 0 0 2vw
  }

  .home #concept .group01 .text .desc {
    font-size: 18px;
    line-height: 1.6
  }

  .home #concept .group02 h3 {
    border-bottom: 1px solid #707070;
    color: #aeb6aa;
    font-size: 35px;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 0 0 20px;
    padding: 0 0 20px
  }

  .home #concept .group02 .block .image {
    width: 56%
  }

  .home #concept .group02 .block .text {
    font-size: 18px;
    line-height: 1.9;
    width: 41%
  }

  .home #concept .group03 {
    border-bottom: 1px solid #707070;
    margin: auto;
    padding: 0 0 100px;
    text-align: center
  }

  .home #concept .group03 .image {
    margin: 0 auto 110px;
    width: 890px
  }

  .home #concept .group03 h2 {
    color: #aeb6aa;
    font-size: 35px;
    line-height: 1.4;
    margin: 0 0 30px
  }

  .home #concept .group03 .logo {
    margin: auto auto 45px;
    width: 225px
  }

  .home #concept .group03 .birth {
    color: #aeb6aa;
    font-size: 80px;
    font-weight: bold
  }
}

@media screen and (max-width:767px) {
  .home #products .header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 30px 30px
  }

  .home #products .header h2 {
    margin: 0 auto;
    padding: 80px 0 0 0;
    order: 2;
    width: 100%
  }

  .home #products .header h2 img {
    margin: 0 auto;
    width: 158px
  }

  .home #products .header .backtotop {
    margin: 0 auto;
    order: 1
  }

  .footerbacktotop {
    padding: 30px;
    text-align: right
  }

  .backtotop a {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 14px;
    letter-spacing: 0.1em
  }

  .home #products .images {
    display: flex;
    justify-content: space-between;
    padding: 0 30px
  }

  .home #products .images .image:first-child {
    margin: 0 auto 30px;
    order: 2;
    width: 100%
  }

  .home #products .images .image:last-child {
    margin: 0 auto 50px;
    order: 1;
    width: 100%
  }

  .home #products .group01 {
    padding: 0 30px
  }

  .home #products .group01 .block {
    margin: 0 auto 50px
  }

  .home #products .group01 .block h3 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 1.4;
    margin: 0 auto 10px
  }

  .home #products .group01 .block .desc {
    font-size: 14px;
    line-height: 2
  }

  .home #products .group02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 30px 50px;
    width: 100%
  }

  .home #products .group02 .block {
    margin: 0 auto 50px;
    padding: 0 10px;
    width: 100%
  }

  .home #products .group02 .block .point {
    margin: 0 auto 15px;
    width: 120px
  }

  .home #products .group02 .block h4 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 1.5;
    margin: 0 auto 20px
  }

  .home #products .group02 .block .desc {
    font-size: 14px;
    line-height: 2
  }

  .home #products .group03 {
    background-color: #ebeae8;
    padding: 50px 30px
  }

  .home #products .group03 .block {
    border-bottom: 1px solid #707070;
    margin: 0 0 50px;
    padding: 0 0 50px;
    width: 100%
  }

  .home #products .group03 .block .left {
    padding: 0 0 50px;
    text-align: center;
    width: 100%
  }

  .home #products .group03 .block .left .image {
    margin: auto auto 30px;
    width: 80%
  }

  .home #products .group03 .block .left .name {
    margin: 0 auto;
    width: 100%
  }

  .home #products .group03 .block .left .name h3 {
    font-family: "Utsukushi";
    font-size: 24px;
    font-weight: normal;
    margin: 0 auto 12px
  }

  .home #products .group03 .block .left .name h4 {
    font-family: "Utsukushi";
    font-size: 18px;
    font-weight: normal;
    line-height: 1;
    margin: 0 auto 15px
  }

  .home #products .group03 .block .left .name .size {
    font-size: 15px;
    line-height: 1;
    margin: 0 auto 10px
  }

  .home #products .group03 .block .left .name .price {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 24px;
    line-height: 1
  }

  .home #products .group03 .block .left .name .price .yen {
    font-size: 16px
  }

  .home #products .group03 .block .left .name .price .tax {
    font-size: 16px
  }

  .home #products .group03 .block .right {
    width: 100%
  }

  .home #products .group03 .block .right h5 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 1.4;
    margin: 0 0 20px
  }

  .home #products .group03 .block .right>.desc {
    border-bottom: 1px solid #707070;
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 20px;
    padding: 0 0 20px
  }

  .home #products .group03 .block .right .seibun {
    font-size: 12px;
    line-height: 2;
    margin: 0 0 20px
  }

  .home #products .group03 .block .right .list .image {
    margin: 0 auto 30px;
    width: 100%
  }

  .home #products .group03 .block .right .list .image img {
    width: 100%
  }

  .home #products .group03 .block.brushing01 .right .list .image {
    width: 100%
  }

  .home #products .group03 .block .right .list .text {
    background-color: white;
    border: 1px solid #707070;
    padding: 12px 15px;
    width: 100%
  }

  .home #products .group03 .block.brushing01 .right .list .text {
    width: 100%
  }

  .home #products .group03 .block .right .list .text h6 {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 8px
  }

  .home #products .group03 .block .right .list .text.text01 {
    align-items: center;
    display: flex;
    flex-wrap: wrap
  }

  .home #products .group03 .block .right .list .text .block01 {
    margin: auto;
    width: 100%
  }

  .home #products .group03 .block .right .list .text .desc {
    border-bottom: none;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
    padding: 0
  }

  .home #products .group03 .block.brushing01 .right .list .text dl {
    margin: 0
  }

  .home #products .group03 .block.brushing01 .right .list .text dl dt {
    font-size: 12px;
    padding: 0 0 10px
  }

  .home #products .group03 .block.brushing01 .right .list .text dl dd {
    font-size: 12px;
    padding: 0 0 15px
  }

  .home #products .group03 .block .right .block02 .image {
    margin: 0 auto 30px;
    width: 100%
  }

  .home #products .group03 .block .right .block02 .image img {
    width: 100%
  }

  .home #products .group03 .block .right .list.list01 {
    border: 1px solid #707070;
    background-color: white;
    display: block;
    padding: 12px 15px
  }

  .home #products .group03 .block .right .list.list01 dl {
    margin: 0
  }

  .home #products .group03 .block .right .list.list01 dl dt {
    font-size: 12px;
    padding: 0 0 10px
  }

  .home #products .group03 .block .right .list.list01 dl dd {
    font-size: 12px;
    padding: 0 0 15px
  }
}

@media screen and (min-width:768px) {
  .home #products .header .backtotop {
    margin: auto 0 auto auto
  }

  .footerbacktotop {
    padding: 30px 130px;
    text-align: right
  }

  .backtotop a {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em
  }

  .home #products .header .backtotop a {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em
  }

  .home #products .images {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
    padding: 0 0 100px 130px
  }

  .home #products .images .image:first-child {
    width: 33%
  }

  .home #products .images .image:last-child {
    width: 62%
  }

  .home #products .group01 {
    text-align: center
  }

  .home #products .group01 .block {
    margin: 0 auto 60px
  }

  .home #products .group01 .block h3 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 30px;
    line-height: 1.4;
    margin: 0 auto 10px
  }

  .home #products .group01 .block .desc {
    font-size: 15px;
    line-height: 2
  }

  .home #products .group02 {
    display: flex;
    justify-content: center;
    padding: 0 130px 80px;
    width: 100%
  }

  .home #products .group02 .block {
    margin: 0 auto;
    padding: 0 10px;
    text-align: center;
    width: 465px
  }

  .home #products .group02 .block .point {
    margin: 0 auto 15px;
    width: 120px
  }

  .home #products .group02 .block h4 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 25px;
    line-height: 1.48;
    margin: 0 auto 20px
  }

  .home #products .group02 .block .desc {
    font-size: 15px;
    line-height: 2
  }

  .home #products .group03 {
    background-color: #ebeae8;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: auto auto 4.5vw;
    width: 85vw
  }

  .home #products .group03 .block {
    display: flex;
    justify-content: space-between;
    width: calc(50% - 35px)
  }

  .home #products .group03 .block:first-child, .home #products .group03 .block:nth-child(2) {
    border-bottom: 1px solid #707070;
    margin: 0 0 110px;
    padding: 0 0 110px
  }

  .home #products .group03 .block .left {
    display: flex;
    flex-wrap: wrap;
    padding: 0 15px 0 0;
    text-align: center;
    width: 28%
  }

  .home #products .group03 .block .left .image {
    margin: auto auto auto;
    width: 100%
  }

  .home #products .group03 .block .left .name {
    margin: auto auto 0 auto;
    width: 100%
  }

  .home #products .group03 .block .left .name h3 {
    font-family: "Utsukushi";
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    font-weight: normal;
    margin: 0 auto 12px
  }

  .home #products .group03 .block .left .name h4 {
    font-family: "Utsukushi";
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    font-weight: normal;
    line-height: 1;
    margin: 0 auto 15px
  }

  .home #products .group03 .block .left .name .size {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 1;
    margin: 0 auto 10px
  }

  .home #products .group03 .block .left .name .price {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    line-height: 1
  }

  .home #products .group03 .block .left .name .price .yen {
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px)
  }

  .home #products .group03 .block .left .name .price .tax {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px)
  }

  .home #products .group03 .block .right {
    width: 72%
  }

  .home #products .group03 .block .right h5 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.25vw;
    font-size: clamp(10px, 1.25vw, 24px);
    letter-spacing: -0.05em;
    line-height: 1.4;
    margin: 0 0 25px;
    min-height: 84px
  }

  .home #products .group03 .block .right>.desc {
    border-bottom: 1px solid #707070;
    font-size: 0.73vw;
    font-size: clamp(8px, 0.73vw, 14px);
    line-height: 1.6;
    margin: 0 0 20px;
    min-height: 60px;
    padding: 0 0 20px
  }

  .home #products .group03 .block:nth-child(3) .right>.desc, .home #products .group03 .block:nth-child(4) .right>.desc {
    min-height: 78px
  }

  .home #products .group03 .block .right .seibun {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    line-height: 2;
    margin: 0 0 20px;
    min-height: 100px
  }

  .home #products .group03 .block .right .list {
    display: flex;
    justify-content: space-between
  }

  .home #products .group03 .block .right .list .image {
    width: 46%
  }

  .home #products .group03 .block.brushing01 .right .list .image {
    width: 30%
  }

  .home #products .group03 .block .right .list .text {
    background-color: white;
    border: 1px solid #707070;
    padding: 12px 15px;
    width: 51%
  }

  .home #products .group03 .block.brushing01 .right .list .text {
    width: 66%
  }

  .home #products .group03 .block .right .list .text h6 {
    font-size: 0.88vw;
    font-size: clamp(8px, 0.88vw, 17px);
    font-weight: bold;
    margin: 0 0 8px
  }

  .home #products .group03 .block .right .list .text.text01 {
    align-items: center;
    display: flex;
    flex-wrap: wrap
  }

  .home #products .group03 .block .right .list .text .block01 {
    margin: auto;
    width: 100%
  }

  .home #products .group03 .block .right .list .text .desc {
    border-bottom: none;
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 1.6;
    margin: 0;
    padding: 0
  }

  .home #products .group03 .block.brushing01 .right .list .text dl {
    display: flex;
    margin: 0
  }

  .home #products .group03 .block.brushing01 .right .list .text dl dt {
    font-size: 0.73vw;
    font-size: clamp(8px, 0.73vw, 14px);
    padding: 0 5px 0 0;
    width: 32%
  }

  .home #products .group03 .block.brushing01 .right .list .text dl dd {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    width: 68%
  }

  .home #products .group03 .block .right .block02 {
    display: flex;
    justify-content: space-between
  }

  .home #products .group03 .block .right .block02 .image {
    width: 30%
  }

  .home #products .group03 .block .right .block02 .seibun {
    width: 66%
  }

  .home #products .group03 .block .right .list.list01 {
    border: 1px solid #707070;
    background-color: white;
    display: block;
    padding: 12px 15px
  }

  .home #products .group03 .block .right .list.list01 dl {
    display: flex;
    margin: 0
  }

  .home #products .group03 .block .right .list.list01 dl dt {
    font-size: 0.73vw;
    font-size: clamp(8px, 0.73vw, 14px);
    font-weight: normal;
    padding: 0 5px 0 0;
    width: 25%
  }

  .home #products .group03 .block .right .list.list01 dl dd {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    width: 75%
  }
}

@media screen and (max-width:767px) {
  .page .footer, .contact .footer {
    padding: 80px 30px 110px
  }

  .page .footer .footerlogo, .contact .footer .footerlogo {
    margin: 0 auto 50px;
    padding: 0 60px
  }

  .page .footer .bfirst, .contact .footer .bfirst {
    margin: 0 auto 35px;
    padding: 0 60px
  }
}

@media screen and (min-width:768px) {
  .page .footer, .contact .footer {
    padding: 80px 90px 110px
  }
}

.page .footer #contact a, .contact .footer #contact a, .page .footer #sample a, .contact .footer #sample a {
  border: 1px solid #797979;
  color: #797979;
  display: block;
  font-size: 15px;
  margin-bottom: 20px;
  padding: 15px 15px;
  text-align: center
}

.footer #contact a:hover, .footer #sample a:hover {
  background-color: #797979;
  color: white;
  text-decoration: none
}

@media screen and (min-width:768px) {
  .linkwrapper {
    display: flex;
    justify-content: space-between
  }

  .page .footer #contact, .contact .footer #contact, .page .footer #sample, .contact .footer #sample {
    width: 49%
  }

  .page .footer #contact a, .contact .footer #contact a, .page .footer #sample a, .contact .footer #sample a {
    height: 50px;
    line-height: 50px;
    padding: 0
  }
}

.contact .form01 {
  font-size: 14px
}

.contact .form01 h4 {
  font-size: 14px;
  margin: 40px 0 20px
}

.contact .send {
  margin: 40px 0
}

.mw_wp_form.mw_wp_form_complete {
  font-size: 14px
}

@media screen and (max-width:767px) {
  #sb_instagram.sbi_col_6.sbi_disable_mobile #sbi_images .sbi_item {
    width: 50%
  }
}

@media screen and (max-width:767px) {
  .order01 {
    bottom: 0;
    left: 0;
    position: fixed;
    width: 100%
  }

  .order01 img {
    width: 100%
  }

  .order02 {
    margin: 0 30px
  }

  .order02 a {
    background-color: #E3D8BC;
    display: block;
    padding: 6px;
    text-align: center
  }

  .order02 a div {
    background-color: #E3D8BC;
    border: 2px solid #fff;
    padding: 15px
  }

  .order02 a:hover {
    opacity: 0.6
  }
}

@media screen and (min-width:768px) {
  .order01 {
    right: 0;
    top: 0;
    position: fixed;
    z-index: 200000
  }

  .order01 img {
    height: 100px;
    width: auto
  }

  .order02 a:hover {
    opacity: 0.6
  }
}

@media screen and (max-width:767px) {
  .footer {
    background-color: #EBEAE8;
    color: #505050;
    padding: 25px 0;
    text-align: center
  }

  .footer .fnav {
    font-size: 13px;
    letter-spacing: 0.2em;
    margin: 0 auto 30px;
    text-align: center
  }

  .footer .fnav ul {
    display: block;
    margin: 0 auto;
    padding: 0;
    width: fit-content
  }

  .footer .fnav ul li {
    list-style-type: none;
    margin: 0;
    padding: 0
  }

  .footer .fnav ul li a {
    color: #505050;
    display: block;
    padding: 3px 0
  }

  .footer .fnav ul li a:hover {
    text-decoration: none
  }

  .footer .logo {
    margin: 0 auto 15px;
    width: 200px
  }

  .footer .bfirst {
    padding: 0 !important
  }

  .footer h6 {
    font-size: 18px;
    letter-spacing: 0.1em;
    margin: 0 auto 15px
  }

  .footer h6 a {
    color: #505050
  }

  .footer .address {
    font-size: 15px;
    letter-spacing: 0.1em
  }
}

@media screen and (min-width:768px) {
  .footer {
    background-color: #EBEAE8;
    color: #505050;
    padding: 1.8vw 0 2.5vw;
    text-align: center
  }

  .footer .fnav {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    letter-spacing: 0.2em;
    margin: 0 auto 3.3vw;
    text-align: center
  }

  .footer .fnav ul {
    display: flex;
    margin: 0 auto;
    padding: 0;
    width: fit-content
  }

  .footer .fnav ul li {
    list-style-type: none;
    margin: 0;
    padding: 0
  }

  .footer .fnav ul li a {
    color: #505050
  }

  .footer .fnav ul li a:hover {
    text-decoration: none
  }

  .footer .fnav ul li:after {
    content: '/';
    display: inline-block;
    margin: auto 1.2vw
  }

  .footer .fnav ul li:last-child:after {
    display: none
  }

  .footer .logo {
    margin: 0 auto 1.4vw;
    width: 9.6vw
  }

  .footer h6 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    letter-spacing: 0.1em;
    margin: 0 auto
  }

  .footer h6 a {
    color: #505050
  }

  .footer .address {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    letter-spacing: 0.1em
  }
}

@media screen and (max-width:767px) {
  .home .mainimg {
    position: relative;
    width: 100%
  }

  .home .mnav {
    margin: -17px auto 7vw;
    text-align: center;
    width: fit-content
  }

  .home .mnav ul {
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0 30px;
    width: fit-content
  }

  .home .mnav ul li {
    list-style-type: none;
    padding: 0 0.9vw
  }

  .home #concept .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin-bottom: 4vw
  }

  .home #concept .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #concept .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #concept .group01 {
    margin: 0 auto 40px
  }

  .home #concept .group01 .text h3 {
    font-weight: 300
  }

  .home #concept .group04 {
    display: flex;
    justify-content: space-between;
    margin: auto auto 100px
  }

  .home #concept .group04 .left {
    width: 70%
  }

  .home #concept .group04 .right {
    width: 24%
  }

  .home #concept .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #concept .backtotop a:hover {
    text-decoration: none
  }

  .home .group05 {
    background-image: url(images/bg01@2x.png);
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 30px;
    text-align: center
  }

  .home .group06 h2 {
    color: #A2AE9C;
    font-size: 35px;
    font-weight: 300;
    letter-spacing: 0.1em;
    margin: 0 auto 20px
  }

  .home .group06 .image {
    text-align: center
  }

  .home .group06 .image.image01 {
    margin: 0 auto 20px
  }

  .home .group06 .image.image02 {
    margin: 0 auto 25px
  }

  .home .group06 .image.image03 {
    margin: 0 auto 40px
  }

  .home .group07 {
    padding-bottom: 10px
  }

  .home .group07 .block {
    padding-bottom: 30px;
    text-align: center
  }

  .home .group07 .block h3 {
    font-family: ten-mincho-text, serif;
    font-size: 20px;
    font-weight: normal;
    margin: 0 auto 6px
  }

  .home .group07 .block .desc {
    font-size: 15px
  }

  .home .group02 {
    display: block;
    justify-content: space-between;
    margin: auto auto 20px;
    width: 100%
  }

  .home .group02 .block {
    padding-bottom: 20px;
    text-align: center;
    width: 100%
  }

  .home .group02 .block .point {
    margin: 0 auto 12px
  }

  .home .group02 .block h4 {
    font-family: ten-mincho-text, serif;
    font-size: 25px;
    font-weight: normal;
    line-height: 1.5;
    margin: 0 auto 9px
  }

  .home .group02 .block .desc {
    font-size: 15px;
    line-height: 2
  }

  .home #movie {
    border-top: 1px solid #707070;
    padding: 40px 0 40px;
    text-align: center
  }

  .home #movie .block {
    margin: auto;
    width: fit-content
  }

  .home #movie .block .movie {
    margin: 0 auto 15px;
    width: 50%
  }

  .home #movie .block h3 {
    font-size: 13px;
    font-weight: normal;
    margin: 0;
    text-align: center
  }

  .home #products {
    background-color: #EBEAE8;
    position: relative
  }

  .home #products .header {
    color: #505050;
    margin: auto;
    text-align: center;
    display: block;
    padding-bottom: 70px;
    padding-top: 70px
  }

  .home #products .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.5;
    margin: 0 auto 5px
  }

  .home #products .header h4 {
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto
  }

  .home #products .gyoumu a {
    align-items: center;
    background-color: #B7B7B5;
    color: #fff;
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
    padding: 20px;
    width: 100%
  }

  .home #products .gyoumu a .txt {
    text-align: center
  }

  .home #products .gyoumu a .txt .desc {
    font-size: 15px;
    letter-spacing: 0.03em;
    line-height: 1.2;
    margin: 0
  }

  .home #products .gyoumu a .txt h5 {
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 0.03em;
    margin: 0
  }

  .home #products .gyoumu a:hover {
    background-color: #fff;
    color: #B7B7B5;
    text-decoration: none
  }

  .home #products .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right;
    padding-bottom: 30px
  }

  .home #products .backtotop a:hover {
    text-decoration: none
  }

  .home #order {
    background-color: #BFC6B9;
    color: #fff;
    margin-bottom: 25px;
    padding: 70px 0
  }

  .home #order .image {
    margin: 0 auto 50px;
    text-align: center;
    width: 70%
  }

  .home #order .order02 {
    background-color: #2BA88B;
    color: #fff;
    margin: 0;
    text-align: center
  }

  .home #order .order02 a {
    background-color: #2BA88B;
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 20px
  }

  .home #contact {
    padding: 0 30px 75px;
    text-align: center
  }

  .home #contact .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #contact .backtotop a:hover {
    text-decoration: none
  }

  .home #contact .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin: 0 auto 40px
  }

  .home #contact .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #contact .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #contact .header h4 {
    margin: 0 auto 25px
  }

  .home #contact .header .desc {
    font-size: 15px;
    letter-spacing: 0.2em
  }

  .home #contact h5 {
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0.3em;
    line-height: 1.8;
    margin: 0 auto 30px
  }

  .home #contact .tel {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 28px;
    letter-spacing: 0.2em;
    margin: 0 auto 20px
  }

  .home #contact .open {
    font-size: 20px;
    letter-spacing: 0.2em;
    margin: 0 auto 20px
  }

  .home #contact .open span {
    font-size: 13px;
    letter-spacing: 0.1em
  }

  .home #contact .notice {
    font-size: 15px;
    line-height: 1.8;
    margin: 0 auto 20px
  }

  .home #contact .link a {
    align-items: center;
    background-color: #D5D2D2;
    color: #525252;
    display: flex;
    font-size: 20px;
    justify-content: center;
    margin: 0 auto;
    padding: 20px;
    width: fit-content
  }

  .home #contact .link a:hover {
    background-color: #525252;
    color: #d5d2d2;
    text-decoration: none
  }

  .home #guide {
    padding: 0 30px
  }

  .home #guide .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin: 0 auto 40px
  }

  .home #guide .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.5;
    margin: 0 auto 5px
  }

  .home #guide .header h4 {
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto
  }

  .home #guide .group {
    margin: auto;
    width: 100%
  }

  .home #guide .group .left .block, .home #guide .group .right .block {
    padding-bottom: 25px
  }

  .home #guide .group .left .block h5, .home #guide .group .right .block h5 {
    background-color: #A3A3A3;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto 14px;
    padding: 5px 0;
    text-align: center
  }

  .home #guide .group .left .block h6, .home #guide .group .right .block h6 {
    font-size: 15px;
    margin: 0 0 8px
  }

  .home #guide .group .left .block .desc, .home #guide .group .right .block .desc {
    font-size: 15px;
    line-height: 2.2
  }

  .home #guide .group .left .block .notice, .home #guide .group .right .block .notice {
    background-color: #E0E0E0;
    margin-top: 15px;
    padding: 20px
  }

  .home #guide .group .left .block .notice h6, .home #guide .group .right .block .notice h6 {
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 10px
  }

  .home #guide .group .left .block .notice dl, .home #guide .group .right .block .notice dl {
    display: flex;
    font-size: 15px;
    margin: 0;
    padding: 0 0 10px
  }

  .home #guide .group .left .block .notice dl dt, .home #guide .group .right .block .notice dl dt {
    width: 5em
  }

  .home #guide .group .left .block .notice dl dd, .home #guide .group .right .block .notice dl dd {
    width: calc(100% - 5em)
  }

  .home #guide .group .left .block .notice p, .home #guide .group .right .block .notice p {
    font-size: 15px;
    margin: 0;
    padding: 0
  }

  .home #guide .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #guide .backtotop a:hover {
    text-decoration: none
  }

  .copyright, .law, .privacy-policy, .commercial-products {
    padding-top: 150px
  }

  .copyright .pageheader, .law .pageheader, .privacy-policy .pageheader, .commercial-products .pageheader {
    padding-bottom: 45px;
    text-align: center
  }

  .copyright .pageheader h2, .law .pageheader h2, .privacy-policy .pageheader h2, .commercial-products .pageheader h2 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 30px;
    font-weight: normal;
    letter-spacing: 0.1em;
    margin: 0 auto
  }

  .copyright .pageheader h3, .law .pageheader h3, .privacy-policy .pageheader h3, .commercial-products .pageheader h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0.4em
  }

  .copyright .main, .law .main, .privacy-policy .main, .commercial-products .main {
    margin: 0 auto;
    padding: 0 30px;
    width: 100%
  }

  .copyright .main .backtotop, .law .main .backtotop, .privacy-policy .main .backtotop, .commercial-products .main .backtotop {
    margin: 0 auto;
    padding: 25px 0 85px
  }

  .copyright .main .backtotop a, .law .main .backtotop a, .privacy-policy .main .backtotop a, .commercial-products .main .backtotop a {
    border: 1px solid #707070;
    color: #505050;
    display: block;
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: normal;
    height: 40px;
    line-height: 40px;
    text-align: center;
    width: 100%
  }

  .copyright .main .backtotop a:hover, .law .main .backtotop a:hover, .privacy-policy .main .backtotop a:hover, .commercial-products .main .backtotop a:hover {
    background-color: #707070;
    color: #fff;
    text-decoration: none
  }

  .commercial-products .pageheader h2 {
    letter-spacing: 0.4em
  }

  .commercial-products .main {
    padding: 0 30px;
    width: 100%
  }

  .commercial-products .main .group .groupheader {
    padding-bottom: 25px;
    text-align: center
  }

  .commercial-products .main .group .groupheader h4 {
    font-family: Lantinghei, sans-serif;
    font-size: 24px;
    font-weight: 100;
    letter-spacing: 0.3em;
    margin: 0 auto
  }

  .commercial-products .main .group .groupheader h5 {
    font-family: "Utsukushi";
    font-size: 12px;
    font-weight: normal;
    margin: 0 auto
  }

  .commercial-products .main .group .block {
    border-bottom: 1px solid #707070;
    margin: 0 0 110px;
    padding: 0 0 110px
  }

  .commercial-products .main .group .block .left {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 50px;
    text-align: center
  }

  .commercial-products .main .group .block .left .image {
    margin: auto auto auto;
    width: 70%
  }

  .commercial-products .main .group .block .left .name {
    margin: 15px auto auto auto;
    width: 100%
  }

  .commercial-products .main .group .block .left .name h3 {
    font-family: "Utsukushi";
    font-size: 30px;
    font-weight: normal;
    margin: 0 auto 12px
  }

  .commercial-products .main .group .block .left .name h4 {
    font-family: "Utsukushi";
    font-size: 15px;
    font-weight: normal;
    line-height: 1;
    margin: 0 auto 15px
  }

  .commercial-products .main .group .block .left .name .size {
    font-size: 15px;
    line-height: 1;
    margin: 0 auto 10px
  }

  .commercial-products .main .group .block .left .name .price {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 24px;
    line-height: 1
  }

  .commercial-products .main .group .block .left .name .price .yen {
    font-size: 16px
  }

  .commercial-products .main .group .block .left .name .price .tax {
    font-size: 16px
  }

  .commercial-products .main .group .block .right h5 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    letter-spacing: -0.05em;
    line-height: 1.4;
    margin: 0 0 20px
  }

  .commercial-products .main .group .block .right>.desc {
    border-bottom: 1px solid #707070;
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 20px;
    min-height: 60px;
    padding: 0 0 20px
  }

  .commercial-products .main .group .block .right .seibun {
    font-size: 12px;
    line-height: 2;
    margin: 0 0 20px;
    min-height: 100px
  }

  .commercial-products .main .group .block .right .list .image {
    padding-bottom: 30px
  }

  .commercial-products .main .group .block .right .list .image img {
    width: 100%
  }

  .commercial-products .main .group .block .right .list .text {
    background-color: white;
    border: 1px solid #707070;
    padding: 12px 15px
  }

  .commercial-products .main .group .block .right .list .text h6 {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 8px
  }

  .commercial-products .main .group .block .right .list .text.text01 {
    align-items: center;
    display: flex;
    flex-wrap: wrap
  }

  .commercial-products .main .group .block .right .list .text .block01 {
    margin: auto;
    width: 100%
  }

  .commercial-products .main .group .block .right .list .text .desc {
    border-bottom: none;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
    padding: 0
  }

  .commercial-products .main .group .block .right .list.list01 {
    border: 1px solid #707070;
    background-color: white;
    display: block;
    padding: 12px 15px
  }

  .commercial-products .main .group .block .right .list.list01 dl {
    margin: 0
  }

  .commercial-products .main .group .block .right .list.list01 dl dt {
    font-size: 14px;
    padding: 0 0 10px
  }

  .commercial-products .main .group .block .right .list.list01 dl dd {
    font-size: 12px;
    padding-bottom: 15px
  }

  .commercial-products .main .group .block .right .block02 .image {
    padding-bottom: 30px
  }

  .commercial-products .main .group .block .right .block02 .image img {
    width: 100%
  }

  .commercial-products .main .group .block.block05 .list.list01 {
    padding: 12px 15px
  }

  .commercial-products .main .group .block.block05 .list.list01 dl {
    display: block;
    text-align: center
  }

  .commercial-products .main .group .block.block05 .list.list01 dl dt {
    font-size: 14px;
    font-weight: bold;
    margin: 0 auto 6px;
    width: 100%
  }

  .commercial-products .main .group .block.block05 .list.list01 dl dd {
    font-size: 12px;
    width: 100%
  }

  .copyright .main .group, .law .main .group, .privacy-policy .main .group {
    padding-bottom: 35px
  }

  .copyright .main .group h4, .law .main .group h4, .privacy-policy .main .group h4 {
    font-size: 15px;
    margin: 0 0 2.2vw
  }

  .copyright .main .group .desc, .law .main .group .desc, .privacy-policy .main .group .desc {
    font-size: 15px;
    line-height: 1.8
  }

  .main .group .block.block03 .right .list .text dl {
    margin: 0
  }

  .main .group .block.block03 .right .list .text dl dt {
    font-size: 14px;
    padding: 0 0 10px
  }

  .main .group .block.block03 .right .list .text dl dd {
    font-size: 12px;
    padding-bottom: 15px
  }
}

@media screen and (min-width:768px) {
  .home .mainimg {
    position: relative;
    width: 100%
  }

  .home .catch {
    color: #3B3B3B;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    letter-spacing: 1.2em;
    padding-bottom: 3vw;
    padding-left: 1.2em;
    text-align: center
  }

  .home .mnav {
    margin: -17px auto 7vw;
    text-align: center;
    width: fit-content
  }

  .home .mnav ul {
    display: flex;
    justify-content: center;
    margin: 0;
    padding: 0;
    width: fit-content
  }

  .home .mnav ul li {
    list-style-type: none;
    padding: 0 0.9vw
  }

  .home #concept .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin-bottom: 4vw
  }

  .home #concept .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #concept .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #concept .group01 {
    display: flex;
    justify-content: space-between;
    margin: auto auto 4vw;
    width: 74vw
  }

  .home #concept .group01 .image {
    width: 23.8%
  }

  .home #concept .group01 .text {
    width: 72%
  }

  .home #concept .group01 .text h3 {
    font-weight: 300
  }

  .home #concept .group04 {
    display: flex;
    justify-content: space-between;
    margin: auto auto 10vw;
    width: 74vw
  }

  .home #concept .group04 .left {
    width: 70%
  }

  .home #concept .group04 .right {
    width: 24%
  }

  .home #concept .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #concept .backtotop a:hover {
    text-decoration: none
  }

  .home .group05 {
    background-image: url(images/bg01@2x.png);
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 3vw;
    text-align: center
  }

  .home .group06 h2 {
    color: #A2AE9C;
    font-size: 1.8vw;
    font-size: clamp(14px, 1.8vw, 35px);
    font-weight: 300;
    letter-spacing: 0.1em;
    margin: 0 auto 2vw;
    width: 85vw
  }

  .home .group06 .image {
    text-align: center
  }

  .home .group06 .image.image01 {
    margin: 0 auto 2vw;
    width: 70vw
  }

  .home .group06 .image.image02 {
    margin: 0 auto 2.5vw;
    width: 54vw
  }

  .home .group06 .image.image03 {
    margin: 0 auto 4vw;
    width: 30vw
  }

  .home .group07 {
    padding-bottom: 1vw
  }

  .home .group07 .block {
    padding-bottom: 3.3vw;
    text-align: center
  }

  .home .group07 .block h3 {
    font-family: ten-mincho-text, serif;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    font-weight: normal;
    margin: 0 auto 0.6vw
  }

  .home .group07 .block .desc {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px)
  }

  .home .group02 {
    display: flex;
    justify-content: space-between;
    margin: auto auto 2vw;
    width: 74vw
  }

  .home .group02 .block {
    padding-bottom: 2vw;
    text-align: center;
    width: 32%
  }

  .home .group02 .block .point {
    margin: 0 auto 0.7vw
  }

  .home .group02 .block h4 {
    font-family: ten-mincho-text, serif;
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px);
    font-weight: normal;
    line-height: 1.5;
    margin: 0 auto 0.9vw
  }

  .home .group02 .block .desc {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 2
  }

  .home #movie {
    border-top: 1px solid #707070;
    padding: 6vw 0 4vw;
    text-align: center
  }

  .home #movie .block {
    margin: auto;
    width: fit-content
  }

  .home #movie .block .movie {
    margin: 0 auto 1.6vw;
    width: 30vw
  }

  .home #movie .block h3 {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    font-weight: normal;
    margin: 0;
    text-align: center
  }

  .home #products {
    background-color: #EBEAE8;
    position: relative
  }

  .home #products .header {
    color: #505050;
    margin: auto;
    text-align: center;
    padding-bottom: 7.5vw;
    padding-top: 6.5vw
  }

  .home #products .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #products .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #products .gyoumu {
    position: absolute;
    right: 0;
    top: 0
  }

  .home #products .gyoumu a {
    align-items: center;
    background-color: #B7B7B5;
    color: #fff;
    display: flex;
    height: 9vw;
    justify-content: center;
    width: 26vw
  }

  .home #products .gyoumu a .txt {
    text-align: center
  }

  .home #products .gyoumu a .txt .desc {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    letter-spacing: 0.03em;
    line-height: 1.2;
    margin: 0
  }

  .home #products .gyoumu a .txt h5 {
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.03em;
    margin: 0
  }

  .home #products .gyoumu a:hover {
    background-color: #fff;
    color: #B7B7B5;
    text-decoration: none
  }

  .home #products .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right;
    padding-bottom: 1.5vw
  }

  .home #products .backtotop a:hover {
    text-decoration: none
  }

  .home #order {
    background-color: #BFC6B9;
    color: #fff;
    margin-bottom: 2.3vw;
    padding: 5.8vw 0 4vw
  }

  .home #order .image {
    margin: 0 auto 5vw;
    text-align: center;
    width: 66vw
  }

  .home #order .order02 {
    background-color: #2BA88B;
    color: #fff;
    margin: 0;
    text-align: center
  }

  .home #order .order02 a {
    background-color: #2BA88B;
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 1.6vw
  }

  .home #contact {
    padding: 0 0 7.8vw;
    text-align: center
  }

  .home #contact .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #contact .backtotop a:hover {
    text-decoration: none
  }

  .home #contact .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin: 0 auto 4vw
  }

  .home #contact .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #contact .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #contact .header h4 {
    margin: 0 auto 2.5vw
  }

  .home #contact .header .desc {
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    letter-spacing: 0.2em
  }

  .home #contact h5 {
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px);
    font-weight: normal;
    letter-spacing: 0.3em;
    line-height: 1.4;
    margin: 0 auto 1.2vw
  }

  .home #contact .tel {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2.6vw;
    font-size: clamp(20px, 2.6vw, 50px);
    letter-spacing: 0.4em;
    margin: 0 auto 1vw
  }

  .home #contact .open {
    font-size: 1.8vw;
    font-size: clamp(14px, 1.8vw, 35px);
    letter-spacing: 0.2em;
    margin: 0 auto 2vw
  }

  .home #contact .open span {
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px);
    letter-spacing: 0.1em
  }

  .home #contact .notice {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    line-height: 1.25;
    margin: 0 auto 2vw
  }

  .home #contact .link a {
    align-items: center;
    background-color: #D5D2D2;
    color: #525252;
    display: flex;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    height: 5vw;
    justify-content: center;
    margin: 0 auto;
    width: 65vw
  }

  .home #contact .link a:hover {
    background-color: #525252;
    color: #d5d2d2;
    text-decoration: none
  }

  .home #guide .header {
    color: #505050;
    margin: auto;
    text-align: center;
    margin: 0 auto 4vw
  }

  .home #guide .header h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.4em;
    line-height: 1.2;
    margin: 0 auto
  }

  .home #guide .header h4 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em;
    margin: 0 auto
  }

  .home #guide .group {
    display: flex;
    justify-content: space-between;
    margin: auto;
    width: 50vw
  }

  .home #guide .group .left, .home #guide .group .right {
    width: 48%
  }

  .home #guide .group .left .block, .home #guide .group .right .block {
    padding-bottom: 2.5vw
  }

  .home #guide .group .left .block h5, .home #guide .group .right .block h5 {
    background-color: #A3A3A3;
    color: #fff;
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px);
    font-weight: normal;
    letter-spacing: 0.2em;
    margin: 0 auto 1.4vw;
    padding: 0.5vw 0;
    text-align: center
  }

  .home #guide .group .left .block h6, .home #guide .group .right .block h6 {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    margin: 0 0 0.8vw
  }

  .home #guide .group .left .block .desc, .home #guide .group .right .block .desc {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 2.2
  }

  .home #guide .group .left .block .notice, .home #guide .group .right .block .notice {
    background-color: #E0E0E0;
    margin-top: 1.5vw;
    padding: 1.6vw
  }

  .home #guide .group .left .block .notice h6, .home #guide .group .right .block .notice h6 {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: bold;
    margin: 0 0 1vw
  }

  .home #guide .group .left .block .notice dl, .home #guide .group .right .block .notice dl {
    display: flex;
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    margin: 0;
    padding: 0
  }

  .home #guide .group .left .block .notice dl dt, .home #guide .group .right .block .notice dl dt {
    width: 5em
  }

  .home #guide .group .left .block .notice dl dd, .home #guide .group .right .block .notice dl dd {
    width: calc(100% - 5em)
  }

  .home #guide .group .left .block .notice p, .home #guide .group .right .block .notice p {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    margin: 0;
    padding: 0
  }

  .home #guide .backtotop {
    color: #b6c4d1;
    font-family: 'ALoveofThunderRegular';
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 0 7vw 6vw;
    text-align: right
  }

  .home #guide .backtotop a:hover {
    text-decoration: none
  }

  .copyright, .law, .privacy-policy, .commercial-products {
    padding-top: 300px
  }

  .copyright .pageheader, .law .pageheader, .privacy-policy .pageheader, .commercial-products .pageheader {
    padding-bottom: 4.5vw;
    text-align: center
  }

  .copyright .pageheader h2, .law .pageheader h2, .privacy-policy .pageheader h2, .commercial-products .pageheader h2 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 2vw;
    font-size: clamp(16px, 2vw, 40px);
    font-weight: normal;
    letter-spacing: 0.1em;
    margin: 0 auto
  }

  .copyright .pageheader h3, .law .pageheader h3, .privacy-policy .pageheader h3, .commercial-products .pageheader h3 {
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    letter-spacing: 0.4em
  }

  .copyright .main, .law .main, .privacy-policy .main, .commercial-products .main {
    margin: 0 auto;
    width: 67vw
  }

  .copyright .main .backtotop, .law .main .backtotop, .privacy-policy .main .backtotop, .commercial-products .main .backtotop {
    margin: 0 auto;
    padding: 2.5vw 0 8.5vw
  }

  .copyright .main .backtotop a, .law .main .backtotop a, .privacy-policy .main .backtotop a, .commercial-products .main .backtotop a {
    border: 1px solid #707070;
    color: #505050;
    display: block;
    font-family: AppleGothic, Arial, Helvetica, sans-serif;
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px);
    font-weight: normal;
    height: 4vw;
    line-height: 4vw;
    text-align: center;
    width: 100%
  }

  .copyright .main .backtotop a:hover, .law .main .backtotop a:hover, .privacy-policy .main .backtotop a:hover, .commercial-products .main .backtotop a:hover {
    background-color: #707070;
    color: #fff;
    text-decoration: none
  }

  .commercial-products .pageheader h2 {
    letter-spacing: 0.4em
  }

  .commercial-products .main {
    width: 52vw
  }

  .commercial-products .main .group .groupheader {
    padding-bottom: 2.5vw;
    text-align: center
  }

  .commercial-products .main .group .groupheader h4 {
    font-family: Lantinghei, sans-serif;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    font-weight: 100;
    letter-spacing: 0.3em;
    margin: 0 auto
  }

  .commercial-products .main .group .groupheader h5 {
    font-family: "Utsukushi";
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    font-weight: normal;
    margin: 0 auto
  }

  .commercial-products .main .group .block {
    border-bottom: 1px solid #707070;
    display: flex;
    justify-content: space-between;
    margin: 0 0 110px;
    padding: 0 0 110px
  }

  .commercial-products .main .group .block .left {
    display: flex;
    flex-wrap: wrap;
    padding: 0 15px 0 0;
    text-align: center;
    width: 37%
  }

  .commercial-products .main .group .block .left .image {
    margin: auto auto auto;
    width: 100%
  }

  .commercial-products .main .group .block .left .name {
    margin: 1.5vw auto auto auto;
    width: 100%
  }

  .commercial-products .main .group .block .left .name h3 {
    font-family: "Utsukushi";
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    font-weight: normal;
    margin: 0 auto 12px
  }

  .commercial-products .main .group .block .left .name h4 {
    font-family: "Utsukushi";
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    font-weight: normal;
    line-height: 1;
    margin: 0 auto 15px
  }

  .commercial-products .main .group .block .left .name .size {
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    line-height: 1;
    margin: 0 auto 10px
  }

  .commercial-products .main .group .block .left .name .price {
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 1.6vw;
    font-size: clamp(12px, 1.6vw, 30px);
    line-height: 1
  }

  .commercial-products .main .group .block .left .name .price .yen {
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px)
  }

  .commercial-products .main .group .block .left .name .price .tax {
    font-size: 1vw;
    font-size: clamp(8px, 1vw, 20px)
  }

  .commercial-products .main .group .block .right {
    width: 56%
  }

  .commercial-products .main .group .block .right h5 {
    font-family: ten-mincho-text, serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.3vw;
    font-size: clamp(10px, 1.3vw, 25px);
    letter-spacing: -0.05em;
    line-height: 1.4;
    margin: 0 0 1.5vw
  }

  .commercial-products .main .group .block .right>.desc {
    border-bottom: 1px solid #707070;
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 1.6;
    margin: 0 0 1.3vw;
    min-height: 60px;
    padding: 0 0 1.3vw
  }

  .commercial-products .main .group .block .right .seibun {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    line-height: 2;
    margin: 0 0 20px;
    min-height: 100px
  }

  .commercial-products .main .group .block .right .list {
    display: flex;
    justify-content: space-between
  }

  .commercial-products .main .group .block .right .list .image {
    width: 46%
  }

  .commercial-products .main .group .block .right .list .text {
    background-color: white;
    border: 1px solid #707070;
    padding: 12px 15px;
    width: 51%
  }

  .commercial-products .main .group .block .right .list .text h6 {
    font-size: 0.88vw;
    font-size: clamp(8px, 0.88vw, 17px);
    font-weight: bold;
    margin: 0 0 8px
  }

  .commercial-products .main .group .block .right .list .text.text01 {
    align-items: center;
    display: flex;
    flex-wrap: wrap
  }

  .commercial-products .main .group .block .right .list .text .block01 {
    margin: auto;
    width: 100%
  }

  .commercial-products .main .group .block .right .list .text .desc {
    border-bottom: none;
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    line-height: 1.6;
    margin: 0;
    padding: 0
  }

  .commercial-products .main .group .block .right .list.list01 {
    border: 1px solid #707070;
    background-color: white;
    display: block;
    padding: 12px 15px
  }

  .commercial-products .main .group .block .right .list.list01 dl {
    display: flex;
    margin: 0
  }

  .commercial-products .main .group .block .right .list.list01 dl dt {
    font-size: 0.73vw;
    font-size: clamp(8px, 0.73vw, 14px);
    font-weight: normal;
    padding: 0 5px 0 0;
    width: 25%
  }

  .commercial-products .main .group .block .right .list.list01 dl dd {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    width: 75%
  }

  .commercial-products .main .group .block .right .block02 {
    display: flex;
    justify-content: space-between
  }

  .commercial-products .main .group .block .right .block02 .image {
    width: 30%
  }

  .commercial-products .main .group .block .right .block02 .seibun {
    width: 66%
  }

  .commercial-products .main .group .block.block05 .list.list01 {
    display: flex;
    padding: 30px 15px 30px
  }

  .commercial-products .main .group .block.block05 .list.list01 dl {
    display: block;
    text-align: center;
    width: 50%
  }

  .commercial-products .main .group .block.block05 .list.list01 dl dt {
    font-size: 0.88vw;
    font-size: clamp(8px, 0.88vw, 17px);
    font-weight: bold;
    margin: 0 auto 0.6vw;
    width: 100%
  }

  .commercial-products .main .group .block.block05 .list.list01 dl dd {
    font-size: 0.78vw;
    font-size: clamp(8px, 0.78vw, 15px);
    width: 100%
  }

  .copyright .main .group, .law .main .group, .privacy-policy .main .group {
    padding-bottom: 3.5vw
  }

  .copyright .main .group h4, .law .main .group h4, .privacy-policy .main .group h4 {
    font-size: 1.15vw;
    font-size: clamp(9px, 1.15vw, 22px);
    margin: 0 0 2.2vw
  }

  .copyright .main .group .desc, .law .main .group .desc, .privacy-policy .main .group .desc {
    font-size: 1.15vw;
    font-size: clamp(9px, 1.15vw, 22px);
    line-height: 1.8
  }

  .main .group .block.block03 .right .list .image {
    width: 30%
  }

  .main .group .block.block03 .right .list .text {
    width: 66%
  }

  .main .group .block.block03 .right .list .text dl {
    display: flex;
    margin: 0
  }

  .main .group .block.block03 .right .list .text dl dt {
    font-size: 0.73vw;
    font-size: clamp(8px, 0.73vw, 14px);
    padding: 0 5px 0 0;
    width: 32%
  }

  .main .group .block.block03 .right .list .text dl dd {
    font-size: 0.625vw;
    font-size: clamp(8px, 0.625vw, 12px);
    width: 68%
  }
