/** Shopify CDN: Minification failed

Line 3555:21 Expected "]" to go with "["
Line 3555:38 Unexpected "]"
Line 3569:21 Expected "]" to go with "["
Line 3569:38 Unexpected "]"
Line 3587:21 Expected "]" to go with "["
Line 3587:37 Unexpected "]"
Line 3605:21 Expected "]" to go with "["
Line 3605:37 Unexpected "]"
Line 3624:19 Expected "]" to go with "["
Line 3624:31 Unexpected "]"
... and 10 more hidden warnings

**/
.slick-slider {
  position:relative;
  display:block;
  box-sizing:border-box;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  user-select:none;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent
}

.slick-list {
  position:relative;
  overflow:hidden;
  display:block;
  margin:0;
  padding:0
}

.slick-list:focus {
  outline:none
}

.slick-list.dragging {
  cursor:pointer;
  cursor:hand
}

.slick-slider .slick-track,.slick-slider .slick-list {
  transform:translate3d(0, 0, 0)
}

.slick-track {
  position:relative;
  left:0;
  top:0;
  display:block;
  margin-left:auto;
  margin-right:auto
}

.slick-track:before,.slick-track:after {
  content:"";
  display:table
}

.slick-track:after {
  clear:both
}

.slick-loading .slick-track {
  visibility:hidden
}

.slick-slide {
  float:left;
  height:100%;
  min-height:1px;
  display:none
}

[dir=rtl] .slick-slide {
  float:right
}

.slick-slide img {
  display:block
}

.slick-slide.slick-loading img {
  display:none
}

.slick-slide.dragging img {
  pointer-events:none
}

.slick-initialized .slick-slide {
  display:block
}

.slick-loading .slick-slide {
  visibility:hidden
}

.slick-vertical .slick-slide {
  display:block;
  height:auto;
  border:1px solid transparent
}

.slick-arrow.slick-hidden {
  display:none
}

address,article,aside,figure,footer,header,hgroup,menu,nav,section {
  display:block
}

[hidden],command,datalist,menu[type=context],rp,source {
  display:none
}

* {
  box-sizing:border-box
}

h1,h2,h3,h4,h5 {
  font-weight:normal;
  margin:0;
  padding:0
}

ul,ol,dl {
  margin:0;
  padding:0;
  list-style:none;
  list-style-type:none
}

ul li,ol li,dl li {
  list-style:none;
  list-style-type:none
}

ul li::marker,ol li::marker,dl li::marker {
  display:none
}

dd {
  margin:0
}

p {
  line-height:2;
  margin:0;
  padding:0
}

table {
  border-spacing:0;
  border-collapse:collapse;
  font-size:inherit
}

table>caption {
  text-align:left
}

table th {
  text-align:left;
  margin:0;
  padding:0
}

table td {
  margin:0;
  padding:0
}

form {
  margin:0;
  padding:0
}

input,select,textarea {
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  margin:0;
  padding:0
}

img,picture {
  border:none;
  display:block;
  vertical-align:bottom;
  max-width:100%;
  height:auto;
  backface-visibility:hidden;
  image-rendering:-webkit-optimize-contrast
}

a {
  outline:none;
  text-decoration:none;
  color:#1a1a1a
}

main footer a {
  color: inherit; /* または上書きしたい別の色 */
}

pre {
  border:1px solid #bfbfbf;
  padding:5px
}

.inlineDesktop {
  display:none !important
}

@media only screen and (min-width: 901px) {
  .inlineDesktop {
  display:inline !important
}


}

.inlineMobile {
  display:inline !important
}

@media only screen and (min-width: 901px) {
  .inlineMobile {
  display:none !important
}


}

.inlineBlockDesktop {
  display:none !important
}

@media only screen and (min-width: 901px) {
  .inlineBlockDesktop {
  display:inline-block !important
}


}

.inlineBlockMobile {
  display:inline-block !important
}

@media only screen and (min-width: 901px) {
  .inlineBlockMobile {
  display:none !important
}


}

.blockDesktop {
  display:block !important
}

@media only screen and (max-width: 900px) {
  .blockDesktop {
  display:none !important
}


}

.blockMobile {
  display:none !important
}

@media only screen and (max-width: 900px) {
  .blockMobile {
  display:block !important
}


}

.flexDesktop {
  display:none !important
}

@media only screen and (min-width: 901px) {
  .flexDesktop {
  display:flex !important
}


}

.flexMobile {
  display:flex !important
}

@media only screen and (min-width: 901px) {
  .flexMobile {
  display:none !important
}
}

.rinShopCard_textLink:after,.lunaButton_icon:before,.lunaHero_scroll:after,.menHero_scroll:before,.menGlobalMenu_link.is-blank:before,.menGlobal_instagram a:before,.shopPopupBranch_title>a:after,.shopPopup_headline a:after,.shopCard_title:after,.technologyBanner_label:after,.tecPoint4_list dt.has-plus:after,.tecFunctionsCard_icon:before,.abilityBanner_label:after,.traitMenu_list>li>a.is-blank:after,.is-blank .traitBanner_link:after,.traitBanner_link:after,.challengeBanner_button a:after,.challengeAnchor_arrow:before,.aboutMode_item a:before,.productSpec_menu a div:after,.featureUse_button a:after,.featureFaqCard_trigger:before,.textLink[data-icon=arrowBlank] a:after,.textLink[data-icon=arrowBlank]>div:after,.textLink[data-icon=arrowLeft] a:before,.textLink[data-icon=arrowRight] a:after,.textLink[data-icon=arrowRight]>div:after,.paging_arrow.is-next:after,.paging_arrow.is-prev:before,.newsListCard_body p i:before,.heroThumbnailCard_icon:before,.heroIpl_button a i:after,.buttonOnline a:after,.buttonFill[data-icon=blank] a:before,.buttonFill[data-icon=cart] a:before,.buttonFill[data-icon=arrow-play] a:before,.buttonFill[data-icon=arrow-right] a:before,.bottomMenu_button[data-button=pagetop] div:after,.bottomMenu_button[data-button=instagram] div:before,.bottomMenu_button a div:after,.bannerMegumi_icon:before,.globalMenu_instagram a:after,.globalMenu_instagram a:before {
  font-family:"iconfont";
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-style:normal;
  font-feature-settings:normal;
  font-variant:normal;
  font-weight:normal;
  text-decoration:none;
  text-transform:none
}

body {
  font-family:fot-cezanne-pron,sans-serif;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.12em;
  -webkit-text-size-adjust:none
}

@keyframes fadeIn {
  0% {
  opacity:0
}

100% {
  opacity:1
}


}

@keyframes fadeOut {
  0% {
  opacity:1
}

100% {
  opacity:0
}


}

@keyframes _sideCurrent {
  0% {
  transform:scale(0) rotate(0)
}

100% {
  transform:scale(1) rotate(45deg)
}


}

@keyframes brightnessIn {
  0% {
  filter:brightness(1.7)
}

100% {
  filter:brightness(1)
}


}

[data-js=split] {
  display:flex
}

[data-js=split] em {
  font-style:normal
}

@keyframes circle {
  0% {
  stroke-dasharray:0 628
}

99.9%,to {
  stroke-dasharray:628 628
}


}

@keyframes splide-loading {
  0% {
  transform:rotateZ(0)
}

100% {
  transform:rotateZ(360deg)
}


}

.splide__track--draggable {
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  user-select:none
}

.splide__track--fade>.splide__list>.splide__slide {
  margin:0 !important
}

.splide__track--fade>.splide__list>.splide__slide {
  opacity:0;
  z-index:0
}

.splide__track--fade>.splide__list>.splide__slide.is-active {
  opacity:1;
  z-index:1
}

.splide--rtl {
  direction:rtl
}

.splide__track--ttb>.splide__list {
  display:block
}

.splide__container {
  box-sizing:border-box;
  position:relative
}

.splide__list {
  margin:0 !important;
  padding:0 !important
}

.splide__list {
  backface-visibility:hidden;
  display:flex;
  height:100%
}

.splide.is-initialized:not(.is-active) .splide__list {
  display:block
}

.splide__pagination {
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin:0;
  pointer-events:none
}

.splide__pagination li {
  display:inline-block;
  line-height:1;
  list-style-type:none;
  margin:0;
  pointer-events:auto
}

.splide:not(.is-overflow) .splide__pagination {
  display:none
}

.splide__progress__bar {
  width:0
}

.splide {
  position:relative;
  visibility:hidden
}

.splide.is-initialized,.splide.is-rendered {
  visibility:visible
}

.splide__slide {
  list-style-type:none !important
}

.splide__slide {
  backface-visibility:hidden;
  box-sizing:border-box;
  flex-shrink:0;
  margin:0;
  position:relative
}

.splide__slide img {
  vertical-align:bottom
}

.splide__spinner {
  animation:splide-loading 1s infinite linear;
  border:2px solid #999;
  border-left-color:transparent;
  border-radius:50%;
  bottom:0;
  contain:strict;
  display:inline-block;
  height:20px;
  left:0;
  margin:auto;
  position:absolute;
  right:0;
  top:0;
  width:20px
}

.splide__sr {
  border:0;
  clip:rect(0 0 0 0);
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px
}

.splide__toggle__pause {
  display:none
}

.splide__toggle.is-active .splide__toggle__play {
  display:none
}

.splide__toggle.is-active .splide__toggle__pause {
  display:inline
}

.splide__track {
  overflow:hidden;
  position:relative;
  z-index:0
}

html.lenis {
  height:auto
}

.lenis.lenis-smooth {
  scroll-behavior:auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
  -ms-scroll-chaining:none;
  overscroll-behavior:contain
}

.lenis.lenis-stopped {
  overflow:hidden
}

.lenis.lenis-scrolling iframe {
  pointer-events:none
}

@keyframes modal-video {
  from {
  opacity:0
}

to {
  opacity:1
}


}

@keyframes modal-video-inner {
  from {
  transform:translate(0, 40px)
}

to {
  transform:translate(0, 0)
}


}

.modal-video {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  z-index:1000000;
  cursor:pointer;
  opacity:1;
  animation-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1);
  animation-duration:.6s;
  animation-name:modal-video;
  transition:opacity .6s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.modal-video-close {
  opacity:0
}

.modal-video-close .modal-video-movie-wrap {
  transform:translate(0, 40px)
}

.modal-video-body {
  max-width:792px;
  width:100%;
  height:100%;
  margin:0 auto;
  display:table
}

.modal-video-inner {
  display:table-cell;
  vertical-align:middle;
  width:100%;
  height:100%
}

.modal-video-movie-wrap {
  width:100%;
  height:0;
  position:relative;
  padding-bottom:56.25%;
  animation-timing-function:cubic-bezier(0.075, 0.82, 0.165, 1);
  animation-duration:.6s;
  animation-name:modal-video-inner;
  transform:translate(0, 0);
  transition:transform .6s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.modal-video-movie-wrap iframe {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%
}

.modal-video-close-btn {
  position:absolute;
  z-index:2;
  top:-76px;
  right:0;
  overflow:hidden;
  border:none;
  background:#1a1a1a;
  cursor:pointer;
  width:122px;
  height:76px
}

@media only screen and (max-width: 900px) {
  .modal-video-close-btn {
  top:-33px;
  width:56px;
  height:34px
}


}

.modal-video-close-btn:before,.modal-video-close-btn:after {
  background-color:#fff;
  width:50%;
  height:1px;
  display:block;
  content:"";
  position:absolute;
  left:calc(50% - 31px);
  top:50%
}

@media only screen and (max-width: 900px) {
  .modal-video-close-btn:before,.modal-video-close-btn:after {
  left:calc(50% - 13px)
}


}

.modal-video-close-btn:before {
  transform:rotate(15deg)
}

.modal-video-close-btn:after {
  transform:rotate(-15deg)
}

[data-page=luna] .modal-video-close-btn {
  background-color:#917a64;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

[data-page=luna] .modal-video-close-btn:before,[data-page=luna] .modal-video-close-btn:after {
  background-color:#fff;
  width:64px;
  height:1px;
  display:block;
  content:"";
  position:absolute;
  left:calc(50% - 32px);
  top:50%
}

[data-page=luna] .modal-video-close-btn:before {
  transform:rotate(15deg);
  background-image:none
}

[data-page=luna] .modal-video-close-btn:after {
  transform:rotate(-15deg)
}

@media only screen and (min-width: 901px) {
  [data-page=luna] .modal-video-close-btn:hover {
  background-color:#725c46
}


}

.slick-slider {
  position:relative;
  display:block;
  box-sizing:border-box;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -ms-user-select:none;
  user-select:none;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent
}

.slick-list {
  position:relative;
  overflow:hidden;
  display:block;
  margin:0;
  padding:0
}

.slick-list:focus {
  outline:none
}

.slick-list.dragging {
  cursor:pointer;
  cursor:hand
}

.slick-slider .slick-track,.slick-slider .slick-list {
  transform:translate3d(0, 0, 0)
}

.slick-track {
  position:relative;
  left:0;
  top:0;
  display:block;
  margin-left:auto;
  margin-right:auto
}

.slick-track:before,.slick-track:after {
  content:"";
  display:table
}

.slick-track:after {
  clear:both
}

.slick-loading .slick-track {
  visibility:hidden
}

.slick-slide {
  float:left;
  height:100%;
  min-height:1px;
  display:none
}

[dir=rtl] .slick-slide {
  float:right
}

.slick-slide img {
  display:block
}

.slick-slide.slick-loading img {
  display:none
}

.slick-slide.dragging img {
  pointer-events:none
}

.slick-initialized .slick-slide {
  display:block
}

.slick-loading .slick-slide {
  visibility:hidden
}

.slick-vertical .slick-slide {
  display:block;
  height:auto;
  border:1px solid transparent
}

.slick-arrow.slick-hidden {
  display:none
}

.slick-loading .slick-list {
  display:none
}

@font-face {
}

.slick-prev,.slick-next {
  position:absolute;
  display:block;
  height:20px;
  width:20px;
  line-height:0px;
  font-size:0px;
  cursor:pointer;
  background:transparent;
  color:transparent;
  top:50%;
  transform:translate(0, -50%);
  padding:0;
  border:none;
  outline:none
}

.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus {
  outline:none;
  background:transparent;
  color:transparent
}

.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before {
  opacity:1
}

.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before {
  opacity:.25
}

.slick-prev:before,.slick-next:before {
  font-family:"slick";
  font-size:20px;
  line-height:1;
  color:#fff;
  opacity:.75;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale
}

.slick-prev {
  left:-25px
}

[dir=rtl] .slick-prev {
  left:auto;
  right:-25px
}

.slick-prev:before {
  content:"←"
}

[dir=rtl] .slick-prev:before {
  content:"→"
}

.slick-next {
  right:-25px
}

[dir=rtl] .slick-next {
  left:-25px;
  right:auto
}

.slick-next:before {
  content:"→"
}

[dir=rtl] .slick-next:before {
  content:"←"
}

.slick-dotted.slick-slider {
  margin-bottom:30px
}

.slick-dots {
  position:absolute;
  bottom:-25px;
  list-style:none;
  display:block;
  text-align:center;
  padding:0;
  margin:0;
  width:100%
}

.slick-dots li {
  position:relative;
  display:inline-block;
  height:20px;
  width:20px;
  margin:0 5px;
  padding:0;
  cursor:pointer
}

.slick-dots li button {
  border:0;
  background:transparent;
  display:block;
  height:20px;
  width:20px;
  outline:none;
  line-height:0px;
  font-size:0px;
  color:transparent;
  padding:5px;
  cursor:pointer
}

.slick-dots li button:hover,.slick-dots li button:focus {
  outline:none
}

.slick-dots li button:hover:before,.slick-dots li button:focus:before {
  opacity:1
}

.slick-dots li button:before {
  position:absolute;
  top:0;
  left:0;
  content:"•";
  width:20px;
  height:20px;
  font-family:"slick";
  font-size:6px;
  line-height:20px;
  text-align:center;
  color:#000;
  opacity:.25;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale
}

.slick-dots li.slick-active button:before {
  color:#000;
  opacity:.75
}

.globalMenu {
  background-color:#fff;
  position:fixed;
  width:100%;
  height:100dvh
}

.globalMenu_container {
  height:100%
}

.globalMenu_wrap {
  height:100%;
  height:100%;
  position:relative
}

@media only screen and (min-width: 901px) {
  .globalMenu_wrap {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_wrap {
  z-index:1;
  overflow:hidden;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch
}


}

.globalMenu_section {
  position:relative
}

@media only screen and (min-width: 901px) {
  .globalMenu_section:nth-child(1) {
  width:58.6805555556%;
  height:100%;
  padding:100px 0 50px;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_section:nth-child(1) {
  padding-top:80px
}


}

@media only screen and (min-width: 901px) {
  .globalMenu_section:nth-child(2) {
  background-color:#f8f8f3;
  width:41.3194444444%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_bottom {
  margin-top:50px
}


}

@media only screen and (min-width: 901px) {
  .globalMenu_copyright {
  position:absolute;
  left:13px;
  width:26px;
  top:calc(50% + 24px)
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_copyright {
  margin-top:40px;
  padding-left:9.2307692308%
}


}

.globalMenu_copyright p {
  line-height:1;
  white-space:nowrap;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .globalMenu_copyright p {
  font-size:9px;
  transform:rotate(270deg)
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_copyright p {
  font-size:11px
}


}

@media only screen and (min-width: 901px) {
  .globalMenu_sub {
  display:flex;
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_sub {
  width:50%
}


}

@media only screen and (min-width: 901px) {
  .globalMenu_sub li {
  margin-right:22px
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_sub li {
  margin-bottom:20px
}


}

.globalMenu_sub li a span {
  font-size:13px;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .globalMenu_legal {
  margin-top:20px;
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_legal {
  width:50%
}


}

@media only screen and (min-width: 901px) {
  .globalMenu_legal li {
  margin-right:20px
}


}

@media only screen and (max-width: 900px) {
  .globalMenu_legal li {
  margin-bottom:10px
}


}

.globalMenu_legal li a span {
  font-size:12px;
  letter-spacing:.12em;
  color:gray
}

.globalMenu_desktop {
  align-items:center;
  margin-top:30px
}

.globalMenu_instagram a {
  display:flex;
  align-items:center
}

.globalMenu_instagram a:before {
  content:""
}

.globalMenu_instagram a:after {
  content:""
}

.globalMenu_instagram a::before {
  font-size:16px;
  margin-right:10px
}

.globalMenu_instagram a::after {
  font-size:8px;
  margin-left:10px
}

.globalMenu_instagram a span {
  font-size:14px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.globalMenu_store {
  margin-right:22px
}

.globalMenu_store .buttonFill a {
  width:192px
}

@media only screen and (max-width: 900px) {
  .globalMenu_foot {
  display:flex;
  margin-top:50px
}


}

@media only screen and (min-width: 901px) {
  .globalMenuMain {
  padding:0 7.7% 0 13.4%
}


}

@media only screen and (max-width: 900px) {
  .globalMenuMain {
  width:82.0512820513%;
  margin-left:auto;
  margin-right:auto
}


}

.globalMenuMain_headline {
  text-transform:uppercase;
  color:gray;
  font-size:11px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.14em
}

.globalMenuMain_content {
  margin-top:28px;
  display:flex;
  flex-wrap:wrap
}

.globalMenuCard {
  margin-bottom:8px
}

@media only screen and (min-width: 901px) {
  .globalMenuCard {
  width:48.2654600302%
}

.globalMenuCard:nth-child(odd) {
  margin-right:3.4690799397%
}


}

@media only screen and (max-width: 900px) {
  .globalMenuCard {
  width:49.3%
}

.globalMenuCard:nth-child(odd) {
  margin-right:1.4%
}


}

@media only screen and (max-width: 750px) {
  .globalMenuCard {
  width:100%
}

.globalMenuCard:nth-child(odd) {
  margin-right:auto
}


}

.globalMenuCard_wrap {
  background-color:#f8f8f3
}

.globalMenuCardHead {
  display:flex;
  align-items:center;
  cursor:pointer
}

.globalMenuCardHead_image {
  width:41.7%;
  padding-right:5%
}

@media only screen and (max-width: 900px) {
  .globalMenuCardHead_image {
  width:43.75%
}


}

[data-menu-products=luna] .globalMenuCardHead_image>div {
  width:90%;
  margin-left:auto;
  margin-right:auto
}

.globalMenuCardHead_title {
  width:48.4375%
}

.globalMenuCardHead_title span {
  font-size:13px;
  letter-spacing:.12em;
  line-height:140%;
  font-family:neue-haas-grotesk-display,fot-cezanne-pron,sans-serif
}

.globalMenuCardContent {
  padding-left:40.2%;
  overflow:hidden;
  height:0
}

@media only screen and (max-width: 900px) {
  .globalMenuCardContent {
  padding-left:42.1875%
}


}

@media only screen and (max-width: 900px) {
  .globalMenuCardContent_list {
  margin-bottom:20px
}


}

.globalMenuCardContent_list li a {
  display:block;
  padding:5px
}

.globalMenuCardContent_list li a span {
  font-size:12px;
  letter-spacing:.12em;
  display:block;
  font-family:neue-haas-grotesk-display,fot-cezanne-pron,sans-serif
}

.globalMenuPhilosophy {
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  .globalMenuPhilosophy {
  display:none
}


}

.globalMenuPhilosophy_title span {
  font-size:28px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

.globalMenuPhilosophy_link {
  margin-top:10px
}

.globalMenuPhilosophy_image {
  max-width:350px;
  margin:40px auto 0
}

.globalMenuPhilosophy_logo {
  width:140px;
  margin:72px auto 0
}

.globalMenu {
  overflow:hidden;
  clip-path:inset(100% 0 0 0);
  transition:1.4s cubic-bezier(0.19, 1, 0.22, 1);
  visibility:hidden
}

[data-show=global] .globalMenu {
  clip-path:inset(0);
  visibility:visible
}

body:not([data-show=global]) .globalMenu>* {
  transition-delay:0s !important
}

.globalMenu_container {
  opacity:0;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1);
  transform:translateY(40px)
}

[data-show=global] .globalMenu_container {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 900px) {
  .globalMenu_sub li a,.globalMenu_legal li a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.globalMenu_sub li a:hover,.globalMenu_legal li a:hover {
  opacity:.56
}


}

@media only screen and (min-width: 900px) {
  .globalMenuMain_content>* a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.globalMenuMain_content>* a:hover {
  opacity:.56
}


}

@media only screen and (min-width: 900px) {
  .globalMenu_instagram a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.globalMenu_instagram a:hover {
  opacity:.56
}


}

@media only screen and (min-width: 900px) {
  .globalMenuPhilosophy a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.globalMenuPhilosophy a:hover {
  opacity:.7
}


}

[data-page="cavitation"]>.container {
  margin:0;
  position:relative
}

@media only screen and (max-width: 900px) {
  [data-page="cavitation"]>.container {
  margin:0;
  transform:none !important
}


}

body::after {
  left:0;
  top:0;
  position:fixed;
  width:100%;
  height:100%;
  display:block;
  background:#f8f8f3;
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1);
  pointer-events:none;
  content:""
}

[data-loaded="1"] body::after {
  opacity:0
}

#smooth-content {
  overflow:hidden
}

html[data-loaded="0"] * {
  transition:none !important
}

.soon {
  text-align:center;
  padding-top:100px
}

.soon img {
  display:inline-block;
  margin-bottom:50px
}

.soon h2 {
  font-size:16px;
  line-height:2
}

.svgComponent {
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
  display:none
}

.svgLoad {
  display:block;
  width:100%;
  height:auto
}

[data-accordion-state] [data-accordion-target] {
  overflow:hidden;
  height:0;
  transition:.4s cubic-bezier(0.19, 1, 0.22, 1)
}

[data-accordion-state].is-defautoOpen [data-accordion-target] {
  height:auto
}

.sideCurrent:before,[data-current-section=news] .side_list li a[rel=".featureNews"]:before,[data-current-section=spec] .side_list li a[rel=".featureSpec"]:before,[data-current-section=faq] .side_list li a[rel=".featureFaq"]:before,[data-current-section=use] .side_list li a[rel=".featureUse"]:before,[data-current-section=feature1] .side_list li a[rel=".featureMain"]:before,[data-current-section=feature2] .side_list li a[rel=".featureMain"]:before,[data-current-section=feature3] .side_list li a[rel=".featureMain"]:before {
  position:absolute;
  top:5px;
  left:-16px;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute;
  animation:_sideCurrent cubic-bezier(0.075, 0.82, 0.165, 1) 1.1s forwards
}

.side {
  background-color:#fbfbfa;
  position:fixed;
  left:0;
  top:0;
  width:27.9166666667%;
  height:100%
}

@media only screen and (max-width: 900px) {
  .side {
  display:none
}


}

.side_container {
  display:flex;
  align-items:center;
  height:100%;
  padding-left:31%;
  margin-top:-10%
}

.side_title {
  margin-bottom:65px
}

.side_title>div span {
  display:block
}

.side_title>div span.is-sub {
  font-size:13px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.side_title>div span.is-main {
  font-size:16px;
  margin-top:12px
}

.side_list {
  margin-left:-30px
}

.side_list li {
  margin-bottom:20px;
  padding-left:30px
}

.side_list li a {
  cursor:pointer;
  position:relative
}

.side_list li a span {
  font-size:14px;
  line-height:240%;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.side_button {
  position:absolute;
  width:100%;
  display:flex;
  justify-content:center;
  bottom:10%;
  left:0
}

.side_button a {
  background-color:#fff;
  border-radius:4px;
  display:flex;
  align-items:center;
  justify-content:center;
  height:30px;
  padding:0 20px
}

.side_button a span {
  font-size:13px
}

.sideTrigger {
  height:100%;
  position:fixed;
  left:-20px;
  top:0;
  display:flex;
  align-items:center;
  mix-blend-mode:difference
}

@media only screen and (max-width: 900px) {
  .sideTrigger {
  display:none
}


}

[data-show=side] .sideTrigger {
  mix-blend-mode:normal
}

.sideTrigger_content {
  cursor:pointer;
  padding:30px 0;
  width:100px;
  text-align:center
}

.sideTrigger_content p {
  font-size:12px;
  transform:rotate(270deg);
  white-space:nowrap;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.sideTrigger_content p.is-current {
  text-transform:capitalize;
  color:#fff
}

.sideTrigger_content p.is-current span {
  color:gray
}

.side {
  clip-path:inset(0 100% 0 0);
  transition:.6s cubic-bezier(0.77, 0, 0.175, 1)
}

[data-show=side] .side {
  clip-path:inset(0)
}

[data-current-section=hero] .side {
  clip-path:inset(0 100% 0 0)
}

.side_title div {
  overflow:hidden
}

.side_title div span {
  transform:translateY(100%);
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1) .3s;
  line-height:1
}

[data-show=side] .side_title div span {
  transform:translateY(0)
}

.side_list li {
  overflow:hidden
}

.side_list li a span {
  display:block;
  line-height:1;
  transform:translateY(100%);
  transition:0s cubic-bezier(0.19, 1, 0.22, 1)
}

[data-show=side] .side_list li a span {
  transform:translateY(0)
}

.side_list li a:before {
  opacity:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1s
}

[data-show=side] .side_list li a:before {
  opacity:1
}

.side_list li:nth-child(1) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 0.7s
}

.side_list li:nth-child(2) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 0.8s
}

.side_list li:nth-child(3) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.side_list li:nth-child(4) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1s
}

.side_list li:nth-child(5) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.1s
}

.side_list li:nth-child(6) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.2s
}

.side_list li:nth-child(7) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.3s
}

.side_list li:nth-child(8) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.4s
}

.side_list li:nth-child(9) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.5s
}

.side_list li:nth-child(10) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.6s
}

.side_list li:nth-child(11) a span {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.7s
}

.side_button {
  opacity:0;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s
}

[data-show=side] .side_button {
  opacity:1
}

.sideTrigger_content {
  transform:translateX(0);
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

[data-current-section=hero] .sideTrigger_content {
  transform:translateX(calc(-100% - 0px))
}

[data-show=side] .sideTrigger_content p.is-current {
  display:none
}

.sideTrigger_content p.is-close {
  display:none
}

[data-show=side] .sideTrigger_content p.is-close {
  display:block
}

.sideTrigger_content {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .sideTrigger_content:hover {
  opacity:.56
}


}

@media only screen and (min-width: 900px) {
  .side_list li a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.side_list li a:hover {
  opacity:.56
}


}

@media only screen and (min-width: 900px) {
  .side_button a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.side_button a:hover {
  opacity:.56
}


}

body::after {
  z-index:50
}

.opening {
  z-index:30
}

.trigger {
  z-index:22
}

.globalMenu {
  z-index:21
}

.banner_fix {
  z-index:19
}

.sideTrigger {
  z-index:12
}

.side {
  z-index:11
}

.pageMenu {
  z-index:10
}
/* 
.footer {
  z-index:9
} */

.traitSide {
  z-index:10
}

[data-page="cavitation"]>.container, 
[data-page="bfs-men"] .container.men,
.stella.container {
  margin:0;
  z-index:1
}

.menHeader {
  z-index:8
}

.menGlobal {
  z-index:7
}

@media only screen and (min-width: 901px) {
  .buttonOnline {
  z-index:5
}

.traitMenu {
  z-index:10000
}


}

@media only screen and (max-width: 900px) {
  .traitMenu {
  z-index:20
}

.buttonOnline {
  z-index:4
}


}

[data-section="1"] {
  z-index:8
}

[data-section="2"] {
  z-index:7
}

[data-section="3"] {
  z-index:6
}

[data-section="4"] {
  z-index:5
}

[data-section="5"] {
  z-index:4
}

[data-section="6"] {
  z-index:3
}

[data-section="7"] {
  z-index:2
}

.hero {
  z-index:1
}

.traitGhost {
  z-index:0
}

.bannerMegumi a {
  pointer-events:auto;
  display:block;
  width:240px;
  height:132px;
  padding:10px 0 0 12px;
  color:#fff;
  position:relative;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .bannerMegumi a {
  padding:6px 0 0 8px
}


}

.globalMenu .bannerMegumi a {
  border-radius:3px 0 0 0
}

@media only screen and (max-width: 900px) {
  .globalMenu .bannerMegumi a {
  border-radius:3px
}


}

.banner_fix .bannerMegumi a {
  border-radius:0 3px 0 0
}

@media only screen and (max-width: 900px) {
  .bannerMegumi a {
  width:112px;
  height:112px
}


}

.bannerMegumi_content {
  position:relative;
  z-index:1
}

.bannerMegumi_title {
  font-size:28px;
  line-height:.9285714286;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.01em;
  font-weight:bold
}

@media only screen and (max-width: 900px) {
  .bannerMegumi_title {
  font-size:20px;
  line-height:.9
}


}

.bannerMegumi_name {
  font-size:16px;
  margin-top:8px;
  letter-spacing:.01em
}

@media only screen and (max-width: 900px) {
  .bannerMegumi_name {
  font-size:14px;
  margin-top:2px
}


}

.bannerMegumi_name span {
  font-style:normal;
  font-weight:bold
}

.bannerMegumi_icon {
  width:24px;
  height:24px;
  display:grid;
  align-items:center;
  justify-items:center;
  place-items:center;
  border:1px solid #fff;
  border-radius:50%;
  position:absolute;
  z-index:2;
  right:12px;
  bottom:12px
}

.bannerMegumi_icon:before {
  content:""
}

@media only screen and (max-width: 900px) {
  .bannerMegumi_icon {
  right:8px;
  bottom:8px
}


}

.bannerMegumi_icon::before {
  font-size:8px;
  font-weight:bold
}

.bannerMegumi_video {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.bannerMegumi_video::before {
  content:"";
  display:block;
  background-color:rgba(0,0,0,.2);
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.bannerMegumi_video video {
  position:relative;
  z-index:0
}

@media only screen and (max-width: 900px) {
  .bannerMegumi_video video {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  transform:translate(-50%, -50%) scale(0.9)
}


}

.bannerMegumi_image {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  .bannerMegumi_image {
  background-image:url("/cdn/shop/files/banner_megnumi-pc.jpg?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  .bannerMegumi_image {
  background-image:url("/cdn/shop/files/banner_megnumi-sp.jpg?v=1751007037")
}


}

.globalMenu .bannerMegumi {
  position:absolute;
  right:0;
  bottom:0
}

@media only screen and (max-width: 900px) {
  .globalMenu .bannerMegumi {
  right:9.6%;
  bottom:115px
}


}

.banner_fix {
  position:fixed;
  left:0;
  bottom:0;
  pointer-events:none
}

@media only screen and (max-width: 900px) {
  [data-page=bfs] .banner_fix {
  bottom:64px
}


}

.bannerMegumi {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

.bannerMegumi_icon::before {
  transition:.8s cubic-bezier(0.075, 0.82, 0.165, 1)
}

@media only screen and (min-width: 901px) {
  .bannerMegumi a:hover .bannerMegumi_icon::before {
  transform:translateX(3px)
}


}

[data-page=home][data-current-section=hero] .bannerMegumi {
  transform:translateY(100%)
}

.bottomMenu {
  display:flex
}

.bottomMenu_button {
  width:50%
}

.bottomMenu_button a {
  height:80px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  position:relative
}

@media only screen and (max-width: 900px) {
  .bottomMenu_button a {
  height:64px
}


}

.bottomMenu_button a div {
  display:flex;
  align-items:center;
  position:relative;
  z-index:1
}

.bottomMenu_button a div:after {
  content:""
}

.bottomMenu_button a div:after {
  font-size:8px;
  color:#fff;
  margin-left:20px
}

.bottomMenu_button a span {
  color:#fff;
  font-size:14px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.bottomMenu_button[data-button=online] a {
  background-color:#1a1a1a
}

.bottomMenu_button[data-button=instagram] a {
  background-color:gray
}

.bottomMenu_button[data-button=instagram] div:before {
  content:""
}

.bottomMenu_button[data-button=instagram] div:before {
  color:#fff;
  font-size:16px;
  margin-right:10px
}

.bottomMenu_button[data-button=pagetop] a {
  background-color:gray
}

.bottomMenu_button[data-button=pagetop] div:after {
  content:""
}

.bottomMenu_button[data-button=pagetop] div:after {
  font-size:10px
}

.bottomMenu_button a:before {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

@media only screen and (min-width: 901px) {
  .bottomMenu_button a div:after {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}


}

@media only screen and (min-width: 901px) {
  .bottomMenu_button a:hover:before {
  opacity:1
}


}

@media only screen and (min-width: 901px) {
  .bottomMenu_button[data-button=online] a:hover div:after {
  transform:translateX(3px) translateY(-3px)
}


}

@media only screen and (min-width: 901px) {
  .bottomMenu_button[data-button=pagetop] a:hover div:after {
  transform:translateY(-5px)
}


}

.buttonFill a {
  display:flex;
  align-items:center;
  justify-content:center;
  height:48px;
  width:288px;
  border-radius:4px;
  position:relative;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .buttonFill a {
  width:100%
}


}

.buttonFill a span {
  font-size:14px;
  letter-spacing:.08em;
  position:relative;
  z-index:1;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  font-weight:300
}

.buttonFill[data-size="14"] a span {
  font-size:14px
}

.buttonFill[data-size="15"] a span {
  font-size:15px
}

@media only screen and (max-width: 900px) {
  .buttonFill[data-size="15"] a span {
  font-size:14px
}


}

.buttonFill[data-color=black] a {
  background-color:#1a1a1a
}

.buttonFill[data-color=black] a span {
  color:#fff
}

.buttonFill[data-color=black] a:before {
  color:#fff
}

.buttonFill[data-icon=arrow-right] a:before {
  content:""
}

.buttonFill[data-icon=arrow-right] a:before {
  font-size:10px;
  position:absolute;
  z-index:1;
  right:30px;
  top:calc(50% - 5px)
}

.buttonFill[data-icon=arrow-play] a:before {
  content:""
}

.buttonFill[data-icon=arrow-play] a:before {
  font-size:10px;
  position:absolute;
  z-index:1;
  right:30px;
  top:calc(50% - 5px);
  transform:rotate(-45deg)
}

.buttonFill[data-icon=cart] a {
  padding-right:15px
}

.buttonFill[data-icon=cart] a:before {
  content:""
}

.buttonFill[data-icon=cart] a:before {
  font-size:14px;
  position:absolute;
  z-index:1;
  right:18px;
  top:calc(50% - 7px)
}

.buttonFill[data-icon=blank] a {
  padding-right:15px
}

.buttonFill[data-icon=blank] a:before {
  content:""
}

.buttonFill[data-icon=blank] a:before {
  font-size:14px;
  position:absolute;
  z-index:1;
  right:18px;
  top:calc(50% - 7px)
}

.buttonFill a:before {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .buttonFill[data-icon=arrow-right] a:hover:before {
  transform:translateX(5px)
}


}

.buttonFill[data-color=black] a:after {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

@media only screen and (min-width: 901px) {
  .buttonFill[data-color=black] a:hover:after {
  opacity:1
}


}

.buttonOnline {
  position:fixed;
  right:12px;
  bottom:0
}

@media only screen and (max-width: 900px) {
  .buttonOnline {
  right:0
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] .buttonOnline,[data-page=bfs] .buttonOnline,[data-page=brush] .buttonOnline {
  transition-delay:0 !important;
  transition:none !important
}

[data-page=ipl] .buttonOnline,[data-page=bfs] .buttonOnline,[data-page=brush] .buttonOnline {
  bottom:64px;
  margin-bottom:calc(env(safe-area-inset-bottom) + 0px)
}


}

@media only screen and (max-width: 900px) {
  [data-page=rin] .buttonOnline {
  bottom:64px
}


}

.buttonOnline[disable] a {
  pointer-events:none
}

.buttonOnline a {
  background-color:#1a1a1a;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:4px 4px 0 0;
  width:222px;
  height:48px;
  color:#fff;
  padding-right:12px;
  cursor:pointer
}

.buttonOnline a:after {
  content:""
}

@media only screen and (max-width: 900px) {
  .buttonOnline a {
  width:154px;
  border-radius:4px 0 0 0
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  body:not([data-current-scene=hero])[data-page=ipl] .buttonOnline a,body:not([data-current-scene=hero])[data-page=bfs] .buttonOnline a,body:not([data-current-scene=hero])[data-page=brush] .buttonOnline a,body:not([data-current-section=luna-hero])[data-page=luna] .buttonOnline a,body:not([data-current-section="0"])[data-page=rin] .buttonOnline a {
  width:54px
}


}

[data-page=rin] .buttonOnline a {
  white-space:nowrap
}

[data-page=luna] .buttonOnline a {
  background-color:#917a64;
  padding-right:20px;
  white-space:nowrap
}

@media only screen and (min-width: 901px) {
  [data-page=luna] .buttonOnline a {
  width:222px
}


}

.buttonOnline a:after {
  font-size:14px;
  position:absolute;
  z-index:1;
  right:40px;
  top:calc(50% - 7px);
  transition:.7s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  [data-page=luna] .buttonOnline a:after {
  right:20px
}


}

@media only screen and (max-width: 900px) {
  .buttonOnline a:after {
  right:12px
}

body:not([data-current-scene=hero])[data-page=ipl] .buttonOnline a:after,body:not([data-current-scene=hero])[data-page=bfs] .buttonOnline a:after,body:not([data-current-scene=hero])[data-page=brush] .buttonOnline a:after,body:not([data-current-section=luna-hero])[data-page=luna] .buttonOnline a:after,body:not([data-current-section="0"])[data-page=rin] .buttonOnline a:after {
  right:19px
}


}

.buttonOnline a:before {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

[data-page=luna] .buttonOnline a:before {
  background:#b4906b
}

.buttonOnline a span {
  font-size:14px;
  position:relative;
  z-index:2;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  body:not([data-current-scene=hero])[data-page=ipl] .buttonOnline a span,body:not([data-current-scene=hero])[data-page=bfs] .buttonOnline a span,body:not([data-current-scene=hero])[data-page=brush] .buttonOnline a span,body:not([data-current-section=luna-hero])[data-page=luna] .buttonOnline a span,body:not([data-current-section="0"])[data-page=rin] .buttonOnline a span {
  display:none
}


}

.buttonOnline_title em {
  font-style:normal
}

.buttonOnline_title em.is-12 {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.buttonOnline_title em.is-14 {
  font-size:14px
}

.buttonOnline_title em.is-16 {
  font-size:16px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.buttonOnline--schedule .buttonOnline_content {
  background:linear-gradient(93deg, #98B7C8 7.28%, #6492AB 98.07%);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:4px 4px 0 0;
  width:290px;
  height:48px;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .buttonOnline--schedule .buttonOnline_content {
  border-radius:4px 0 0 0
}


}

.buttonOnline {
  transform:translateY(100%);
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 2.4s
}

[data-loaded="1"] .buttonOnline {
  transform:translateY(0)
}

.buttonOnline a {
  transition:1.2s cubic-bezier(0.075, 0.82, 0.165, 1)
}

/* [data-current-section=footer] .buttonOnline a {
  transform:translateY(100%)
} */

.buttonOnline a:before {
  border-radius:4px 4px 0 0
}

@media only screen and (min-width: 901px) {
  .buttonOnline a:hover:before {
  opacity:1
}


}

.gelBanner {
  margin-top:70px
}

.gelBanner[data-wrap="1038"] {
  max-width:1038px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .gelBanner[data-wrap="1038"] {
  padding-left:13.9583333333%;
  padding-right:13.9583333333%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .gelBanner {
  width:81.5384615385%;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .featureUse+.gelBanner {
  max-width:1440px;
  margin:0 auto;
  position:relative;
  z-index:1;
  margin-top:-4px
}

.featureUse+.gelBanner .gelBanner_container {
  padding:0 7.9166666667%
}

.featureUse+.gelBanner .gelBanner_inner {
  background-color:#f8f8f3;
  padding:0 7% 58px
}


}

.gelBanner_wrap {
  border-radius:4px;
  overflow:hidden
}

[data-theme=white] .gelBanner_wrap {
  background-color:#fff
}

[data-theme=cream] .gelBanner_wrap {
  background-color:#f8f8f3
}

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


}

@media only screen and (max-width: 900px) {
  .gelBanner_link {
  display:block;
  padding:30px 2% 50px 7.1%;
  background-repeat:no-repeat;
  background-position:right bottom;
  background-size:cover;
  background-image:url("/cdn/shop/files/banner_gel_image01-sp.jpg?v=1751003082")
}


}

@media only screen and (min-width: 901px) {
  .gelBanner_content {
  width:46.0500963391%;
  padding:31px 3% 34px
}


}

@media only screen and (max-width: 900px) {
  .gelBanner_content {
  margin-top:3px
}


}

.gelBanner_tag {
  flex-wrap:wrap;
  margin-top:72px;
  width:60%
}

.gelBanner_tag li {
  width:fit-content;
  margin:0 8px 8px 0
}

.gelBanner_tag li span {
  font-size:8px;
  letter-spacing:.12em;
  height:16px;
  border-radius:8px;
  display:block;
  display:flex;
  align-items:center;
  padding-left:10px;
  padding-right:10px;
  background-color:rgba(255,255,255,.66)
}

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


}

@media only screen and (min-width: 901px) {
  .gelBanner_body {
  width:calc(100% - 110px)
}


}

.gelBanner_body p {
  font-size:12px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .gelBanner_body p {
  color:#fff
}


}

.gelBanner_button {
  width:100px
}

@media only screen and (max-width: 900px) {
  .gelBanner_button {
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  .gelBanner_button .textLink div span::before {
  background-color:#1a1a1a
}


}

.gelBanner_feature {
  margin-top:20px;
  mix-blend-mode:multiply
}

@media only screen and (max-width: 900px) {
  .gelBanner_feature {
  display:none
}


}

.gelBanner_feature div img {
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden
}

.gelBannerHero {
  position:relative
}

@media only screen and (min-width: 901px) {
  .gelBannerHero {
  width:53.9499036609%
}


}

.gelBannerHero_image {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.gelBannerHero_image img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.gelBannerHero_image img {
  object-position:center left
}

.gelBannerHero_copy {
  font-size:32px;
  line-height:160%;
  color:#fff;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased;
  left:14.0972222222vw;
  font-size:2.2222222222vw
}

@media only screen and (max-width: 900px) {
  .gelBannerHero_copy {
  left:2.5641025641vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_copy {
  left:203px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_copy {
  font-size:8.2051282051vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_copy {
  font-size:32px
}


}

@media only screen and (min-width: 901px) {
  .gelBannerHero_copy {
  position:absolute;
  z-index:1;
  left:36.2%;
  top:24.5%
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_copy {
  font-size:32px
}


}

@media only screen and (min-width: 901px) {
  .gelBannerHero_title {
  position:absolute;
  z-index:2;
  top:73.8%;
  left:26.7361111111vw
}


}

@media only screen and (min-width: 901px)and (max-width: 900px) {
  .gelBannerHero_title {
  left:2.5641025641vw
}


}

@media only screen and (min-width: 901px)and (min-width: 1440px) {
  .gelBannerHero_title {
  left:385px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title {
  margin-top:5px;
  position:relative;
  padding-left:70px
}


}

.gelBannerHero_title::before {
  content:"";
  display:block;
  height:1px;
  background-color:#fff;
  position:absolute;
  left:-4.8611111111vw;
  top:.5555555556vw;
  width:4.0277777778vw
}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title::before {
  left:17.9487179487vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_title::before {
  left:-70px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title::before {
  top:2.0512820513vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_title::before {
  top:8px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title::before {
  width:14.8717948718vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_title::before {
  width:58px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title::before {
  left:0;
  top:7px;
  width:55px
}


}

.gelBannerHero_title span {
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.12em;
  font-size:1.0416666667vw
}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title span {
  font-size:3.8461538462vw
}


}

@media only screen and (min-width: 1440px) {
  .gelBannerHero_title span {
  font-size:15px
}


}

@media only screen and (max-width: 900px) {
  .gelBannerHero_title span {
  font-size:15px
}


}

.gelBanner {
  opacity:0
}

.gelBanner.inView {
  opacity:1;
  transition:1.5s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.headlineLv1 span {
  display:block
}

.headlineLv1 span.is-en {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.headlineLv1 span.is-ja {
  font-size:24px;
  letter-spacing:.12em;
  margin-top:24px
}

@media only screen and (max-width: 900px) {
  .headlineLv1 span.is-ja {
  font-size:20px;
  margin-top:12px
}


}

.hero {
  height:100lvh;
  position:relative;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  [data-page=botanical] .hero {
  height:calc(100lvh + 100px)
}


}

.hero[data-position=fix] {
  position:fixed;
  width:100%;
  left:0;
  top:0
}

.hero[data-position=fix].is-hidden {
  display:none
}

.hero.is-hidden {
  visibility:hidden;
  opacity:0
}

.hero_side>div {
  position:absolute;
  z-index:1;
  top:calc(50% - 92px)
}

.hero_side>div:nth-child(1) {
  left:12px;
  transform:rotate(180deg)
}

@media only screen and (max-width: 900px) {
  .hero_side>div:nth-child(1) {
  display:none
}


}

@media only screen and (min-width: 901px) {
  .hero_side>div:nth-child(2) {
  right:12px
}


}

@media only screen and (max-width: 900px) {
  .hero_side>div:nth-child(2) {
  left:16px;
  top:15px;
  width:2.9487179487vw
}


}

@media only screen and (max-width: 900px) {
  .hero_side>div img {
  width:100%;
  height:auto
}


}

.hero_logo {
  position:absolute;
  z-index:3;
  width:154px;
  height:48px;
  left:calc(50% - 77px);
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/logo_brand_white.svg?v=1751007034")
}

@media only screen and (max-width: 900px) {
  .hero_logo {
  width:128px;
  height:40px;
  left:calc(50% - 64px)
}


}

[data-page=botanical] .hero_logo {
  background-image:url("/cdn/shop/files/logo_brand_black.svg?v=1751004130")
}

[data-page=home] .hero_logo,[data-page=about] .hero_logo,[data-page=ipl] .hero_logo,[data-page=bfs] .hero_logo,[data-page=brush] .hero_logo,[data-page=cavitation] .hero_logo,[data-page=botanical] .hero_logo {
  top:24px
}

[data-page=rin] .hero_logo {
  top:24px
}

.hero_logo span {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  display:block;
  position:absolute
}

.hero_logo a {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:1;
  display:block
}

.hero_image {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.hero_image>div {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

@media only screen and (min-width: 901px) {
  [data-page=brush] .hero_image>div,[data-page=cavitation] .hero_image>div {
  top:-10%;
  height:110%
}


}

@media only screen and (max-width: 900px) {
  [data-page=brush] .hero_image>div,[data-page=cavitation] .hero_image>div {
  height:120%
}


}

@media only screen and (min-width: 901px) {
  [data-page=botanical] .hero_image>div {
  top:-10%;
  height:110%
}


}

@media only screen and (max-width: 900px) {
  [data-page=botanical] .hero_image>div {
  transform:none !important
}


}

.hero_image>div>div {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  [data-page=about] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-pc_4c0e5c35-ee50-4253-8f8f-d74f803305f7.webp?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  [data-page=about] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-sp.webp?v=1751017515")
}


}

@media only screen and (min-width: 901px) {
  [data-page=ipl] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero2023-pc.jpg?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero2023-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  [data-page=bfs] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero01-pc_1.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  [data-page=bfs] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero01-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  [data-page=brush] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-pc_3.jpg?v=1751017883")
}


}

@media only screen and (max-width: 900px) {
  [data-page=brush] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-sp_2.jpg?v=1751017880")
}


}

@media only screen and (min-width: 901px) {
  [data-page=cavitation] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-pc_1.webp?v=1754302534")
}


}

@media only screen and (max-width: 900px) {
  [data-page=cavitation] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-sp_40fdddf7-6bd7-40b4-b47d-46f5e3806511.webp?v=1765692157")
}


}

@media only screen and (min-width: 901px) {
  [data-page=botanical] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-pc_c3f54e6b-0af6-4418-8356-29f388d67b2c.jpg?v=1753958229")
}


}

@media only screen and (max-width: 900px) {
  [data-page=botanical] .hero_image>div>div {
  background-image:url("/cdn/shop/files/hero-sp_1.jpg?v=1751007037")
}


}

.hero_inner {
  text-align:center;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:2
}

@media only screen and (max-width: 900px) {
  .hero_inner {
  width:100%
}


}

.hero_inner [class*=_copy] {
  position:static;
  width:fit-content;
  margin-left:auto;
  margin-right:auto;
  transform:none
}

[data-page=rin] .hero_inner {
  margin-top:-20px
}

@media only screen and (min-width: 901px) {
  .hero_inner[\:has\(.heroCavitation\)] {
  height:274px;
  width:100%
}

.hero_inner:has(.heroCavitation) {
  height:274px;
  width:100%
}


}

@media only screen and (max-width: 900px) {
  .hero_inner[\:has\(.heroCavitation\)] {
  height:100%;
  top:0;
  left:0;
  transform:none
}

.hero_inner:has(.heroCavitation) {
  height:100%;
  top:0;
  left:0;
  transform:none
}


}

@media only screen and (min-width: 901px) {
  .hero_inner[\:has\(.heroBotanical\)] {
  width:430px;
  left:75.3%;
  top:66.6%;
  text-align:left
}

.hero_inner:has(.heroBotanical) {
  width:430px;
  left:75.3%;
  top:66.6%;
  text-align:left
}


}

@media only screen and (max-width: 900px) {
  .hero_inner[\:has\(.heroBotanical\)] {
  text-align:left;
  top:63.4%;
  left:9.2307692308%;
  transform:none;
  right:auto
}

.hero_inner:has(.heroBotanical) {
  text-align:left;
  top:63.4%;
  left:9.2307692308%;
  transform:none;
  right:auto
}


}

.hero_inner[\:has\(.heroBrush\)] {
  width:100%
}

.hero_inner:has(.heroBrush) {
  width:100%
}

@media only screen and (max-width: 900px) {
  .hero_inner[\:has\(.heroBrush\)] {
  top:18%
}

.hero_inner:has(.heroBrush) {
  top:18%
}


}

.hero_copy {
  z-index:1;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%)
}

.hero_copy span {
  font-size:64px;
  color:#fff;
  display:flex;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .hero_copy span {
  font-size:9.2307692308vw
}

[data-page=brush] .hero_copy span,[data-page=rin] .hero_copy span {
  font-size:10.2564102564vw
}


}

.hero_body {
  margin-top:40px
}

.hero_body p {
  font-size:24px;
  line-height:150%;
  color:#fff;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .hero_body p {
  font-size:16px
}


}

[data-page=rin] .hero_body p {
  font-size:32px
}

@media only screen and (max-width: 900px) {
  [data-page=rin] .hero_body p {
  font-size:24px
}


}

.hero_body p sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .hero_body p sup {
  font-size:8px
}


}

.hero_rin {
  position:absolute;
  z-index:2;
  left:calc(50% - 136px);
  bottom:14.1%;
  width:273px
}

@media only screen and (max-width: 900px) {
  .hero_rin {
  width:196px;
  left:calc(50% - 98px);
  bottom:160px
}


}

.hero_luna>div {
  width:262px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (max-width: 900px) {
  .hero_luna>div {
  width:240px
}


}

.hero_luna>div img {
  width:100%;
  height:auto
}

.hero_bodyGothic {
  margin-top:40px
}

.hero_bodyGothic p {
  font-size:16px;
  line-height:150%;
  letter-spacing:.12em;
  font-feature-settings:normal;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .hero_bodyGothic p {
  font-size:13px
}


}

.hero_slider {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.hero_attention {
  text-align:right;
  padding:20px 20px 0
}

.hero_attention p {
  font-size:10px;
  line-height:170%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .hero_attention p {
  font-size:9px
}


}

.hero_video {
  width:100%;
  height:100lvh;
  position:relative;
  overflow:hidden;
  z-index:0
}

.hero_video>div {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.hero_video>div.sp {
  display: none
}

.hero_video>div video {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  width:100vw;
  height:100vh;
  object-fit:cover;
  z-index:-1
}

.hero_side>div {
  transition:1s cubic-bezier(0.075, 0.82, 0.165, 1)
}

.hero_side>div:nth-child(1) {
  transform:translateX(calc(-100% - 12px)) rotate(180deg);
  transition-delay:2.8s
}

[data-loaded="1"] .hero_side>div:nth-child(1) {
  transform:translateX(0) rotate(180deg)
}

.hero_side>div:nth-child(2) {
  transition-delay:3s
}

@media only screen and (min-width: 901px) {
  .hero_side>div:nth-child(2) {
  transform:translateX(calc(100% + 22px))
}


}

@media only screen and (max-width: 900px) {
  .hero_side>div:nth-child(2) {
  transform:translateX(calc(100% - 42px))
}

.hero_video>div.pc {
  display: none;
}

.hero_video>div.sp {
  display: block;
}
}

[data-loaded="1"] .hero_side>div:nth-child(2) {
  transform:translateX(0)
}

.hero_image {
  overflow:hidden
}

.hero_image>div>div {
  transform:scale(1.1);
  transition:4.6s cubic-bezier(0.19, 1, 0.22, 1) .1s
}

[data-loaded="1"] .hero_image>div>div {
  transform:scale(1)
}

.hero_copy span {
  perspective:600px
}

.hero_copy span em {
  transform:rotateY(-25deg) scale(1.2);
  opacity:0;
  transition:0s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

[data-loaded="1"] .hero_copy span em {
  transform:rotateY(0deg) scale(1);
  opacity:1
}

.hero_copy span em:nth-child(1) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.4s
}

.hero_copy span em:nth-child(2) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.48s
}

.hero_copy span em:nth-child(3) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.56s
}

.hero_copy span em:nth-child(4) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.64s
}

.hero_copy span em:nth-child(5) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.72s
}

.hero_copy span em:nth-child(6) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.8s
}

.hero_copy span em:nth-child(7) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.88s
}

.hero_copy span em:nth-child(8) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 0.96s
}

.hero_copy span em:nth-child(9) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.04s
}

.hero_copy span em:nth-child(10) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.12s
}

.hero_copy span em:nth-child(11) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.2s
}

.hero_copy span em:nth-child(12) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.28s
}

.hero_copy span em:nth-child(13) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.36s
}

.hero_copy span em:nth-child(14) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.44s
}

.hero_copy span em:nth-child(15) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.52s
}

.hero_copy span em:nth-child(16) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.6s
}

.hero_copy span em:nth-child(17) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.68s
}

.hero_copy span em:nth-child(18) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.76s
}

.hero_copy span em:nth-child(19) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.84s
}

.hero_copy span em:nth-child(20) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 1.92s
}

.hero_copy span em:nth-child(21) {
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) 2s
}

.hero_logo {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.2s
}

[data-page=home] .hero_logo,[data-page=about] .hero_logo,[data-page=ipl] .hero_logo,[data-page=bfs] .hero_logo {
  transform:translateY(calc(-100% - 24px))
}

[data-loaded="1"] .hero_logo {
  transform:translateY(0)
}

.hero_body {
  transform:translateY(10px);
  opacity:0;
  transition:1.9s cubic-bezier(0.215, 0.61, 0.355, 1) 1.4s
}

[data-loaded="1"] .hero_body {
  transform:none;
  opacity:1
}

.banner_fix {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 1.6s;
  transform:translateY(100%)
}

[data-loaded="1"] .banner_fix {
  transform:none
}

.heroIpl {
  text-align:center;
  color:#fff;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  width:100%
}

.heroIpl_title {
  font-size:13px;
  letter-spacing:.12em
}

.heroIpl_copy {
  font-size:24px;
  line-height:150%;
  margin-top:30px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

.heroIpl_copy sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .heroIpl_copy sup {
  font-size:8px
}


}

.heroIpl_button {
  margin-top:40px
}

.heroIpl_button a {
  margin-top:15px;
  border-bottom:1px solid #fff;
  padding-bottom:4px;
  display:flex;
  align-items:center;
  width:fit-content;
  margin:15px auto 0;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 900px) {
  .heroIpl_button a {
  padding-bottom:2px
}


}

@media only screen and (min-width: 901px) {
  .heroIpl_button a:hover {
  opacity:.6
}


}

.heroIpl_button a i {
  background-color:#fff;
  width:10px;
  height:10px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center
}

.heroIpl_button a i:after {
  content:""
}

.heroIpl_button a i::after {
  color:gray;
  font-size:7px;
  display:block;
  transform:rotate(90deg);
  padding-left:2px
}

@media only screen and (max-width: 900px) {
  .heroIpl_button a i::after {
  font-size:7px
}


}

.heroIpl_button a span {
  display:block;
  font-size:12px;
  margin-right:8px;
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .heroIpl_button a span {
  font-size:10px;
  margin-right:5px
}


}

.heroBrush {
  position:absolute;
  width:100%;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .heroBrush {
  margin-top:-5.5%
}


}

.heroBrush_wrap {
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .heroBrush_wrap {
  max-width:calc(1210px + 10%);
  text-align:left;
  padding-left:5%
}


}

.heroBrush_label {
  font-size:16px
}

.heroBrush_headline {
  font-size:32px;
  font-weight:bold;
  line-height:140%;
  margin-top:38px;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .heroBrush_headline {
  font-size:26px;
  margin-top:5px
}


}

.heroBrush_label,.heroBrush_headline {
  transform:translateY(10px);
  opacity:0;
  transition:1.9s cubic-bezier(0.215, 0.61, 0.355, 1)
}

[data-loaded="1"] .heroBrush_label,[data-loaded="1"] .heroBrush_headline {
  transform:none;
  opacity:1
}

.heroBrush_label {
  transition-delay:1s
}

.heroBrush_headline {
  transition-delay:1.2s
}

.heroCavitation {
  position:absolute;
  width:100%
}

@media only screen and (max-width: 900px) {
  .heroCavitation {
  left:0;
  bottom:22.4%
}


}

.heroCavitation_wrap {
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .heroCavitation_wrap {
  max-width:calc(1210px + 10%);
  text-align:left;
  padding-left:5%
}


}

.heroCavitation_wrap * {
  /* color:#fff */
}

.heroCavitation_headline {
  font-size:18px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  font-weight:600;
  line-height: 1em;
}

@media only screen and (max-width: 900px) {
  .heroCavitation_headline {
  font-size:16px
}


}

.heroCavitation_main {
  font-size:52px;
  line-height:150%;
  margin-top:28px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .heroCavitation_main {
  font-size:34px;
  margin-top:11px
}


}

.heroCavitation_sub {
  font-size:20px;
  line-height:180%;
  margin-top:12px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .heroCavitation_sub {
  font-size:14px;
  margin-top:2px
}


}

@media only screen and (max-width: 900px) {
  .heroCavitation_sub br {
  /* display:none */
}


}

.heroCavitation_headline,.heroCavitation_main,.heroCavitation_sub {
  transform:translateY(20px);
  opacity:0;
  transition:1.9s cubic-bezier(0.215, 0.61, 0.355, 1)
}

[data-loaded="1"] .heroCavitation_headline,[data-loaded="1"] .heroCavitation_main,[data-loaded="1"] .heroCavitation_sub {
  transform:none;
  opacity:1
}

.heroCavitation_headline {
  transition-delay:.7s
}

.heroCavitation_main {
  transition-delay:.9s
}

.heroCavitation_sub {
  transition-delay:1.1s
}

.heroBotanical_headline {
  font-size:18px;
  line-height:120%;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .heroBotanical_headline {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .heroBotanical_body {
  margin-top:5px
}


}

.heroBotanical_body p:nth-child(1) {
  font-size:56px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .heroBotanical_body p:nth-child(1) {
  font-size:40px
}


}

.heroBotanical_body p:nth-child(2) {
  font-size:24px;
  line-height:150%;
  letter-spacing:.12em
}

@media only screen and (min-width: 901px) {
  .heroBotanical_body p:nth-child(2) {
  margin-top:5px
}


}

@media only screen and (max-width: 900px) {
  .heroBotanical_body p:nth-child(2) {
  font-size:20px
}


}

.heroBotanical_body p:nth-child(3) {
  margin-top:35px;
  font-size:18px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .heroBotanical_body p:nth-child(3) {
  font-size:16px;
  margin-top:25px
}


}

.heroBotanical_body p:nth-child(4) {
  margin-top:3px;
  font-size:13px
}

@media only screen and (max-width: 900px) {
  .heroBotanical_body p:nth-child(4) {
  font-size:12px
}


}

.heroBotanicalBalloon {
  width:180px;
  position:absolute;
  left:10.4%;
  bottom:6.8%
}

@media only screen and (max-width: 900px) {
  .heroBotanicalBalloon {
  width:116px;
  left:auto;
  right:8.1%;
  top:51.4%
}


}

.heroNotice {
  width:100%;
  height:28px;
  background-color:#f8f8f3;
  position:absolute;
  left:0;
  top:0;
  z-index:5
}

@media only screen and (max-width: 900px) {
  .heroNotice {
  height:60px;
  padding:12px 5.1282051282% 0
}


}

@media only screen and (min-width: 901px) {
  .heroNotice_wrap {
  display:flex;
  justify-content:center;
  align-items:center;
  height:100%
}


}

.heroNotice_label {
  margin-right:12px
}

@media only screen and (max-width: 900px) {
  .heroNotice_label {
  display:none
}


}

.heroNotice_title {
  height:12px;
  border-radius:6px;
  font-size:9px;
  color:#f8f8f3;
  background-color:#1a1a1a;
  white-space:nowrap;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .heroNotice_title {
  display:block;
  padding:2px 6px 0
}


}

@media only screen and (max-width: 900px) {
  .heroNotice_title {
  margin-right:5px;
  line-height:160%;
  padding:1px 6px 0
}


}

.heroNotice_body {
  font-size:11px;
  letter-spacing:.12em;
  line-height:160%
}

@media only screen and (min-width: 901px) {
  .heroNotice_body span {
  display:none
}


}

.heroSlider {
  width:100%;
  height:100%;
  position:relative;
  z-index:0
}

.heroSlider_content {
  position:relative;
  height:100%;
  overflow:hidden
}

.heroSlider_item {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:none
}

.heroSlider_item>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

.heroSlider_item>div.heroSlider_note {
  position:absolute;
  left:0;
  top:auto;
  bottom:40px;
  width:100%;
  height:auto;
  opacity:0;
  transition:.6s cubic-bezier(0.19, 1, 0.22, 1) 3s
}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div.heroSlider_note {
  bottom:70px;
  left:30px;
  width:calc(100% - 220px)
}


}

[data-loaded="1"] .heroSlider_item>div.heroSlider_note {
  opacity:1
}

.heroSlider_item>div.heroSlider_note ul {
  width:fit-content;
  margin-left:auto;
  margin-right:auto
}

.heroSlider_item>div.heroSlider_note ul li {
  font-size:10px;
  line-height:1.6;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div.heroSlider_note ul li {
  font-size:8px;
  line-height:1.3;
  text-align:justify;
  padding-left:2.5em;
  text-indent:-2.5em
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-ipl01] {
  background-image:url("/cdn/shop/files/hero_ipl01-pc.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-ipl01] {
  background-image:url("/cdn/shop/files/hero_ipl01-sp.jpg?v=1751007038")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-bfs01] {
  background-image:url("/cdn/shop/files/hero_bfs01-pc.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-bfs01] {
  background-image:url("/cdn/shop/files/hero_bfs01-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-cavitation01] {
  background-image:url("/cdn/shop/files/hero-pc_1.webp?v=1754302534")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-cavitation01] {
  background-image:url("/cdn/shop/files/hero-sp.jpg?v=1750992969")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-brush01] {
  background-image:url("/cdn/shop/files/hero_brush02-pc.webp?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-brush01] {
  background-image:url("/cdn/shop/files/hero_brush02-sp.webp?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-men-bfs01] {
  background-image:url("/cdn/shop/files/hero_men-bfs01-pc.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-men-bfs01] {
  background-image:url("/cdn/shop/files/hero_men-bfs01-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=home-luna01] {
  background-image:url("/cdn/shop/files/hero_luna01-pc.webp?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=home-luna01] {
  background-image:url("/cdn/shop/files/hero_luna01-sp.webp?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-ipl01] {
  background-image:url("/cdn/shop/files/hero01-pc_2.jpg?v=1751007041")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-ipl01] {
  background-image:url("/cdn/shop/files/hero01-sp_2.jpg?v=1751007038")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-ipl02] {
  background-image:url("/cdn/shop/files/hero02-pc_1.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-ipl02] {
  background-image:url("/cdn/shop/files/hero02-sp.jpg?v=1751007038")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-bfs01] {
  background-image:url("/cdn/shop/files/hero01-pc_1.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-bfs01] {
  background-image:url("/cdn/shop/files/hero01-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-bfs02] {
  background-image:url("/cdn/shop/files/hero01-pc_1.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-bfs02] {
  background-image:url("/cdn/shop/files/hero01-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-brush01] {
  background-image:url("/cdn/shop/files/hero01-pc_4.jpg?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-brush01] {
  background-image:url("/cdn/shop/files/hero01-sp_3.jpg?v=1751007036")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-brush02] {
  background-image:url("/cdn/shop/files/hero02-pc_2.jpg?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-brush02] {
  background-image:url("/cdn/shop/files/hero02-sp_1.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-brush03] {
  background-image:url("/cdn/shop/files/hero03-pc.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-brush03] {
  background-image:url("/cdn/shop/files/hero03-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-brush01_pro] {
  background-image:url("/cdn/shop/files/hero01_pro-pc.jpg?v=1751007038")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-brush01_pro] {
  background-image:url("/cdn/shop/files/hero01_pro-sp.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .heroSlider_item>div[data-src=trait-brush02_pro] {
  background-image:url("/cdn/shop/files/hero02_pro-pc.jpg?v=1751007037")
}


}

@media only screen and (max-width: 900px) {
  .heroSlider_item>div[data-src=trait-brush02_pro] {
  background-image:url("/cdn/shop/files/hero02_pro-sp.jpg?v=1751007037")
}


}

.heroSlider_item.is-current:not(.is-firstView) {
  display:block;
  animation:_heroSliderClip cubic-bezier(0.785, 0.135, 0.15, 0.86) 1.5s forwards
}

.heroSlider_item.is-current:not(.is-firstView)>div {
  animation:_heroSliderScale cubic-bezier(0.075, 0.82, 0.165, 1) 3.2s forwards .1s;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

.heroSlider_item.is-firstView {
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  display:block
}

.heroSlider_item.is-firstView>div {
  transform:scale(1)
}

.heroSlider_title {
  position:absolute;
  z-index:1;
  right:calc(10% + 50px);
  top:10%
}

@keyframes _heroSliderClip {
  0% {
  clip-path:polygon(150% 0, 100% 0, 100% 100%, 90% 100%)
}

100% {
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0% 100%)
}


}

@keyframes _heroSliderScale {
  0% {
  transform:scale(1.4)
}

100% {
  transform:scale(1)
}


}

.heroThumbnail {
  position:absolute;
  z-index:1;
  bottom:40px
}

@media only screen and (min-width: 901px) {
  .heroThumbnail {
  width:84%;
  left:8.1%
}


}

@media only screen and (max-width: 900px) {
  .heroThumbnail {
  bottom:32px;
  left:3.8461538462%
}


}

.heroThumbnail_wrap {
  display:flex
}

@media only screen and (max-width: 900px) {
  .heroThumbnail_wrap {
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .heroThumbnail_wrap {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

[data-current-slide="3"] .heroThumbnail_wrap,[data-current-slide="4"] .heroThumbnail_wrap {
  transform:translateX(-96.1538461538vw)
}

[data-current-slide="5"] .heroThumbnail_wrap,[data-current-slide="6"] .heroThumbnail_wrap {
  transform:translateX(-192.3076923077vw)
}


}

.heroThumbnailCard {
  position:relative
}

@media only screen and (min-width: 901px) {
  .heroThumbnailCard {
  width:19%;
  margin-right:23px
}


}

@media only screen and (max-width: 900px) {
  .heroThumbnailCard {
  width:44.1025641026vw;
  margin-right:4.1025641026vw
}


}

.heroThumbnailCard:last-child {
  margin-right:0
}

.heroThumbnailCard a {
  color:#fff;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .heroThumbnailCard a:hover {
  opacity:.6
}


}

.heroThumbnailCard_content {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-bottom:15px
}

.heroThumbnailCard_title {
  position:relative;
  white-space:nowrap
}

@media only screen and (min-width: 901px) {
  .heroThumbnailCard_title {
  width:calc(100% - 64px);
  padding-left:12px;
  padding-right:12px;
  font-size:13px;
  line-height:150%
}


}

@media only screen and (max-width: 900px) {
  .heroThumbnailCard_title {
  width:calc(100% - 54px);
  font-size:12px;
  line-height:140%;
  padding-left:10px
}


}

.heroThumbnailCard_icon {
  width:12px;
  height:12px;
  background-color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%
}

.heroThumbnailCard_icon:before {
  content:""
}

.heroThumbnailCard_icon::before {
  color:#1a1a1a;
  font-size:7px;
  margin:1px 0 0 2px
}

.heroThumbnailCard_image {
  width:52px
}

@media only screen and (max-width: 900px) {
  .heroThumbnailCard_image {
  width:45px
}


}

.heroThumbnailCard_gauge {
  position:absolute;
  left:0;
  bottom:0;
  background-color:rgba(255,255,255,.3);
  width:100%;
  height:1px
}

.heroThumbnailCard_gauge i {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-color:#fff;
  display:block
}

.heroThumbnailCard_gauge i {
  transform-origin:center left;
  animation:linear 6s;
  animation-fill-mode:forwards;
  opacity:0
}

.is-current .heroThumbnailCard_gauge i {
  opacity:1;
  animation-name:progressGauge
}

@keyframes progressGauge {
  0% {
  transform:scaleX(0)
}

100% {
  transform:scaleX(1)
}


}

.heroThumbnailCard_title {
  opacity:.7;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.is-current .heroThumbnailCard_title {
  opacity:1
}

@media only screen and (min-width: 901px) {
  .iplMen {
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .iplMen {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (min-width: 901px) {
  .iplMen_wrap {
  padding-top:120px;
  padding-bottom:120px;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .iplMen_wrap {
  padding-top:65px;
  padding-bottom:65px
}


}

@media only screen and (min-width: 901px) {
  .iplMen_gallery {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  width:54.7839506173%
}


}

.iplMen_image>div {
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .iplMen_image>div {
  border-radius:4px
}


}

.iplMen_image:nth-child(1) {
  width:64.2253521127%
}

@media only screen and (max-width: 900px) {
  .iplMen_image:nth-child(1) {
  width:82.8205128205%;
  margin-left:-42px
}

.iplMen_image:nth-child(1)>div {
  border-radius:0 4px 4px 0
}


}

@media only screen and (min-width: 901px) {
  .iplMen_image:nth-child(2) {
  width:34.3661971831%;
  margin-bottom:-68px
}


}

@media only screen and (max-width: 900px) {
  .iplMen_image:nth-child(2) {
  display:flex;
  justify-content:flex-end;
  margin-top:44px
}

.iplMen_image:nth-child(2)>div {
  width:62.5641025641%;
  border-radius:4px 0 0 4px
}


}

@media only screen and (min-width: 901px) {
  .iplMen_content {
  width:45.2160493827%;
  padding-left:10.2%;
  padding-right:7.7%
}


}

@media only screen and (max-width: 900px) {
  .iplMen_content {
  width:318px;
  margin-left:auto;
  margin-right:auto
}


}

.iplMen_inner {
  margin-top:90px
}

@media only screen and (max-width: 900px) {
  .iplMen_inner {
  margin-top:60px
}


}

.iplMen_lead {
  font-size:20px;
  letter-spacing:.18em;
  line-height:170%
}

.iplMen_body {
  margin-top:10px
}

.iplMen_body p {
  font-size:13px;
  line-height:180%;
  letter-spacing:.08em
}

.iplMen_body p sup {
  font-size:8px
}

.iplMen .moduleNote[data-border="0"] {
  margin-top:5px
}

.stella-modal {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index: 10000000000;
}

.bfs-s__stella-modal{
  z-index:2000000000;
}

.stella-modal:before {
  background-color:rgba(255,255,255,.2);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  content:"";
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:block;
  z-index:0
}

.modal_closeOverlay {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.modal_container {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center
}

.modal_close {
  position:absolute;
  right:0;
  top:0;
  width:122px;
  height:76px;
  background-color:#1a1a1a;
  display:flex;
  justify-content:center;
  align-items:center;
  cursor:pointer
}

@media only screen and (max-width: 900px) {
  .modal_close {
  width:56px;
  height:34px
}


}

.lunaModal .modal_close {
  width:81px;
  height:51px;
  background-color:#917a64;
  border-radius:0 4px 0 0
}

@media only screen and (max-width: 900px) {
  .lunaModal .modal_close {
  width:66px;
  height:42px
}


}

.lunaModal .modal_close::before {
  background:#725c46
}

.modal_close>div {
  width:50px;
  height:16px;
  position:relative;
  z-index:1
}

@media only screen and (max-width: 900px) {
  .modal_close>div {
  width:20px;
  height:8px
}


}

.lunaModal .modal_close>div {
  width:42px;
  height:16px
}

@media only screen and (max-width: 900px) {
  .lunaModal .modal_close>div {
  width:34;
  height:13px
}


}

.modal_close>div:before,.modal_close>div:after {
  background-color:#fff;
  width:100%;
  height:1px;
  display:block;
  content:"";
  position:absolute;
  left:0;
  top:50%
}

.modal_close>div:before {
  transform:rotate(15deg)
}

.modal_close>div:after {
  transform:rotate(-15deg)
}

.stella-modal {
  pointer-events:none;
  visibility:hidden
}

.stella-modal[data-modal-state=visible] {
  visibility:visible;
  pointer-events:auto
}

.stella-modal[data-modal-state=visible]:before {
  transform:scale(1, 1);
  transform-origin:center bottom
}

.stella-modal:before {
  transition-timing-function:cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition-duration:.8s;
  transition-property:transform,visibility;
  transform-origin:center top;
  will-change:transform;
  transform:scale(1, 0)
}

.modal_close:before {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

.modal_close:hover:before {
  opacity:1
}

.stella-modal[data-modal-content=mode1],.stella-modal[data-modal-content=mode2],.stella-modal[data-modal-content=mode3] {
  height:100%;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (max-width: 900px) {
  .stella-modal[data-modal-content=mode1] .modeModal,.stella-modal[data-modal-content=mode2] .modeModal,.stella-modal[data-modal-content=mode3] .modeModal {
  position:relative;
  z-index:1;
  overflow:hidden;
  height:100%;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch
}


}

.stella-modal[data-overflow=y] .modal_container {
  position:relative;
  z-index:1;
  height:100%;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch;
  display:block;
  padding-bottom:90px
}

@media only screen and (max-width: 900px) {
  .stella-modal[data-overflow=y] .modal_container {
  padding-bottom:42px
}


}

@media only screen and (min-width: 901px) {
  .newsList {
  max-width:1440px;
  margin:130px auto 0
}


}

@media only screen and (max-width: 900px) {
  .newsList {
  margin:90px auto 0;
  width:81.5384615385%
}


}

@media only screen and (min-width: 901px) {
  .newsList_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (min-width: 901px) {
  .newsList_headline {
  width:21%
}


}

@media only screen and (min-width: 901px) {
  .newsList_content {
  width:79%
}

[data-page=rin] .newsList_content {
  width:72.3%
}


}

.newsList_more {
  text-align:right
}

@media only screen and (max-width: 900px) {
  .newsList_more {
  margin-top:35px
}


}

@media only screen and (min-width: 901px) {
  .newsListCards {
  display:flex
}


}

@media only screen and (min-width: 901px) {
  .menColumn .newsListCards {
  margin-top:50px
}


}

@media only screen and (min-width: 901px) {
  .newsListCard {
  width:30%
}


}

@media only screen and (max-width: 900px) {
  .newsListCard {
  margin-top:32px
}


}

@media only screen and (min-width: 901px) {
  [data-format=top] .newsListCard {
  margin-right:5%
}

[data-format=top] .newsListCard:nth-child(3n) {
  margin-right:0
}


}

.newsListCard[data-enable="0"] a {
  pointer-events:none
}

.newsListCard a {
  display:block;
  padding-top:35px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .newsListCard a {
  padding-top:31px
}


}

.newsListCard a:before {
  content:"";
  width:8px;
  height:1px;
  background-color:#1a1a1a;
  position:absolute;
  left:0;
  top:5px;
  display:block
}

.newsListCard_body p {
  font-size:14px;
  line-height:170%
}

.newsListCard_body p i {
  margin-left:8px
}

.newsListCard_body p i:before {
  content:""
}

.newsListCard_body p i:before {
  font-size:10px;
  color:gray
}

.newsListCard_state {
  display:flex;
  align-items:center;
  margin-top:15px
}

.newsListCard_date {
  font-size:12px;
  margin-right:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.newsListCard_category span {
  padding:0 10px;
  border-radius:8px;
  display:block;
  display:flex;
  align-items:center;
  justify-content:center;
  height:16px;
  background-color:#f8f8f3;
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.newsListCards[data-format=archive] {
  display:block
}

[data-format=archive] .newsListCard {
  width:100%;
  margin-bottom:40px
}

@media only screen and (max-width: 900px) {
  [data-format=archive] .newsListCard {
  margin-bottom:30px
}


}

[data-format=archive] .newsListCard_body p {
  font-size:18px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  [data-format=archive] .newsListCard_body p {
  font-size:14px
}


}

.newsList {
  perspective:500px
}

.newsList_wrap {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-2deg) translateY(30px) scale(0.95);
  opacity:0
}

.inView .newsList_wrap {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 900px) {
  .newsListCard a {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.newsListCard a:hover {
  opacity:.56
}


}

.opening {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color:#f8f8f3;
  display:flex;
  align-items:center;
  justify-content:center
}

.loading,.loading * {
  box-sizing:border-box
}

.loading {
  height:18px;
  width:18px;
  position:relative
}

.loading:after,.loading:before {
  position:fixed;
  content:"";
  border:1px solid #1a1a1a
}

.loading:after {
  animation:spinner1 6s linear infinite;
  width:12px;
  height:12px
}

.loading:before {
  width:18px;
  height:18px;
  margin-left:-3px;
  margin-top:-3px;
  animation:spinner2 6s linear infinite
}

@keyframes spinner1 {
  from {
  transform:rotate(0deg)
}

to {
  transform:rotate(360deg)
}


}

@keyframes spinner2 {
  from {
  transform:rotate(0deg)
}

to {
  transform:rotate(-360deg)
}


}

.opening {
  clip-path:inset(0);
  transition:2.3s cubic-bezier(0.19, 1, 0.22, 1) .2s
}

[data-loaded="1"] .opening {
  clip-path:inset(100% 0 0 0)
}

.paging {
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  padding-top:45px;
  margin-top:120px;
  border-top:1px solid #1a1a1a
}

@media only screen and (max-width: 900px) {
  .paging {
  margin-top:60px;
  padding-top:25px
}


}

.paging_content {
  display:flex;
  justify-content:center
}

.paging_num {
  font-size:12px;
  margin:0 10px;
  letter-spacing:.08em;
  padding-bottom:5px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.paging_num.is-active {
  color:gray
}

.paging_num.is-active span:before {
  display:none
}

.paging_arrow {
  display:flex;
  align-items:center;
  padding-bottom:5px
}

.paging_arrow span {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.paging_arrow.is-prev {
  margin-right:40px
}

.paging_arrow.is-prev:before {
  content:""
}

@media only screen and (max-width: 900px) {
  .paging_arrow.is-prev {
  margin-right:20px
}


}

.paging_arrow.is-prev:before {
  margin-right:10px
}

.paging_arrow.is-next {
  margin-left:40px
}

.paging_arrow.is-next:after {
  content:""
}

@media only screen and (max-width: 900px) {
  .paging_arrow.is-next {
  margin-left:20px
}


}

.paging_arrow.is-next:after {
  margin-left:10px
}

.paging_arrow:before,.paging_arrow:after {
  font-size:10px;
  display:block
}

.paging_arrow.is-hidden {
  opacity:.3;
  pointer-events:none
}

.paging_arrow span,.paging_num span {
  position:relative
}

.paging_arrow span:before,.paging_arrow span:after,.paging_num span:before,.paging_num span:after {
  content:"";
  left:0;
  bottom:-6px;
  width:100%;
  height:1px;
  display:block;
  position:absolute
}

.paging_arrow span:before,.paging_num span:before {
  z-index:0;
  background-color:#ccc
}

.paging_arrow span:after,.paging_num span:after {
  z-index:1;
  background-color:#1a1a1a;
  transform:scale(0, 1);
  transform-origin:right top;
  transition:transform .7s;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)
}

.paging_arrow.is-prev span:before,.paging_arrow.is-prev span:after,.paging_arrow.is-next span:before,.paging_arrow.is-next span:after,.paging_num.is-prev span:before,.paging_num.is-prev span:after,.paging_num.is-next span:before,.paging_num.is-next span:after {
  width:calc(100% + 22px)
}

.paging_arrow.is-prev span:before,.paging_arrow.is-prev span:after,.paging_num.is-prev span:before,.paging_num.is-prev span:after {
  left:-22px
}

.paging_arrow:before,.paging_arrow:after,.paging_num:before,.paging_num:after {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .paging_arrow:hover:before,.paging_num:hover:before {
  transform:translateX(-5px)
}

.paging_arrow:hover:after,.paging_num:hover:after {
  transform:translateX(5px)
}

.paging_arrow:hover span:after,.paging_num:hover span:after {
  transform-origin:left top;
  transform:scale(1, 1)
}


}

.profileModal {
  width:624px;
  margin:0 auto;
  background-color:#fff;
  padding:96px 60px 64px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .profileModal {
  padding:96px 9.2307692308%;
  position:relative;
  z-index:1;
  overflow:hidden;
  height:100%;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch
}


}

.profileModal_top {
  display:flex;
  justify-content:space-between;
  margin-bottom:30px
}

.profileModal_name {
  margin-bottom:12px;
  font-size:24px;
  line-height:170%;
  letter-spacing:.12em
}

.profileModal_position {
  font-size:13px;
  line-height:170%;
  letter-spacing:.12em
}

.profileModal_image {
  width:140px;
  height:140px;
  border-radius:4px;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .profileModal_image {
  width:120px;
  width:120px
}


}

.profileModal_image img {
  width:100%
}

.profileModal_middle {
  position:relative;
  margin-bottom:40px;
  padding-bottom:40px
}

.profileModal_middle::after {
  position:absolute;
  left:-60px;
  right:-60px;
  bottom:0;
  border-bottom:1px dotted gray;
  content:""
}

.profileModal_middle p {
  font-size:14px;
  line-height:200%;
  letter-spacing:.12em
}

.profileModal_bottom p {
  font-size:14px;
  line-height:200%;
  letter-spacing:.12em
}

.profileModal {
  opacity:0;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1);
  transition-duration:1.8s;
  transition-delay:0s;
  transform:translateY(-40px)
}

[data-modal-state=visible] .profileModal {
  opacity:1;
  transition-delay:.5s;
  transform:translateY(0)
}

.storeModal {
  width:624px;
  margin:0 auto;
  background-color:#fff;
  padding:96px 40px;
  position:relative;
  z-index:1
}

@media only screen and (max-width: 900px) {
  .storeModal {
  padding:96px 9.2307692308%
}


}

.storeModal_note {
  font-size:14px;
  background-color:#f8f8f3;
  border-radius:8px;
  padding:10px 15px;
  margin-top:15px;
  margin-bottom:-5px;
  line-height:1.8
}

@media only screen and (max-width: 900px) {
  .storeModal_note {
  line-height:1.6;
  padding:10px 7%
}


}

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

.storeModal {
  opacity:0;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1);
  transition-duration:1.8s;
  transition-delay:0s;
  transform:translateY(-40px)
}

[data-modal-state=visible] .storeModal {
  opacity:1;
  transition-delay:.5s;
  transform:translateY(0)
}

.textLink a,.textLink>div {
  position:relative
}

.textLink a span,.textLink>div span {
  line-height:150%;
  position:relative;
  display:inline-block
}

.productHero_button .textLink a span,.productHero_button .textLink>div span {
  display:block
}

.productHero_button .textLink a span:before,.productHero_button .textLink a span:after,.productHero_button .textLink>div span:before,.productHero_button .textLink>div span:after {
  width:calc(100% + 7px)
}

.textLink a span:before,.textLink a span:after,.textLink>div span:before,.textLink>div span:after {
  content:"";
  left:0;
  bottom:-4px;
  width:100%;
  height:1px;
  display:block;
  position:absolute
}

.textLink a span:before,.textLink>div span:before {
  z-index:0;
  background-color:#ccc
}

.textLink a span:after,.textLink>div span:after {
  z-index:1;
  background-color:#1a1a1a
}

.textLink[data-theme=white] a span,.textLink[data-theme=white]>div span {
  color:#fff
}

.textLink[data-theme=white] a::after,.textLink[data-theme=white]>div::after {
  color:#fff
}

.textLink[data-theme=hero] a span,.textLink[data-theme=hero]>div span {
  color:#fff
}

.textLink[data-theme=hero] a span::before,.textLink[data-theme=hero]>div span::before {
  background-color:#ccc
}

.textLink[data-theme=hero] a span::after,.textLink[data-theme=hero]>div span::after {
  background-color:#fff
}

.textLink[data-theme=hero] a::after,.textLink[data-theme=hero]>div::after {
  color:#fff
}

.textLink[data-size="12"] a span,.textLink[data-size="12"]>div span {
  font-size:12px
}

.tecProfileCard .textLink[data-size="12"] a span,.tecProfileCard .textLink[data-size="12"]>div span {
  letter-spacing:.08em
}

.textLink[data-size="12"] a:before,.textLink[data-size="12"]>div:before {
  font-size:10px
}

.textLink[data-size="14"] a span,.textLink[data-size="14"]>div span {
  font-size:14px
}

.textLink[data-size="16"] a span,.textLink[data-size="16"]>div span {
  font-size:16px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .textLink[data-size="16"] a span,.textLink[data-size="16"]>div span {
  font-size:14px
}


}

.textLink[data-language=en] a,.textLink[data-language=en]>div {
  padding-bottom:4px
}

.textLink[data-language=en] a span,.textLink[data-language=en]>div span {
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.textLink[data-language=ja] a,.textLink[data-language=ja]>div {
  padding-bottom:8px
}

.textLink[data-icon=arrowRight] a:after,.textLink[data-icon=arrowRight]>div:after {
  content:""
}

.textLink[data-icon=arrowRight] a:after,.textLink[data-icon=arrowRight]>div:after {
  font-size:10px;
  margin-left:4px
}

.textLink[data-icon=arrowRight] a span:before,.textLink[data-icon=arrowRight] a span:after,.textLink[data-icon=arrowRight]>div span:before,.textLink[data-icon=arrowRight]>div span:after {
  width:calc(100% + 18px)
}

.textLink[data-icon=arrowLeft] a:before {
  content:""
}

.textLink[data-icon=arrowLeft] a:after {
  font-size:10px;
  margin-left:5px
}

.textLink[data-icon=arrowLeft] a span:before,.textLink[data-icon=arrowLeft] a span:after {
  width:calc(100% + 18px);
  left:-18px
}

.textLink[data-icon=arrowBlank] a,.textLink[data-icon=arrowBlank]>div {
  padding-right:10px
}

.textLink[data-icon=arrowBlank] a:after,.textLink[data-icon=arrowBlank]>div:after {
  content:""
}

.textLink[data-icon=arrowBlank] a:after,.textLink[data-icon=arrowBlank]>div:after {
  font-size:8px;
  margin-left:5px;
  position:absolute;
  right:1px;
  bottom:14px
}

.quickBeauty .textLink[data-icon=arrowBlank] a span,.quickBeauty .textLink[data-icon=arrowBlank]>div span {
  padding-right:20px
}

.quickBeauty .textLink[data-icon=arrowBlank] a::after,.quickBeauty .textLink[data-icon=arrowBlank]>div::after {
  right:11px;
  bottom:auto;
  top:5px
}

.textLink[data-icon=plus] a span,.textLink[data-icon=plus]>div span {
  padding-right:20px
}

.textLink[data-icon=plus] a::before,.textLink[data-icon=plus]>div::before {
  position:absolute;
  content:"";
  top:calc(50% - 5px);
  right:0;
  width:10px;
  height:10px;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/icon_plus.svg?v=1751007034")
}

@media only screen and (min-width: 901px) {
  .textLink[daba-format=extension] a {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .textLink[daba-format=extension] a {
  display:block
}


}

@media only screen and (min-width: 901px) {
  .textLink_head {
  margin-top:5px;
  margin-right:30px;
  width:28%
}

[data-page=rin] .textLink_head {
  margin-top:0
}


}

@media only screen and (min-width: 901px) {
  .textLink_title {
  font-size:18px;
  white-space:nowrap
}


}

@media only screen and (max-width: 900px) {
  .textLink_title {
  font-size:16px
}


}

@media only screen and (min-width: 901px) {
  .textLink_label {
  position:absolute;
  left:80px;
  top:2px
}

.textLink_label.is-rakuten {
  left:80px;
  top:2px
}

.textLink_label.is-qoo10 {
  left:65px;
  top:2px
}

.textLink_label.is-yahoo {
  left:100px;
  bottom:2px;
  top:auto
}


}

@media only screen and (max-width: 900px) {
  .textLink_title+.textLink_label {
  position:absolute;
  left:100px;
  top:-2px
}


}

@media only screen and (min-width: 901px) {
  .textLink_label br {
  display:none
}


}

@media only screen and (min-width: 901px) {
  [daba-format=extension] .textLink_label {
  position:static;
  margin-top:5px
}


}

.textLink_label em {
  background-color:#1a1a1a;
  font-size:11px;
  color:#f8f8f3;
  padding:4px 5px 5px;
  height:20px;
  line-height:1;
  white-space:nowrap;
  display:block;
  width:fit-content;
  font-style:normal;
  letter-spacing:0;
  font-weight:bold
}

@media only screen and (min-width: 901px) {
  .textLink_body {
  width:67%
}


}

.textLink_body p {
  font-size:13px;
  line-height:170%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .textLink_body p {
  font-size:12px;
  margin-top:10px
}


}

.textLink_body p sup {
  font-size:70%
}

.textLink a,.textLink>div {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

.textLink a:after,.textLink a:before,.textLink>div:after,.textLink>div:before {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1);
  display:inline-block
}

.textLink a span:after,.textLink>div span:after {
  transform:scale(0, 1);
  transform-origin:right top;
  transition:transform .7s;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .textLink a:hover span:after,.textLink>div:hover span:after {
  transform-origin:left top;
  transform:scale(1, 1)
}


}

@media only screen and (min-width: 901px) {
  .textLink[data-icon=arrowRight] a:hover:after,.textLink[data-icon=arrowRight]>div:hover:after {
  transform:translateX(5px)
}


}

@media only screen and (min-width: 901px) {
  .textLink[data-icon=arrowLeft] a:hover:before {
  transform:translateX(-5px)
}


}

@media only screen and (min-width: 901px) {
  .textLink[data-icon=arrowBlank] a:hover:after {
  transform:translateX(3px) translateY(-3px)
}


}

.textLink[daba-format=extension] {
  position:relative
}

.textLink[daba-format=extension]:before,.textLink[daba-format=extension]:after {
  content:"";
  left:0;
  bottom:-3px;
  width:calc(100% + 0px);
  height:1px;
  display:block;
  position:absolute
}

.textLink[daba-format=extension]:before {
  z-index:0;
  background-color:#ccc
}

.textLink[daba-format=extension]:after {
  z-index:1;
  background-color:#1a1a1a;
  transform:scale(0, 1);
  transform-origin:right top;
  transition:transform .7s;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .textLink[daba-format=extension]:hover:after {
  transform-origin:left top;
  transform:scale(1, 1)
}


}

@media only screen and (min-width: 901px) {
  a[\:has\(.textLink\)]:hover .textLink[data-icon=arrowRight] a:after,a[\:has\(.textLink\)]:hover .textLink[data-icon=arrowRight]>div:after {
  transform:translateX(5px)
}

a:has(.textLink):hover .textLink[data-icon=arrowRight] a:after,a:has(.textLink):hover .textLink[data-icon=arrowRight]>div:after {
  transform:translateX(5px)
}

a[\:has\(.textLink\)]:hover .textLink span:after {
  transform-origin:left top;
  transform:scale(1, 1)
}

a:has(.textLink):hover .textLink span:after {
  transform-origin:left top;
  transform:scale(1, 1)
}


}

.trigger {
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  position:fixed;
  right:0;
  top:0;
  pointer-events:auto;
  width:122px;
  height:76px
}

[data-show=global] .trigger {
  background-color:#1a1a1a
}

[data-show=global] .trigger:before {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

@media only screen and (max-width: 900px) {
  .trigger {
  width:68px;
  height:72px
}


}

.trigger_inner {
  position:relative;
  z-index:1;
  width:44px;
  height:6px;
  transition:all .4s;
  box-sizing:border-box
}

@media only screen and (max-width: 900px) {
  .trigger_inner {
  width:36px
}


}

.trigger_inner span {
  display:block;
  transition:all .4s;
  box-sizing:border-box;
  position:absolute;
  width:100%;
  height:1px;
  left:0;
  background-color:gray
}

[data-show=global] .trigger_inner span {
  background-color:#fff
}

.trigger_inner span:nth-child(1) {
  top:0;
  animation:closeTrigger1 cubic-bezier(0.445, 0.05, 0.55, 0.95) .6s forwards
}

.trigger_inner span:nth-child(2) {
  bottom:0;
  animation:closeTrigger2 cubic-bezier(0.445, 0.05, 0.55, 0.95) .6s forwards
}

[data-show=global] .trigger_inner span:nth-child(1) {
  animation:openTrigger1 cubic-bezier(0.445, 0.05, 0.55, 0.95) .6s forwards;
  top:-7px
}

@media only screen and (max-width: 900px) {
  [data-show=global] .trigger_inner span:nth-child(1) {
  top:-7px
}


}

[data-show=global] .trigger_inner span:nth-child(2) {
  animation:openTrigger2 cubic-bezier(0.445, 0.05, 0.55, 0.95) .6s forwards;
  bottom:-7px
}

@media only screen and (max-width: 900px) {
  [data-show=global] .trigger_inner span:nth-child(2) {
  bottom:-7px
}


}

@keyframes closeTrigger1 {
  0% {
  transform:translateY(10px) rotate(15deg)
}

50% {
  transform:translateY(10px) rotate(0)
}

100% {
  transform:translateY(0) rotate(0)
}


}

@keyframes closeTrigger2 {
  0% {
  transform:translateY(-10px) rotate(-15deg)
}

50% {
  transform:translateY(-10px) rotate(0)
}

100% {
  transform:translateY(0) rotate(0)
}


}

@keyframes openTrigger1 {
  0% {
  transform:translateY(0) rotate(0)
}

50% {
  transform:translateY(10px) rotate(0)
}

100% {
  transform:translateY(10px) rotate(15deg) skewX(15.6deg)
}


}

@keyframes openTrigger2 {
  0% {
  transform:translateY(0) rotate(0)
}

50% {
  transform:translateY(-10px) rotate(0)
}

100% {
  transform:translateY(-10px) rotate(-15deg) skewX(-15.6deg)
}


}

@keyframes hover-bar {
  0% {
  transform:scaleX(1);
  transform-origin:right center
}

50% {
  transform:scaleX(0);
  transform-origin:right center
}

50.1% {
  transform:scaleX(0);
  transform-origin:left center
}

100% {
  transform:scaleX(1);
  transform-origin:left center
}


}

.trigger {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.trigger_inner {
  transform:translateY(calc(-100% - 40px));
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1) 2.3s
}

[data-loaded="1"] .trigger_inner {
  transform:translateY(0)
}

.trigger:before {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .trigger:hover:before {
  opacity:1
}


}

.trigger_inner {
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .trigger:hover .trigger_inner {
  transform:scaleX(0.7)
}

[data-show=global] .trigger:hover .trigger_inner {
  transform:scaleX(1)
}

.trigger:hover .trigger_inner span {
  transition-delay:0 !important
}


}

.voice {
  max-width:1440px;
  margin:120px auto 0;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .voice {
  margin:80px auto 0
}


}

.voice_wrap {
  padding:0 7.9166666667%
}

@media only screen and (max-width: 900px) {
  .voice_wrap {
  padding:0 9.2307692308%
}


}

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

.voice_headline::before {
  width:20px;
  height:20px;
  padding-right:16px;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:contain;
  background-image:url("/cdn/shop/files/icon_ig.png?v=1751007036");
  content:""
}

@media only screen and (max-width: 900px) {
  .voice_headline::before {
  width:16px;
  height:16px;
  padding-right:12px
}


}

.voice_headline span {
  font-size:24px;
  letter-spacing:.12em;
  line-height:170%;
  display:block
}

@media only screen and (max-width: 900px) {
  .voice_headline span {
  font-size:20px
}


}

@media only screen and (max-width: 900px) {
  .voice_content {
  width:101.2vw;
  margin-left:-9.8vw
}


}

.voice .ecbn-selection-header,.voice .ecbn-selection-header2,.voice .ecbn-selection-title {
  display:none
}

.voice .ecbn-selection-slide-wrapper {
  margin-top:38px !important
}

@media only screen and (max-width: 900px) {
  .voice .ecbn-selection-slide-wrapper {
  margin-top:32px !important
}


}

.voice .ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a {
  z-index:2 !important
}

@media(max-width: 720px) {
  .voice .ecbn-selection-wrapper li {
  width:150px
}

.voice .ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-next,.voice .ecbn-selection-wrapper .ecbn-selection-slider-controls-direction a.ecbn-selection-slider-prev {
  top:50% !important
}


}

.wysiwyg>* {
  margin-top:30px
}

.wysiwyg h2 {
  font-size:28px;
  font-weight:500;
  line-height:1.5
}

.wysiwyg h3 {
  font-size:20px;
  font-weight:500;
  line-height:1.5
}

.wysiwyg h4 {
  font-size:16px;
  font-weight:500;
  line-height:1.75
}

.wysiwyg p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .wysiwyg p {
  font-size:15px
}


}

.wysiwyg p a {
  text-decoration:underline;
  color:gray;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .wysiwyg p a:hover {
  opacity:.56
}


}

.wysiwyg ul li {
  font-size:16px;
  line-height:2;
  margin-top:15px;
  padding-left:22px;
  position:relative
}

.wysiwyg ul li:before {
  content:"";
  display:block;
  width:6px;
  height:6px;
  background-color:#1a1a1a;
  border-radius:50%;
  position:absolute;
  left:0;
  top:14px
}

.wysiwyg ul li:first-child {
  margin-top:0
}

.wysiwyg ol {
  counter-reset:count 0
}

.wysiwyg ol li {
  font-size:16px;
  line-height:2;
  margin-top:15px;
  padding-left:22px;
  position:relative
}

.wysiwyg ol li:before {
  display:block;
  position:absolute;
  left:0;
  top:0;
  content:counter(count) ". ";
  counter-increment:count 1
}

.wysiwyg ol li:first-child {
  margin-top:0
}

.wysiwyg blockquote {
  position:relative;
  border:1px solid gray;
  padding:35px 40px
}

.wysiwyg blockquote:before,.wysiwyg blockquote:after {
  position:absolute;
  background-color:#fff;
  display:block;
  font-size:20px;
  padding:0 5px
}

.wysiwyg blockquote:before {
  top:-10px;
  left:20px
}

.wysiwyg blockquote:after {
  right:20px;
  bottom:-10px;
  transform:rotate(180deg)
}

.wysiwyg blockquote p {
  font-size:16px;
  line-height:2
}

.featureApproach {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .featureApproach {
  margin:0 auto 80px
}


}

@media only screen and (max-width: 900px) {
  .featureApproach {
  margin:0 auto 60px
}


}

@media only screen and (min-width: 901px) {
  .featureApproach_wrap {
  padding:0 7.9166666667%
}


}

.featureApproach_image {
  width:100%
}

.featureApproach_image>div {
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureApproach_image>div {
  border-radius:4px
}


}

.featureApproach_image img,.featureApproach_image video {
  width:100%
}

.featureApproach_method {
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center
}

@media only screen and (min-width: 901px) {
  .featureApproach_method {
  margin:-86px auto 48px;
  width:616px
}


}

@media only screen and (max-width: 900px) {
  .featureApproach_method {
  margin:-40px auto 32px;
  width:326px
}


}

.featureApproach_circle {
  text-align:center;
  background:#f8f8f3;
  border-radius:50%
}

@media only screen and (min-width: 901px) {
  .featureApproach_circle {
  padding-top:48px;
  width:280px;
  height:280px
}


}

@media only screen and (max-width: 900px) {
  .featureApproach_circle {
  padding-top:30px;
  width:140px;
  height:140px
}


}

.featureApproach_label {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .featureApproach_label {
  margin-bottom:45px
}


}

@media only screen and (max-width: 900px) {
  .featureApproach_label {
  margin-bottom:8px;
  font-size:9px
}


}

.featureApproach_name p {
  line-height:170%;
  font-size:36px
}

@media only screen and (max-width: 900px) {
  .featureApproach_name p {
  line-height:150%;
  font-size:22px
}


}

.featureApproach_name p span {
  font-size:32px
}

@media only screen and (max-width: 900px) {
  .featureApproach_name p span {
  font-size:20px
}


}

.featureApproach_line {
  border:dotted 1px #1a1a1a
}

@media only screen and (min-width: 901px) {
  .featureApproach_line {
  width:32px
}


}

@media only screen and (max-width: 900px) {
  .featureApproach_line {
  width:18px
}


}

.featureApproach_text {
  text-align:center
}

.featureApproach_text p {
  display:inline-block;
  line-height:180%;
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureApproach_text p {
  padding:0 9.2307692308%;
  font-size:16px;
  text-align:left
}


}

.featureApproach_image>div {
  perspective:800px;
  transition:2.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  display:block;
  transform:scale(1.1)
}

.inView .featureApproach_image>div {
  opacity:1;
  transform:none
}

.featureApproach_content {
  perspective:600px
}

.featureApproach_inner>* {
  opacity:0;
  transform:rotateX(-5deg) translateY(30px) scale(0.92);
  transform-origin:center center;
  transition:0s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

.inView .featureApproach_inner>* {
  opacity:1;
  transform:none
}

.featureApproach_inner>*:nth-child(1) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.5s
}

.featureApproach_inner>*:nth-child(2) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.58s
}

.featureApproach_inner>*:nth-child(3) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.66s
}

.featureApproach_inner>*:nth-child(4) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.74s
}

.featureApproach_inner>*:nth-child(5) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.82s
}

.featureApproach_inner>*:nth-child(6) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.featureApproach_inner>*:nth-child(7) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.98s
}

.featureApproach_inner>*:nth-child(8) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.06s
}

.featureApproach_inner>*:nth-child(9) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.14s
}

.featureApproach_inner>*:nth-child(10) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.22s
}

.featureApproach_inner>*:nth-child(11) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.3s
}

@media only screen and (min-width: 901px) {
  .featureArticle {
  margin:80px auto;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .featureArticle {
  margin:40px auto
}


}

@media only screen and (max-width: 900px) {
  .featureArticle .is-wrapMobile {
  padding-left:5.5865921788%;
  padding-right:5.5865921788%
}


}

.featureArticle_wrap {
  padding:0 5.5555555556%
}

@media only screen and (max-width: 900px) {
  .featureArticle_wrap {
  padding:0 4.1025641026%
}


}

.featureArticle_content {
  background-color:#f8f8f3;
  padding:60px 4.8% 50px
}

@media only screen and (max-width: 900px) {
  .featureArticle_content {
  padding:40px 0 36px
}


}

@media only screen and (min-width: 901px) {
  .featureArticle_column {
  display:flex
}


}

@media only screen and (min-width: 901px) {
  .featureArticle_body {
  width:41%
}


}

@media only screen and (max-width: 900px) {
  .featureArticle_body {
  padding-left:26px
}


}

.featureArticle_note {
  margin-top:10px
}

.featureArticle_note p {
  font-size:16px;
  color:gray;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .featureArticle_note p {
  font-size:12px
}


}

.featureArticle_wrap {
  position:relative
}

.featureArticle_title {
  position:relative;
  margin-top:20px
}

.featureArticle_title:before {
  left:-25px;
  top:18px;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute;
  box-sizing: content-box;
}

@media only screen and (max-width: 900px) {
  .featureArticle_title:before {
  top:13px
}


}

.featureArticle_title span {
  font-size:24px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureArticle_title span {
  font-size:18px
}


}

@media only screen and (min-width: 901px) {
  .featureArticle_graph {
  width:58.8%;
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  .featureArticle_graph {
  margin-top:30px
}


}

.featureArticle_bar {
  background-color:#1a1a1a;
  border-radius:7px;
  height:44px
}

@media only screen and (max-width: 900px) {
  .featureArticle_bar {
  height:28px;
  border-radius:4px
}


}

.featureArticle_label {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.featureArticle {
  perspective:600px
}

.featureArticle_hidden {
  overflow:hidden
}

.featureArticle_wrap {
  margin:0 auto
}

.featureArticle_content {
  border-radius:7px 7px 0 0;
  position:relative
}

.featureArticle_label {
  top:60px;
  left:10%
}

.featureArticle_bar {
  border-radius:7px;
  margin-left:auto;
  margin-right:auto
}

.featureArticle.inView .featureArticle_label {
  top:60px;
  left:10%;
  color:#1a1a1a
}

.featureArticle.inView .featureArticle_bar {
  border-radius:0 0 7px 7px;
  width:100%
}

.featureArticle_wrap {
  opacity:0;
  transform:rotateX(-5deg) translateY(30px) scale(0.92);
  transform-origin:center center;
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

.inView .featureArticle_wrap {
  opacity:1;
  transform:none
}

.featureArticleCaption {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleCaption {
  width:44.4%;
  margin-top:-20px;
  margin-left:15%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption {
  margin-top:28px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_image {
  display:flex;
  justify-content:flex-end
}


}

.featureArticleCaption_image>div {
  border-radius:4px;
  overflow:hidden
}

[data-article=continuous] .featureArticleCaption_image>div {
  width:540px
}

@media only screen and (max-width: 900px) {
  [data-article=continuous] .featureArticleCaption_image>div {
  width:73.8461538462vw
}


}

[data-article=modes] .featureArticleCaption_image>div {
  width:372px
}

@media only screen and (max-width: 900px) {
  [data-article=modes] .featureArticleCaption_image>div {
  width:65.1282051282vw
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_image>div {
  width:87.6%;
  border-radius:4px 0 0 4px
}


}

.featureArticleCaption_image>div img {
  max-width:none;
  width:100%;
  height:auto
}

@media only screen and (min-width: 901px) {
  .featureArticleCaption_number {
  position:absolute;
  left:30px;
  top:29px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_number {
  margin-bottom:15px
}


}

.featureArticleCaption_number span {
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  width:34px;
  height:18px;
  border:1px solid #1a1a1a;
  border-radius:9px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .featureArticleCaption_content {
  position:absolute
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_content {
  margin-top:10px
}


}

.featureArticleCaption_content>div {
  background-color:#fff;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .featureArticleCaption_content>div {
  padding:26px 32px;
  width:372px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_content>div {
  padding:25px 24px 20px
}


}

.featureArticleCaption_content[data-position=continuous01] {
  left:-65.3%;
  top:50%
}

.featureArticleCaption_content[data-position=modes01] {
  left:-81.9%;
  top:16.2%
}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_content[data-position=modes01] {
  padding-right:15.7%;
  margin-top:-40px
}


}

@media only screen and (min-width: 901px) {
  .featureArticleCaption_content[data-position=modes01]>div {
  padding-left:85px
}


}

.featureArticleCaption_content[data-position=modes02] {
  left:-65.2%;
  top:52.4%
}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_content[data-position=modes02] {
  padding-left:15.7%;
  margin-top:0
}


}

@media only screen and (min-width: 901px) {
  .featureArticleCaption_content[data-position=modes02]>div {
  padding-left:85px
}


}

.featureArticleCaption_title span {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureArticleCaption_title span {
  font-size:18px
}


}

.featureArticleCaption_body {
  margin-top:20px
}

.featureArticleCaption_body p {
  font-size:14px;
  line-height:170%
}

.featureArticleCaption_body p span {
  font-size:12px
}

.featureArticleCaption_image {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) .2s
}

.inView .featureArticleCaption_image {
  transform:none
}

.featureArticleCaption_content {
  transition:1.6s cubic-bezier(0.19, 1, 0.22, 1)
}

.inView .featureArticleCaption_content {
  transform:none;
  opacity:1
}

.featureArticleCaption_content:nth-child(1) {
  transition-delay:.6s
}

.featureArticleCaption_content:nth-child(2) {
  transition-delay:.7s
}

.featureArticleCaption_content:nth-child(3) {
  transition-delay:.8s
}

@media only screen and (min-width: 901px) {
  .featureArticleIllust {
  width:73.2%;
  margin-right:5%;
  margin-top:-20px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleIllust {
  margin-top:30px
}


}

.featureArticleIllust_image img {
  width:100%;
  height:auto
}

.featureArticleIllust {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) .2s
}

.inView .featureArticleIllust {
  transform:translateY(0)
}

.featureArticleDetail {
  border-top:1px dotted gray;
  padding-top:20px;
  margin-top:40px
}

@media only screen and (min-width: 901px) {
  .featureArticleDetail {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between
}


}

.featureArticleDetail dt {
  font-size:14px;
  line-height:180%;
  position:relative;
  padding-left:28px
}

@media only screen and (min-width: 901px) {
  .featureArticleDetail dt {
  width:40%
}


}

.featureArticleDetail dt:before {
  position:absolute;
  left:5px;
  top:10px;
  content:"";
  width:4px;
  height:4px;
  background-color:#1a1a1a;
  display:block;
  border-radius:50%
}

.featureArticleDetail dd {
  font-size:12px;
  line-height:180%
}

@media only screen and (min-width: 901px) {
  .featureArticleDetail dd {
  width:53%
}


}

.featureArticleDetail[data-layout=column] dt,.featureArticleDetail[data-layout=column] dd {
  width:100%
}

.featureArticleDetail[data-layout=column] dd {
  padding-left:28px
}

.featureArticlePoint {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticlePoint {
  margin-top:35px;
  width:71.6%;
  height:300px
}


}

@media only screen and (max-width: 900px) {
  .featureArticlePoint {
  height:82.0512820513vw;
  margin-top:30px
}


}

.featureArticlePoint>* {
  position:absolute;
  width:22.3%
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>* {
  width:35.3%
}


}

.featureArticlePoint>*:nth-child(1) {
  top:4%;
  left:0;
  animation-delay:0s
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>*:nth-child(1) {
  top:4%;
  left:1%
}


}

.featureArticlePoint>*:nth-child(2) {
  top:43%;
  left:22.2%;
  animation-delay:.3s
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>*:nth-child(2) {
  top:56%;
  left:1.4%
}


}

.featureArticlePoint>*:nth-child(3) {
  top:-6.6%;
  left:38.5%;
  animation-delay:.6s
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>*:nth-child(3) {
  top:30.4%;
  left:33.5%
}


}

.featureArticlePoint>*:nth-child(4) {
  top:44.4%;
  left:54.9%;
  animation-delay:.9s
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>*:nth-child(4) {
  top:60.4%;
  left:61.9%
}


}

.featureArticlePoint>*:nth-child(5) {
  left:77.1%;
  top:10%;
  animation-delay:1.2s
}

@media only screen and (max-width: 900px) {
  .featureArticlePoint>*:nth-child(5) {
  left:66.1%;
  top:5%
}


}

.featureArticlePoint>* {
  animation-name:_floating;
  animation-timing-function:ease-in-out;
  animation-iteration-count:infinite;
  animation-duration:4s
}

@keyframes _floating {
  0% {
  transform:translateY(0)
}

50% {
  transform:translateY(-20px)
}

100% {
  transform:translateY(0)
}


}

@media only screen and (min-width: 901px) {
  .featureArticleCompare {
  padding-left:9.9%;
  margin-top:60px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCompare {
  overflow-x:scroll;
  padding:0 6% 5px 6%;
  -webkit-overflow-scrolling:touch
}


}

@media only screen and (max-width: 900px) {
  .featureArticleCompare>div {
  width:800px;
  white-space:nowrap
}


}

.featureArticleMuscles {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleMuscles {
  margin-right:7.7586206897%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles {
  padding-left:26px
}


}

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


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_column {
  padding-left:5.5865921788%;
  padding-right:5.5865921788%
}


}

@media only screen and (min-width: 901px) {
  .featureArticleMuscles_text {
  padding-top:24px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_text {
  margin-bottom:28px;
  padding-top:16px;
  font-size:14px
}


}

.featureArticleMuscles_text p {
  font-size:20px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_text p {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .featureArticleMuscles_illust {
  display:flex;
  justify-content:space-between;
  width:50%;
  max-width:632px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_illust {
  width:100%;
  max-width:318px
}


}

.featureArticleMuscles_image {
  border-radius:20px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureArticleMuscles_image {
  width:47.4683544304%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_image {
  margin-bottom:20px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMuscles_image:last-of-type {
  margin-bottom:0
}


}

.featureArticleMuscles_image img {
  width:100%
}

.featureArticleFeature {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature {
  width:61.2068965517%;
  margin-right:5%;
  margin-left:-8%;
  margin-top:32px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature {
  margin-top:190px
}


}

.featureArticleFeature_image {
  margin-left:auto;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature_image {
  width:372px;
  border-radius:4px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature_image {
  width:70.9497206704%;
  border-radius:4px 0 0 4px
}


}

.featureArticleFeature_image img,.featureArticleFeature_image video {
  width:100%;
  height:auto
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature_content {
  position:absolute
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature_content {
  margin-top:10px
}


}

.featureArticleFeature_content>div {
  background-color:#fff;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature_content>div {
  padding:26px 32px;
  width:372px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature_content>div {
  padding:20px 24px
}


}

[data-article=feature01] .featureArticleFeature_content {
  left:0;
  top:50.4%
}

[data-article=feature02] .featureArticleFeature_content {
  left:0;
  top:43%
}

.featureArticleFeature_body {
  margin-top:0
}

.featureArticleFeature_body p {
  font-size:14px;
  line-height:170%
}

.featureArticleFeature_body p span {
  font-size:12px
}

.featureArticleItem {
  position:absolute;
  left:0
}

@media only screen and (min-width: 901px) {
  .featureArticleItem[data-item=bfs01] {
  top:180px;
  width:378px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleItem[data-item=bfs01] {
  top:110px;
  width:56.4245810056%
}


}

@media only screen and (min-width: 901px) {
  .featureArticleItem[data-item=bfs02] {
  top:160px;
  width:374px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleItem[data-item=bfs02] {
  top:110px;
  width:58.1005586592%
}


}

.featureArticleFeature03 {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature03 {
  margin-top:40px;
  margin-left:10.1724137931%
}


}

.featureArticleFeature03_image {
  border-radius:4px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature03_image {
  width:64.2468239564%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature03_image {
  margin-top:82.0512820513vw;
  padding-left:26px;
  max-width:318px
}


}

.featureArticleFeature03_image img {
  width:100%;
  height:auto
}

.featureArticleFeature03_item {
  position:absolute
}

@media only screen and (min-width: 901px) {
  .featureArticleFeature03_item {
  right:-5%;
  bottom:-7%;
  width:43.3756805808%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleFeature03_item {
  top:-76.9230769231vw;
  width:81.5642458101%
}


}

.featureArticleFeature03_item img {
  width:100%
}

.featureArticleTech {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleTech {
  width:61.2068965517%;
  margin-right:5%;
  margin-left:-8%;
  margin-top:32px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleTech {
  margin-top:30px
}


}

.featureArticleTech_image {
  width:372px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureArticleTech_image {
  width:372px;
  border-radius:4px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleTech_image {
  margin-left:auto;
  width:70.9497206704%;
  border-radius:4px 0 0 4px
}


}

.featureArticleTech_image img {
  width:100%;
  height:auto
}

@media only screen and (min-width: 901px) {
  .featureArticleTech_content {
  position:absolute;
  right:0;
  top:60%
}


}

@media only screen and (max-width: 900px) {
  .featureArticleTech_content {
  margin-top:10px
}


}

.featureArticleTech_content>div {
  background-color:#fff;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .featureArticleTech_content>div {
  padding:26px 30px;
  width:372px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleTech_content>div {
  padding:20px 24px
}


}

.featureArticleTech_body {
  margin-top:0
}

.featureArticleTech_body p {
  font-size:14px;
  line-height:170%
}

.featureArticleTech_body p span {
  font-size:12px
}

.featureArticleTech_body p span.supple {
  color:gray
}

.featureArticleTech_body p sup {
  font-size:60%
}

.featureArticleMethods {
  margin-top:64px
}

@media only screen and (min-width: 901px) {
  .featureArticleMethods {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between
}


}

@media only screen and (min-width: 901px) {
  .featureArticleMethods_person {
  margin-bottom:48px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMethods_person {
  margin-bottom:36px;
  padding-left:26px
}


}

.featureArticleMethods_person:last-of-type {
  margin-bottom:0
}

@media only screen and (min-width: 901px) {
  .featureArticleMethods_title {
  margin-bottom:24px;
  width:562px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMethods_title {
  margin-bottom:20px
}


}

@media only screen and (min-width: 901px) {
  [data-position=right] .featureArticleMethods_title {
  margin-left:auto
}


}

.featureArticleMethods_title p {
  line-height:180%;
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureArticleMethods_title p {
  font-size:14px
}


}

.featureArticleMethodsProfile {
  position:relative;
  display:flex
}

@media only screen and (min-width: 901px) {
  .featureArticleMethodsProfile {
  margin-bottom:40px;
  width:562px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMethodsProfile {
  max-width:318px;
  margin-bottom:36px;
  flex-direction:column-reverse
}


}

.featureArticleMethodsProfile_content {
  position:relative;
  background:#fff
}

@media only screen and (min-width: 901px) {
  .featureArticleMethodsProfile_content {
  width:57.2953736655%;
  max-width:322px;
  height:240px;
  padding:16px 28px 0;
  border-top-left-radius:4px;
  border-bottom-left-radius:4px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMethodsProfile_content {
  padding:24px;
  border-bottom-right-radius:4px;
  border-bottom-left-radius:4px
}


}

.featureArticleMethodsProfile_name {
  margin-bottom:4px
}

.featureArticleMethodsProfile_name p {
  line-height:170%;
  font-size:18px;
  letter-spacing:.12em
}

.featureArticleMethodsProfile_text {
  margin-bottom:16px
}

.featureArticleMethodsProfile_text p {
  line-height:170%;
  font-size:12px;
  letter-spacing:.12em
}

.featureArticleMethodsProfile_gray {
  margin-bottom:10px
}

.featureArticleMethodsProfile_gray p {
  line-height:150%;
  font-size:13px;
  letter-spacing:.12em;
  color:gray
}

@media only screen and (min-width: 901px) {
  .featureArticleMethodsProfile_modal {
  position:absolute;
  bottom:20px;
  right:28px
}


}

.featureArticleMethodsProfile_modal a {
  position:relative;
  padding-bottom:8px;
  line-height:180%;
  font-size:12px;
  letter-spacing:.08em
}

.featureArticleMethodsProfile_modal a::after {
  position:absolute;
  content:"";
  bottom:8px;
  right:0;
  width:10px;
  height:10px;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/icon_plus.svg?v=1751007034")
}

.featureArticleMethodsProfile_modal a span {
  padding-right:16px
}

.featureArticleMethodsProfile_image {
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .featureArticleMethodsProfile_image {
  width:240px;
  height:240px;
  border-top-right-radius:4px;
  border-bottom-right-radius:4px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMethodsProfile_image {
  width:100%;
  border-top-right-radius:4px;
  border-top-left-radius:4px
}


}

.featureArticleMethodsProfile_image img {
  width:100%
}

.featureArticleMovie {
  border-top:1px dotted gray;
  position:relative;
  display:flex
}

@media only screen and (min-width: 901px) {
  .featureArticleMovie {
  justify-content:space-between;
  padding-top:40px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMovie {
  flex-direction:column-reverse;
  padding-top:20px
}


}

@media only screen and (min-width: 901px) {
  .featureArticleMovie_content {
  width:352px
}


}

@media only screen and (min-width: 901px) {
  .featureArticleMovie_title {
  margin-bottom:24px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMovie_title {
  margin-bottom:8px
}


}

.featureArticleMovie_title p {
  line-height:180%;
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureArticleMovie_title p {
  font-size:14px
}


}

.featureArticleMovie_text p {
  line-height:170%;
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureArticleMovie_text p {
  font-size:12px
}


}

.featureArticleMovie_movie {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureArticleMovie_movie {
  width:50%;
  max-width:454px
}


}

@media only screen and (max-width: 900px) {
  .featureArticleMovie_movie {
  margin-bottom:20px;
  width:100%;
  max-width:318px
}


}

.featureArticleMovie_thumb {
  overflow:hidden;
  width:100%;
  border-radius:4px
}

.featureArticleMovie_thumb img {
  width:100%
}

.featureArticleMovie_play {
  position:absolute;
  right:20px;
  bottom:20px;
  width:40px;
  height:40px
}

.featureArticleMovie_play svg {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  transform:rotate(-90deg)
}

.featureArticleMovie_play circle {
  fill:transparent;
  stroke-width:5;
  stroke:#fff
}

.featureArticleMovie_play div {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  width:11px;
  height:12px
}

.featureArticleMovie_movie .featureArticleMovie_thumb img {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1)
}

.featureArticleMovie_movie:hover circle {
  animation:circle 1.4s cubic-bezier(0.23, 1, 0.32, 1) 0s 1 forwards
}

.featureArticleMovie_movie:hover .featureArticleMovie_thumb img {
  transform:scale(1.06)
}

.featureExplain {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureExplain_wrap {
  display:flex;
  align-items:center
}


}

@media only screen and (min-width: 901px) {
  [data-align=top] .featureExplain_wrap {
  align-items:flex-start
}


}

.featureExplain_image {
  overflow:hidden;
  height:820px;
  position:relative
}

.featureExplain_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.featureExplain_image>div>div {
  position:absolute;
  left:0;
  top:-5%;
  width:100%;
  height:110%;
  background-repeat:no-repeat;
  background-size:cover
}

.featureExplain_image>div>div[data-position=right-center] {
  background-position:right center
}

.featureExplain_image>div>div[data-position=center-bottom] {
  background-position:center bottom
}

@media only screen and (max-width: 900px) {
  .featureExplain_content {
  padding:48px 9.2307692308% 0
}


}

@media only screen and (min-width: 901px) {
  [data-align=top] .featureExplain_inner {
  padding-top:22%
}


}

.featureExplain_balloon {
  width:140px;
  height:140px;
  margin-bottom:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/bg_circle.png?v=1751007036")
}

@media only screen and (max-width: 900px) {
  .featureExplain_balloon {
  width:83px;
  height:83px
}


}

.featureExplain_balloon p {
  text-align:center;
  font-size:18px;
  letter-spacing:.12em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureExplain_balloon p {
  font-size:12px
}


}

.featureExplain_tag {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:20px
}

.featureExplain_tag span {
  margin-right:8px;
  margin-bottom:12px;
  padding:0 16px;
  line-height:200%;
  font-size:14px;
  color:gray;
  background:#f7f7f7;
  border-radius:30px
}

@media only screen and (max-width: 900px) {
  .featureExplain_tag span {
  font-size:12px
}


}

[class*=label]+.featureExplain_headline {
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  [class*=label]+.featureExplain_headline {
  margin-top:30px
}


}

.featureExplain_headline span {
  font-size:40px;
  line-height:170%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .featureExplain_headline span {
  font-size:28px
}


}

.featureExplain_lead {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .featureExplain_lead {
  margin-top:15px
}


}

.featureExplain_lead span {
  font-size:20px;
  line-height:160%
}

@media only screen and (max-width: 900px) {
  .featureExplain_lead span {
  font-size:16px;
  line-height:180%
}


}

.featureExplain_lead span sup {
  font-size:60%
}

.featureExplain_body {
  margin-top:75px
}

@media only screen and (max-width: 900px) {
  .featureExplain_body {
  margin-top:40px
}


}

.featureExplain_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .featureExplain_body p {
  font-size:14px
}


}

.featureExplain_body p sup {
  font-size:60%
}

@media only screen and (max-width: 900px) {
  .featureExplain_body p br {
  display:none
}


}

.featureExplain_note {
  padding-top:30px;
  margin-top:80px;
  border-top:1px dotted gray
}

@media only screen and (max-width: 900px) {
  .featureExplain_note {
  margin-top:40px;
  padding-top:20px
}


}

.featureExplain_note ul li {
  padding-left:2.7em;
  text-indent:-2.7em
}

.featureExplain_note ul li p {
  font-size:12px;
  line-height:170%;
  color:gray
}

.featureExplain_label span {
  font-size:16px;
  background-color:#1a1a1a;
  display:inline-block;
  height:26px;
  line-height:26px;
  border-radius:13px;
  color:#fff;
  padding:0 14px
}

@media only screen and (max-width: 900px) {
  .featureExplain_label span {
  font-size:14px;
  height:24px;
  line-height:24px;
  border-radius:12px
}


}

.featureExplain_hero {
  position:relative;
  z-index:2;
  overflow:hidden;
  border-radius:4px
}

[data-page=ipl] .featureExplain_hero {
  left:34.4%
}

[data-page=bfs] .featureExplain_hero {
  left:-5.6%
}

@media only screen and (min-width: 901px) {
  [data-page=ipl] .featureExplain_hero {
  width:372px;
  height:248px;
  margin:-70px auto 0
}

[data-page=bfs] .featureExplain_hero {
  left:-180px;
  width:372px;
  height:496px;
  margin:-70px 0 0
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] .featureExplain_hero {
  width:55.8974358974vw;
  height:37.4358974359vw;
  margin-top:-5.1282051282vw
}

[data-page=bfs] .featureExplain_hero {
  top:-10.2564102564vw;
  left:9.2307692308vw;
  width:65.1282051282vw;
  height:86.9230769231vw;
  margin-top:0
}


}

.featureExplain_hero>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.featureExplain_hero>div>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.featureExplain_hero>div>div>div {
  position:absolute;
  left:0;
  top:-5%;
  width:100%;
  height:120%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

.featureExplain_product {
  position:relative;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .featureExplain_product {
  border-radius:4px
}


}

@media only screen and (max-width: 900px) {
  .featureExplain_product {
  border-radius:0 4px 4px 0
}


}

.featureExplain_product>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.featureExplain_product>div>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  [data-page=ipl] [data-section=feature1] .featureExplain[data-layout=image-left] [class*=media],[data-page=bfs] [data-section=feature2] .featureExplain[data-layout=image-left] [class*=media] {
  width:45.4166666667%
}

[data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=media],[data-page=bfs] [data-section=feature4] .featureExplain[data-layout=image-left] [class*=media] {
  width:51.25%
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=media],[data-page=bfs] [data-section=feature4] .featureExplain[data-layout=image-left] [class*=media] {
  width:90.7692307692vw;
  height:103.8461538462vw
}


}

.featureExplain[data-layout=image-left] [class*=image] {
  border-radius:0 4px 4px 0
}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-left] [class*=image] {
  width:77.9487179487vw;
  height:103.8461538462vw
}

[data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=image],[data-page=bfs] [data-section=feature4] .featureExplain[data-layout=image-left] [class*=image] {
  width:90.7692307692vw
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-left] [class*=content] {
  width:54.5833333333%
}

[data-page=ipl] [data-section=feature1] .featureExplain[data-layout=image-left] [class*=content],[data-page=bfs] [data-section=feature2] .featureExplain[data-layout=image-left] [class*=content] {
  width:54.5833333333%
}

[data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=content],[data-page=bfs] [data-section=feature4] .featureExplain[data-layout=image-left] [class*=content] {
  width:48.5%
}

[data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=content] [class*=inner],[data-page=bfs] [data-section=feature4] .featureExplain[data-layout=image-left] [class*=content] [class*=inner] {
  width:85%
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-left] [class*=content] {
  padding-top:90px
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-left] [class*=inner] {
  width:67%;
  margin:0 auto
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-left] [class*=product] {
  width:197px;
  height:484px;
  left:70%;
  margin-top:-31%
}


}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-left] [class*=product] {
  width:21vw;
  height:51.5vw;
  left:70%;
  margin-top:-31%
}


}

.featureExplain[data-layout=image-right] {
  max-width:1440px;
  margin:0 auto
}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-right] [class*=wrap] {
  flex-direction:row-reverse;
  padding:0 7.9166666667%
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-right] [class*=media] {
  width:51.4851485149%;
  margin-left:3.9603960396%
}


}

.featureExplain[data-layout=image-right] [class*=image] {
  border-radius:4px
}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-right] [class*=image] {
  margin-left:auto;
  margin-right:0;
  border-radius:4px 0 0 4px;
  width:77.9487179487vw;
  height:103.8461538462vw
}


}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-right] [class*=image]>div {
  left:auto;
  right:0
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-right] [class*=content] {
  width:44.5544554455%;
  padding-bottom:100px
}


}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-right] [class*=content] {
  clear:both
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] [data-section=feature3] .featureExplain[data-layout=image-right] [class*=content] {
  padding-top:0;
  margin-top:-26%
}


}

@media only screen and (min-width: 901px) {
  .featureExplain[data-layout=image-right] [class*=product] {
  width:372px;
  height:496px;
  left:-19.4%;
  margin-top:-32.3%
}


}

@media only screen and (max-width: 900px) {
  .featureExplain[data-layout=image-right] [class*=product] {
  width:50.9vw;
  height:60.4vw;
  left:39%;
  margin-top:-13.3%
}


}

.featureExplain_image>div {
  perspective:800px
}

.featureExplain_image>div>div {
  transition:2.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  display:block;
  transform:scale(1.08)
}

.inView .featureExplain_image>div>div {
  opacity:1;
  transform:none
}

.featureExplain_content {
  perspective:600px
}

.featureExplain_inner>* {
  opacity:0;
  transform:rotateX(-5deg) translateY(30px) scale(0.92);
  transform-origin:center center;
  transition:0s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

.inView .featureExplain_inner>* {
  opacity:1;
  transform:none
}

.featureExplain_inner>*:nth-child(1) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.5s
}

.featureExplain_inner>*:nth-child(2) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.58s
}

.featureExplain_inner>*:nth-child(3) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.66s
}

.featureExplain_inner>*:nth-child(4) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.74s
}

.featureExplain_inner>*:nth-child(5) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.82s
}

.featureExplain_inner>*:nth-child(6) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.featureExplain_inner>*:nth-child(7) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.98s
}

.featureExplain_inner>*:nth-child(8) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.06s
}

.featureExplain_inner>*:nth-child(9) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.14s
}

.featureExplain_inner>*:nth-child(10) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.22s
}

.featureExplain_inner>*:nth-child(11) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.3s
}

.featureFaq {
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .featureFaq {
  margin:165px auto 0
}


}

@media only screen and (max-width: 900px) {
  .featureFaq {
  margin:120px auto 0
}


}

@media only screen and (min-width: 901px) {
  .featureFaq_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .featureFaq_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .featureFaq_headline {
  width:32%
}


}

@media only screen and (min-width: 901px) {
  .featureFaq_content {
  width:65.4%
}

.menColumn .featureFaq_content {
  width:100%;
  max-width:none;
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .featureFaq_content {
  margin-top:50px
}


}

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


}

.featureFaq_menu {
  display:flex
}

.featureSpec_main .featureFaq_menu {
  margin-bottom:40px
}

@media only screen and (max-width: 900px) {
  .featureSpec_main .featureFaq_menu {
  margin-top:45px
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_main .featureFaq_menu>li {
  width:49%
}


}

.featureSpec_main .featureFaq_menu>li>a {
  border:1px solid #ccc
}

.featureSpec_main .featureFaq_menu>li>a::before {
  display:none
}

.featureSpec_main .featureFaq_menu>li.is-current>a::before {
  display:block
}

@media only screen and (max-width: 900px) {
  .featureFaq_menu[data-newline=mobile-2]>li>a {
  height:50px;
  border-radius:25px
}

.featureFaq_menu[data-newline=mobile-2]>li>a span {
  font-size:13px;
  letter-spacing:0;
  line-height:140%
}


}

.featureFaq_menu>li:nth-child(1) {
  margin-right:12px
}

.featureFaq_menu>li.is-current>a {
  pointer-events:none;
  background-color:#1a1a1a
}

.featureFaq_menu>li.is-current>a>span {
  color:#fff
}

.featureFaq_menu>li.is-current>a:before {
  border-top-color:#1a1a1a
}

.featureFaq_menu>li>a {
  background-color:#f8f8f3;
  height:32px;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0 20px;
  position:relative;
  border-radius:16px;
  cursor:pointer
}

@media only screen and (max-width: 900px) {
  .featureFaq_menu>li>a {
  height:30px;
  border-radius:15px
}

.menColumn .featureFaq_menu>li>a {
  padding-left:15px;
  padding-right:15px
}


}

.featureFaq_menu>li>a>span {
  font-size:16px;
  color:gray
}

@media only screen and (max-width: 900px) {
  .featureFaq_menu>li>a>span {
  font-size:14px
}

.menColumn .featureFaq_menu>li>a>span {
  font-size:13px
}


}

.featureFaq_menu>li>a:before {
  content:"";
  border-style:solid;
  border-width:6px 6px 0 6px;
  border-color:#f8f8f3 transparent transparent transparent;
  display:block;
  position:absolute;
  z-index:0;
  left:calc(50% - 6px);
  bottom:-6px
}

.featureFaq_section {
  display:none
}

@media only screen and (min-width: 901px) {
  .featureFaq_section {
  justify-content:space-between;
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .featureFaq_section {
  margin-top:32px
}


}

[data-faq-content="1"] .featureFaq_section:nth-child(1) {
  animation:fadeIn ease-out 1.2s forwards
}

@media only screen and (min-width: 901px) {
  [data-faq-content="1"] .featureFaq_section:nth-child(1) {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  [data-faq-content="1"] .featureFaq_section:nth-child(1) {
  display:block
}


}

[data-faq-content="2"] .featureFaq_section:nth-child(2) {
  animation:fadeIn ease-out 1.2s forwards
}

@media only screen and (min-width: 901px) {
  [data-faq-content="2"] .featureFaq_section:nth-child(2) {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  [data-faq-content="2"] .featureFaq_section:nth-child(2) {
  display:block
}


}

@media only screen and (min-width: 901px) {
  .featureFaq_column {
  width:48%
}


}

@media only screen and (max-width: 900px) {
  .featureFaq .textLink {
  justify-content:flex-end;
  margin-top:40px
}


}

.featureFaqCard {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative;
  margin-bottom:38px
}

@media only screen and (max-width: 900px) {
  .featureFaqCard {
  margin-bottom:25px
}


}

.featureFaqCard:before {
  width:12px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  display:block;
  content:"";
  background-color:#1a1a1a
}

.featureFaqCard_question {
  display:flex;
  justify-content:space-between;
  padding:23px 0 12px;
  position:relative;
  cursor:pointer
}

@media only screen and (min-width: 901px) {
  .featureFaqCard_title {
  padding-right:30px
}


}

.featureFaqCard_title span {
  font-size:16px;
  line-height:170%
}

.featureFaqCard_trigger {
  width:36px;
  height:20px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #1a1a1a
}

.featureFaqCard_trigger:before {
  content:""
}

@media only screen and (min-width: 901px) {
  .featureFaqCard_trigger {
  margin-top:3px
}


}

@media only screen and (max-width: 900px) {
  .featureFaqCard_trigger {
  margin-top:2px
}


}

[data-faq-state=open] .featureFaqCard_trigger {
  background-color:#1a1a1a
}

[data-faq-state=open] .featureFaqCard_trigger:before {
  color:#fff;
  transform:rotateX(180deg)
}

.featureFaqCard_trigger:before {
  font-size:8px;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1);
  margin-left:1px
}

.featureFaqCard_answer {
  overflow:hidden;
  height:0
}

.featureFaqCard_body p {
  font-size:13px;
  line-height:170%
}

.featureFaq {
  perspective:500px
}

.featureFaq_wrap {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-2deg) translateY(30px) scale(0.95);
  opacity:0
}

.inView .featureFaq_wrap {
  opacity:1;
  transform:none
}

.featureFaq_menu li a {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .featureFaq_menu li a:hover {
  opacity:.6
}


}

.featureFaq_menu li a::before {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .featureFaqCard_trigger {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

.featureFaqCard_trigger:before {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}


}

.featureFaqCard_question:hover [class*=_trigger] {
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .featureFaqCard_question:hover [class*=_trigger]:before {
  color:#fff
}


}

[data-page=luna] .featureHeadline span {
  font-size:22px;
  letter-spacing:.18em
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureHeadline span {
  font-size:18px
}


}

[data-page=luna] .featureFaq {
  margin-top:100px;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  [data-page=luna] .featureFaq {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaq {
  margin-top:53px
}


}

[data-page=luna] .featureFaq_wrap {
  border-bottom:1px solid rgba(128,128,128,.25);
  padding:0 7.2% 96px
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaq_wrap {
  padding:0 11% 38px
}


}

[data-page=luna] .featureFaq_section {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaq_section {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  [data-page=luna] .featureFaq_headline {
  width:25.2252252252%
}


}

@media only screen and (min-width: 901px) {
  [data-page=luna] .featureFaq_content {
  width:74.7747747748%
}


}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaq_content {
  margin-top:40px
}


}

[data-page=luna] .featureFaq_menu>li.is-current>a {
  background-color:#917a64
}

[data-page=luna] .featureFaq_menu>li.is-current>a>span {
  color:#fff
}

[data-page=luna] .featureFaq_menu>li.is-current>a::before {
  border-top-color:#917a64;
  opacity:1
}

[data-page=luna] .featureFaq_menu>li>a {
  background-color:rgba(255,255,255,.3)
}

[data-page=luna] .featureFaq_menu>li>a>span {
  color:#917a64
}

[data-page=luna] .featureFaq_menu>li>a::before {
  opacity:0
}

[data-page=luna] .featureFaqCard {
  border-top-color:rgba(128,128,128,.25);
  margin-bottom:19px
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaqCard {
  margin-bottom:0
}


}

[data-page=luna] .featureFaqCard::before {
  display:none
}

[data-page=luna] .featureFaqCard_question {
  padding:19px 4% 0
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaqCard_question {
  padding:15px 0
}


}

[data-page=luna] .featureFaqCard_body {
  padding:20px 4% 0;
  color:#727272
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaqCard_body {
  padding:10px 0 20px
}


}

[data-page=luna] .featureFaqCard_body span {
  font-size:10px;
  color:#9d9d9d
}

[data-page=luna] .featureFaqCard_icon {
  margin-top:4px;
  width:16px;
  height:16px;
  position:relative
}

[data-page=luna] .featureFaqCard_icon svg {
  width:16px;
  height:16px
}

[data-page=luna] .featureFaqCard_icon svg.is-close {
  position:absolute;
  left:0;
  top:0;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  transform:rotate(-90deg)
}

[data-page=luna] .featureFaqCard[data-faq-state=open] .featureFaqCard_icon svg.is-close {
  opacity:1;
  transform:rotate(0)
}

[data-page=luna] .featureFaqCard[data-faq-state=open] .featureFaqCard_icon svg.is-open {
  opacity:0
}

[data-page=luna] .featureFaqCard_title span {
  font-size:15px
}

@media only screen and (max-width: 900px) {
  [data-page=luna] .featureFaqCard_title span {
  font-size:14px
}


}

@media only screen and (max-width: 900px) {
  [data-page=ipl] [data-section=feature3] {
  margin-top:120px
}


}

.featureCopy {
  text-align:center;
  padding:80px 0
}

@media only screen and (max-width: 900px) {
  .featureCopy {
  padding:60px 0
}


}

.featureCopy_content span {
  font-size:40px;
  line-height:170%;
  justify-content:center;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .featureCopy_content span {
  font-size:20px
}


}

.featureCopy_point {
  display:flex;
  justify-content:center;
  margin-top:35px
}

@media only screen and (max-width: 900px) {
  .featureCopy_point {
  margin-top:28px
}


}

.featureCopy_point li {
  width:140px;
  height:140px;
  display:flex;
  align-items:center;
  justify-content:center;
  background-color:#f8f8f3;
  border-radius:50%;
  margin:0 14px
}

@media only screen and (max-width: 900px) {
  .featureCopy_point li {
  width:83px;
  height:83px;
  margin:0 8px
}


}

.featureCopy_point li p {
  font-size:18px;
  line-height:170%;
  text-align:center;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .featureCopy_point li p {
  font-size:12px;
  letter-spacing:.08em
}


}

.featureCopy_content span {
  perspective:800px
}

.featureCopy_content span em {
  transform:rotateY(-25deg) scale(1.2);
  opacity:0;
  transition:0s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

.featureCopy_content:nth-child(1) span em:nth-child(1) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.1s
}

.featureCopy_content:nth-child(1) span em:nth-child(2) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.18s
}

.featureCopy_content:nth-child(1) span em:nth-child(3) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.26s
}

.featureCopy_content:nth-child(1) span em:nth-child(4) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.34s
}

.featureCopy_content:nth-child(1) span em:nth-child(5) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.42s
}

.featureCopy_content:nth-child(1) span em:nth-child(6) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.5s
}

.featureCopy_content:nth-child(1) span em:nth-child(7) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.58s
}

.featureCopy_content:nth-child(1) span em:nth-child(8) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.66s
}

.featureCopy_content:nth-child(1) span em:nth-child(9) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.74s
}

.featureCopy_content:nth-child(1) span em:nth-child(10) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.82s
}

.featureCopy_content:nth-child(1) span em:nth-child(11) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.featureCopy_content:nth-child(1) span em:nth-child(12) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.98s
}

.featureCopy_content:nth-child(1) span em:nth-child(13) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.06s
}

.featureCopy_content:nth-child(1) span em:nth-child(14) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.14s
}

.featureCopy_content:nth-child(1) span em:nth-child(15) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.22s
}

.featureCopy_content:nth-child(1) span em:nth-child(16) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.3s
}

.featureCopy_content:nth-child(1) span em:nth-child(17) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.38s
}

.featureCopy_content:nth-child(1) span em:nth-child(18) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.46s
}

.featureCopy_content:nth-child(1) span em:nth-child(19) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.54s
}

.featureCopy_content:nth-child(1) span em:nth-child(20) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.62s
}

.featureCopy_content:nth-child(1) span em:nth-child(21) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.7s
}

.featureCopy_content:nth-child(2) span em:nth-child(1) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.5s
}

.featureCopy_content:nth-child(2) span em:nth-child(2) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.58s
}

.featureCopy_content:nth-child(2) span em:nth-child(3) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.66s
}

.featureCopy_content:nth-child(2) span em:nth-child(4) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.74s
}

.featureCopy_content:nth-child(2) span em:nth-child(5) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.82s
}

.featureCopy_content:nth-child(2) span em:nth-child(6) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.featureCopy_content:nth-child(2) span em:nth-child(7) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.98s
}

.featureCopy_content:nth-child(2) span em:nth-child(8) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.06s
}

.featureCopy_content:nth-child(2) span em:nth-child(9) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.14s
}

.featureCopy_content:nth-child(2) span em:nth-child(10) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.22s
}

.featureCopy_content:nth-child(2) span em:nth-child(11) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.3s
}

.featureCopy_content:nth-child(2) span em:nth-child(12) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.38s
}

.featureCopy_content:nth-child(2) span em:nth-child(13) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.46s
}

.featureCopy_content:nth-child(2) span em:nth-child(14) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.54s
}

.featureCopy_content:nth-child(2) span em:nth-child(15) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.62s
}

.featureCopy_content:nth-child(2) span em:nth-child(16) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.7s
}

.featureCopy_content:nth-child(2) span em:nth-child(17) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.78s
}

.featureCopy_content:nth-child(2) span em:nth-child(18) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.86s
}

.featureCopy_content:nth-child(2) span em:nth-child(19) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 1.94s
}

.featureCopy_content:nth-child(2) span em:nth-child(20) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 2.02s
}

.featureCopy_content:nth-child(2) span em:nth-child(21) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 2.1s
}

.featureCopy_point li {
  transform:scale(0) translateY(150px);
  opacity:0
}

.featureCopy_point li:nth-child(1) {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s
}

.featureCopy_point li:nth-child(2) {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) 0.88s
}

.featureCopy_point li:nth-child(3) {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) 0.96s
}

.featureCopy_point li:nth-child(4) {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) 1.04s
}

.featureCopy.inView [class*=content] span em {
  transform:none;
  opacity:1
}

.featureCopy.inView [class*=point] li {
  opacity:1;
  transform:scale(1) translateY(0)
}

.featureHeadline span {
  font-size:24px
}

@media only screen and (max-width: 900px) {
  .featureHeadline span {
  font-size:20px
}


}

[data-spec-products=luna] .featureHeadline span {
  font-size:20px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  [data-spec-products=luna] .featureHeadline span {
  font-size:18px
}


}

.featureNotice {
  text-align:center;
  max-width:1440px;
  margin:120px auto 0
}

@media only screen and (max-width: 900px) {
  .featureNotice {
  margin:80px auto 0
}


}

.featureNotice[data-theme=dark] * {
  color:#fff
}

.featureNotice_wrap {
  padding:0 7.9166666667%
}

@media only screen and (max-width: 900px) {
  .featureNotice_wrap {
  padding:0 9.2307692308%
}


}

.featureNotice_content {
  background-image:url("/cdn/shop/files/bg_stripe.png?v=1751007036");
  padding:40px 0 80px
}

@media only screen and (max-width: 900px) {
  .featureNotice_content {
  padding:33px 5% 48px
}


}

.men_bottom .featureNotice_content {
  background-image:url("/cdn/shop/files/texture_light01.png?v=1751007037")
}

.featureNotice_label span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.featureNotice_body {
  margin-top:60px
}

@media only screen and (max-width: 900px) {
  .featureNotice_body {
  margin-top:40px
}


}

.featureNotice_body p:nth-child(1) {
  font-size:18px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureNotice_body p:nth-child(1) {
  font-size:16px
}


}

.featureNotice_body p:nth-child(2) {
  margin-top:10px;
  font-size:14px;
  color:gray;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureNotice_body p:nth-child(2) {
  font-size:12px;
  margin-top:20px
}


}

[data-theme=dark] .featureNotice_body p:nth-child(2) {
  color:#ccc
}

.featureNotice {
  perspective:500px
}

.featureNotice_wrap {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-2deg) translateY(30px) scale(0.95);
  opacity:0
}

[data-page=bfs-men] .featureNotice_wrap {
  opacity:1;
  transform:none
}

.inView .featureNotice_wrap {
  opacity:1;
  transform:none
}

.featurePhilosophy {
  max-width:1440px;
  margin:160px auto 0;
  text-align:center
}

.featurePhilosophy[data-theme=dark] * {
  color:#fff
}

@media only screen and (max-width: 900px) {
  .featurePhilosophy {
  margin:120px auto 0
}


}

.featurePhilosophy_wrap {
  padding:0 7.9166666667%
}

@media only screen and (max-width: 900px) {
  .featurePhilosophy_wrap {
  padding:0 9.2307692308%
}


}

.featurePhilosophy_logo {
  width:205px;
  margin:0 auto
}

@media only screen and (max-width: 900px) {
  .featurePhilosophy_logo {
  width:166px
}


}

.featurePhilosophy_logo img {
  width:100%;
  height:auto
}

.featurePhilosophy_lead {
  margin-top:60px
}

@media only screen and (max-width: 900px) {
  .featurePhilosophy_lead {
  margin-top:50px
}


}

.featurePhilosophy_lead p {
  font-size:16px;
  line-height:170%
}

@media only screen and (min-width: 901px) {
  .featurePhilosophy_image {
  margin:60px auto 300px;
  width:708px
}


}

@media only screen and (max-width: 900px) {
  .featurePhilosophy_image {
  margin-top:60px;
  margin-bottom: 60px;
}


}

.featurePhilosophy .textLink {
  margin-top:30px
}

.featurePhilosophy_logo {
  perspective:400px
}

.featurePhilosophy_logo>div {
  transform:rotateX(15deg) translateY(-40px) scale(0.9);
  transition:1.8s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

[data-page=bfs-men] .featurePhilosophy_logo>div {
  opacity:1;
  transform:none
}

.inView .featurePhilosophy_logo>div {
  transform:none;
  opacity:1
}

.featurePhilosophy_lead {
  opacity:0;
  transition:1.4s cubic-bezier(0.19, 1, 0.22, 1) .2s
}

[data-page=bfs-men] .featurePhilosophy_lead {
  opacity:1;
  transform:none
}

.inView .featurePhilosophy_lead {
  opacity:1
}

.featurePhilosophy .textLink {
  opacity:0;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1) .3s
}

[data-page=bfs-men] .featurePhilosophy .textLink {
  opacity:1;
  transform:none
}

.featurePhilosophy .inView .textLink {
  opacity:1
}

.featurePhilosophy_image {
  overflow:hidden
}

.featurePhilosophy_image>div>div {
  transition:2.4s cubic-bezier(0.075, 0.82, 0.165, 1);
  transform:scale(1.1);
  opacity:0
}

[data-page=bfs-men] .featurePhilosophy_image>div>div {
  opacity:1;
  transform:none
}

.featurePhilosophy_image.inView>div>div {
  transform:none;
  opacity:1
}

.featureSpec {
  margin-top:120px;
  padding:120px 0 90px;
  background-color:#f8f8f3;
  overflow:hidden
}

.featureSpec[data-spec-products=luna] {
  background-color:transparent;
  margin-top:0;
  padding-top:80px
}

@media only screen and (max-width: 900px) {
  .featureSpec[data-spec-products=luna] {
  border-top:1px solid rgba(128,128,128,.25);
  padding-top:40px
}


}

@media only screen and (max-width: 900px) {
  .featureSpec {
  margin-top:80px;
  padding:60px 0 70px
}


}

.featureSpec_container {
  max-width:1440px;
  margin:0 auto
}

[data-spec-products=luna] .featureSpec_wrap {
  padding-left:4.2%;
  padding-right:4.2%
}

@media only screen and (min-width: 901px) {
  .featureSpec_image {
  display:flex;
  justify-content:flex-end
}

[data-spec-products=brush_teaser] .featureSpec_image {
  display:block
}


}

@media only screen and (min-width: 901px) {
  [data-spec-products=brush_pro] .featureSpec_image {
  justify-content:flex-start
}


}

@media only screen and (min-width: 901px) {
  [data-spec-products=brush_pro] .featureSpec_image>div {
  width:54.5%;
  max-width:784px;
  margin-left:24%
}


}

@media only screen and (max-width: 900px) {
  [data-spec-products=brush_pro] .featureSpec_image>div {
  width:112%;
  padding-left:8%;
  margin-bottom:60px
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_image>div {
  width:80%;
  max-width:960px;
  margin-right:7%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_image>div {
  width:92%
}

[data-page=bfs] .featureSpec_image>div {
  width:100%;
  padding-left:10%;
  padding-bottom:20px
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_content {
  margin-top:40px;
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_content {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_brush {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_brush {
  padding-left:8%;
  margin-bottom:30px
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_brush>div {
  width:540px;
  margin-left:23%
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_cavitation>div {
  width:330px;
  margin:70px 0 90px 25%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_cavitation>div {
  width:70%;
  margin:0 0 70px 22%
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_botanical>div {
  width:268px;
  margin:0 0 90px 25%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_botanical>div {
  width:49%;
  margin:0 0 30px 8%
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_luna>div {
  width:660px;
  margin:0 0 40px 26.4%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_luna>div {
  margin:0 0 30px 8%;
  width:82%
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_rin>div {
  width:583px;
  margin:0 0 60px 39.8%
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_rin>div {
  margin:0 0 30px 19.1%;
  width:342px
}


}

.featureSpec_headline {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureSpec_headline {
  width:25%
}


}

.featureSpec_headline .buttonFill {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .featureSpec_headline .buttonFill {
  margin-top:20px;
  position:absolute;
  right:0;
  top:-33px;
  width:196px
}


}

.featureSpec_headline .buttonFill a {
  max-width:196px
}

@media only screen and (min-width: 901px)and (max-width: 1399px) {
  .featureSpec_headline .buttonFill a {
  width:90%
}

.featureSpec_headline .buttonFill a span {
  font-size:12px
}

.featureSpec_headline .buttonFill a::before {
  font-size:11px;
  right:5px
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_headline .buttonFill a span {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_main {
  width:95%
}


}

.featureSpec_textLink {
  display:flex;
  justify-content:flex-end;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .featureSpec_textLink {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .featureSpec_switch {
  height:480px
}


}

@media only screen and (min-width: 901px)and (max-width: 1439px) {
  .featureSpec_switch {
  height:33.3333333333vw
}


}

@media only screen and (max-width: 900px) {
  .featureSpec_switch {
  height:89.7435897436vw
}


}

[data-spec-products=brush_std] .featureSpec_switch>div {
  display:none
}

[data-spec-products=brush_std] .featureSpec_switch>div.is-current {
  display:block;
  animation:fadeIn ease-out 1s forwards
}

@media only screen and (min-width: 901px) {
  [data-spec-products=brush_std] .featureSpec_switch>div[data-spec-product=std] {
  width:36.6%;
  margin-left:27%
}


}

@media only screen and (max-width: 900px) {
  [data-spec-products=brush_std] .featureSpec_switch>div[data-spec-product=std] {
  width:116%;
  padding-left:20%
}


}

@media only screen and (min-width: 901px) {
  [data-spec-products=brush_std] .featureSpec_switch>div[data-spec-product=pro] {
  width:54.5%;
  max-width:784px;
  margin-left:24%
}


}

@media only screen and (max-width: 900px) {
  [data-spec-products=brush_std] .featureSpec_switch>div[data-spec-product=pro] {
  width:135%;
  padding-left:1%
}


}

@media only screen and (min-width: 901px) {
  .featureSpecList {
  display:flex;
  justify-content:space-between;
  margin-top:10px
}


}

@media only screen and (max-width: 900px) {
  .featureSpecList {
  margin-top:40px
}

[data-spec-products=luna] .featureSpecList {
  margin-top:20px
}


}

.featureSpecList[data-spec-section] {
  display:none
}

@media only screen and (min-width: 901px) {
  .featureSpecList[data-spec-section].is-current {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .featureSpecList[data-spec-section].is-current {
  display:block
}


}

@media only screen and (min-width: 901px) {
  .featureSpecList dl {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap;
  width:48%
}


}

.featureSpecList dl dt,.featureSpecList dl dd {
  font-size:14px;
  line-height:170%;
  padding:10px 0 28px
}

@media only screen and (min-width: 901px) {
  [data-spec-products=luna] .featureSpecList dl dt,[data-spec-products=luna] .featureSpecList dl dd {
  padding-bottom:9px;
  padding-top:13px
}


}

@media only screen and (max-width: 900px) {
  [data-spec-products=luna] .featureSpecList dl dt,[data-spec-products=luna] .featureSpecList dl dd {
  font-size:13px
}


}

.featureSpecList dl dt {
  border-top:1px solid #1a1a1a;
  position:relative
}

[data-spec-products=luna] .featureSpecList dl dt {
  border-top-color:rgba(128,128,128,.25)
}

@media only screen and (max-width: 900px) {
  [data-spec-products=luna] .featureSpecList dl dt {
  color:#1a1a1a
}


}

@media only screen and (min-width: 901px) {
  .featureSpecList dl dt {
  width:25%;
  padding-left:2%
}


}

@media only screen and (max-width: 900px) {
  .featureSpecList dl dt {
  border-top-color:rgba(128,128,128,.25);
  padding:15px 5px 0
}


}

@media only screen and (max-width: 900px) {
  .featureSpecList dl dt:before {
  content:"";
  display:block;
  width:26.4150943396%;
  height:1px;
  background-color:#1a1a1a;
  left:0;
  top:-1px;
  position:absolute;
  z-index:1
}

[data-spec-products=luna] .featureSpecList dl dt:before {
  display:none
}


}

@media only screen and (min-width: 901px) {
  .featureSpecList dl dd {
  width:75%;
  padding-left:12%;
  border-top:1px solid rgba(128,128,128,.25)
}


}

@media only screen and (max-width: 900px) {
  .featureSpecList dl dd {
  padding:2px 5px 16px
}


}

.featureSpecList dl dd sup {
  font-size:60%
}

.featureSpecList dl dd span {
  font-size:11px;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .featureSpecList dl dd span {
  font-size:10px
}


}

.featureSpecList dl dd span.is-note {
  font-size:10px;
  color:gray;
  line-height:180%;
  display:block
}

.featureSpecBanner {
  margin-top:70px
}

.featureSpecBanner_link {
  margin:0 0 0 auto;
  overflow:hidden;
  border-radius:2px;
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .featureSpecBanner_link {
  height:150px;
  width:623px;
  display:flex;
  align-items:center;
  flex-direction:row-reverse
}


}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_link {
  display:block
}


}

@media only screen and (min-width: 901px) {
  .featureSpecBanner_content {
  width:46.0674157303%;
  padding:0 5% 0 5%
}


}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_content {
  padding:20px 5.5% 25px
}


}

.featureSpecBanner_title {
  font-size:20px;
  line-height:140%;
  letter-spacing:.12em;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_title {
  font-size:16px
}


}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_title br {
  display:none
}


}

.featureSpecBanner_textLink {
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_textLink {
  margin-top:7px
}


}

.featureSpecBanner_image {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureSpecBanner_image {
  width:53.9325842697%;
  height:150px
}


}

@media only screen and (max-width: 900px) {
  .featureSpecBanner_image {
  height:176px
}


}

.featureSpecBanner_image picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.featureSpecBanner_image picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.featureSpec {
  perspective:500px
}

.featureSpec[data-js=inview] .featureSpec_container {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-2deg) translateY(30px) scale(0.95);
  opacity:0
}

.featureSpec.inView .featureSpec_container {
  opacity:1;
  transform:none
}

.featureSpecBanner {
  animation:fadeIn ease-out 1.2s forwards
}

.featureSpecBanner.is-hidden {
  display:none
}

.featureTest {
  margin-top:160px
}

@media only screen and (max-width: 900px) {
  .featureTest {
  margin:160px auto 0;
  width:81.5384615385%
}


}

@media only screen and (min-width: 901px) {
  .featureTest_head {
  display:flex;
  justify-content:center
}


}

.featureTest_logo>div {
  width:130px
}

@media only screen and (max-width: 900px) {
  .featureTest_logo>div {
  margin:0 auto
}


}

@media only screen and (min-width: 901px) {
  .featureTest_content {
  padding:30px 0 0 30px
}


}

@media only screen and (max-width: 900px) {
  .featureTest_content {
  margin-top:10px
}


}

@media only screen and (max-width: 900px) {
  .featureTest_body {
  text-align:center
}


}

@media only screen and (max-width: 900px) {
  .featureTest_body p {
  line-height:170%
}


}

.featureTest_body p:nth-child(1) {
  font-size:20px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .featureTest_body p:nth-child(1) {
  font-size:16px
}


}

.featureTest_body p:nth-child(2) {
  font-size:14px;
  margin-top:-5px
}

@media only screen and (max-width: 900px) {
  .featureTest_body p:nth-child(2) {
  font-size:12px;
  margin-top:5px
}


}

@media only screen and (min-width: 901px) {
  .featureTest_ranking {
  width:254px;
  margin:30px 0 0 40px
}


}

@media only screen and (max-width: 900px) {
  .featureTest_ranking {
  margin:30px auto 0;
  width:172px
}


}

.featureTest_ranking img {
  margin:0 auto
}

.featureTest {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  transform:translateY(40px)
}

.featureTest.inView {
  opacity:1;
  transform:translateY(0)
}

.featureUse {
  margin-top:120px
}

.trait+.featureUse {
  margin-top:300px
}

@media only screen and (max-width: 900px) {
  .trait+.featureUse {
  margin-top:280px
}


}

.featureUse_image {
  overflow:hidden;
  border-radius:0 4px 4px 0;
  width:570px;
  height:720px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .featureUse_image {
  width:77.9487179487vw;
  height:103.8461538462vw
}


}

.featureUse_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.featureUse_image>div>div {
  position:absolute;
  left:0;
  top:-5%;
  width:100%;
  height:110%;
  background-repeat:no-repeat;
  background-position:center left;
  background-size:cover
}

[data-page=ipl] .featureUse_image>div>div {
  height:100%
}

.featureUse_main {
  max-width:1440px;
  margin:-244px auto 0;
  position:relative;
  z-index:1
}

@media only screen and (max-width: 900px) {
  .featureUse_main {
  margin-top:-96px
}


}

@media only screen and (min-width: 901px) {
  .featureUse_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .featureUse_wrap {
  padding-left:9.4%
}


}

.featureUse_content {
  background-color:#f8f8f3;
  border-radius:8px;
  padding:70px 7%
}

@media only screen and (max-width: 900px) {
  .featureUse_content {
  padding:40px 10% 35px
}


}

.featureUse_headline {
  position:relative
}

@media only screen and (max-width: 900px) {
  .featureUse_headline {
  margin-left:10px
}


}

.featureUse_headline:before {
  position:absolute;
  left:-25px;
  top:15px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.featureUse_headline span {
  font-size:24px
}

@media only screen and (max-width: 900px) {
  .featureUse_headline span {
  font-size:18px
}


}

.featureUse_button a {
  background-color:#1a1a1a;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:0 0 4px 4px;
  width:222px;
  height:48px;
  color:#fff
}

.featureUse_button a:after {
  content:""
}

@media only screen and (min-width: 901px) {
  .featureUse_button a {
  margin-left:auto
}


}

@media only screen and (max-width: 900px) {
  .featureUse_button a {
  width:204px
}


}

.featureUse_button a:after {
  font-size:7px;
  margin-left:25px
}

@media only screen and (max-width: 900px) {
  .featureUse_button a:after {
  margin-left:15px
}


}

.featureUse_button a span {
  font-size:14px
}

.featureUseCards {
  margin-top:40px
}

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


}

.featureUseCard {
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureUseCard {
  width:22.0517737296%
}


}

@media only screen and (max-width: 900px) {
  .featureUseCard {
  margin-top:24px;
  padding-left:22.5%
}

.menColumn .featureUseCard {
  padding-left:0
}


}

.featureUseCard_num {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .featureUseCard_num {
  position:absolute;
  left:14px;
  top:3px
}


}

.featureUseCard_image {
  overflow:hidden;
  border-radius:2px
}

@media only screen and (min-width: 901px) {
  .featureUseCard_image {
  margin-top:18px
}


}

.featureUseCard_image>div {
  clip-path:inset(1px)
}

.featureUseCard_title {
  margin-top:10px
}

.featureUseCard_title span {
  font-size:18px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureUseCard_title span {
  font-size:16px
}


}

.featureUseCard_title span.is-volume {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.01em
}

.featureUseCard_title span.is-main {
  font-size:22px;
  font-weight:500;
  display:block;
  margin-top:5px
}

@media only screen and (max-width: 900px) {
  .menColumn .featureUseCard_title span.is-main {
  margin-top:0;
  margin-bottom:20px
}


}

.featureUseCard_body {
  margin-top:6px;
  position:relative
}

.menColumn .featureUseCard_body {
  margin-top:56px
}

@media only screen and (max-width: 900px) {
  .menColumn .featureUseCard_body {
  margin-top:25px
}


}

.featureUseCard_body p {
  font-size:13px;
  line-height:170%
}

.featureUseCard_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .featureUseCard_body p sup {
  font-size:8px
}


}

.featureUseCard_body small {
  font-size:10px;
  line-height:140%;
  display:block;
  text-indent:-2.5em;
  padding-left:2.5em
}

@media only screen and (min-width: 901px) {
  .featureUseCard_body small {
  position:absolute;
  left:0;
  bottom:-50px
}


}

@media only screen and (max-width: 900px) {
  .featureUseCard_body small {
  margin-top:20px
}


}

.featureUseMovie {
  border-top:1px dotted #ccc;
  padding-top:40px;
  margin-top:45px
}

@media only screen and (min-width: 901px) {
  .featureUseMovie_wrap {
  display:flex;
  justify-content:space-between;
  align-items:center
}


}

@media only screen and (min-width: 901px) {
  .featureUseMovie_content {
  width:56.5134099617%
}


}

.featureUseMovie_headline {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .featureUseMovie_headline {
  font-size:18px
}


}

.featureUseMovie_body {
  margin-top:35px
}

@media only screen and (max-width: 900px) {
  .featureUseMovie_body {
  margin-top:25px
}


}

.featureUseMovie_body p {
  font-size:18px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .featureUseMovie_body p {
  font-size:14px
}


}

.featureUseMovie_image {
  display:block;
  position:relative
}

@media only screen and (min-width: 901px) {
  .featureUseMovie_image {
  width:43.4865900383%
}


}

@media only screen and (max-width: 900px) {
  .featureUseMovie_image {
  margin-top:40px
}


}

.featureUseMovie_image>div {
  overflow:hidden;
  border-radius:4px
}

.featureUseMovie_image>div>img {
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.featureUseMovie_image svg {
  display:block;
  position:absolute;
  z-index:2;
  left:calc(50% - 20px);
  top:calc(50% - 20px)
}

.featureUseMovie_image[href="#"]:hover>div img {
  transform:scale(1.08)
}

.featureUseMovie .textLink {
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  .featureUseMovie .textLink {
  margin-top:30px
}


}

.featureUse_image>div>div {
  transition:2.2s cubic-bezier(0.075, 0.82, 0.165, 1);
  transform:scale(1.1);
  opacity:0
}

.featureUse_image.inView>div>div {
  transform:none;
  opacity:1
}

.featureUse_content {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1) .2s;
  transform:translateY(-50px);
  opacity:0
}

.inView .featureUse_content {
  transform:none;
  opacity:1
}

.featureUseCards {
  perspective:600px
}

.featureUseCard {
  transition:0s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-3deg) translateY(40px) scale(0.95);
  opacity:0
}

[data-animation="0"] .featureUseCard {
  opacity:1 !important;
  transform:none !important;
  transition:none !important
}

.inView .featureUseCard {
  opacity:1;
  transform:none
}

.featureUseCard:nth-child(1) {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) 0.6s
}

.featureUseCard:nth-child(2) {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) 0.7s
}

.featureUseCard:nth-child(3) {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) 0.8s
}

.featureUseCard:nth-child(4) {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.featureUseCard:nth-child(5) {
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1) 1s
}

.featureUseMovie {
  transition:0s cubic-bezier(0.19, 1, 0.22, 1);
  transform:rotateX(-3deg) translateY(40px) scale(0.95);
  opacity:0
}

.inView .featureUseMovie {
  opacity:1;
  transform:none
}

.homeHero {
  position:relative;
  height:100svh;
  overflow:hidden
}

.homeHero_logo {
  position:absolute;
  z-index:3;
  width:154px;
  height:48px;
  top:24px;
  left:calc(50% - 77px);
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/logo_brand_white.svg?v=1751007034")
}

@media only screen and (max-width: 900px) {
  .homeHero_logo {
  width:128px;
  height:40px;
  left:calc(50% - 64px)
}


}

.homeHero_logo span {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  display:block;
  position:absolute
}

.homeHero_wrap {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.homeHero_slider {
  width:100%;
  height:100%;
  position:relative;
  z-index:0
}

.homeHero_thumbnail {
  position:absolute;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .homeHero_thumbnail {
  right:2.5%;
  bottom:40px
}


}

@media only screen and (max-width: 900px) {
  .homeHero_thumbnail {
  position:absolute;
  width:calc(100% - 20px);
  left:0;
  bottom:32px
}


}

@media only screen and (max-width: 900px) {
  .homeHero_thumbnail .splide__track {
  overflow:visible;
  margin-left:20px
}


}

.homeHero_thumbnail .splide__list {
  margin-left:8px
}

.homeHero_thumbnail .splide__slide {
  width:100px;
  height:56px;
  position:relative;
  cursor:pointer;
  overflow:hidden;
  border-radius:2px;
  outline:none
}

@media only screen and (min-width: 901px) {
  .homeHero_thumbnail .splide__slide:hover::before {
  background-color:rgba(26,26,26,0)
}


}

.homeHero_thumbnail .splide__slide::before {
  content:"";
  display:block;
  width:100%;
  height:100%;
  z-index:1;
  position:absolute;
  left:0;
  top:0;
  background-color:rgba(26,26,26,.3);
  opacity:1;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.homeHero_thumbnail .splide__slide.is-active {
  pointer-events:none
}

.homeHero_thumbnail .splide__slide.is-active::before {
  opacity:0
}

.homeHero_thumbnail .splide__slide>button {
  cursor:pointer;
  position:relative;
  background-color:transparent;
  border:none;
  outline:none;
  padding:0;
  margin:0;
  border-radius:2px;
  overflow:hidden;
  display:block;
  outline:none;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.homeHero_thumbnail .splide__slide>button img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.homeHero_thumbnail .splide__slide i {
  width:100%;
  height:2px;
  background-color:rgba(54,54,54,.2);
  position:absolute;
  left:0;
  bottom:0;
  z-index:2;
  opacity:0;
  transition:.6s cubic-bezier(0.19, 1, 0.22, 1)
}

.homeHero_thumbnail .splide__slide i::before {
  content:"";
  display:block;
  width:100%;
  height:100%;
  background-color:rgba(255,255,255,.85);
  position:absolute;
  left:0;
  top:0;
  z-index:1;
  visibility:hidden;
  transform:scaleX(0);
  transform-origin:left center
}

.homeHero_thumbnail .splide__slide.is-active i {
  opacity:1
}

.homeHero_thumbnail .splide__slide.is-active i::before {
  visibility:visible;
  animation:splideProgressAnimation linear 5.5s forwards
}

.homeHero_attention {
  text-align:right;
  padding:20px 20px 0
}

.homeHero_attention p {
  font-size:10px;
  line-height:170%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .homeHero_attention p {
  font-size:9px
}


}

@keyframes splideProgressAnimation {
  0% {
  transform:scaleX(0)
}

100% {
  transform:scaleX(1)
}


}

.homeHeroSlide {
  height:100svh;
  position:relative
}

.homeHeroSlide_link {
  display:block
}

.homeHeroSlide_content {
  position:absolute;
  z-index:2;
  left:7.9%;
  bottom:13.6%
}

@media only screen and (max-width: 900px) {
  .homeHeroSlide_content {
  bottom:164px;
  left:13.8%
}


}

.homeHeroSlide_name {
  font-size:16px;
  letter-spacing:.12em;
  line-height:150%;
  color:#fff;
  font-weight:200
}

[data-products=rin] .homeHeroSlide_logo {
  width:205px;
  margin-left:3px
}

.homeHeroSlide_logo img {
  width:100%;
  height:auto
}

.homeHeroSlide_copy {
  margin-top:15px;
  font-size:64px;
  line-height:120%;
  letter-spacing:.08em;
  color:#fff;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .homeHeroSlide_copy {
  font-size:40px;
  line-height:150%
}


}

.homeHeroSlide_body {
  margin-top:15px
}

.homeHeroSlide_body p {
  font-size:24px;
  line-height:150%;
  letter-spacing:.08em;
  color:#fff;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .homeHeroSlide_body p {
  font-size:16px;
  line-height:150%
}


}

.homeHeroSlide_body p sup {
  font-size:12px
}

@media only screen and (max-width: 900px) {
  .homeHeroSlide_body p sup {
  font-size:7px
}


}

.homeHeroSlide_body--gothic {
  margin-top:27px
}

.homeHeroSlide_body--gothic p {
  font-size:16px;
  line-height:150%;
  letter-spacing:.12em;
  font-family:fot-cezanne-pron,sans-serif;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .homeHeroSlide_body--gothic p {
  font-size:13px
}


}

.homeHeroSlide_note {
  font-size:10px;
  letter-spacing:.08em;
  color:gray;
  line-height:180%;
  margin-top:10px
}

.homeHeroSlide .textLink {
  margin-top:26px
}

.homeHeroSlide_image {
  z-index:0;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.homeHeroSlide_image picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.homeHeroSlide_image picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.homeHeroSlide_luna span {
  display:block
}

.homeHeroSlide_luna span.is-name {
  font-size:11px;
  letter-spacing:.08em;
  color:#fff
}

.homeHeroSlide_luna span.is-logo {
  width:116px;
  margin-top:15px
}

.homeHeroSlide_luna span.is-logo path {
  fill:#fff
}

.homeHeroSlide_luna span.is-copy {
  width:271px;
  margin-top:34px
}

.homeHeroSlide_luna span.is-copy img {
  width:100%;
  height:auto
}

.homeHero_main .splide__slide .homeHeroSlide_image img {
  transform:scale(1);
  transition:6s ease-out;
  display:block
}

.homeHero_main .splide__slide.is-active .homeHeroSlide_image img {
  transform:scale(1.07);
  transition-delay:0s
}

.homePhilosophy {
  max-width:1440px;
  margin:160px auto 0;
  text-align:center
}

@media only screen and (max-width: 900px) {
  .homePhilosophy {
  margin-top:120px
}


}

@media only screen and (min-width: 901px) {
  .homePhilosophy_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .homePhilosophyHead {
  padding:0 9.2307692308%
}


}

.homePhilosophyHead_logo {
  width:205px;
  margin:0 auto
}

@media only screen and (max-width: 900px) {
  .homePhilosophyHead_logo {
  width:166px
}


}

.homePhilosophyHead_lead {
  margin-top:60px
}

.homePhilosophyHead_lead p {
  font-size:16px;
  line-height:170%
}

.homePhilosophyHead .textLink {
  margin-top:30px
}

.homePhilosophyGallery {
  max-width:1044px;
  margin:90px auto 0
}

@media only screen and (min-width: 901px) {
  .homePhilosophyGallery_column:nth-child(1) {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  flex-direction:row-reverse
}


}

.homePhilosophyGallery_column:nth-child(2) {
  margin-top:240px
}

@media only screen and (max-width: 900px) {
  .homePhilosophyGallery_column:nth-child(2) {
  margin-top:80px
}


}

.homePhilosophyGallery_image {
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .homePhilosophyGallery_image[data-home-gallery="2"] {
  margin-bottom:-150px
}

.homePhilosophyGallery_image[data-home-gallery="2"]>div {
  max-width:372px
}


}

@media only screen and (max-width: 900px) {
  .homePhilosophyGallery_image[data-home-gallery="2"] {
  margin-top:60px
}

.homePhilosophyGallery_image[data-home-gallery="2"]>div {
  width:65.1282051282vw
}


}

@media only screen and (min-width: 901px) {
  .homePhilosophyGallery_image[data-home-gallery="1"]>div {
  max-width:540px
}


}

@media only screen and (max-width: 900px) {
  .homePhilosophyGallery_image[data-home-gallery="1"] {
  display:flex;
  justify-content:flex-end
}

.homePhilosophyGallery_image[data-home-gallery="1"]>div {
  width:77.9487179487vw
}


}

.homePhilosophyGallery_image[data-home-gallery="3"] {
  margin:0 auto
}

@media only screen and (min-width: 901px) {
  .homePhilosophyGallery_image[data-home-gallery="3"] {
  width:708px
}


}

@media only screen and (max-width: 900px) {
  .homePhilosophyGallery_image[data-home-gallery="3"] {
  width:81.5384615385vw
}


}

.homeProducts {
  margin-top:125px
}

@media only screen and (max-width: 900px) {
  .homeProducts {
  margin-top:80px
}


}

.homeProducts_wrap {
  max-width:1440px;
  margin:0 auto
}

@media only screen and (min-width: 901px) {
  .homeProducts_content {
  padding:0 7.9166666667%
}


}

@media only screen and (min-width: 901px) {
  [data-layout=image-right] .homeProducts_content {
  display:flex;
  justify-content:flex-end
}


}

.homeProducts_hero {
  position:relative
}

@media only screen and (min-width: 901px) {
  .homeProducts_hero {
  width:72.2772277228%
}


}

.homeProducts_image {
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .homeProducts_image {
  border-radius:7px
}


}

@media only screen and (max-width: 900px) {
  .homeProducts_image>div {
  transform:none !important
}


}

.homeProducts_image>div>div picture {
  max-width:none
}

.homeProducts_image>div>div picture img {
  width:100%;
  max-width:none;
  height:auto
}

.homeProducts_copy {
  position:absolute
}

.homeProducts_copy p {
  white-space:nowrap
}

@media only screen and (max-width: 900px) {
  .homeProducts_copy p {
  font-size:8.2051282051vw;
  color:#fff;
  letter-spacing:.08em;
  line-height:150%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

[data-layout=image-left] .homeProducts_copy p {
  text-align:right
}


}

[data-section=ipl] .homeProducts_copy {
  width:25.8333333333vw
}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .homeProducts_copy {
  width:69.7435897436vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=ipl] .homeProducts_copy {
  width:372px
}


}

@media only screen and (min-width: 901px) {
  [data-section=ipl] .homeProducts_copy {
  left:86.3%;
  top:24.5%
}


}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .homeProducts_copy {
  left:21.4%;
  bottom:26%;
  width:272px
}


}

[data-section=bfs] .homeProducts_copy {
  left:86.2%;
  top:39.2%;
  width:340px
}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=bfs] .homeProducts_copy {
  width:23.6111111111vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=bfs] .homeProducts_copy {
  left:4.3%;
  top:auto;
  bottom:21.9%
}


}

[data-section=brush][data-layout=image-right] .homeProducts_copy {
  left:-28.5%;
  top:38.2%;
  width:44.2%
}

@media(min-width: 1441px) {
  [data-section=brush][data-layout=image-right] .homeProducts_copy {
  width:394px
}


}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=brush][data-layout=image-right] .homeProducts_copy {
  width:27.4vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=brush][data-layout=image-right] .homeProducts_copy {
  left:9.3%;
  top:auto;
  bottom:31.3%
}


}

[data-section=brush][data-layout=image-left] .homeProducts_copy {
  left:86.3%;
  top:25.2%;
  width:44.2%
}

@media(min-width: 1441px) {
  [data-section=brush][data-layout=image-left] .homeProducts_copy {
  width:386px
}


}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=brush][data-layout=image-left] .homeProducts_copy {
  width:26.8vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=brush][data-layout=image-left] .homeProducts_copy {
  left:25.2%;
  top:auto;
  bottom:31.9%;
  width:254px
}


}

[data-section=cavitation] .homeProducts_copy {
  width:352px;
  left:86%;
  top:31.4%
}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=cavitation] .homeProducts_copy {
  width:24.5vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=cavitation] .homeProducts_copy {
  left:1.6%;
  top:auto;
  bottom:25.1%
}


}

[data-section=men-bfs] .homeProducts_copy {
  left:-28.9%;
  top:23.8%;
  width:44.2%
}

@media(min-width: 1441px) {
  [data-section=men-bfs] .homeProducts_copy {
  width:290px
}


}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=men-bfs] .homeProducts_copy {
  width:20.2vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=men-bfs] .homeProducts_copy {
  left:9.3%;
  top:auto;
  bottom:38.4%
}


}

[data-section=luna] .homeProducts_copy {
  left:-28.9%;
  top:19.8%;
  width:44.2%
}

@media(min-width: 1441px) {
  [data-section=luna] .homeProducts_copy {
  width:308px
}


}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=luna] .homeProducts_copy {
  width:21.3888888889vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=luna] .homeProducts_copy {
  left:9.3%;
  bottom:32.8%;
  top:auto
}


}

[data-section=rin] .homeProducts_copy {
  left:-28.8%;
  top:38.3%;
  width:44.2%
}

@media(min-width: 1441px) {
  [data-section=rin] .homeProducts_copy {
  width:218px
}


}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  [data-section=rin] .homeProducts_copy {
  width:15.1388888889vw
}


}

@media only screen and (max-width: 900px) {
  [data-section=rin] .homeProducts_copy {
  left:9.3%;
  bottom:21.8%;
  top:auto
}


}

.homeProducts_copy div img {
  width:100%;
  height:auto
}

.homeProducts_body {
  position:absolute
}

@media only screen and (max-width: 900px) {
  [data-layout=image-left] .homeProducts_body {
  text-align:right
}


}

.homeProducts_body span {
  font-size:20px;
  line-height:180%;
  letter-spacing:.13em;
  display:block;
  white-space:nowrap;
  -webkit-font-smoothing:antialiased
}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  .homeProducts_body span {
  font-size:1.3888888889vw
}


}

@media only screen and (max-width: 900px) {
  .homeProducts_body span {
  font-size:4.1025641026vw;
  color:#fff
}


}

.homeProducts_body span sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .homeProducts_body span sup {
  font-size:8px
}


}

.homeProducts_body span em {
  font-style:normal
}

@media only screen and (min-width: 901px) {
  [data-section=bfs] .homeProducts_body span em:nth-child(2) {
  color:#fff
}

[data-section=cavitation] .homeProducts_body span em:nth-child(1) {
  color:#fff
}


}

@media only screen and (min-width: 901px) {
  [data-section=ipl] .homeProducts_body {
  left:86.7%;
  top:50.6%;
  width:272px
}


}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .homeProducts_body {
  right:8.4%;
  bottom:60px
}


}

@media only screen and (min-width: 901px) {
  [data-section=bfs] .homeProducts_body {
  left:85.4%;
  top:55.8%;
  width:272px
}


}

@media only screen and (max-width: 900px) {
  [data-section=bfs] .homeProducts_body {
  left:21.6%;
  bottom:15.3%
}


}

@media only screen and (min-width: 901px) {
  [data-section=brush] .homeProducts_body {
  left:-28.5%;
  top:55.9%;
  width:328px
}


}

@media only screen and (max-width: 900px) {
  [data-section=brush] .homeProducts_body {
  left:9.2%;
  bottom:13.3%
}


}

@media only screen and (min-width: 901px) {
  [data-section=cavitation] .homeProducts_body {
  left:85.6%;
  top:43%;
  width:272px
}


}

@media only screen and (max-width: 900px) {
  [data-section=cavitation] .homeProducts_body {
  left:38.8%;
  bottom:12.4%
}


}

@media only screen and (min-width: 901px) {
  [data-section=men-bfs] .homeProducts_body {
  left:-20.4%;
  top:55.9%;
  width:328px;
  padding-left:5px
}


}

@media only screen and (max-width: 900px) {
  [data-section=men-bfs] .homeProducts_body {
  left:9.2%;
  bottom:13.6%
}


}

@media only screen and (min-width: 901px) {
  [data-section=luna] .homeProducts_body {
  left:-28.5%;
  top:55.9%;
  width:328px
}


}

@media only screen and (max-width: 900px) {
  [data-section=luna] .homeProducts_body {
  left:9.2%;
  bottom:14%
}


}

@media only screen and (min-width: 901px) {
  [data-section=rin] .homeProducts_body {
  left:-28.5%;
  top:55.9%;
  width:328px
}


}

@media only screen and (max-width: 900px) {
  [data-section=rin] .homeProducts_body {
  left:9.2%;
  bottom:15.2%
}


}

.homeProducts_card {
  position:relative;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .homeProducts_card {
  margin-top:-115px
}


}

[data-layout=image-left] .homeProducts_card {
  display:flex;
  justify-content:flex-end
}

.homeProductsCard {
  background-color:#f8f8f3;
  justify-content:space-between;
  overflow:hidden;
  width:80.4166666667vw
}

@media only screen and (max-width: 900px) {
  .homeProductsCard {
  width:90.7692307692vw
}


}

@media only screen and (min-width: 1440px) {
  .homeProductsCard {
  width:1158px
}


}

@media only screen and (min-width: 901px) {
  .homeProductsCard {
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
  height:357px
}


}

@media only screen and (max-width: 900px) {
  .homeProductsCard {
  margin-top:-50px
}


}

[data-layout=image-left] .homeProductsCard {
  border-radius:4px 0 0 4px
}

@media only screen and (min-width: 901px) {
  [data-layout=image-left] .homeProductsCard {
  padding-left:5.8%
}


}

[data-layout=image-right] .homeProductsCard {
  border-radius:0 4px 4px 0
}

@media only screen and (min-width: 901px) {
  [data-layout=image-right] .homeProductsCard {
  padding-left:10.3%
}


}

@media only screen and (max-width: 900px) {
  .homeProductsCard_content {
  margin-top:25px;
  padding:0 9.7435897436vw 60px 12.3076923077vw
}


}

.homeProductsCard_title {
  position:relative
}

.homeProductsCard_title span {
  display:block
}

.homeProductsCard_title span.is-main {
  font-size:24px;
  letter-spacing:.12em;
  position:relative
}

@media only screen and (max-width: 900px) {
  .homeProductsCard_title span.is-main {
  font-size:18px;
  line-height:160%
}


}

.homeProductsCard_title span.is-main:before {
  left:-25px;
  top:10px;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

@media only screen and (max-width: 900px) {
  .homeProductsCard_title span.is-main:before {
  top:calc(50% - 3px)
}


}

.homeProductsCard_title span.is-sub {
  font-size:12px;
  margin-top:20px;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .homeProductsCard_title span.is-sub {
  margin-top:15px
}


}

.homeProductsCard_button {
  margin-top:35px
}

@media only screen and (max-width: 900px) {
  .homeProductsCard_button {
  margin-top:24px
}


}

@media only screen and (max-width: 900px) {
  .homeProductsCard_image {
  margin:0 auto
}


}

[data-section=ipl] .homeProductsCard_image {
  width:40.1388888889vw
}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .homeProductsCard_image {
  width:82.0512820513vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=ipl] .homeProductsCard_image {
  width:578px
}


}

@media only screen and (min-width: 901px) {
  [data-section=ipl] .homeProductsCard_image {
  padding-top:58px;
  margin-right:9.2%
}


}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .homeProductsCard_image {
  padding-top:63px
}


}

[data-section=luna] .homeProductsCard_image {
  width:34.7222222222vw
}

@media only screen and (max-width: 900px) {
  [data-section=luna] .homeProductsCard_image {
  width:93.5897435897vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=luna] .homeProductsCard_image {
  width:500px
}


}

@media only screen and (min-width: 901px) {
  [data-section=luna] .homeProductsCard_image {
  margin-right:5.5%
}


}

@media only screen and (max-width: 900px) {
  [data-section=luna] .homeProductsCard_image {
  padding-top:42px;
  margin-left:7%
}


}

[data-section=bfs] .homeProductsCard_image {
  width:44.7222222222vw
}

@media only screen and (max-width: 900px) {
  [data-section=bfs] .homeProductsCard_image {
  width:87.1794871795vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=bfs] .homeProductsCard_image {
  width:644px
}


}

@media only screen and (min-width: 901px) {
  [data-section=bfs] .homeProductsCard_image {
  padding-top:10px;
  margin-right:5%
}


}

@media only screen and (max-width: 900px) {
  [data-section=bfs] .homeProductsCard_image {
  padding-top:70px
}


}

[data-section=brush] .homeProductsCard_image {
  width:24.7222222222vw
}

@media only screen and (max-width: 900px) {
  [data-section=brush] .homeProductsCard_image {
  width:56.4102564103vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=brush] .homeProductsCard_image {
  width:356px
}


}

@media only screen and (min-width: 901px) {
  [data-section=brush] .homeProductsCard_image {
  margin-right:12.7%;
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  [data-section=brush] .homeProductsCard_image {
  padding-top:60px;
  margin-left:29.3%
}


}

[data-section=cavitation] .homeProductsCard_image {
  width:22.9166666667vw
}

@media only screen and (max-width: 900px) {
  [data-section=cavitation] .homeProductsCard_image {
  width:62.8205128205vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=cavitation] .homeProductsCard_image {
  width:330px
}


}

@media only screen and (min-width: 901px) {
  [data-section=cavitation] .homeProductsCard_image {
  margin-right:30%
}


}

@media only screen and (max-width: 900px) {
  [data-section=cavitation] .homeProductsCard_image {
  padding-top:80px
}


}

[data-section=men-bfs] .homeProductsCard_image {
  width:25vw
}

@media only screen and (max-width: 900px) {
  [data-section=men-bfs] .homeProductsCard_image {
  width:64.1025641026vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=men-bfs] .homeProductsCard_image {
  width:360px
}


}

@media only screen and (min-width: 901px) {
  [data-section=men-bfs] .homeProductsCard_image {
  margin-right:30%;
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  [data-section=men-bfs] .homeProductsCard_image {
  padding-top:70px
}


}

[data-section=rin] .homeProductsCard_image {
  width:28.9583333333vw
}

@media only screen and (max-width: 900px) {
  [data-section=rin] .homeProductsCard_image {
  width:79.4871794872vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=rin] .homeProductsCard_image {
  width:417px
}


}

@media only screen and (min-width: 901px) {
  [data-section=rin] .homeProductsCard_image {
  margin-right:7.7%
}


}

@media only screen and (max-width: 900px) {
  [data-section=rin] .homeProductsCard_image {
  padding-top:56px;
  margin-left:20.7%
}


}

@media only screen and (min-width: 901px) {
  .homeProductsCard_attention {
  padding:10px 20px 0;
  text-align:right
}


}

@media only screen and (max-width: 900px) {
  .homeProductsCard_attention {
  padding:18px 8.9% 0 9%
}


}

.homeProductsCard_attention p {
  font-size:10px;
  line-height:180%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .homeProductsCard_attention p {
  font-size:9px
}


}

.homeProducts_hero {
  perspective:600px
}

.homeProducts_image {
  transition:2.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  display:block;
  transform:scale(1.08)
}

.inView .homeProducts_image {
  opacity:1;
  transform:none
}

.homeProducts_copy,.homeProducts_body {
  opacity:0;
  transform-origin:center center
}

.inView .homeProducts_copy,.inView .homeProducts_body {
  opacity:1;
  transform:none
}

.homeProductsCard {
  opacity:0;
  transform-origin:center center;
  transition:2s cubic-bezier(0.19, 1, 0.22, 1) .7s
}

[data-layout=image-right] .homeProductsCard {
  transform:translateX(60px)
}

[data-layout=image-left] .homeProductsCard {
  transform:translateX(-60px)
}

.inView .homeProductsCard {
  opacity:1;
  transform:none
}

.homeProductsCard_attention {
  opacity:0;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1) .9s
}

.inView .homeProductsCard_attention {
  opacity:1
}

.articleHead {
  position:relative;
  padding-top:62px;
  margin-bottom:80px
}

@media only screen and (max-width: 900px) {
  .articleHead {
  padding-top:48px;
  margin-bottom:40px
}


}

.articleHead:before {
  content:"";
  width:8px;
  height:1px;
  background-color:#1a1a1a;
  position:absolute;
  left:0;
  top:5px;
  display:block
}

.articleHead_title span {
  font-size:24px;
  letter-spacing:.12em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .articleHead_title span {
  font-size:18px
}


}

.articleHead_state {
  display:flex;
  align-items:center;
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .articleHead_state {
  margin-top:15px
}


}

.articleHead_date {
  font-size:14px;
  letter-spacing:.08em;
  margin-right:15px
}

@media only screen and (max-width: 900px) {
  .articleHead_date {
  font-size:13px;
  margin-right:10px
}


}

.articleHead_category span {
  padding:0 15px;
  border-radius:12px;
  display:block;
  display:flex;
  align-items:center;
  justify-content:center;
  height:24px;
  background-color:#f8f8f3;
  font-size:15px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .articleHead_category span {
  font-size:14px;
  height:16px;
  border-radius:8px
}


}

.news {
  max-width:1440px;
  margin:0 auto;
  padding-top:240px;
  padding-bottom: 100px;
}

@media only screen and (max-width: 900px) {
  .news {
  padding-top:180px
}


}

@media only screen and (min-width: 901px) {
  .news_wrap {
  padding:0 7.9166666667%;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .news_wrap {
  padding:0 9.2307692308%
}


}

.news_side {
  display:block
}

@media only screen and (min-width: 901px) {
  .news_side {
  width:34.6534653465%
}


}

@media only screen and (max-width: 900px) {
  .news_side {
  margin-bottom:80px
}


}

.news_side .textLink {
  margin-top:120px
}

@media only screen and (max-width: 900px) {
  .news_side .textLink {
  display:none
}


}

.news_headline span {
  display:block
}

.news_headline span.is-main {
  font-size:32px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  line-height: 1em;
}

@media only screen and (max-width: 900px) {
  .news_headline span.is-main {
  font-size:24px
}


}

.news_headline span.is-sub {
  font-size:18px;
  letter-spacing:.12em;
  margin-top:15px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
    line-height: 1em;
}

@media only screen and (max-width: 900px) {
  .news_headline span.is-sub {
  font-size:16px
}


}

@media only screen and (min-width: 901px) {
  .news_content {
  width:65.3465346535%
}


}

.productFeature {
  max-width:1440px;
  margin:120px auto 0
}

@media only screen and (min-width: 901px) {
  .productFeature_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .productFeature_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .productFeature_list {
  margin-top:40px;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .productFeature_list {
  margin-top:60px
}


}

@media only screen and (min-width: 901px) {
  .productFeature_item {
  width:30.6930693069%
}


}

@media only screen and (max-width: 900px) {
  .productFeature_item {
  margin-top:48px
}


}

@media only screen and (min-width: 901px) {
  .productFeature_image {
  height:372px;
  display:flex;
  align-items:flex-end
}


}

@media screen and (max-width: 1440px) {
  .productFeature_image {
  height:25.8333333333vw
}


}

@media only screen and (max-width: 900px) {
  .productFeature_image {
  height:auto
}


}

.productFeature_content {
  margin-top:25px
}

.productFeature_title {
  display:flex;
  align-items:center
}

.productFeature_title span {
  display:block
}

.productFeature_title span.is-num {
  font-size:12px;
  margin-right:20px;
  white-space:nowrap;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.productFeature_title span.is-main {
  font-size:20px;
  letter-spacing:.12em;
  line-height:1.4
}

@media only screen and (max-width: 900px) {
  .productFeature_title span.is-main {
  font-size:16px
}


}

.productFeature_body {
  margin:12px 0 0 50px
}

.productFeature_body p {
  font-size:14px;
  line-height:180%;
  letter-spacing:.12em
}

.productFeature_body p sup {
  font-size:60%
}

.productFeature_note {
  margin-top:48px
}

@media only screen and (max-width: 900px) {
  .productFeature_note {
  margin-top:40px
}


}

.productFeature_note ul li {
  padding-left:2.7em;
  text-indent:-2.7em
}

.productFeature_note ul li p {
  font-size:12px;
  line-height:170%;
  color:gray
}

.productGallery {
  max-width:1440px;
  margin:160px auto 0
}

@media only screen and (max-width: 900px) {
  .productGallery {
  margin:120px auto 0
}


}

@media only screen and (min-width: 901px) {
  .productGallery_wrap {
  padding:0 7.9166666667%;
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (min-width: 901px) {
  .productGallery_image:nth-child(1) {
  width:37.5%;
  margin-right:3.9%
}


}

@media only screen and (max-width: 900px) {
  .productGallery_image:nth-child(1) {
  width:55.8974358974vw;
  margin-left:9.2307692308vw
}


}

@media only screen and (min-width: 901px) {
  .productGallery_image:nth-child(2) {
  width:51.4%;
  margin-top:19.7%
}


}

@media only screen and (max-width: 900px) {
  .productGallery_image:nth-child(2) {
  margin-top:12.3076923077vw
}


}

.productGallery_image>div {
  overflow:hidden
}

.productHero {
  background-color:#f8f8f3
}

.productHero_wrap {
  max-width:1440px;
  padding:200px 0 120px;
  margin:0 auto
}

@media only screen and (max-width: 900px) {
  .productHero_wrap {
  padding:120px 0 100px
}


}

@media only screen and (min-width: 901px) {
  .productHero_inner {
  display:flex;
  justify-content:space-between;
  padding-left:7.9166666667%;
  padding-right:7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .productHero_inner {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .productHero_content {
  width:37.6237623762%
}


}

@media screen and (max-width: 1180px) {
  .productHero_content {
  width:56.623762%
}


}

@media only screen and (max-width: 900px) {
  .productHero_content {
  width:100%
}


}

.productHero_label span {
  font-size:16px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .productHero_label span {
  font-size:14px
}


}

.productHero_headline {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .productHero_headline {
  margin-top:35px
}


}

.productHero_headline span {
  font-size:32px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .productHero_headline span {
  font-size:24px
}


}

.productHero_body {
  margin-top:35px
}

.productHero_body p {
  font-size:20px;
  letter-spacing:.12em;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .productHero_body p {
  font-size:16px
}


}

@media only screen and (min-width: 901px) {
  .productHero_image {
  width:55.0330033003%
}


}

@media only screen and (min-width: 901px) {
  .productHero_image>div {
  margin-top:100px
}


}

@media only screen and (max-width: 900px) {
  .productHero_image>div {
  margin-top:56px
}


}

.productHero .headlineLv1 {
  margin-top:72px
}

@media only screen and (max-width: 900px) {
  .productHero .headlineLv1 {
  margin-top:56px
}


}

.productHero .buttonFill {
  margin-top:64px
}

@media only screen and (max-width: 900px) {
  .productHero .buttonFill {
  margin-top:48px
}


}

@media only screen and (max-width: 900px) {
  .productHero .buttonFill a {
  width:100%;
  max-width:350px
}


}

.productHero_button {
  margin-top:28px
}

.productHero_button>div:nth-child(2) {
  margin-top:5px;
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap
}

.productHero_button>div:nth-child(2)>* {
  width:48%;
  margin-top:20px
}

.productHero_button>div:nth-child(2)>*:nth-child(odd) {
  margin-right:4%
}

.productHero_button>div:nth-child(2) .textLink a {
  display:block
}

.productHero_sup {
  font-size:12px;
  line-height:170%;
  color:gray;
  margin-top:10px
}

.productSpec {
  max-width:1440px;
  margin:120px auto 0
}

@media only screen and (max-width: 900px) {
  .productSpec {
  margin:80px auto 0
}


}

@media only screen and (min-width: 901px) {
  .productSpec_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .productSpec_wrap {
  padding:0 9.2307692308%
}


}

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


}

@media only screen and (min-width: 901px) {
  .productSpec_headline {
  width:20.6270627063%
}


}

@media only screen and (min-width: 901px) {
  .productSpec_content {
  width:79.2079207921%;
  margin-top:40px
}


}

@media only screen and (min-width: 901px) {
  .productSpec_button {
  display:flex;
  margin-top:20px
}


}

@media only screen and (max-width: 900px) {
  .productSpec_button {
  margin-top:35px
}


}

@media only screen and (min-width: 901px) {
  .productSpec_button .textLink {
  margin-right:10%
}

.productSpec_button .textLink:last-child {
  margin-right:0
}


}

@media only screen and (max-width: 900px) {
  .productSpec_button .textLink {
  margin-top:25px
}


}

.productSpec_menu {
  position:relative
}

@media only screen and (min-width: 901px) {
  .productSpec_menu {
  margin-top:80px;
  display:flex
}

.productSpec_menu:before {
  content:"";
  display:block;
  width:1px;
  height:32px;
  position:absolute;
  left:50%;
  top:calc(50% - 16px);
  background-color:#ccc
}


}

@media only screen and (max-width: 900px) {
  .productSpec_menu {
  margin-top:80px
}


}

.productSpec_menu a {
  background-color:#f8f8f3;
  display:flex;
  align-items:center;
  justify-content:center
}

@media only screen and (min-width: 901px) {
  .productSpec_menu a {
  width:50%;
  height:148px
}


}

@media only screen and (max-width: 900px) {
  .productSpec_menu a {
  margin-top:12px;
  height:64px
}


}

.productSpec_menu a div:after {
  content:""
}

.productSpec_menu a div:after {
  font-size:10px;
  margin-left:25px
}

.productSpec_menu a div span {
  font-size:14px
}

.productSpec_menu a div:after {
  display:inline-block;
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .productSpec_menu a:hover div:after {
  transform:translateX(5px)
}


}

.supportContact {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .supportContact {
  margin:0 auto 160px
}


}

@media only screen and (max-width: 900px) {
  .supportContact {
  margin:0 auto 80px
}


}

@media only screen and (min-width: 901px) {
  .supportContact_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .supportContact_wrap {
  padding:0 9.2307692308%
}


}

.supportContactCard {
  background:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .supportContactCard {
  display:flex;
  justify-content:center;
  width:48.5148514851%;
  height:355px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard {
  margin-bottom:28px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard:last-of-type {
  margin-bottom:0
}


}

@media only screen and (min-width: 901px) {
  .supportContactCard_wrap {
  padding:52px 36px 0
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_wrap {
  padding:40px 32px
}


}

.supportContactCard_title {
  position:relative
}

@media only screen and (min-width: 901px) {
  .supportContactCard_title {
  margin-bottom:24px;
  padding-bottom:20px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_title {
  margin-bottom:24px;
  padding-bottom:24px
}


}

.supportContactCard_title:after {
  position:absolute;
  content:"";
  display:block;
  left:0;
  bottom:0;
  width:8px;
  height:1px;
  background-color:#1a1a1a
}

.supportContactCard_title p {
  line-height:170%
}

@media only screen and (min-width: 901px) {
  .supportContactCard_title p {
  font-size:24px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_title p {
  font-size:18px
}


}

@media only screen and (min-width: 901px) {
  .supportContactCard_text {
  margin-bottom:32px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_text {
  margin-bottom:28px
}


}

.supportContactCard_text p {
  line-height:170%;
  font-size:16px
}

@media only screen and (max-width: 900px) {
  .supportContactCard_text p {
  font-size:14px
}


}

.supportContactCard_tell a {
  display:block;
  line-height:170%;
  font-size:32px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .supportContactCard_tell a {
  margin-top:-12px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_tell a {
  font-size:24px
}


}

.supportContactCard_tell a span {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .supportContactCard_tell a span {
  font-size:16px
}


}

.supportContactCard_time p {
  line-height:200%;
  font-size:16px
}

@media only screen and (min-width: 901px) {
  .supportContactCard_time p {
  margin-top:-12px
}


}

@media only screen and (max-width: 900px) {
  .supportContactCard_time p {
  font-size:14px
}


}

.supportFaq {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .supportFaq {
  margin:0 auto 120px
}


}

@media only screen and (max-width: 900px) {
  .supportFaq {
  margin:0 auto 80px
}


}

@media only screen and (min-width: 901px) {
  .supportFaq_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .supportFaq_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .supportFaq_headline {
  width:20.1320132013%
}


}

@media only screen and (max-width: 900px) {
  .supportFaq_headline {
  margin-bottom:48px
}


}

@media only screen and (min-width: 901px) {
  .supportFaq_content {
  width:65.3465346535%
}


}

.supportFaq_menu {
  display:flex
}

.supportFaq_menu>li:nth-child(1) {
  margin-right:12px
}

.supportFaq_menu>li.is-current>a {
  pointer-events:none;
  background-color:#1a1a1a
}

.supportFaq_menu>li.is-current>a>span {
  color:#fff
}

.supportFaq_menu>li.is-current>a:before {
  border-top-color:#1a1a1a
}

.supportFaq_menu>li>a {
  background-color:#f8f8f3;
  height:32px;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0 20px;
  position:relative;
  border-radius:16px;
  cursor:pointer
}

@media only screen and (max-width: 900px) {
  .supportFaq_menu>li>a {
  height:30px;
  border-radius:15px
}


}

.supportFaq_menu>li>a>span {
  font-size:16px;
  color:gray
}

@media only screen and (max-width: 900px) {
  .supportFaq_menu>li>a>span {
  font-size:14px
}


}

.supportFaq_menu>li>a:before {
  content:"";
  border-style:solid;
  border-width:6px 6px 0 6px;
  border-color:#f8f8f3 transparent transparent transparent;
  display:block;
  position:absolute;
  left:calc(50% - 6px);
  bottom:-6px
}

.supportFaq_section {
  display:none
}

@media only screen and (min-width: 901px) {
  .supportFaq_section {
  justify-content:space-between;
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .supportFaq_section {
  margin-top:32px
}


}

[data-faq-content="1"] .supportFaq_section:nth-child(1) {
  animation:fadeIn ease-out 1.2s forwards
}

@media only screen and (min-width: 901px) {
  [data-faq-content="1"] .supportFaq_section:nth-child(1) {
  display:block
}


}

@media only screen and (max-width: 900px) {
  [data-faq-content="1"] .supportFaq_section:nth-child(1) {
  display:block
}


}

[data-faq-content="2"] .supportFaq_section:nth-child(2) {
  animation:fadeIn ease-out 1.2s forwards
}

@media only screen and (min-width: 901px) {
  [data-faq-content="2"] .supportFaq_section:nth-child(2) {
  display:block
}


}

@media only screen and (max-width: 900px) {
  [data-faq-content="2"] .supportFaq_section:nth-child(2) {
  display:block
}


}

.supportHero {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .supportHero {
  margin:0 auto 120px;
  padding-top:200px
}


}

@media only screen and (max-width: 900px) {
  .supportHero {
  margin:0 auto 80px;
  padding-top:180px
}


}

@media only screen and (min-width: 901px) {
  .supportHero_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .supportHero_wrap {
  padding:0 9.2307692308%
}


}

.supportHero h1 {
  line-height:170%;
  font-size:16px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .supportHero h1 {
  margin-bottom:36px
}


}

@media only screen and (max-width: 900px) {
  .supportHero h1 {
  margin-bottom:26px
}


}

.supportHero_product p {
  line-height:170%;
  font-size:32px
}

@media only screen and (max-width: 900px) {
  .supportHero_product p {
  font-size:20px
}


}

.supportManual {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .supportManual {
  margin:0 auto 120px
}


}

@media only screen and (max-width: 900px) {
  .supportManual {
  margin:0 auto 80px
}


}

@media only screen and (min-width: 901px) {
  .supportManual_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .supportManual_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .supportManual_headline {
  width:24.7524752475%
}


}

@media only screen and (max-width: 900px) {
  .supportManual_headline {
  margin-bottom:48px
}


}

@media only screen and (min-width: 901px) {
  .supportManual_content {
  width:65.3465346535%
}


}

.supportManualCard {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative
}

.supportManualCard:before {
  width:12px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  display:block;
  content:"";
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .supportManualCard {
  display:flex;
  justify-content:space-between;
  margin-bottom:32px;
  padding-top:16px
}


}

@media only screen and (max-width: 900px) {
  .supportManualCard {
  margin-bottom:36px;
  padding-top:32px
}


}

.supportManualCard:last-of-type {
  margin-bottom:0
}

.supportManualCard_title p {
  line-height:170%;
  font-size:20px
}

@media only screen and (min-width: 901px) {
  .supportManualCard_title p {
  margin-bottom:20px
}


}

@media only screen and (max-width: 900px) {
  .supportManualCard_title p {
  margin-bottom:16px;
  font-size:18px
}


}

.supportManualCard_size p {
  line-height:170%;
  font-size:14px
}

@media only screen and (min-width: 901px) {
  .supportManualCard_size p {
  margin-bottom:48px
}


}

@media only screen and (max-width: 900px) {
  .supportManualCard_size p {
  margin-bottom:28px;
  font-size:12px
}


}

@media only screen and (min-width: 901px) {
  .supportManualCard_thumb {
  min-width:170px;
  width:25.7575757576%
}


}

@media only screen and (max-width: 900px) {
  .supportManualCard_thumb {
  margin-top:32px;
  width:160px
}


}

.supportManualCard_thumb img {
  width:100%
}

.supportRegister {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .supportRegister {
  margin:0 auto 120px
}


}

@media only screen and (max-width: 900px) {
  .supportRegister {
  margin:0 auto 80px
}


}

@media only screen and (min-width: 901px) {
  .supportRegister_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .supportRegister_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .supportRegister_headline {
  width:20.1320132013%
}


}

@media only screen and (max-width: 900px) {
  .supportRegister_headline {
  margin-bottom:40px
}


}

@media only screen and (min-width: 901px) {
  .supportRegister_content {
  width:65.3465346535%
}


}

@media only screen and (min-width: 901px) {
  .supportRegister_text {
  margin-bottom:32px
}


}

@media only screen and (max-width: 900px) {
  .supportRegister_text {
  margin-bottom:32px
}


}

.supportRegister_text p {
  line-height:180%;
  font-size:16px
}

@media only screen and (max-width: 900px) {
  .supportRegister_text p {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  [data-page=registration] .supportRegister {
  margin:0 auto 120px;
  padding-top:200px
}


}

@media only screen and (max-width: 900px) {
  [data-page=registration] .supportRegister {
  margin:0 auto 80px;
  padding-top:180px
}


}

.supportHeadline span {
  font-size:24px;
  line-height:1.6
}

@media only screen and (max-width: 900px) {
  .supportHeadline span {
  font-size:18px
}


}

.companyInfo {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .companyInfo {
  margin:0 auto 160px;
  padding-top:240px
}


}

@media only screen and (max-width: 900px) {
  .companyInfo {
  margin:0 auto 120px;
  padding-top:180px
}


}

@media only screen and (min-width: 901px) {
  .companyInfo_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .companyInfo_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .companyInfo_headline {
  width:34.6534653465%
}


}

@media only screen and (max-width: 900px) {
  .companyInfo_headline {
  margin-bottom:48px
}


}

@media only screen and (min-width: 901px) {
  .companyInfo_content {
  width:65.3465346535%
}


}

.companyInfoHeadline span {
  display:block
}

.companyInfoHeadline span.is-en {
  line-height:170%;
  font-size:32px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .companyInfoHeadline span.is-en {
  font-size:24px
}


}

.companyInfoHeadline span.is-ja {
  line-height:170%;
  letter-spacing:.12em;
  font-size:18px
}

@media only screen and (max-width: 900px) {
  .companyInfoHeadline span.is-ja {
  font-size:16px
}


}

@media only screen and (min-width: 901px) {
  .companyInfoList {
  margin-top:40px
}


}

@media only screen and (max-width: 900px) {
  .companyInfoList {
  margin-top:48px
}


}

@media only screen and (min-width: 901px) {
  .companyInfoList dl {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap
}


}

.companyInfoList dl dt,.companyInfoList dl dd {
  font-size:14px;
  line-height:170%;
  padding:10px 0 32px
}

.companyInfoList dl dt {
  border-top:1px solid #1a1a1a;
  position:relative
}

@media only screen and (min-width: 901px) {
  .companyInfoList dl dt {
  width:25%;
  padding-left:2%
}


}

@media only screen and (max-width: 900px) {
  .companyInfoList dl dt {
  border-top-color:rgba(128,128,128,.25);
  padding:15px 5px 0
}


}

@media only screen and (max-width: 900px) {
  .companyInfoList dl dt:before {
  content:"";
  display:block;
  width:26.4150943396%;
  height:1px;
  background-color:#1a1a1a;
  left:0;
  top:-1px;
  position:absolute;
  z-index:1
}


}

@media only screen and (min-width: 901px) {
  .companyInfoList dl dd {
  width:75%;
  padding-left:12%;
  border-top:1px solid rgba(128,128,128,.25)
}


}

@media only screen and (max-width: 900px) {
  .companyInfoList dl dd {
  padding:2px 5px 20px
}


}

.companyInfoList dl dd .textLink {
  margin-top:8px
}

.companyInfoList dl dd .textLink a {
  display:inline-block
}

.policyInfo {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .policyInfo {
  margin:0 auto 160px;
  padding-top:240px
}


}

@media only screen and (max-width: 900px) {
  .policyInfo {
  margin:0 auto 120px;
  padding-top:180px
}


}

@media only screen and (min-width: 901px) {
  .policyInfo_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .policyInfo_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .policyInfo_headline {
  width:34.6534653465%
}


}

@media only screen and (max-width: 900px) {
  .policyInfo_headline {
  margin-bottom:48px
}


}

@media only screen and (min-width: 901px) {
  .policyInfo_content {
  width:65.3465346535%
}


}

.policyInfoHeadline span {
  display:block
}

.policyInfoHeadline span.is-en {
  line-height:170%;
  font-size:32px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .policyInfoHeadline span.is-en {
  font-size:24px
}


}

.policyInfoHeadline span.is-ja {
  line-height:170%;
  letter-spacing:.12em;
  font-size:18px
}

@media only screen and (max-width: 900px) {
  .policyInfoHeadline span.is-ja {
  font-size:16px
}


}

.policyText_sectionLarge {
  position:relative;
  margin-bottom:80px;
  padding-top:48px
}

.policyText_sectionLarge:before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:8px;
  height:1px;
  background:#1a1a1a
}

.policyText_sectionSmall {
  position:relative;
  margin-bottom:60px
}

.policyText_headlineLv1 {
  margin-bottom:40px
}

.policyText_headlineLv1 p {
  line-height:170%;
  font-size:20px
}

.policyText_headlineLv2 {
  margin-bottom:12px
}

.policyText_headlineLv2 p {
  line-height:170%;
  font-size:18px
}

.policyText_text {
  margin-bottom:32px
}

.policyText_text p {
  line-height:200%;
  font-size:14px
}

.policyText_text p a {
  color:gray;
  text-decoration:underline;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .policyText_text p a:hover {
  opacity:.56
}


}

.policyText_list {
  margin-bottom:32px
}

.policyText_text+.policyText_list {
  margin-top:-20px
}

.policyText_list ol,.policyText_list ul {
  padding-left:24px
}

.policyText_list ol li,.policyText_list ul li {
  margin-bottom:8px;
  padding-left:16px;
  line-height:160%;
  font-size:14px
}

.policyText_list ol li a,.policyText_list ul li a {
  color:gray;
  text-decoration:underline;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .policyText_list ol li a:hover,.policyText_list ul li a:hover {
  opacity:.56
}


}

.policyText_list ol li {
  list-style-type:decimal
}

.policyText_list ul li {
  list-style-type:disc
}

.policyText_table {
  margin-bottom:32px;
  overflow:auto
}

.policyText_table table {
  min-width:780px
}

.policyText_table table tr {
  display:flex;
  justify-content:space-between;
  border-bottom:solid 1px #1a1a1a
}

.policyText_table table tr.tablehead {
  padding:0 8px 36px 8px
}

.policyText_table table tr.tablebody {
  padding:32px 8px
}

.policyText_table table tr.tablebody td:nth-of-type(3) {
  text-align:center
}

.policyText_table table tr.tablebody td ol {
  padding-left:24px
}

.policyText_table table tr.tablebody td ol li {
  list-style-type:decimal
}

.policyText_table table th:nth-of-type(1),.policyText_table table td:nth-of-type(1) {
  width:21.4646464646%
}

.policyText_table table th:nth-of-type(2),.policyText_table table td:nth-of-type(2) {
  width:46.7171717172%
}

.policyText_table table th:nth-of-type(3),.policyText_table table td:nth-of-type(3) {
  width:13.8888888889%
}

.policyText_table table th {
  line-height:150%;
  font-size:16px
}

.policyText_table table td {
  line-height:170%;
  font-size:14px
}

.policyText_definition {
  margin-top:32px;
  margin-bottom:32px
}

.policyText_definition dl {
  border-bottom:solid 1px #1a1a1a
}

@media only screen and (min-width: 901px) {
  .policyText_definition dl {
  display:flex;
  justify-content:space-between;
  flex-wrap:wrap
}


}

.policyText_definition dt,.policyText_definition dd {
  line-height:170%;
  font-size:14px
}

.policyText_definition dt {
  border-top:1px solid #1a1a1a
}

@media only screen and (min-width: 901px) {
  .policyText_definition dt {
  width:34.7222222222%;
  padding:36px 8px
}


}

@media only screen and (max-width: 900px) {
  .policyText_definition dt {
  padding:32px 8px 12px
}


}

@media only screen and (min-width: 901px) {
  .policyText_definition dd {
  width:65.2777777778%;
  padding:36px 8px;
  border-top:1px solid #1a1a1a
}


}

@media only screen and (max-width: 900px) {
  .policyText_definition dd {
  padding:0 8px 32px
}


}

.policyText_definition dd div {
  padding-top:32px
}

.policyText_definition dd ol {
  padding-left:24px
}

.policyText_definition dd ol li {
  list-style-type:decimal
}

.policyText_definition dd a {
  color:gray;
  text-decoration:underline;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .policyText_definition dd a:hover {
  opacity:.56
}


}

@media only screen and (min-width: 901px) {
  .aboutMode {
  display:flex;
  justify-content:flex-end
}


}

.aboutMode_wrap {
  border-radius:8px;
  padding:20px 20px;
  background-color:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .aboutMode_wrap {
  display:flex;
  align-items:center
}


}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_wrap {
  padding:15px 10px
}


}

@media only screen and (max-width: 900px) {
  .aboutMode_wrap {
  padding:20px 5% 10px
}


}

@media only screen and (min-width: 901px) {
  .aboutMode_title {
  width:120px
}


}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_title {
  width:100px
}


}

.aboutMode_title span {
  font-size:16px
}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_title span {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .aboutMode_list {
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:calc(100% - 125px)
}


}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_list {
  width:calc(100% - 100px)
}


}

@media only screen and (max-width: 900px) {
  .aboutMode_list {
  margin-top:20px
}


}

@media only screen and (min-width: 901px) {
  .aboutMode_item {
  margin-right:10px
}


}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_item {
  margin-right:5px
}


}

@media only screen and (min-width: 901px) {
  .aboutMode_item:last-child {
  margin-right:0
}


}

@media only screen and (max-width: 900px) {
  .aboutMode_item {
  margin-bottom:10px
}


}

.aboutMode_item a {
  position:relative;
  background-color:#fff;
  font-size:14px;
  padding:10px 20px 10px 10px;
  border:1px solid #828282;
  display:block;
  border-radius:8px;
  cursor:pointer;
  white-space:nowrap;
  letter-spacing:0;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.aboutMode_item a:before {
  content:""
}

@media only screen and (min-width: 901px)and (max-width: 1109px) {
  .aboutMode_item a {
  font-size:12px;
  padding:10px 20px 10px 5px
}


}

@media only screen and (max-width: 900px) {
  .aboutMode_item a {
  width:fit-content
}


}

.aboutMode_item a::before {
  position:absolute;
  right:5px;
  top:12px;
  font-size:10px
}

@media only screen and (min-width: 901px) {
  .aboutMode_item a:hover {
  background-color:rgba(0,0,0,.03)
}


}

.howtoAdvanced {
  position:relative;
  max-width:1372px
}

@media only screen and (min-width: 901px) {
  .howtoAdvanced {
  margin:0 auto 160px;
  height:176px
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced {
  margin:0 auto 120px;
  height:39.4871794872vw
}


}

.howtoAdvanced_wrap {
  height:100%;
  padding:0 5.5555555556%
}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_wrap {
  padding:0 9.2307692308%
}


}

.howtoAdvanced_content {
  display:flex;
  justify-content:center;
  align-items:center;
  height:100%;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  .howtoAdvanced_content {
  background-image:url("/cdn/shop/files/howto_bg-pc.png?v=1751007036")
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_content {
  background-image:url("/cdn/shop/files/howto_bg-sp.png?v=1751007036")
}


}

.howtoAdvanced_title {
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  background-image:url("/cdn/shop/files/circle_black.svg?v=1751007034")
}

@media only screen and (min-width: 901px) {
  .howtoAdvanced_title {
  margin-right:28px;
  width:112px;
  height:112px
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_title {
  margin-right:3.5897435897vw;
  width:23.0769230769vw;
  height:23.0769230769vw
}


}

.howtoAdvanced_title p {
  line-height:150%;
  letter-spacing:.12em;
  color:#fff;
  text-align:center
}

@media only screen and (min-width: 901px) {
  .howtoAdvanced_title p {
  font-size:16px
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_title p {
  font-size:14px
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_textbox {
  width:46.1538461538vw
}


}

.howtoAdvanced_text {
  margin-bottom:4px;
  line-height:200%;
  letter-spacing:.12em
}

@media only screen and (min-width: 901px) {
  .howtoAdvanced_text {
  font-size:20px
}


}

@media only screen and (max-width: 900px) {
  .howtoAdvanced_text {
  font-size:16px
}


}

.howtoAdvanced_sup {
  line-height:170%;
  letter-spacing:.12em;
  font-size:12px;
  padding-left:1.6em;
  text-indent:-1.6em
}

.howtoHero {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .howtoHero {
  margin:0 auto 120px;
  padding-top:200px
}


}

@media only screen and (max-width: 900px) {
  .howtoHero {
  margin:0 auto 80px;
  padding-top:180px
}


}

.howtoHero_wrap {
  display:flex;
  justify-content:space-between
}

@media only screen and (min-width: 901px) {
  .howtoHero_wrap {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .howtoHero_wrap {
  padding:0 9.2307692308%
}


}

.howtoHero_title span {
  display:block
}

.howtoHero_title span.is-en {
  line-height:170%;
  font-size:32px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .howtoHero_title span.is-en {
  font-size:24px
}


}

.howtoHero_title span.is-ja {
  line-height:170%;
  font-size:18px
}

@media only screen and (max-width: 900px) {
  .howtoHero_title span.is-ja {
  font-size:16px
}


}

.howtoHero_text {
  display:flex;
  align-items:center;
  justify-content:center;
  width:112px;
  height:112px;
  border-radius:50%;
  color:#fff;
  background-color:#1a1a1a
}

@media only screen and (max-width: 900px) {
  .howtoHero_text {
  width:90px;
  height:90px
}


}

.howtoHero_text p {
  line-height:150%;
  letter-spacing:.12em;
  font-size:16px;
  text-align:center
}

@media only screen and (max-width: 900px) {
  .howtoHero_text p {
  font-size:14px
}


}

.modeModal_wrap {
  background-color:#fff;
  width:940px;
  padding:80px 30px 30px;
  border-radius:4px
}

@media only screen and (max-width: 900px) {
  .modeModal_wrap {
  width:100%;
  padding:40px 20px
}


}

.modeModal_head {
  border-bottom:1px solid rgba(128,128,128,.25);
  position:relative;
  padding-bottom:15px
}

.modeModal_head::before {
  content:"";
  display:block;
  background-color:#1a1a1a;
  width:24px;
  height:1px;
  position:absolute;
  bottom:-1px;
  left:0
}

.modeModal_headline span {
  display:block
}

.modeModal_headline span.is-en {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.modeModal_headline span.is-ja {
  margin-top:5px;
  font-size:18px
}

.modeModalExplain {
  margin-top:30px
}

@media only screen and (min-width: 901px) {
  .modeModalExplain[data-row="2"] {
  display:flex;
  justify-content:space-between
}


}

.modeModalExplain_item {
  border-radius:5px
}

@media only screen and (min-width: 901px) {
  [data-row="2"] .modeModalExplain_item {
  width:46.7289719626%
}


}

@media only screen and (max-width: 900px) {
  .modeModalExplain_item {
  margin-top:20px
}


}

.modeModalExplain_title {
  font-size:14px;
  line-height:170%
}

.modeModalExplain_content {
  margin-top:20px;
  background-color:#f8f8f3;
  border-radius:5px;
  padding:30px
}

@media only screen and (min-width: 901px) {
  [data-row="1"] .modeModalExplain_content {
  width:70%
}


}

.modeModalExplain_body p {
  font-size:12px;
  line-height:170%
}

.modeModalExplain_image {
  margin-top:20px
}

@media only screen and (min-width: 901px) {
  .modeModalColumn {
  margin-top:40px;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .modeModalColumn {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .modeModalColumn_content {
  width:66.5887850467%
}


}

.modeModalColumn_label span {
  border-radius:9px;
  height:18px;
  display:flex;
  align-items:center;
  padding-left:10px;
  padding-right:10px;
  color:#1a1a1a;
  font-size:11px;
  letter-spacing:.12em;
  border:1px solid #1a1a1a;
  width:fit-content
}

.modeModalColumn_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .modeModalColumn_body {
  margin-top:10px
}


}

.modeModalColumn_body p {
  font-size:14px;
  line-height:170%
}

@media only screen and (min-width: 901px) {
  .modeModalColumn_image {
  width:29.5560747664%
}


}

@media only screen and (max-width: 900px) {
  .modeModalColumn_image {
  margin-top:30px
}


}

.modeModalColumn_image>div {
  overflow:hidden;
  border-radius:4px
}

.modeModal {
  opacity:0;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1);
  transition-duration:1.8s;
  transition-delay:0s;
  transform:translateY(-40px)
}

[data-modal-state=visible] .modeModal {
  opacity:1;
  transition-delay:.5s;
  transform:translateY(0)
}

.howtoMovie {
  position:relative;
  max-width:1440px
}

@media only screen and (min-width: 901px) {
  .howtoMovie {
  margin:0 auto 120px
}


}

@media only screen and (max-width: 900px) {
  .howtoMovie {
  margin:0 auto 80px
}


}

@media only screen and (min-width: 901px) {
  .howtoMovie_wrap {
  display:flex;
  justify-content:space-between;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .howtoMovie_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .howtoMovie_headline {
  width:21.8646864686%
}


}

@media only screen and (max-width: 900px) {
  .howtoMovie_headline {
  margin-bottom:48px
}


}

@media only screen and (min-width: 901px) {
  .howtoMovie_content {
  width:65.3465346535%
}


}

.howtoMovieCard {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative
}

.howtoMovieCard:before {
  width:12px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  display:block;
  content:"";
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .howtoMovieCard {
  display:flex;
  justify-content:space-between;
  margin-bottom:32px;
  padding-top:16px
}


}

@media only screen and (max-width: 900px) {
  .howtoMovieCard {
  margin-bottom:36px;
  padding-top:32px
}


}

.howtoMovieCard:last-of-type {
  margin-bottom:0
}

@media only screen and (min-width: 901px) {
  .howtoMovieCard_tag {
  margin-bottom:24px
}


}

@media only screen and (max-width: 900px) {
  .howtoMovieCard_tag {
  margin-bottom:20px
}


}

.howtoMovieCard_tag p {
  display:inline-block;
  padding:0 16px;
  line-height:200%;
  letter-spacing:.12em;
  border-radius:30px;
  color:#fff;
  background:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .howtoMovieCard_tag p {
  font-size:14px
}


}

@media only screen and (max-width: 900px) {
  .howtoMovieCard_tag p {
  font-size:12px
}


}

.howtoMovieCard_title p {
  font-size:20px;
  line-height:120%
}

@media only screen and (min-width: 901px) {
  .howtoMovieCard_title p {
  margin-bottom:20px
}


}

@media only screen and (max-width: 900px) {
  .howtoMovieCard_title p {
  margin-bottom:16px;
  font-size:18px
}


}

.howtoMovieCard_size p {
  font-size:14px;
  line-height:70%
}

@media only screen and (max-width: 900px) {
  .howtoMovieCard_size p {
  font-size:12px
}


}

@media only screen and (min-width: 901px) {
  .howtoMovieCard_thumb {
  min-width:170px;
  width:45.8333333333%
}


}

@media only screen and (max-width: 900px) {
  .howtoMovieCard_thumb {
  margin-top:32px;
  width:100%
}


}

.howtoMovieCard_thumb img {
  width:100%
}

.howtoMovieCardThumb {
  position:relative;
  display:block
}

.howtoMovieCardThumb_image {
  overflow:hidden;
  width:100%
}

.howtoMovieCardThumb_image img {
  width:100%
}

.howtoMovieCardThumb_play {
  position:absolute;
  right:20px;
  bottom:20px;
  width:40px;
  height:40px
}

.howtoMovieCardThumb_play svg {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  transform:rotate(-90deg)
}

.howtoMovieCardThumb_play circle {
  fill:transparent;
  stroke-width:5;
  stroke:#fff
}

.howtoMovieCardThumb_play div {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  width:11px;
  height:12px
}

.howtoMovieCardThumb_image img {
  transition:2s cubic-bezier(0.19, 1, 0.22, 1)
}

.howtoMovieCardThumb:hover circle {
  animation:circle 1.4s cubic-bezier(0.23, 1, 0.32, 1) 0s 1 forwards
}

.howtoMovieCardThumb:hover .howtoMovieCardThumb_image img {
  transform:scale(1.06)
}

.aboutGallery {
  max-width:1440px;
  margin:160px auto
}

@media only screen and (max-width: 900px) {
  .aboutGallery {
  margin:96px auto 0
}


}

@media only screen and (min-width: 901px) {
  .aboutGallery_wrap {
  padding:0 13.816667%;
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (min-width: 901px) {
  .aboutGallery_image:nth-child(1) {
  width:54.6%;
  margin-right:4.9%
}


}

@media only screen and (max-width: 900px) {
  .aboutGallery_image:nth-child(1) {
  width:81.5384615385vw;
  margin-left:9.2307692308vw
}


}

@media only screen and (min-width: 901px) {
  .aboutGallery_image:nth-child(2) {
  width:46%;
  margin-top:33%
}


}

@media only screen and (max-width: 900px) {
  .aboutGallery_image:nth-child(2) {
  margin-top:17.9487179487vw;
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (max-width: 900px) {
  .aboutGallery_image:nth-child(2)>div {
  width:65.1282051282vw
}


}

.aboutGallery_image>div {
  overflow:hidden
}

.aboutPhilosophy {
  max-width:1440px;
  margin:120px auto 0
}

@media only screen and (max-width: 900px) {
  .aboutPhilosophy {
  margin:80px auto 0
}


}

@media only screen and (min-width: 901px) {
  .aboutPhilosophy_wrap {
  display:flex;
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .aboutPhilosophy_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .aboutPhilosophy_headline {
  margin-left:13.8613861386%;
  width:27.7227722772%
}


}

.aboutPhilosophy_headline span {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .aboutPhilosophy_content {
  width:58.4158415842%
}


}

@media only screen and (max-width: 900px) {
  .aboutPhilosophy_content {
  margin-top:64px
}


}

.aboutPhilosophy_content p {
  font-size:18px;
  line-height:200%;
  letter-spacing:.12em;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .aboutPhilosophy_content p {
  font-size:16px
}


}

.aboutPhilosophy_content p+p {
  margin-top:35px
}

.aboutPhilosophy_content p span {
  font-size:14px
}

.aboutPhilosophy_headline {
  perspective:800px
}

.aboutPhilosophy_headline span {
  display:block;
  transform:rotateY(-15deg) scale(1.1);
  opacity:0;
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1)
}

.inView .aboutPhilosophy_headline span {
  transform:none;
  opacity:1
}

.aboutPhilosophy_content {
  perspective:800px
}

.aboutPhilosophy_content p {
  display:block;
  transform:rotateX(15deg) scale(0.9);
  opacity:0;
  transition:2.2s cubic-bezier(0.19, 1, 0.22, 1)
}

.aboutPhilosophy_content p:nth-child(1) {
  transition-delay:.3s
}

.aboutPhilosophy_content p:nth-child(2) {
  transition-delay:.4s
}

.aboutPhilosophy_content p:nth-child(3) {
  transition-delay:.5s
}

.inView .aboutPhilosophy_content p {
  transform:none;
  opacity:1
}

.aboutProduct {
  max-width:1440px;
  margin:120px auto 0;
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  .aboutProduct {
  margin:32px auto 0
}


}

.aboutGallery+.aboutProduct {
  margin-top:100px
}

@media only screen and (max-width: 900px) {
  .aboutGallery+.aboutProduct {
  margin-top:120px
}


}

@media only screen and (min-width: 901px) {
  .aboutProduct_wrap {
  padding:0 7.9166666667%;
    margin-bottom: 50px;
}


}

@media only screen and (max-width: 900px) {
  .aboutProduct_wrap {
  padding:0 9.2307692308%;
  margin-bottom: 100px;
}


}

.aboutProductCard {
  background-color:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .aboutProductCard {
  padding:7.5% 0 10px 7%;
  display:flex;
  justify-content:space-between;
  flex-direction:row-reverse
}

[data-section=ipl] .aboutProductCard {
  padding-bottom:0
}

[data-section=luna] .aboutProductCard {
  padding-bottom:20px
}

[data-section=rin] .aboutProductCard {
  padding-bottom:25px
}

[data-section=brush] .aboutProductCard {
  padding-bottom:0
}

[data-section=bfs] .aboutProductCard {
  padding-bottom:30px
}

[data-section=cavitation] .aboutProductCard {
  padding-bottom:22px
}


}

@media only screen and (min-width: 901px) {
  [data-section=cavitation] .aboutProductCard_content {
  margin-top:30px
}

[data-section=men-bfs] .aboutProductCard_content {
  margin-top:10px
}


}

@media only screen and (max-width: 900px) {
  .aboutProductCard_content {
  padding:22px 14.7% 48px
}


}

.aboutProductCard_title {
  position:relative
}

.aboutProductCard_title:before {
    left: -25px;
    top: 10px;
    width: 4px;
    height: 4px;
    transform: rotate(45deg);
    border: 1px solid #1a1a1a;
    content: "";
    display: block;
    position: absolute;
}

@media only screen and (max-width: 900px) {
  .aboutProductCard_title:before {
  top:17px;
  left:-24px
}


}

.aboutProductCard_title span {
  display:block
}

.aboutProductCard_title span.is-main {
  line-height: 1;
  font-size:24px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .aboutProductCard_title span.is-main {
  line-height:160%
}


}

.aboutProductCard_title span.is-sub {
  font-size:12px;
  line-height:160%;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .aboutProductCard_title span.is-sub {
  margin-top:3px
}


}

.aboutProductCard_button {
  margin-top:39px
}

@media only screen and (max-width: 900px) {
  .aboutProductCard_button {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  [data-section=ipl] .aboutProductCard_image {
  width:51.2%;
  margin-top:-4.5%;
  margin-right:8.4%
}


}

@media only screen and (max-width: 900px) {
  [data-section=ipl] .aboutProductCard_image {
  padding:84px 0 0
}


}

@media only screen and (min-width: 901px) {
  [data-section=bfs] .aboutProductCard_image {
  width:46.6%;
  margin-top:-5%;
  margin-right:10.4%
}


}

@media only screen and (max-width: 900px) {
  [data-section=bfs] .aboutProductCard_image {
  padding:42px 0 0 0%;
  width:103%
}


}

@media only screen and (min-width: 901px) {
  [data-section=cavitation] .aboutProductCard_image {
  width:32.3%;
  margin-top:-3.6%;
  margin-right:16%
}


}

@media only screen and (max-width: 900px) {
  [data-section=cavitation] .aboutProductCard_image {
  padding:55px 0 0 16.4%;
  width:101.5%
}


}

@media only screen and (min-width: 901px) {
  [data-section=brush] .aboutProductCard_image {
  width:31.6%;
  margin-top:-6.3%;
  margin-right:14.8%
}


}

@media only screen and (max-width: 900px) {
  [data-section=brush] .aboutProductCard_image {
  padding:44px 0 0 26.9%;
  width:105.2%
}


}

@media only screen and (min-width: 901px) {
  [data-section=men-bfs] .aboutProductCard_image {
  width:30.6%;
  margin-top:-3.7%;
  margin-right:21.4%
}


}

@media only screen and (max-width: 900px) {
  [data-section=men-bfs] .aboutProductCard_image {
  padding:51px 7% 0 7%
}


}

@media only screen and (min-width: 901px) {
  [data-section=luna] .aboutProductCard_image {
  width:50.6%;
  margin-top:-7.3%;
  margin-right:0
}


}

@media only screen and (max-width: 900px) {
  [data-section=luna] .aboutProductCard_image {
  padding:34px 0 0 3%;
  width:124%
}


}

@media only screen and (min-width: 901px) {
  [data-section=rin] .aboutProductCard_image {
  width:41.2%;
  margin-top:-6.2%;
  margin-right:9.6%
}


}

@media only screen and (max-width: 900px) {
  [data-section=rin] .aboutProductCard_image {
  padding:29px 0 0 9%;
  width:123%
}


}

.challengeAnchor a {
  max-width:720px;
  margin:70px auto 160px;
  background-color:#1a1a1a;
  border-radius:4px;
  padding:35px 0 30px;
  position:relative;
  display:block
}

@media only screen and (max-width: 900px) {
  .challengeAnchor a {
  width:81.5384615385%;
  max-width:318px;
  padding:28px 7% 20px;
  margin:60px auto 80px
}


}

@media only screen and (min-width: 901px) {
  .challengeAnchor_wrap {
  padding-left:54%
}


}

.challengeAnchor_image {
  position:absolute;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .challengeAnchor_image {
  width:312px;
  left:20px;
  top:-25px
}


}

@media only screen and (max-width: 900px) {
  .challengeAnchor_image {
  width:134px;
  right:-6%;
  top:-20px
}


}

.challengeAnchor_content {
  position:relative;
  z-index:2
}

.challengeAnchor_title {
  color:#fff
}

.challengeAnchor_title span {
  display:block
}

.challengeAnchor_title span.is-en {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .challengeAnchor_title span.is-en {
  font-size:10px
}


}

.challengeAnchor_title span.is-ja {
  font-size:20px;
  letter-spacing:.08em;
  line-height:150%;
  margin-top:10px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .challengeAnchor_title span.is-ja {
  font-size:16px;
  line-height:130%;
  letter-spacing:.06em
}


}

.challengeAnchor_arrow {
  width:28px;
  height:28px;
  background-color:#5a5a5a;
  border-radius:4px 0 4px 0;
  display:flex;
  justify-content:center;
  align-items:center;
  position:absolute;
  right:0;
  bottom:0
}

.challengeAnchor_arrow:before {
  content:""
}

.challengeAnchor_arrow::before {
  display:block;
  transform:rotate(180deg);
  font-size:10px;
  color:#fff
}

.challengeAnchor {
  perspective:800px
}

.challengeAnchor a {
  transition:1.6s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  display:block;
  transform:rotateX(-10deg) translateY(30px) scale(0.96)
}

.challengeAnchor.inView a {
  opacity:1;
  transform:none
}

.challengeAnchor a:before {
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

@media only screen and (min-width: 901px) {
  .challengeAnchor a:hover:before {
  opacity:1
}


}

.challengeBanner {
  position:relative
}

@media only screen and (min-width: 901px) {
  .challengeBanner {
  max-width:1372px;
  padding:0 80px;
  justify-content:flex-end;
  display:flex;
  margin:330px auto 210px
}


}

@media only screen and (max-width: 900px) {
  .challengeBanner {
  width:91.7948717949%;
  margin:67.4358974359vw auto 120px
}


}

.challengeBanner_anchor {
  position:absolute;
  top:-200px
}

.challengeBanner_wrap {
  border-radius:8px 8px 0 8px;
  background-color:#f8f8f3;
  position:relative
}

@media only screen and (min-width: 901px) {
  .challengeBanner_wrap {
  width:79.2079207921%;
  padding:90px 20px 80px 0;
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (max-width: 900px) {
  .challengeBanner_wrap {
  padding:51.2820512821vw 5% 40px
}


}

@media only screen and (min-width: 901px) {
  .challengeBanner_content {
  width:52.9166666667%
}


}

.challengeBanner_image {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .challengeBanner_image {
  top:-194px;
  width:624px;
  left:5.6%
}


}

@media(max-width: 1369px) {
  .challengeBanner_image {
  width:43.3333333333vw
}


}

@media only screen and (max-width: 900px) {
  .challengeBanner_image {
  width:91.7948717949vw;
  top:-47.1794871795vw;
  left:0
}


}

.challengeBanner_title span {
  display:block
}

.challengeBanner_title span.is-en {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.challengeBanner_title span.is-ja {
  margin-top:20px;
  font-size:31px;
  letter-spacing:.08em;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .challengeBanner_title span.is-ja {
  font-size:22px
}


}

.challengeBanner_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .challengeBanner_body {
  margin-top:10px
}


}

.challengeBanner_body p {
  font-size:14px;
  line-height:200%;
  letter-spacing:.12em
}

.challengeBanner_thumbnail {
  margin-top:30px
}

@media only screen and (min-width: 901px) {
  .challengeBanner_thumbnail {
  max-width:364px
}


}

@media only screen and (max-width: 900px) {
  .challengeBanner_thumbnail {
  width:81.5384615385vw
}


}

.challengeBanner_button {
  position:absolute;
  right:0;
  bottom:-48px
}

.challengeBanner_button a {
  background-color:#1a1a1a;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:0 0 4px 4px;
  width:222px;
  height:48px;
  color:#fff
}

.challengeBanner_button a:after {
  content:""
}

.challengeBanner_button a:after {
  font-size:7px;
  margin-left:25px
}

@media only screen and (max-width: 900px) {
  .challengeBanner_button a:after {
  margin-left:15px
}


}

.challengeBanner_button a span {
  font-size:14px
}

.challengeBanner_image {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1);
  opacity:0;
  transform:translateX(30px) scale(0.98)
}

.challengeBanner_wrap {
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) .2s;
  opacity:0;
  transform:translateX(-30px) scale(0.98)
}

.challengeBanner.inView .challengeBanner_image,.challengeBanner.inView .challengeBanner_wrap {
  transform:none;
  opacity:1
}

.challengeBanner_button a span {
  position:relative;
  z-index:2
}

.challengeBanner_button a::after {
  z-index:1
}

.challengeBanner_button a::before {
  z-index:0;
  background:linear-gradient(137deg, #1e2944 0%, #315970 100%);
  content:"";
  width:100%;
  height:100%;
  left:0;
  top:0;
  position:absolute;
  display:block;
  z-index:0;
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0
}

@media only screen and (min-width: 901px) {
  .challengeBanner_button a:hover::before {
  opacity:1
}


}

.traitBackground {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  height:100lvh;
  background-color:#fff
}

.traitBackground_content {
  height:100vh;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.traitBackground_content img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.traitBackground_content::before {
  content:"";
  display:block;
  background-color:#fff;
  top:0;
  left:0;
  z-index:2;
  position:absolute
}

@media only screen and (min-width: 901px) {
  .traitBackground_content::before {
  width:42.8472222222%;
  height:100%
}


}

@media only screen and (max-width: 900px) {
  .traitBackground_content::before {
  width:100%;
  height:100%
}


}

.traitBackground_content::after {
  content:"";
  position:absolute;
  z-index:1;
  left:0;
  display:block
}

@media only screen and (min-width: 901px) {
  .traitBackground_content::after {
  top:0;
  width:48.125%;
  height:100%;
  background:linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%)
}


}

@media only screen and (max-width: 900px) {
  .traitBackground_content::after {
  bottom:0;
  width:100%;
  height:70%;
  background:linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%)
}


}

.traitBackground_image {
  position:absolute;
  z-index:0;
  right:0;
  top:0;
  width:100%;
  height:100%;
  overflow:hidden
}

.traitBackground_image video {
  position:absolute;
  object-fit:cover;
  width:100%;
  height:100%;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:2;
  transition:.8s cubic-bezier(0.39, 0.575, 0.565, 1)
}

@media only screen and (max-width: 900px) {
  .traitBackground_image video {
  width:140%;
  left:50%;
}


}

@media only screen and (min-width: 901px) {
  .is-inview .traitBackground_image video {
  left:65%
}


}

.traitBackground_image picture {
  position:absolute;
  top:0;
  right:0;
  z-index:1;
  width:100%;
  height:100%;
  max-width:none;
  transition:.8s cubic-bezier(0.39, 0.575, 0.565, 1);
  transform:scale(1.05)
}

@media only screen and (min-width: 901px) {
  .is-inview .traitBackground_image picture {
  width:80%;
  transform:scale(1)
}


}

[data-current-section="0"][data-current-state="0"] [data-section="1"] .traitBackground {
  background-color:transparent
}

[data-current-section="1"][data-current-state="0"] [data-section="2"] .traitBackground {
  background-color:transparent
}

[data-current-section="2"][data-current-state="0"] [data-section="3"] .traitBackground {
  background-color:transparent
}

[data-current-section="3"][data-current-state="0"] [data-section="4"] .traitBackground {
  background-color:transparent
}

[data-current-section="4"][data-current-state="0"] [data-section="5"] .traitBackground {
  background-color:transparent
}

[data-current-section="5"][data-current-state="0"] [data-section="6"] .traitBackground {
  background-color:transparent
}

[data-current-section="6"][data-current-state="0"] [data-section="7"] .traitBackground {
  background-color:transparent
}

.traitBackground_content::after {
  transition:1s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.is-inview .traitBackground_content::after {
  opacity:0
}

.traitBackground_content::before {
  transition:1.6s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .traitBackground_content::before {
  transform:scaleX(0);
  transform-origin:left center
}


}

@media only screen and (max-width: 900px) {
  .traitBackground_content::before {
  transform:scaleY(0);
  transform-origin:center bottom
}


}

.is-inview .traitBackground_content::before {
  transform:scaleX(1)
}

.traitBanner {
  border-radius:2px;
  overflow:hidden;
  margin-top:80px;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px)
}

[data-page=bfs] .traitBanner {
  height:116px
}

.traitBanner[data-theme=purple] {
  background-color:rgba(111,109,131,.4)
}

.trait_tag+.traitBanner {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .traitBanner {
  margin-top:50px
}


}

.traitBanner a {
  display:flex;
  align-items:center;
  cursor:pointer;
  background-color:rgba(18,43,63,.4)
}

.traitBanner.wide {
  aspect-ratio: 400 / 125;
}

@media only screen and (max-width: 900px) {
  .traitBanner.wide {
  aspect-ratio: auto;
}
}

.traitBanner.wide a {
  display:flex;
  align-items:stretch;
  cursor:pointer;
  background-color:rgba(18,43,63,.4);
  height: 100%;
}

[data-page=bfs] .traitBanner a {
  height:100%
}

.traitBanner_image {
  width:43.0107526882%;
  height:100%;
  background-color:#fff
}

@media only screen and (max-width: 900px) {
  .traitBanner_image {
  width:48.3870967742%
}


}

.traitBanner_video {
  width:43.0107526882%
}

.traitBanner.wide .traitBanner_video>div {
  height: 100%;
}

@media only screen and (max-width: 900px) {
  .traitBanner_video {
  width:48.3870967742%
}


}

[data-page=bfs] .traitBanner_video {
  overflow:hidden;
  height:100%
}

[data-page=bfs] .traitBanner_video>div {
  height:100%
}

.traitBanner.wide .traitBanner_video>div>video {
  height: 100%;
  object-fit: cover;
  object-position: top center;
}

.traitBanner_video.wide>div>video {
  width: 170%;
  display:block
}

[data-page=bfs] [data-section="2"] .traitBanner_video>div>video {
  height:200%;
  margin:-22% 0 0 -66%;
  max-width: none;
}

[data-page=bfs] [data-section="3"] .traitBanner_video>div>video {
  height:180%;
  margin:-28% 0 0 -55%;
    max-width: none;
}

[data-page=bfs] [data-section="4"] .traitBanner_video>div>video {
  height:200%;
  margin:-24% 0 0 -69%;
    max-width: none;
}

[data-page=bfs] [data-section="5"] .traitBanner_video>div>video {
  height:200%;
  margin:-24% 0 0 -69%;
    max-width: none;
}

.traitBanner_content {
  width:56.9892473118%;
  padding-left:6%;
  padding-right:6%
}

.traitBanner.wide .traitBanner_content {
  width:56.9892473118%;
  padding-left:6%;
  padding-right:6%;
  padding-top: 20px;
  padding-bottom: 20px;
}

@media only screen and (max-width: 900px) {
  .traitBanner_content {
  width:51.6129032258%;
  padding-left:5%;
  padding-right:5%
}


}

.traitBanner_body {
  font-size:14px;
  line-height:160%;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .traitBanner_body {
  font-size:12px
}


}

[data-page=rin] .traitBanner_body {
  font-size:12px
}

@media only screen and (max-width: 900px) {
  .traitBanner_body br {
  display:none
}

.traitBanner_body br.is-blockMobile {
  display:block
}


}

.traitBanner_body sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .traitBanner_body sup {
  font-size:8px
}


}

.traitBanner_link {
  margin-top:15px;
  border-bottom:1px solid #fff;
  padding-bottom:4px;
  display:flex;
  align-items:center;
  width:fit-content
}

.traitBanner_link:after {
  content:""
}

.is-blank .traitBanner_link:after {
  content:""
}

.is-blank .traitBanner_link::after {
  font-size:11px
}

@media only screen and (max-width: 900px) {
  .traitBanner_link {
  padding-bottom:2px
}


}

.traitBanner_link::after {
  color:#fff;
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .traitBanner_link::after {
  font-size:8px
}


}

.traitBanner_link span {
  display:block;
  font-size:12px;
  margin-right:8px;
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .traitBanner_link span {
  font-size:10px;
  margin-right:5px
}


}

.traitBanner {
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (min-width: 901px) {
  .traitBanner:hover {
  background-color:rgba(18,43,63,.5)
}


}

.traitGhost {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100lvh;
  pointer-events:none
}

.traitGhost::before {
  display:block;
  right:0;
  top:0;
  width:50px;
  height:100%;
  background-color:green;
  display:block;
  position:absolute;
  z-index:3;
  opacity:.8
}

[data-current-state="1"] .traitGhost {
  display:none
}

.traitGhost_image {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:none
}

.traitGhost_image video {
  position:absolute;
  object-fit:cover;
  width:100%;
  height:100%;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:2
}

@media only screen and (max-width: 900px) {
  .traitGhost_image video {
  width:140%;
  left:70%
}


}

.traitGhost_image picture {
  transform:scale(1.05);
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.traitGhost_image picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

[data-current-section="1"] .traitGhost_image:nth-child(1) {
  display:block
}

[data-current-section="2"] .traitGhost_image:nth-child(2) {
  display:block
}

[data-current-section="3"] .traitGhost_image:nth-child(3) {
  display:block
}

[data-current-section="4"] .traitGhost_image:nth-child(4) {
  display:block
}

[data-current-section="5"] .traitGhost_image:nth-child(5) {
  display:block
}

[data-current-section="6"] .traitGhost_image:nth-child(6) {
  display:block
}

[data-current-section="7"] .traitGhost_image:nth-child(7) {
  display:block
}

.traitMenu {
  background-color:#f8f8f3;
  position:fixed;
  left:0;
  bottom:0;
  width:100%;
  height:30px
}

@media only screen and (min-width: 901px) {
  .traitMenu {
  display:flex;
  justify-content:center;
  align-items:center
}


}

@media only screen and (max-width: 900px) {
  .traitMenu {
  height:calc(env(safe-area-inset-bottom) + 64px)
}


}

.traitMenu_wrap {
  overflow-x:auto;
  white-space:nowrap;
  overflow-scrolling:touch;
  height:100%
}

.traitMenu_list {
  display:flex;
  justify-content:center;
  white-space:nowrap;
  width:fit-content;
  height:100%
}

@media only screen and (min-width: 901px) {
  .traitMenu_list {
  align-items:center
}


}

@media only screen and (max-width: 900px) {
  .traitMenu_list {
  padding-top:18px
}


}

.traitMenu_list>li {
  margin-left:13px;
  margin-right:13px
}

.traitMenu_list>li.has-child {
  display:flex
}

@media only screen and (min-width: 901px) {
  .traitMenu_list>li.has-child {
  align-items:center
}


}

.traitMenu_list>li>a>span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.traitMenu_list>li>a.is-blank {
  display:flex;
  align-items:flex-start
}

.traitMenu_list>li>a.is-blank:after {
  content:""
}

.traitMenu_list>li>a.is-blank::after {
  padding-left:3px;
  font-size:5px;
  color:gray
}

.traitMenu_current,[data-current-section="7"] .traitMenu_dot>div:nth-child(7) a,[data-current-section="6"] .traitMenu_dot>div:nth-child(6) a,[data-current-section="5"] .traitMenu_dot>div:nth-child(5) a,[data-current-section="4"] .traitMenu_dot>div:nth-child(4) a,[data-current-section="3"] .traitMenu_dot>div:nth-child(3) a,[data-current-section="2"] .traitMenu_dot>div:nth-child(2) a,[data-current-section="1"] .traitMenu_dot>div:nth-child(1) a {
  opacity:1;
  pointer-events:none
}

.traitMenu_dot {
  display:flex;
  margin-left:5px
}

@media only screen and (max-width: 900px) {
  .traitMenu_dot {
  padding-top:5px
}


}

.traitMenu_dot>div {
  margin:0 2px
}

.traitMenu_dot>div a {
  width:4px;
  height:4px;
  border-radius:50%;
  background-color:gray;
  opacity:.2;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1);
  display:block
}

.traitMenu_dot a {
  transition:.6s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .traitMenu_dot a:hover {
  opacity:1
}


}

.traitMenu_list>li>a {
  transition:.6s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .traitMenu_list>li>a:hover {
  opacity:.6
}


}

.traitMenu {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

.traitMenu.is-hidden {
  transform:translateY(100%)
}

.traitModal {
  background-color:#fff;
  position:relative;
  z-index:1
}

.traitModal_wrap {
  position:relative
}

@media only screen and (min-width: 901px) {
  .traitModal_wrap {
  display:flex;
  align-items:center;
  height:550px;
  width:936px
}


}

@media only screen and (max-width: 900px) {
  .traitModal_wrap {
  width:91.7948717949vw
}


}

.traitModal_image {
  position:relative;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  .traitModal_image {
  width:50%;
  height:100%
}


}

@media only screen and (max-width: 900px) {
  .traitModal_image {
  height:68.7179487179vw
}


}

@media only screen and (max-width: 900px) {
  .traitModal_image.is-vertical {
  height:107.6923076923vw
}


}

.traitModal_video {
  position:relative;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .traitModal_video {
  width:50%;
  height:100%
}


}

@media only screen and (max-width: 900px) {
  .traitModal_video {
  height:68.7179487179vw
}

[data-page=rin] [data-modal-content=trait1] .traitModal_video {
  height:51.7948717949vw
}


}

.traitModal_video video {
  position:absolute;
  top:50%;
  left:50%;
  width:auto;
  height:100%;
  transform:translate(-50%, -50%);
  display:block
}

@media only screen and (max-width: 900px) {
  .traitModal_video video {
  width:100%;
  height:auto
}

[data-page=bfs] .traitModal_video video {
  width:auto;
  height:100%
}


}

.traitModal_main {
  position:relative
}

@media only screen and (min-width: 901px) {
  .traitModal_main {
  width:50%
}


}

@media only screen and (max-width: 900px) {
  .traitModal_main {
  height:38vh
}


}

@media only screen and (min-width: 901px) {
  .traitModal_content {
  padding-left:16%;
  padding-right:16%
}


}

@media only screen and (max-width: 900px) {
  .traitModal_content {
  padding:30px 10.3% 30px;
  overflow:hidden;
  height:100%;
  overflow-y:scroll;
  -webkit-overflow-scrolling:touch
}


}

.traitModal_title {
  font-size:18px;
  line-height:150%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .traitModal_title {
  font-size:18px;
  line-height:180%
}


}

.traitModal_title sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .traitModal_title sup {
  font-size:9px
}


}

.traitModal_body {
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .traitModal_body {
  margin-top:15px
}


}

.traitModal_body p {
  font-size:13px;
  line-height:170%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .traitModal_body p {
  font-size:14px;
  line-height:180%
}


}

.traitModal_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .traitModal_body p sup {
  font-size:8px
}


}

.traitModal_body ol {
  margin-top:3px
}

.traitModal_body ol li {
  padding-left:18px;
  position:relative;
  font-size:13px;
  line-height:170%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .traitModal_body ol li {
  font-size:14px;
  line-height:180%
}


}

.traitModal_body ol li:before {
  position:absolute;
  left:2px;
  top:12px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

[data-page=ipl] .traitModal_product {
  width:140px;
  position:absolute;
  right:-40px;
  bottom:-90px
}

@media only screen and (max-width: 900px) {
  [data-page=ipl] .traitModal_product {
  width:87px;
  right:18px;
  bottom:-38px
}


}

[data-page=bfs] [data-modal-content=trait2] .traitModal_product {
  width:440px;
  position:absolute;
  left:101px;
  bottom:0;
  z-index:3
}

@media only screen and (max-width: 900px) {
  [data-page=bfs] [data-modal-content=trait2] .traitModal_product {
  width:245px;
  right:0;
  top:auto;
  bottom:0
}


}

.traitModalExplain {
  margin-top:30px
}

.traitModalExplain_illust>div {
  overflow:hidden;
  border-radius:4px;
  border:1px solid #ccc;
  width:fit-content
}

.traitModalExplain_caption {
  text-align:center;
  margin-top:10px
}

.traitModalExplain_caption p {
  font-size:11px;
  color:gray;
  letter-spacing:.12em
}

.traitModal {
  opacity:0;
  transition:1.8s cubic-bezier(0.19, 1, 0.22, 1);
  transition-delay:0s;
  transform:translateY(-40px)
}

[data-modal-state=visible] .traitModal {
  opacity:1;
  transition-delay:.5s;
  transform:translateY(0)
}

@media only screen and (min-width: 901px) {
  .traitNote {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%;
  margin-top:345px
}


}

@media only screen and (max-width: 900px) {
  .traitNote {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

.traitNote ul {
  margin-top:200px;
  padding-top:40px;
  max-width:1212px;
  margin-left:auto;
  margin-right:auto;
  border-top:1px solid #ccc
}

.traitNote ul li {
  font-size:12px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (min-width: 901px) {
  .traitAttention {
  padding:0 7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .traitAttention {
  padding:110px 9.2307692308% 0
}


}

.traitAttention ul {
  padding-top:40px;
  max-width:1212px;
  margin-left:auto;
  margin-right:auto;
  border-top:1px solid #ccc
}

@media only screen and (min-width: 901px) {
  .traitAttention ul {
  margin-top:200px
}


}

.traitAttention ul li {
  font-size:12px;
  line-height:180%;
  letter-spacing:.12em;
  color:gray
}

.quickBeauty {
  margin-top:300px
}

@media only screen and (max-width: 900px) {
  .quickBeauty {
  width:91.7948717949%;
  margin:280px auto 0
}


}

.quickBeauty_link {
  background-color:#f8f8f3;
  position:relative;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .quickBeauty_link:hover {
  background-color:#efefe7
}


}

@media only screen and (min-width: 901px) {
  .quickBeauty_link {
  display:flex;
  justify-content:space-between;
  width:92.0833333333%;
  border-radius:0 4px 4px 0;
  padding:120px 8%
}


}

@media only screen and (max-width: 900px) {
  .quickBeauty_link {
  border-radius:2px;
  display:block;
  overflow:hidden
}


}

.quickBeauty_video {
  position:relative;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .quickBeauty_video {
  border-radius:4px;
  width:40.4255319149%
}


}

@media only screen and (max-width: 900px) {
  .quickBeauty_video {
  width:100%;
  height:51.2820512821vw
}


}

.quickBeauty_video video {
  position:absolute;
  object-fit:cover;
  width:100%;
  height:100%;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  z-index:2;
  transition:.8s cubic-bezier(0.39, 0.575, 0.565, 1)
}

@media only screen and (max-width: 900px) {
  .quickBeauty_video video {
  width:140%;
  left:70%
}

 .quickBeauty_video-box video{
  left:50%;
 }


}

@media only screen and (min-width: 901px) {
  .is-inview .quickBeauty_video video {
  left:65%
}


}

@media only screen and (min-width: 901px) {
  .quickBeauty_content {
  width:52.1276595745%
}


}

@media only screen and (max-width: 900px) {
  .quickBeauty_content {
  padding:50px 5% 90px
}


}

.quickBeauty_headline span {
  display:block
}

.quickBeauty_headline span.is-jp {
  font-size:16px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased;
  letter-spacing:.16em;
  font-feature-settings:normal
}

@media only screen and (max-width: 900px) {
  .quickBeauty_headline span.is-jp {
  font-feature-settings:"palt"
}


}

.quickBeauty_headline span.is-en {
  width:228px;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .quickBeauty_headline span.is-en {
  width:182px
}


}

.quickBeauty_body {
  margin-top:20px
}

.quickBeauty_body p {
  font-size:14px;
  letter-spacing:.08em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .quickBeauty_body p {
  font-size:12px;
  letter-spacing:.12em
}


}

.quickBeauty .textLink {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .quickBeauty .textLink {
  right:1.8%;
  bottom:33px
}


}

@media only screen and (max-width: 900px) {
  .quickBeauty .textLink {
  right:2.8%;
  bottom:44px
}


}

.quickBeautyCompare {
  background-color:#fff;
  padding:20px 5%;
  border-radius:2px;
  margin-top:30px
}

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


}

.quickBeautyCompare_image {
  width:32.6642335766%
}

@media only screen and (max-width: 900px) {
  .quickBeautyCompare_image {
  width:64.5390070922%
}


}

@media only screen and (min-width: 901px) {
  .quickBeautyCompare_content {
  width:58.3941605839%
}


}

@media only screen and (max-width: 900px) {
  .quickBeautyCompare_content {
  margin-top:20px
}


}

.quickBeautyCompare_title {
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .quickBeautyCompare_title {
  font-size:10px
}


}

.quickBeautyCompare_list {
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .quickBeautyCompare_list {
  margin-left:10px
}


}

.quickBeautyCompare_list li {
  font-size:12px;
  letter-spacing:.08em;
  line-height:180%;
  position:relative
}

@media only screen and (max-width: 900px) {
  .quickBeautyCompare_list li {
  font-size:10px
}


}

.quickBeautyCompare_list li::before {
  content:"・";
  position:absolute;
  left:-12px;
  top:0;
  font-size:20px
}

.traitSide {
  position:fixed;
  left:8px;
  top:calc(50% - 20px);
  mix-blend-mode:difference;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1);
  transform:translateX(-100%)
}

@media only screen and (max-width: 900px) {
  .traitSide {
  left:-4px
}


}

[data-current-scene=trait] .traitSide {
  transform:translateX(0)
}

.traitSide.is-hidden {
  transform:translateX(-100%)
}

.traitSide_content p {
  font-size:12px;
  transform:rotate(270deg);
  display:flex;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.traitSide_content p span {
  display:block
}

.traitSide_content p span.is-current {
  color:gray;
  margin-right:4px;
  width:16px
}

.traitSide_content p span.is-total {
  color:#fff
}

.trait {
  position:relative
}

.trait_pop {
  position:absolute;
  right:0;
  top:0;
  z-index:10000;
  width:450px
}

[data-current-section="1"][data-current-state="0"] .trait[data-section="2"] .traitBackground_image {
  display:none
}

[data-current-section="2"][data-current-state="0"] .trait[data-section="3"] .traitBackground_image {
  display:none
}

[data-current-section="3"][data-current-state="0"] .trait[data-section="4"] .traitBackground_image {
  display:none
}

[data-current-section="4"][data-current-state="0"] .trait[data-section="5"] .traitBackground_image {
  display:none
}

[data-current-section="5"][data-current-state="0"] .trait[data-section="6"] .traitBackground_image {
  display:none
}

[data-current-section="6"][data-current-state="0"] .trait[data-section="7"] .traitBackground_image {
  display:none
}

.trait_content {
  padding-top:100lvh;
  position:relative;
  z-index:2;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .trait_content {
  padding-bottom:145px;
  width:400px;
  margin-left:7.7777777778%
}


}

@media only screen and (max-width: 900px) {
  .trait_content {
  width:81.5384615385%;
  margin-left:auto;
  margin-right:auto
}


}

.trait_headline {
  font-size:40px;
  line-height:150%;
  letter-spacing:.08em;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .trait_headline {
  font-size:32px
}


}

@media only screen and (max-width: 900px) {
  .trait_headline[data-size-mobile="32"] {
  font-size:32px
}


}

.trait_headline sup {
  font-size:10px;
  position:relative;
  top:-0.8em
}

@media only screen and (max-width: 900px) {
  .trait_headline sup {
  font-size:8px;
  top:-0.9em
}


}

.trait_lead {
  font-size:18px;
  line-height:180%;
  margin-top:20px;
  letter-spacing:.12em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .trait_lead {
  font-size:16px
}


}

.trait_lead sup {
  font-size:8px;
  position:relative;
  top:-0.1em
}

@media only screen and (max-width: 900px) {
  .trait_lead sup {
  font-size:7px
}


}

.trait_spec {
  margin-top:50px;
  display:flex
}

.trait_spec+.trait_spec {
  margin-top:0
}

@media only screen and (max-width: 900px) {
  .trait_spec.is-mobileBlock {
  display:block
}


}

[data-section="5"] .trait_spec {
  display:block
}

@media only screen and (max-width: 900px) {
  .trait_spec {
  margin-top:20px
}


}

.trait_spec p {
  font-size:14px;
  line-height:1.9
}

@media only screen and (max-width: 900px) {
  .trait_spec p {
  font-size:12px
}


}

.trait_spec p:first-child {
  margin-right:16px;
  white-space:nowrap
}

.trait_spec p sup {
  font-size:8px;
  position:relative;
  white-space:nowrap
}

@media only screen and (max-width: 900px) {
  .trait_spec p sup {
  font-size:7px
}


}

.trait_body {
  margin-top:90px
}

@media only screen and (max-width: 900px) {
  .trait_body {
  margin-top:50px
}


}

.trait_tag+.trait_body {
  margin-top:40px
}

.traitBanner+.trait_body {
  margin-top:40px
}

.trait_body p {
  font-size:14px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .trait_body p {
  font-size:13px
}


}

.trait_body p sup {
  font-size:8px
}

@media only screen and (max-width: 900px) {
  .trait_body p sup {
  font-size:7px
}


}

.trait_attention {
  margin-top:15px;
  display:flex;
  flex-wrap:wrap
}

.trait_attention dt,.trait_attention dd {
  font-size:10px;
  line-height:170%
}

.trait_attention dt {
  /* width:30px */
}

.trait_attention dd {
  width:calc(100% - 30px)
}

.trait_tag {
  display:flex;
  flex-wrap:wrap;
  margin-top:22px
}

@media only screen and (max-width: 900px) {
  .trait_tag {
  margin-top:20px
}


}

.trait_tag li {
  margin:0 9px 8px 0
}

.trait_tag li span {
  display:block;
  font-size:14px;
  background-color:#fff;
  height:20px;
  border-radius:10px;
  background-color:rgba(177,191,203,.2);
  display:flex;
  align-items:center;
  padding-left:10px;
  padding-right:10px;
  line-height:1
}

@media only screen and (max-width: 900px) {
  .trait_tag li span {
  font-size:13px
}

[data-page=rin] .trait_tag li span {
  font-size:14px
}


}

.trait_lpHeadline span {
  display:block
}

.trait_lpHeadline span.is-ja {
  font-size:18px
}

@media only screen and (max-width: 900px) {
  .trait_lpHeadline span.is-ja {
  font-size:14px
}


}

.trait_lpHeadline span.is-en {
  margin-top:15px
}

.trait_lpHeadline span.is-en svg {
  display:block;
  width:262px;
  height:40px
}

.trait_blank {
  height:20vh
}

[data-theme=dark] .traitBackground {
  background-color:#363636
}

[data-theme=dark] .traitBackground_content::before {
  background-color:#363636
}

[data-theme=dark] .trait_content * {
  color:#fff
}

.trait_content {
  color:#fff;
  pointer-events: none;
}

.is-inview .trait_content {
  color:#1a1a1a
}

.trait_headline,.trait_lead,.trait_spec,.trait_body,.trait_tag {
  transition:.6s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.trait_lpHeadline span.is-ja {
  transition:.6s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.is-inview .trait_lpHeadline span.is-ja {
  color:#1a1a1a
}

.trait_lpHeadline span.is-en path {
  fill:#fff;
  transition:.6s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.is-inview .trait_lpHeadline span.is-en path {
  fill:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .tecAbility {
  padding-top:120px;
  padding:120px 10.4166666667%
}


}

@media only screen and (max-width: 900px) {
  .tecAbility {
  padding:40px 0;
  margin-top:-60px
}


}

@media only screen and (min-width: 901px) {
  .tecAbility_wrap {
  max-width:1212px;
  margin-left:auto;
  margin-right:auto;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (min-width: 901px) {
  .tecAbility_side {
  width:22.1052631579%;
  padding-left:30px;
  margin-top:-20px
}


}

@media only screen and (max-width: 900px) {
  .tecAbility_side {
  width:82.0512820513%;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .tecAbility_content {
  width:77.8947368421%
}


}

@media only screen and (max-width: 900px) {
  .tecAbility_content {
  margin-top:40px;
  overflow-x:scroll;
  padding-left:8.9743589744%;
  padding-right:8.9743589744%;
  -webkit-overflow-scrolling:touch
}


}

@media only screen and (max-width: 900px) {
  .tecAbility_graph {
  width:730px;
  white-space:nowrap
}


}

@media only screen and (max-width: 900px) {
  .tecAbility_graph {
  padding-bottom:10px
}


}

@media only screen and (min-width: 901px) {
  .tecAbility_image {
  width:62.1052631579%
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .tecAbility_image {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

.tecAbility {
  perspective:1500px
}

.tecAbility>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecAbility>* {
  opacity:1;
  transform:none
}

.tecAbility.inView>* {
  opacity:1;
  transform:none
}

.abilityBanner {
  margin-top:60px
}

.abilityBanner_link {
  padding:10px 5% 10px 5%;
  display:flex;
  align-items:center;
  background-color:#fff;
  border-radius:4px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .abilityBanner_link {
  padding:40px 4% 30px 4%;
  border-radius:2px
}


}

.abilityBanner_image {
  width:137px
}

@media only screen and (max-width: 900px) {
  .abilityBanner_content {
  margin-left:-30px
}


}

.abilityBanner_title {
  font-size:20px;
  margin-bottom:20px
}

@media only screen and (max-width: 900px) {
  .abilityBanner_title {
  font-size:16px;
  line-height:150%;
  margin-bottom:10px
}


}

.abilityBanner_label {
  display:flex;
  align-items:flex-start;
  position:absolute;
  right:1.3%;
  top:12px
}

.abilityBanner_label:after {
  content:""
}

@media only screen and (max-width: 900px) {
  .abilityBanner_label {
  right:3.7%;
  top:14px
}


}

.abilityBanner_label span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.abilityBanner_label::after {
  padding-left:3px;
  font-size:5px;
  color:gray
}

@media only screen and (max-width: 900px) {
  .abilityBanner .textLink div span {
  font-size:13px;
  letter-spacing:0
}


}

@media only screen and (min-width: 901px) {
  .tecArticle {
  padding:0 80px;
  margin-top:140px
}


}

@media only screen and (max-width: 900px) {
  .tecArticle {
  padding:0 4.1025641026%;
  margin:40px auto
}


}

.tecArticle_wrap {
  background-color:#f8f8f3;
  border-radius:4px 4px 0 0;
  position:relative;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .tecArticle_wrap {
  max-width:1212px;
  padding:95px 7% 80px;
  display:flex;
  flex-direction:row-reverse;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .tecArticle_wrap {
  padding:24px 5.5865921788%
}

#adjustment .tecArticle_wrap {
  padding-top:70px;
  padding-bottom:20px
}


}

@media only screen and (min-width: 901px) {
  .tecArticle_wrap.is-noReverse {
  flex-direction:row
}


}

@media only screen and (min-width: 901px) {
  .tecArticle_wrap[\:has\(.tecArticleEms\)] {
  padding-top:120px;
  padding-bottom:120px
}

.tecArticle_wrap:has(.tecArticleEms) {
  padding-top:120px;
  padding-bottom:120px
}


}

.tecArticle_wrap::before {
  content:"";
  display:block;
  width:100%;
  height:48px;
  bottom:-48px;
  background-color:#1a1a1a;
  position:absolute;
  left:0;
  z-index:1;
  border-radius:0 0 4px 4px
}

@media only screen and (max-width: 900px) {
  .tecArticle_wrap::before {
  height:28px;
  bottom:-28px
}


}

.tecArticle_image {
  overflow:hidden;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .tecArticle_image {
  width:51.8199233716%
}


}

@media only screen and (max-width: 900px) {
  .tecArticle_image {
  width:100%
}


}

@media only screen and (min-width: 901px) {
  .tecArticle_content {
  width:35.632183908%
}


}

@media only screen and (max-width: 900px) {
  .tecArticle_content {
  padding:40px 0 15px
}


}

@media only screen and (min-width: 901px) {
  .tecArticleEms+.tecArticle_content {
  width:48.275862069%
}


}

.tecArticle_body {
  margin-top:10px
}

.tecArticle_body p {
  font-size:14px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .tecArticle_body p {
  line-height:170%
}


}

.tecArticle_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .tecArticle_body p sup {
  font-size:8px
}


}

@media only screen and (min-width: 901px) {
  .tecArticleEms {
  width:46.204620462%
}

.tecArticleEms>div {
  width:455px
}


}

@media only screen and (min-width: 901px)and (max-width: 1379px) {
  .tecArticleEms>div {
  width:100%
}


}

.tecArticle {
  perspective:1500px
}

.tecArticle>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecArticle>* {
  opacity:1;
  transform:none
}

.tecArticle.inView>* {
  opacity:1;
  transform:none
}

.tecBackground {
  position:relative;
  background-color:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .tecBackground[data-background-section="1"] {
  margin-top:280px;
  padding-bottom:350px
}


}

@media only screen and (max-width: 900px) {
  .tecBackground[data-background-section="1"] {
  margin-top:150px;
  padding-bottom:190px
}

.tecBackground[data-background-section="1"] .tecBackground_image {
  position:relative;
  z-index:2
}


}

@media only screen and (min-width: 901px) {
  .tecBackground[data-background-section="2"] {
  margin-top:140px
}


}

@media only screen and (max-width: 900px) {
  .tecBackground[data-background-section="2"] {
  margin-top:60px
}


}

@media only screen and (min-width: 901px) {
  .tecBackground[data-background-section="3"] {
  margin-top:188px
}


}

@media only screen and (max-width: 900px) {
  .tecBackground[data-background-section="3"] {
  margin-top:148px
}


}

@media only screen and (min-width: 901px) {
  .tecBackground[data-background-section="4"] {
  padding-bottom:160px
}


}

@media only screen and (max-width: 900px) {
  .tecBackground[data-background-section="4"] {
  margin-top:148px
}


}

.tecBackground_image {
  width:74.5833333333vw
}

@media only screen and (max-width: 900px) {
  .tecBackground_image {
  width:90.7692307692vw
}


}

.tecBackground_image>div {
  overflow:hidden;
  border-radius:0 4px 4px 0;
  transform:translateY(-140px)
}

@media only screen and (min-width: 901px) {
  .tecBackground_image>div {
  height:33.3333333333vw
}


}

@media only screen and (max-width: 900px) {
  .tecBackground_image>div {
  transform:translateY(-80px);
  height:123.0769230769vw
}


}

.tecBackground_image>div picture {
  height:100%
}

.tecBackground_image>div picture img {
  height:100%;
  width:auto;
  max-width:none
}

.tecBackground_inner img {
  transition:2.4s cubic-bezier(0.23, 1, 0.32, 1);
  transform:scale(1.13) translateY(-30px);
  opacity:0
}

.inView .tecBackground_inner img,.tecBackground_inner img.inView {
  transform:none;
  opacity:1
}

@media only screen and (min-width: 901px) {
  .tecBeforeAfter {
  padding:140px 10.4166666667% 0
}


}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter {
  padding:80px 9.2307692308% 20px
}


}

@media only screen and (min-width: 901px) {
  .tecBeforeAfter_wrap {
  max-width:1140px;
  margin-left:auto;
  margin-right:auto;
  display:flex
}


}

@media only screen and (min-width: 901px) {
  .tecBeforeAfter_headline {
  width:29.4736842105%
}


}

@media only screen and (min-width: 901px) {
  .tecBeforeAfter_content {
  width:70.5263157895%;
  padding-top:35px
}


}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter_content {
  margin-top:25px
}


}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter_content .moduleBody p br,.tecBeforeAfter_content .explainList_body p br,.tecBeforeAfter_content .tecExplain_body p br,.tecBeforeAfter_content .tecBeforeAfterHead_body p br {
  display:none
}


}

.tecBeforeAfter_section {
  margin-top:60px
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter_section {
  margin-top:40px
}


}

.tecBeforeAfter_label {
  margin-top:20px
}

.tecBeforeAfter_note {
  margin-top:30px
}

.tecBeforeAfter_note dt,.tecBeforeAfter_note dd {
  font-size:12px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter_note dt,.tecBeforeAfter_note dd {
  line-height:170%
}


}

.tecBeforeAfter dd {
  margin-top:10px
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter dd {
  margin-top:5px
}


}

.tecBeforeAfterHead {
  margin:24px 0 40px;
  display:flex;
  justify-content:space-between
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterHead {
  margin:18px 0 25px
}


}

.tecBeforeAfterHead_label {
  width:48px;
  margin:5px 15px 0 0
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterHead_label {
  margin-right:10px;
  margin-top:3px
}


}

.tecBeforeAfterHead_label span {
  height:18px;
  border-radius:9px;
  border:1px solid #1a1a1a;
  padding-left:10px;
  padding-right:10px;
  display:flex;
  align-items:center;
  line-height:1.2;
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterHead_label span {
  line-height:1.3
}


}

.tecBeforeAfterHead_content {
  width:calc(100% - 50px)
}

.tecBeforeAfterHead_title {
  font-size:16px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterHead_title {
  font-size:14px
}


}

.tecBeforeAfterHead_body {
  margin-top:5px
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterHead_body {
  margin-left:-45px;
  width:calc(100% + 45px)
}


}

.tecBeforeAfterHead_body sup {
  font-size:8px !important
}

.tecBeforeAfterCard {
  background-color:#f8f8f3;
  border-radius:4px;
  margin-bottom:24px
}

@media only screen and (min-width: 901px) {
  .tecBeforeAfterCard {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:32px 6.2189054726%
}


}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterCard {
  padding:20px 5.6603773585% 18px
}


}

@media only screen and (min-width: 901px) {
  .tecBeforeAfterCard_image {
  width:64.7727272727%
}


}

@media only screen and (min-width: 901px) {
  .tecBeforeAfterCard_content {
  width:28.4090909091%
}


}

@media only screen and (max-width: 900px) {
  .tecBeforeAfterCard_content {
  margin-top:15px
}


}

.tecBeforeAfterCard_body p {
  font-size:14px;
  line-height:180%;
  letter-spacing:.12em
}

.tecBeforeAfterCard_body p span {
  font-size:10px
}

.tecBeforeAfter_headline {
  opacity:0;
  transition:1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform:translateY(30px)
}

.inView .tecBeforeAfter_headline {
  opacity:1;
  transform:none
}

.tecBeforeAfter_content {
  opacity:0;
  transition:1s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.inView .tecBeforeAfter_content {
  opacity:1;
  transform:none
}

.tecExplain {
  background-color:#f8f8f3;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .tecExplain {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:60px;
  padding:0 5% 0 0
}


}

@media only screen and (max-width: 900px) {
  .tecExplain {
  margin-top:40px
}


}

@media only screen and (min-width: 901px) {
  .tecExplain_image {
  width:43.75%
}


}

@media only screen and (min-width: 901px) {
  .tecExplain_content {
  width:62.5%
}


}

@media only screen and (max-width: 900px) {
  .tecExplain_content {
  padding:10px 6% 30px
}


}

.tecExplain_title sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .tecExplain_title sup {
  font-size:8px
}


}

.tecExplain_body {
  margin-top:15px
}

.explainLists {
  margin-top:52px
}

@media only screen and (max-width: 900px) {
  .explainLists {
  margin-top:38px
}


}

@media only screen and (min-width: 901px) {
  .explainList {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:24px
}


}

@media only screen and (max-width: 900px) {
  .explainList {
  margin-bottom:36px
}


}

.explainList_image {
  overflow:hidden;
  border-radius:2px
}

@media only screen and (min-width: 901px) {
  .explainList_image {
  width:43.6781609195%
}


}

@media only screen and (min-width: 901px) {
  .explainList_content {
  width:51.724137931%
}


}

@media only screen and (max-width: 900px) {
  .explainList_content {
  margin-top:20px
}


}

.explainList_body sup {
  font-size:9px !important
}

.explainList_body sup {
  position:relative
}

.tecFunctions {
  margin-top:140px;
  padding-left:10.4166666667%;
  padding-right:10.4166666667%
}

@media only screen and (max-width: 900px) {
  .tecFunctions {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%;
  margin:70px auto 0
}


}

.tecFunctions_wrap {
  max-width:1140px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .tecFunctions_head {
  display:flex;
  justify-content:space-between;
  padding-left:2.5%
}


}

@media only screen and (min-width: 901px) {
  .tecFunctions_head .tecHeadlineLv1 {
  margin-right:50px
}


}

.tecFunctions_image {
  border-radius:4px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .tecFunctions_image {
  width:49.504950495%
}


}

@media only screen and (max-width: 900px) {
  .tecFunctions_image {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .tecFunctions_content {
  display:flex;
  justify-content:space-between;
  margin-top:90px
}


}

@media only screen and (max-width: 900px) {
  .tecFunctions_content {
  margin-top:36px
}


}

@media only screen and (min-width: 901px) {
  .tecFunctions_content>div {
  width:48.0198019802%
}

.tecFunctions_content>div:nth-child(1) .tecFunctions_menu::before {
  content:"";
  position:absolute;
  z-index:1;
  left:0;
  top:-1px;
  width:76.4492753623%;
  height:1px;
  background-color:#1a1a1a
}


}

@media only screen and (max-width: 900px) {
  [data-products=ipl] .tecFunctions_content>div:nth-child(1) {
  border-top:1px solid #bebebe
}


}

.tecFunctions_title {
  font-size:18px;
  padding-bottom:30px
}

@media only screen and (max-width: 900px) {
  .tecFunctions_title {
  padding:30px 0 30px
}


}

.tecFunctions_menu {
  position:relative
}

@media only screen and (min-width: 901px) {
  [data-products=ipl] .tecFunctions_menu {
  margin-top:25px
}


}

@media only screen and (min-width: 901px) {
  .tecFunctions_menu {
  border-top:1px solid #bebebe
}


}

.tecFunctionsCard {
  border-bottom:1px solid #bebebe
}

.tecFunctionsCard a {
  display:block;
  padding:23px 10px 26px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .tecFunctionsCard a {
  padding:18px 0
}


}

.tecFunctionsCard_label {
  display:flex;
  align-items:center
}

.tecFunctionsCard_label::before {
  content:"";
  display:block;
  border:1px solid #1a1a1a;
  width:5px;
  height:5px;
  border-radius:50%;
  margin-right:6px
}

.tecFunctionsCard_label span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.tecFunctionsCard_title {
  font-size:16px;
  margin-top:10px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecFunctionsCard_title {
  font-size:14px;
  margin-top:8px
}


}

.tecFunctionsCard_title i {
  font-size:80%;
  font-style:normal
}

.tecFunctionsCard_title sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .tecFunctionsCard_title sup {
  font-size:9px
}


}

.tecFunctionsCard_icon {
  position:absolute;
  right:21px;
  top:calc(50% - 16px);
  width:32px;
  height:32px;
  background-color:gray;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center
}

.tecFunctionsCard_icon:before {
  content:""
}

@media only screen and (max-width: 900px) {
  .tecFunctionsCard_icon {
  width:26px;
  height:26px;
  right:3.8%;
  top:calc(50% - 13px)
}


}

.tecFunctionsCard_icon::before {
  font-size:11px;
  display:block;
  transform:rotate(180deg);
  color:#f8f8f3;
  width:12px
}

.tecFunctionsCard_icon {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .tecFunctionsCard a:hover .tecFunctionsCard_icon {
  background-color:#1a1a1a
}


}

.tecFunctions_image img {
  transition:2.4s cubic-bezier(0.23, 1, 0.32, 1);
  transform:scale(1.13) translateY(-30px);
  opacity:0;
  transition-delay:.3s
}

.inView .tecFunctions_image img,.tecFunctions_image img.inView {
  transform:none;
  opacity:1
}

.tecFunctions_content {
  opacity:0;
  transition:1s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.tecFunctions_content.inView {
  opacity:1
}

.tecHero {
  background-color:#f8f8f3;
  position:relative;
  display:flex;
  align-items:center
}

@media only screen and (min-width: 901px) {
  .tecHero {
  padding:170px 8.3333333333% 0;
  height:100svh
}


}

@media only screen and (max-width: 900px) {
  .tecHero {
  padding:115px 9.2307692308% 90px
}


}

@media only screen and (min-width: 901px) {
  .tecHero_wrap {
  max-width:1440px;
  display:flex;
  justify-content:space-between;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .tecHero_content {
  width:45.9349593496%
}


}

.tecHero_image {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecHero_image {
  width:59.756097561%
}

[data-products=bfs] .tecHero_image {
  margin-top:-80px
}

[data-products=brush] .tecHero_image {
  margin-top:-50px;
  width:44%
}

/* リフトブラシ　テクノロジー　FV画像調整（PC) */
  .tecHero_image.lift-brush_tecHero__image-desktop{
    width:44%;
  }

/* リフトブラシPRO　テクノロジー　FV画像調整（PC) */
  .tecHero_image.lift-brush-pro_tecHero__image-desktop{
    width:44%;
  }
}

@media only screen and (max-width: 900px) {
  .tecHero_image {
  height:77.9487179487vw
}

[data-products=bfs] .tecHero_image {
  height:90.7692307692vw
}

[data-products=brush] .tecHero_image {
  height:76.1538461538vw;
  margin-top:30px
}


}

@media only screen and (max-width: 900px) {
  .tecHero_image>div {
  width:100vw;
  margin:20px 0 0 -9.3vw;
  position:absolute;
  left:0;
  top:0
}

[data-products=bfs] .tecHero_image>div {
  width:92vw;
  margin:20px 0 0 -1.3vw
}

[data-products=brush] .tecHero_image>div {
  width:72vw;
  margin:20px 0 0 12vw
}

/* リフトブラシプロFV画像調整 */
.tecHero_image>.lift-brush-pro_tecHero__image-box {
    width: 72vw;
    margin: 20px 0 0 12vw;
}
/* リフトブラシFV画像調整 */
.tecHero_image>.lift-brush_tecHero__image-box {
    width: 72vw;
    margin: 20px 0 0 12vw;
}
}


.tecHero_image img {
  width:100%;
  height:auto
}

.tecHero_headline {
  font-size:16px;
  letter-spacing:.04em
}

@media only screen and (max-width: 900px) {
  .tecHero_headline {
  font-size:14px
}


}

.tecHero_title {
  font-size:32px;
  margin-top:45px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecHero_title {
  font-size:24px;
  letter-spacing:.08em
}


}

.tecHero_copy {
  font-size:28px;
  line-height:180%;
  margin-top:50px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .tecHero_copy {
  font-size:24px;
  margin-top:25px;
  letter-spacing:.12em
}


}

.tecHero_copy sup {
  font-size:11px;
  position:relative;
  top:-0.2em
}

@media only screen and (max-width: 900px) {
  .tecHero_copy sup {
  font-size:10px;
  top:-0.2em
}


}

.tecHero_list {
  margin-top:20px;
  font-size:16px;
  line-height:180%;
  letter-spacing:.12em
}

.tecHero_list2 {
  margin-top:20px;
  font-size:16px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecHero_list {
  margin-top:20px;
  font-size:14px
}

  .tecHero_list2 {
  margin-top:20px;
  font-size:14px
}

}

.tecHero_list li {
  margin-bottom:5px;
  padding-left:22px;
  position:relative
}

.tecHero_list2 li {
  margin-bottom:5px;
  padding-left:22px;
  position:relative
}

.tecHero_list li:before {
  position:absolute;
  left:2px;
  top:11px;
  width:2px;
  height:2px;
box-sizing: content-box;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.tecHero_list2 li:before {
  position:absolute;
  left:2px;
  top:15px;
  width:2px;
  height:2px;
box-sizing: content-box;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.tecHero_list li sup {
  font-size:10px
}

.tecHero_list2 li sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .tecHero_list li sup {
  font-size:9px
}

  .tecHero_list2 li sup {
  font-size:9px
}


}

.tecHero_attention {
  margin-top:35px;
  display:flex;
  flex-wrap:wrap
}

@media only screen and (max-width: 900px) {
  .tecHero_attention {
  margin-top:25px
}


}

.tecHero_attention dt,.tecHero_attention dd {
  font-size:10px;
  line-height:170%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .tecHero_attention dt,.tecHero_attention dd {
  font-size:9px
}


}

.tecHero_attention dt {
  width:30px
}

.tecHero_attention dd {
  width:calc(100% - 30px)
}

.tecHero_content>* {
  opacity:0;
  transform:translateX(35px);
  transition:2s cubic-bezier(0.215, 0.61, 0.355, 1)
}

.tecHero_content>*:nth-child(1) {
  transition-delay:0.6s
}

.tecHero_content>*:nth-child(2) {
  transition-delay:0.67s
}

.tecHero_content>*:nth-child(3) {
  transition-delay:0.74s
}

.tecHero_content>*:nth-child(4) {
  transition-delay:0.81s
}

.tecHero_content>*:nth-child(5) {
  transition-delay:0.88s
}

.tecHero_content>*:nth-child(6) {
  transition-delay:0.95s
}

[data-loaded="1"] .tecHero_content>* {
  opacity:1;
  transform:none
}

.tecHero_image {
  opacity:0;
  transform:translateX(-30px);
  transition:2s cubic-bezier(0.165, 0.84, 0.44, 1) .4s
}

[data-loaded="1"] .tecHero_image {
  opacity:1;
  transform:none
}

.tecHeadlineLv1 span {
  display:block
}

.tecHeadlineLv1 span.is-en {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-en {
  font-size:14px;
  padding-left:17px
}


}

.tecHeadlineLv1 span.is-ja {
  font-size:24px;
  position:relative;
  line-height:180%;
  margin-top:20px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-ja {
  font-size:20px;
  line-height:180%;
  padding-left:20px
}


}

.tecHeadlineLv1 span.is-ja::before {
  position:absolute;
  left:-28px;
  top:20px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-ja::before {
  left:0;
  top:16px
}


}

.tecHeadlineLv1 span.is-ja sup {
  font-size:12px;
  position:relative;
  top:-0.1em
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-ja sup {
  font-size:10px;
  top:-0.2em
}


}

.tecHeadlineLv1 span.is-note {
  margin-top:20px;
  font-size:10px;
  line-height:170%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-note {
  padding-left:20px;
  margin-top:10px;
  font-size:9px
}


}

.tecHeadlineLv1 span.is-sub {
  font-size:15px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1 span.is-sub {
  padding-left:20px
}

.tecHeadlineLv1 .is-sub+.is-ja::before {
  top:-13px !important
}

}

.tecHeadlineLv1 .is-sub+.is-ja {
  margin-top:0px
}



.tecHeadlineLv1[data-size="20"] .is-ja {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="20"] .is-ja {
  font-size:18px
}


}

.tecHeadlineLv1[data-size="20"] .is-ja::before {
  /*top:17px*/
  top:-14px;
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="20"] .is-ja::before {
  top:13px
}


}

.tecHeadlineLv1[data-size="20"] .is-ja {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="20"] .is-ja {
  font-size:18px
}


}

.tecHeadlineLv1[data-size="20"] .is-ja::before {
  /*top:17px*/
  top:-13px;
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="20"] .is-ja::before {
  top:13px
}


}



.tecHeadlineLv1[data-size="30"] .is-ja {
  font-size:20px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="30"] .is-ja {
  font-size:18px
}


}

.tecHeadlineLv1[data-size="30"] .is-ja::before {
  top:17px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv1[data-size="30"] .is-ja::before {
  top:13px
}


}





.tecHeadlineLv1 {
  perspective:1500px
}

.tecHeadlineLv1>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecHeadlineLv1>* {
  opacity:1;
  transform:none
}

.tecHeadlineLv1.inView>* {
  opacity:1;
  transform:none
}

.tecHeadlineLv2 span {
  display:block
}

.tecHeadlineLv2 span.is-en {
  font-size:12px;
  position:relative;
  display:flex;
  align-items:center;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.tecHeadlineLv2 span.is-en::before {
  content:"";
  display:block;
  border:1px solid #1a1a1a;
  width:5px;
  height:5px;
  border-radius:50%;
  margin-right:5px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv2 span.is-en::before {
  margin-top:-2px;
  margin-right:7px
}


}

.tecHeadlineLv2 span.is-en.is-noIcon::before {
  display:none
}

.tecHeadlineLv2 span.is-label {
  font-size:11px;
  line-height:1.3;
  border:1px solid #1a1a1a;
  height:18px;
  border-radius:9px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding-left:10px;
  padding-right:10px;
  width:fit-content;
  margin-top:40px;
  letter-spacing:.2em
}

.tecHeadlineLv2 span.is-ja {
  margin-top:16px;
  font-size:32px;
  line-height:180%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv2 span.is-ja {
  font-size:24px
}


}

.tecHeadlineLv2 span.is-ja sup {
  font-size:12px;
  position:relative;
  top:-0.1em
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv2 span.is-ja sup {
  font-size:10px;
  top:-0.2em
}


}

.tecHeadlineLv2 .is-en+.is-ja {
  margin-top:15px
}

.tecBeforeAfter .tecHeadlineLv2 .is-en+.is-ja {
  margin-top:23px
}

@media only screen and (max-width: 900px) {
  .tecBeforeAfter .tecHeadlineLv2 .is-en+.is-ja {
  margin-top:42px;
  line-height:140%
}


}

.tecHeadlineLv2[data-size="28"] span.is-ja {
  font-size:28px;
  margin-top:15px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv2[data-size="28"] span.is-ja {
  font-size:24px
}


}

.moduleTitle[data-size="16"],[data-size="16"].tecExplain_title,[data-size="16"].explainList_title {
  font-size:16px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .moduleTitle[data-size="16"],[data-size="16"].tecExplain_title,[data-size="16"].explainList_title {
  font-size:14px
}


}

.moduleTitle[data-size="18"],[data-size="18"].tecExplain_title,[data-size="18"].explainList_title {
  font-size:18px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .moduleTitle[data-size="18"],[data-size="18"].tecExplain_title,[data-size="18"].explainList_title {
  font-size:14px
}


}

.moduleTitle[data-size="20"],[data-size="20"].tecExplain_title,[data-size="20"].explainList_title {
  font-size:20px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .moduleTitle[data-size="20"],[data-size="20"].tecExplain_title,[data-size="20"].explainList_title {
  font-size:16px
}


}

.moduleTitle+.moduleBody,.tecExplain_title+.moduleBody,.explainList_title+.moduleBody,.moduleTitle+.tecBeforeAfterHead_body,.tecExplain_title+.tecBeforeAfterHead_body,.explainList_title+.tecBeforeAfterHead_body,.moduleTitle+.tecExplain_body,.tecExplain_title+.tecExplain_body,.explainList_title+.tecExplain_body,.moduleTitle+.explainList_body,.tecExplain_title+.explainList_body,.explainList_title+.explainList_body {
  margin-top:10px
}

.tecHeadlineLv2+.moduleBody,.tecHeadlineLv2+.tecBeforeAfterHead_body,.tecHeadlineLv2+.tecExplain_body,.tecHeadlineLv2+.explainList_body {
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .tecHeadlineLv2+.moduleBody,.tecHeadlineLv2+.tecBeforeAfterHead_body,.tecHeadlineLv2+.tecExplain_body,.tecHeadlineLv2+.explainList_body {
  margin-top:10px
}


}

.tecArticle .moduleBody,.tecArticle .tecBeforeAfterHead_body,.tecArticle .tecExplain_body,.tecArticle .explainList_body {
  margin-top:20px
}

.moduleBody p sup,.tecBeforeAfterHead_body p sup,.tecExplain_body p sup,.explainList_body p sup {
  font-size:8px
}

.moduleBody[data-size="12"] p,[data-size="12"].tecBeforeAfterHead_body p,[data-size="12"].tecExplain_body p,[data-size="12"].explainList_body p {
  font-size:12px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .moduleBody[data-size="12"] p,[data-size="12"].tecBeforeAfterHead_body p,[data-size="12"].tecExplain_body p,[data-size="12"].explainList_body p {
  line-height:170%
}


}

.moduleBody[data-size="14"] p,[data-size="14"].tecBeforeAfterHead_body p,[data-size="14"].tecExplain_body p,[data-size="14"].explainList_body p {
  font-size:14px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .moduleBody[data-size="14"] p,[data-size="14"].tecBeforeAfterHead_body p,[data-size="14"].tecExplain_body p,[data-size="14"].explainList_body p {
  font-size:12px;
  line-height:170%
}


}

.moduleBody[data-size="16"] p,[data-size="16"].tecBeforeAfterHead_body p,[data-size="16"].tecExplain_body p,[data-size="16"].explainList_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .moduleBody[data-size="16"] p,[data-size="16"].tecBeforeAfterHead_body p,[data-size="16"].tecExplain_body p,[data-size="16"].explainList_body p {
  font-size:14px;
  line-height:180%
}


}

.moduleNote {
  border-top:1px solid #ccc;
  padding-top:20px;
  margin-top:32px
}

@media only screen and (max-width: 900px) {
  .moduleNote {
  padding-top:15px;
  margin-top:25px
}


}

.moduleNote[data-border="0"] {
  border-top:none;
  margin-top:0;
  padding-top:10px
}

.tecExplain+.moduleNote,.tecPoint2-3_illust+.moduleNote,.tecPoint4_list+.moduleNote,.explainList_body+.moduleNote,.tecFunctions_content+.moduleNote,.textLink+.moduleNote {
  border-top:none;
  margin-top:25px;
  padding-top:0
}

@media only screen and (max-width: 900px) {
  .tecExplain+.moduleNote,.tecPoint2-3_illust+.moduleNote,.tecPoint4_list+.moduleNote,.explainList_body+.moduleNote,.tecFunctions_content+.moduleNote,.textLink+.moduleNote {
  margin-top:15px
}


}

.moduleNote p {
  font-size:9px;
  color:#9d9d9d;
  line-height:180%
}

.moduleNote[data-align=right] {
  text-align:right
}

.moduleVideo {
  margin-top:40px
}

.moduleVideo[data-radius=top] {
  overflow:hidden;
  border-radius:4px 4px 0 0
}

.moduleVideo video {
  width:100%;
  height:auto;
  display:block
}

.tecPoint1 {
  display:flex;
  justify-content:flex-end;
  margin-top:-40px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .tecPoint1 {
  margin-top:-130px
}


}

.tecPoint1_wrap {
  position:relative;
  padding:96px 12%;
  max-width:1124px;
  background-color:#fff
}

@media only screen and (max-width: 900px) {
  .tecPoint1_wrap {
  width:90.7692307692vw;
  padding:98px 6% 55px
}


}

.tecPoint1_image {
  position:absolute;
  left:-18.9%;
  top:11.1%;
  width:336px
}

@media only screen and (max-width: 900px) {
  .tecPoint1_image {
  width:200px;
  left:-3.9%;
  top:-11.4%
}


}

.tecPoint1_wrap {
  perspective:1500px;
  perspective:1500px
}

.tecPoint1_wrap>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecPoint1_wrap>* {
  opacity:1;
  transform:none
}

.tecPoint1_wrap.inView>* {
  opacity:1;
  transform:none
}

.tecPoint1_image {
  opacity:0;
  transition-delay:.8s
}

.tecPoint1_image .inView {
  opacity:1
}

.tecPoint2-3 {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecPoint2-3 {
  margin-top:100px
}

.tecPoint2-3::before {
  content:"";
  background-color:#fff;
  display:block;
  position:absolute;
  z-index:0;
  top:0;
  width:78.0555555556vw;
  height:calc(100% - 60px)
}

.tecPoint2-3[data-position=image-right]::before {
  left:0
}

.tecPoint2-3[data-position=image-left]::before {
  right:0
}


}

@media only screen and (min-width: 901px)and (min-width: 901px) {
  .tecPoint2-3[data-theme=beige]::before {
  background-color:#f8f8f3
}


}

@media only screen and (min-width: 901px) {
  .tecPoint2-3#function1 {
  margin-top:240px
}


}

@media only screen and (max-width: 900px) {
  .tecPoint2-3 {
  margin-top:60px
}

.tecPoint2-3[data-theme=beige] .tecPoint2-3_inner {
  background-color:#f8f8f3
}


}

.tecPoint2-3+.tecPoint2-3 {
  margin-top:220px
}

@media only screen and (max-width: 900px) {
  .tecPoint2-3+.tecPoint2-3 {
  margin-top:60px
}


}

.tecPoint2-3_wrap {
  z-index:1
}

@media only screen and (min-width: 901px) {
  .tecPoint2-3_wrap {
  position:relative
}


}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_wrap {
  margin-top:-60px
}

[data-position=image-left] .tecPoint2-3_wrap {
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (min-width: 901px) {
  .tecPoint2-3_inner {
  display:flex;
  justify-content:space-between
}

[data-position=image-right] .tecPoint2-3_inner {
  flex-direction:row-reverse
}


}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_inner {
  background-color:#fff;
  width:90.7692307692vw;
  padding:60px 7% 60px
}


}

@media only screen and (min-width: 901px) {
  [data-position=image-right] .tecPoint2-3_content {
  width:53.3333333333vw;
  padding:100px 0 200px 7.6388888889vw
}

[data-position=image-left] .tecPoint2-3_content {
  width:51.25vw;
  padding:100px 7.6388888889vw 150px 0
}


}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_content {
  margin-top:60px
}


}

@media only screen and (min-width: 901px) {
  .tecPoint2-3_image,.tecPoint2-3_video {
  width:39.5833333333vw
}

[data-position=image-right] .tecPoint2-3_image,[data-position=image-right] .tecPoint2-3_video {
  margin-top:6.9444444444vw
}

[data-position=image-left] .tecPoint2-3_image,[data-position=image-left] .tecPoint2-3_video {
  margin-top:-6.9444444444vw
}


}

@media only screen and (max-width: 900px) {
  [data-position=image-right] .tecPoint2-3_image,[data-position=image-right] .tecPoint2-3_video {
  display:flex;
  justify-content:flex-end
}


}

.tecPoint2-3_image>div,.tecPoint2-3_video>div {
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_image>div,.tecPoint2-3_video>div {
  width:90.7692307692vw
}


}

[data-position=image-right] .tecPoint2-3_image>div,[data-position=image-right] .tecPoint2-3_video>div {
  border-radius:4px 0 0 4px
}

[data-position=image-left] .tecPoint2-3_image>div,[data-position=image-left] .tecPoint2-3_video>div {
  border-radius:0 4px 4px 0
}

.tecPoint2-3_video>div {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecPoint2-3_video>div {
  height:39.5833333333vw
}


}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_video>div {
  height:90.7692307692vw
}


}

.tecPoint2-3_video>div video {
  width:100%;
  height:auto
}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_video>div video {
  width:auto;
  height:100%
}


}

.tecPoint2-3_illust {
  max-width:568px;
  margin-top:35px
}

@media only screen and (max-width: 900px) {
  .tecPoint2-3_illust {
  width:100%;
  margin-top:40px
}


}

@media only screen and (max-width: 900px) {
  #function2 .tecPoint2-3_illust {
  width:80%
}


}

@media only screen and (max-width: 900px) {
  #function3 .tecPoint2-3_illust {
  width:80%
}


}

.tecPoint2-3_content {
  perspective:1500px;
  perspective:1500px
}

.tecPoint2-3_content>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecPoint2-3_content>* {
  opacity:1;
  transform:none
}

.tecPoint2-3_content.inView>* {
  opacity:1;
  transform:none
}

.tecPoint4 {
  position:relative;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .tecPoint4 {
  margin-top:-290px;
  padding-left:7.9166666667%;
  padding-right:7.9166666667%
}


}

@media only screen and (max-width: 900px) {
  .tecPoint4 {
  margin-top:-65px;
  padding-left:4.6153846154%;
  padding-right:4.6153846154%
}


}

@media only screen and (max-width: 900px) {
  .tecPoint4 {
  margin-top:-130px
}


}

.tecPoint4_wrap {
  background-color:#f8f8f3;
  border-radius:0 0 4px 4px
}

@media only screen and (min-width: 901px) {
  .tecPoint4_wrap {
  margin-left:auto;
  margin-right:auto;
  max-width:1212px
}


}

.tecPoint4_image {
  overflow:hidden;
  border-radius:4px 4px 0 0
}

@media only screen and (min-width: 901px) {
  .tecPoint4_content {
  padding:96px 9.900990099%
}


}

@media only screen and (max-width: 900px) {
  .tecPoint4_content {
  padding:60px 10.1694915254%
}


}

.tecPoint4_lead {
  font-size:20px;
  line-height:180%;
  margin-top:40px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecPoint4_lead {
  font-size:16px;
  margin-top:30px
}


}

.tecPoint4_list {
  margin-top:28px
}

@media only screen and (max-width: 900px) {
  .tecPoint4_list {
  margin-top:30px
}


}

.tecPoint4_list dt {
  font-size:20px;
  line-height:180%;
  padding-left:20px;
  position:relative;
  margin-top:15px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecPoint4_list dt {
  font-size:16px;
  padding-left:25px
}


}

.tecPoint4_list dt::before {
  left:0;
  top:calc(50% - 2px);
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.tecPoint4_list dt.has-plus {
  position:relative;
  margin-top:40px
}

.tecPoint4_list dt.has-plus:after {
  content:""
}

.tecPoint4_list dt.has-plus::after {
  position:absolute;
  left:70px;
  top:-38px;
  font-size:13px
}

@media only screen and (max-width: 900px) {
  .tecPoint4_list dt.has-plus::after {
  left:27px;
  top:-35px
}


}

.tecPoint4_list dd {
  font-size:14px;
  line-height:180%;
  margin-top:2px;
  padding-left:22px
}

@media only screen and (max-width: 900px) {
  .tecPoint4_list dd {
  padding-left:25px;
  margin-top:6px
}


}

.tecPoint4_list dd sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .tecPoint4_list dd sup {
  font-size:8px
}


}

.tecPoint4_image img {
  transition:2.4s cubic-bezier(0.23, 1, 0.32, 1);
  transform:scale(1.13) translateY(-30px);
  opacity:0
}

.inView .tecPoint4_image img,.tecPoint4_image img.inView {
  transform:none;
  opacity:1
}

.tecPoint4_content {
  perspective:1500px;
  perspective:1500px
}

.tecPoint4_content>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecPoint4_content>* {
  opacity:1;
  transform:none
}

.tecPoint4_content.inView>* {
  opacity:1;
  transform:none
}

.tecPoint5 {
  padding-left:13.8888888889%;
  padding-right:13.8888888889%
}

@media only screen and (max-width: 900px) {
  .tecPoint5 {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

.tecPoint5_wrap {
  max-width:1044px;
  margin-left:auto;
  margin-right:auto;
  padding:140px 0
}

@media only screen and (max-width: 900px) {
  .tecPoint5_wrap {
  padding:60px 0 20px
}


}

.tecPoint5 {
  perspective:1500px;
  perspective:1500px
}

.tecPoint5>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecPoint5>* {
  opacity:1;
  transform:none
}

.tecPoint5.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 901px) {
  .tecProfile {
  padding:140px 10.4166666667% 100px;
  margin-top:140px
}

[data-page=rin] .tecProfile {
  margin-top:130px;
  padding:0;
  max-width:1210px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  [data-page=rin] .tecProfile {
  padding-left:7.9861111111%;
  padding-right:7.9861111111%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .tecProfile {
  padding:60px 9.2307692308% 60px;
  margin-top:60px
}

[data-page=rin] .tecProfile {
  margin-top:20px
}


}

[data-page=rin] .tecProfile {
  perspective:1500px
}

[data-page=rin] .tecProfile>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView [data-page=rin] .tecProfile>* {
  opacity:1;
  transform:none
}

[data-page=rin] .tecProfile.inView>* {
  opacity:1;
  transform:none
}

.tecProfile_label {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.tecProfile_headline {
  font-size:32px;
  margin-top:30px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .tecProfile_headline {
  font-size:24px;
  line-height:150%;
  margin-top:20px
}


}

@media only screen and (min-width: 901px) {
  .tecProfile_column {
  display:flex;
  justify-content:space-between;
  margin-top:60px
}

.tecProfile_column>div {
  width:48.4210526316%
}


}

@media only screen and (max-width: 900px) {
  .tecProfile_column {
  margin-top:35px
}

[data-page=rin] .tecProfile_column {
  margin-top:52px
}

.tecProfile_column>div:nth-child(2) {
  margin-top:40px
}


}

.tecProfile_title {
  font-size:20px;
  position:relative;
  padding-left:20px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecProfile_title {
  font-size:16px;
  padding-left:17px
}

[data-page=rin] .tecProfile_title {
  font-size:20px
}


}

.tecProfile_title:before {
  position:absolute;
  left:0;
  top:15px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

@media only screen and (max-width: 900px) {
  .tecProfile_title:before {
  top:12px
}


}

.tecProfileCard {
  background-color:#fff;
  border-radius:4px;
  margin-top:35px
}

@media only screen and (min-width: 901px) {
  .tecProfileCard {
  padding:25px 4.1%;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .tecProfileCard {
  padding:20px 5% 35px
}


}

[data-page=rin] .tecProfileCard {
  background-color:#f7f7f7
}

@media only screen and (min-width: 901px) {
  .tecProfileCard_head {
  width:32.5925925926%
}


}

@media only screen and (max-width: 900px) {
  .tecProfileCard_head {
  display:flex;
  justify-content:space-between;
  align-items:center
}


}

@media only screen and (max-width: 900px) {
  .tecProfileCard_mobile {
  width:57.4468085106%
}


}

@media only screen and (max-width: 900px) {
  .tecProfileCard_image {
  width:35.4609929078%
}


}

.tecProfileCard_image>div {
  overflow:hidden;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .tecProfileCard_content {
  width:61.1111111111%
}


}

.tecProfileCard_title {
  font-size:18px
}

[data-page=rin] .tecProfileCard_title {
  font-size:16px
}

.tecProfileCard_description {
  font-size:11px;
  line-height:160%;
  margin-top:8px
}

@media only screen and (max-width: 900px) {
  .tecProfileCard_description {
  margin-top:10px;
  line-height:150%
}


}

[data-page=rin] .tecProfileCard_description {
  color:gray
}

.tecProfileCard_body {
  margin-top:8px
}

@media only screen and (max-width: 900px) {
  .tecProfileCard_body {
  margin-top:18px
}


}

.tecProfileCard_target .tecProfileCard_body {
  border-top:1px solid #ccc;
  padding-top:25px
}

.tecProfileCard_body p {
  font-size:13px;
  line-height:170%;
  color:gray
}

[data-page=rin] .tecProfileCard_body p {
  color:#1a1a1a
}

.tecProfileCard_button {
  margin-top:10px;
  outline:none;
  appearance:none;
  background-color:transparent;
  border:none;
  cursor:pointer;
  padding:0;
  transition:.2s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 900px) {
  .tecProfileCard_button {
  display:flex;
  justify-content:flex-end;
  width:100%
}


}

[data-accordion-state=open] .tecProfileCard_button.is-open {
  opacity:0;
  pointer-events:none
}

.tecProfileCard_button .textLink {
  position:static
}

.tecProfileCard_button .textLink div span {
  color:#1a1a1a
}

.tecProfileCard_target {
  padding-bottom:7px
}

.tecScene {
  margin-top:140px
}

@media only screen and (max-width: 900px) {
  .tecScene {
  margin-top:120px
}


}

.tecScene#secene2 {
  margin-top:188px
}

@media only screen and (max-width: 900px) {
  .tecScene#secene2 {
  margin-top:140px
}


}

.tecScene_wrap {
  padding:80px 0 100px
}

@media only screen and (max-width: 900px) {
  .tecScene_wrap {
  padding:50px 0 80px
}


}

.tecScene .pin-spacer {
  z-index:5 !important
}

.tecScene .pin-spacer {
  pointer-events:none
}

.tecSceneHead {
  text-align:center
}

@media only screen and (max-width: 900px) {
  .tecSceneHead {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

.tecSceneHead_headline span {
  font-size:28px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecSceneHead_headline span {
  font-size:20px
}


}

.tecSceneHead_lead {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .tecSceneHead_lead {
  margin-top:10px
}


}

.tecSceneHead_lead span {
  font-size:20px;
  line-height:180%;
  letter-spacing:.12em
}

.tecSceneHead_body {
  margin-top:12px
}

@media only screen and (max-width: 900px) {
  .tecSceneHead_body {
  margin-top:16px
}


}

.tecSceneHead_body p {
  font-size:14px;
  line-height:180%
}

.tecSceneMenu {
  margin-top:40px;
  position:absolute;
  width:100%
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu {
  margin-top:25px
}


}

.tecSceneMenu_wrap {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_wrap {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

.tecSceneMenu_current,[data-current-step="2-3"] #secene2 .tecSceneMenu_item:nth-child(3) a,[data-current-step="2-2"] #secene2 .tecSceneMenu_item:nth-child(2) a,[data-current-step="2-1"] #secene2 .tecSceneMenu_item:nth-child(1) a,[data-current-step="1-3"] #secene1 .tecSceneMenu_item:nth-child(3) a,[data-current-step="1-2"] #secene1 .tecSceneMenu_item:nth-child(2) a,[data-current-step="1-1"] #secene1 .tecSceneMenu_item:nth-child(1) a {
  border-color:#1a1a1a;
  pointer-events:none
}

.tecSceneMenu_item {
  position:relative
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_item {
  width:30.1886792453%
}


}

.tecSceneMenu_item:nth-child(1),.tecSceneMenu_item:nth-child(2) {
  margin-right:24px
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_item:nth-child(1),.tecSceneMenu_item:nth-child(2) {
  margin-right:4.7169811321%
}


}

.tecSceneMenu_item:nth-child(1)::before,.tecSceneMenu_item:nth-child(2)::before {
  content:"";
  display:block;
  width:24px;
  height:1px;
  border-top:1px dashed #1a1a1a;
  position:absolute;
  right:-24px;
  top:calc(50% - 1px)
}

.tecSceneMenu_item a {
  background-color:#f8f8f3;
  border:1px solid #ccc;
  border-radius:4px;
  display:block;
  pointer-events:auto
}

@media only screen and (min-width: 901px) {
  .tecSceneMenu_item a {
  width:140px;
  height:72px
}


}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_item a {
  height:64px
}


}

.tecSceneMenu_title {
  display:flex;
  align-items:center;
  margin:10px 0 0 10px
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_title {
  margin:8px 0 0 8px
}


}

.tecSceneMenu_title span {
  font-size:12px;
  display:block;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.08em;
  line-height: 1em;
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_title span {
  font-size:10px
}


}

.tecSceneMenu_title::before {
  content:"";
  display:block;
  border:1px solid #1a1a1a;
  width:4px;
  height:4px;
  border-radius:50%;
  margin-right:6px
}

.tecSceneMenu_body {
  font-size:18px;
  text-align:center;
  margin-top:12px;
  line-height: 1em;
}

@media only screen and (max-width: 900px) {
  .tecSceneMenu_body {
  font-size:16px;
  margin-top:14px
}


}

@media only screen and (min-width: 901px) {
  .tecSceneMenu_item a:hover .tecSceneMenu_title,.tecSceneMenu_item a:hover .tecSceneMenu_body {
  opacity:.6
}


}

.tecSceneMenu_title,.tecSceneMenu_body {
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.tecSceneHead {
  perspective:1500px;
  perspective:1500px
}

.tecSceneHead>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecSceneHead>* {
  opacity:1;
  transform:none
}

.tecSceneHead.inView>* {
  opacity:1;
  transform:none
}

.tecSceneMenu_wrap {
  perspective:1500px;
  perspective:1500px
}

.tecSceneMenu_wrap>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecSceneMenu_wrap>* {
  opacity:1;
  transform:none
}

.tecSceneMenu_wrap.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 901px) {
  .________tecSection[data-section-format=wrap] {
  margin:140px auto 0;
  max-width:1440px
}

.tecBackground_image+.________tecSection[data-section-format=wrap] {
  margin-top:-60px
}


}

@media only screen and (max-width: 900px) {
  .________tecSection[data-section-format=wrap] {
  width:81.5384615385%;
  margin:70px auto 0
}


}

@media only screen and (max-width: 900px) {
  .________tecSection {
  margin:15px auto
}


}

@media only screen and (min-width: 901px) {
  [data-section-format=wrap] .________tecSection_wrap {
  padding-left:5.5555555556%;
  padding-right:5.5555555556%
}


}

.tecStep {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecStep {
  padding-left:10.4166666667%;
  padding-right:10.4166666667%;
  margin-top:32px
}


}

@media only screen and (max-width: 900px) {
  .tecStep {
  padding:4.1025641026%
}


}

.pin-spacer+.tecStep {
  /* margin-top:180px */
  margin-top:60px
}

@media only screen and (max-width: 900px) {
  .pin-spacer+.tecStep {
  /* margin-top:130px */
  margin-top:30px
}


}

.tecStep_anchor {
  position:absolute
}

@media only screen and (min-width: 901px) {
  .tecStep_anchor {
  top:-40px
}


}

@media only screen and (max-width: 900px) {
  .tecStep_anchor {
  top:-20px
}


}

.tecStep_wrap {
  background-color:#fff
}

@media only screen and (min-width: 901px) {
  .tecStep_wrap {
  display:flex;
  justify-content:space-between;
  border-radius:4px;
  padding:72px 4.2105263158%
}


}

@media only screen and (max-width: 900px) {
  .tecStep_wrap {
  border-radius:2px;
  padding:50px 5.5865921788%
}


}

@media only screen and (min-width: 901px) {
  .tecStep_side {
  width:32.183908046%
}


}

@media only screen and (min-width: 901px) {
  .tecStep_main {
  width:67.816091954%
}


}

@media only screen and (max-width: 900px) {
  .tecStep_main {
  margin-top:28px
}


}

.tecStep_label div.is-en,.tecStep_label h3.is-en {
  display:flex;
  align-items:center
}

.tecStep_label div.is-en::before,.tecStep_label h3.is-en::before {
  content:"";
  display:block;
  border:1px solid #1a1a1a;
  width:5px;
  height:5px;
  border-radius:50%;
  margin-right:6px
}

.tecStep_label div.is-en span,.tecStep_label h3.is-en span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.tecStep_label div.is-ja,.tecStep_label h3.is-ja {
  display:block;
  margin-top:15px;
  font-size:32px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .tecStep_label div.is-ja,.tecStep_label h3.is-ja {
  font-size:24px;
  margin-top:12px
}


}

.tecStep_body {
  margin-top:10px
}

@media only screen and (max-width: 900px) {
  .tecStep_body {
  margin-top:15px
}


}

.tecStep_body p {
  font-size:14px;
  line-height:180%
}

.tecStep_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .tecStep_body p sup {
  font-size:8px
}


}

.tecStepCards {
  background-color:#f8f8f3
}

@media only screen and (max-width: 900px) {
  .tecStepColumn+.tecStepCards {
  margin-top:30px
}


}

.tecStepCard {
  border-top:1px dashed rgba(128,128,128,.5)
}

@media only screen and (min-width: 901px) {
  .tecStepCard {
  display:flex;
  align-items:center
}


}

@media only screen and (min-width: 901px) {
  .tecStepCard[data-format=vertical] {
  display:block
}


}

.tecStepCard:first-child {
  border-top:none
}

.tecStepCard_image {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecStepCard_image {
  width:23.5875706215%;
  display:grid;
  align-items:center;
  justify-items:center;
  place-items:center;
  padding-top:10px
}

[data-format=vertical] .tecStepCard_image {
  width:100%
}


}

@media only screen and (max-width: 900px) {
  .tecStepCard_image {
  padding:20px 5.6603773585% 0
}


}

@media only screen and (min-width: 901px) {
  [data-step-card="1-1-1"] .tecStepCard_image {
  width:105px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (max-width: 900px) {
  [data-step-card="1-1-1"] .tecStepCard_image {
  width:120px
}


}

@media only screen and (min-width: 901px) {
  [data-step-card="1-1-2"] .tecStepCard_image {
  width:108px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (max-width: 900px) {
  [data-step-card="1-1-2"] .tecStepCard_image {
  width:120px
}


}

@media only screen and (min-width: 901px) {
  [data-step-card="1-1-3"] .tecStepCard_image {
  width:130px;
  margin:10px auto 20px
}


}

@media only screen and (max-width: 900px) {
  [data-step-card="1-1-3"] .tecStepCard_image {
  width:140px
}


}

@media only screen and (min-width: 901px) {
  [data-step-card="1-2-1"] .tecStepCard_image {
  width:17%
}


}

@media only screen and (max-width: 900px) {
  [data-step-card="1-2-1"] .tecStepCard_image {
  width:120px;
  padding-left:0
}


}

@media only screen and (min-width: 901px) {
  [data-step-card="1-3-1"] .tecStepCard_image {
  width:70.3389830508%;
  margin-left:auto;
  margin-right:auto;
  padding-top:40px
}


}

@media only screen and (max-width: 900px) {
  [data-step-card="1-3-1"] .tecStepCard_image {
  width:280px;
  padding-top:20px;
  margin-left:auto;
  margin-right:auto
}


}

[data-step-card="2-1-1"] .tecStepCard_image {
  padding-top:27.1%
}

@media only screen and (max-width: 900px) {
  [data-step-card="2-1-1"] .tecStepCard_image {
  padding-top:50%
}


}

[data-step-card="2-1-1"] .tecStepCard_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

@media only screen and (min-width: 901px) {
  .tecStepCard_content {
  padding:35px 5% 30px;
  width:77.8248587571%
}

[data-format=vertical] .tecStepCard_content {
  width:100%
}


}

@media only screen and (max-width: 900px) {
  .tecStepCard_content {
  padding:20px 5.6603773585% 30px
}


}

.tecStepCard_title {
  font-size:16px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .tecStepCard_title {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .tecStepCard_title[\:has\(span\)] {
  display:flex;
  align-items:center
}

.tecStepCard_title:has(span) {
  display:flex;
  align-items:center
}


}

.tecStepCard_title em {
  font-style:normal;
  font-size:11px;
  border:1px solid #1a1a1a;
  height:18px;
  display:flex;
  align-items:center;
  border-radius:9px;
  margin-right:12px;
  padding-left:8px;
  padding-right:8px;
  line-height:1;
  white-space:nowrap
}

@media only screen and (max-width: 900px) {
  .tecStepCard_title em {
  width:fit-content;
  margin-bottom:5px
}


}

.tecStepCard_body {
  margin-top:5px
}

.tecStepCard_body p {
  font-size:13px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .tecStepCard_body p {
  font-size:12px;
  line-height:170%
}


}

.tecStepCard_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .tecStepCard_body p sup {
  font-size:8px
}


}

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

.tecStepColumn_content {
  width:52.5423728814%
}

.tecStepColumn_image {
  width:40.6779661017%
}

.tecStepColumn_image>div {
  border-radius:4px;
  overflow:hidden
}

[data-step="2-1"] .tecStepColumn_image>div {
  border-radius:4px 4px 0 0
}


}

@media only screen and (max-width: 900px) {
  .tecStepColumn {
  display:flex;
  flex-direction:column
}

.tecStepColumn_content {
  order:2;
  margin-top:20px
}

.tecStepColumn_image {
  order:1
}

.tecStepColumn_image>div {
  border-radius:2px;
  overflow:hidden
}


}

.tecStep {
  perspective:1500px;
  perspective:1500px
}

.tecStep>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .tecStep>* {
  opacity:1;
  transform:none
}

.tecStep.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 901px) {
  .brushFeature {
  padding-left:7.8947368421%;
  padding-right:7.8947368421%;
  margin-top:120px
}


}

@media only screen and (max-width: 900px) {
  .brushFeature {
  margin-top:72px;
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .brushFeature_wrap {
  max-width:1210px;
  margin-left:auto;
  margin-right:auto;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (min-width: 901px) {
  .brushFeatureHead {
  width:34.5454545455%
}


}

.brushFeatureHead_title span {
  display:block
}

.brushFeatureHead_title span.is-en {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .brushFeatureHead_title span.is-en {
  font-size:14px
}


}

.brushFeatureHead_title span.is-ja {
  font-size:24px;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .brushFeatureHead_title span.is-ja {
  font-size:22px;
  margin-top:15px
}


}

@media only screen and (min-width: 901px) {
  .brushFeature_main {
  width:65.4545454545%
}


}

@media only screen and (max-width: 900px) {
  .brushFeature_main {
  margin-top:72px
}


}

.brushFeature_section {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative;
  margin-bottom:50px
}

@media only screen and (min-width: 901px) {
  .brushFeature_section {
  padding-top:32px;
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .brushFeature_section {
  padding-left:50px;
  padding-top:28px
}


}

.brushFeature_section::before {
  content:"";
  width:12px;
  height:1px;
  background-color:#1a1a1a;
  position:absolute;
  left:0;
  top:-1px;
  display:block
}

.brushFeature_volume {
  width:50px
}

@media only screen and (max-width: 900px) {
  .brushFeature_volume {
  position:absolute;
  left:0;
  top:30px
}


}

.brushFeature_volume span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .brushFeature_content {
  width:calc(100% - 50px)
}


}

@media only screen and (min-width: 901px) {
  .has-image .brushFeature_content {
  margin-right:6.0606060606%;
  width:40.6565656566%
}


}

.brushFeature_title {
  font-size:20px;
  font-family:neue-haas-grotesk-display,fot-cezanne-pron,sans-serif
}

.brushFeature_title span {
  font-size:16px
}

.brushFeature_body {
  margin-top:10px
}

.brushFeature_body p {
  font-size:14px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (min-width: 901px) {
  .brushFeature_image {
  width:46.9696969697%
}


}

@media only screen and (max-width: 900px) {
  .brushFeature_image {
  margin-top:20px
}


}

@media only screen and (min-width: 901px) {
  .brushGallery {
  max-width:1044px;
  margin:60px auto 0
}


}

@media only screen and (max-width: 900px) {
  .brushGallery {
  width:81.5384615385%;
  margin:70px auto 0
}


}

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


}

.brushGallery_image {
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .brushGallery_image>div {
  margin-top:10%
}


}

@media only screen and (min-width: 901px) {
  .brushGallery_image:nth-child(1) {
  width:35.632183908%
}


}

@media only screen and (max-width: 900px) {
  .brushGallery_image:nth-child(1) {
  display:flex;
  justify-content:flex-end
}

.brushGallery_image:nth-child(1)>div {
  width:84.2767295597%;
  height:97.1794871795vw
}


}

@media only screen and (min-width: 901px) {
  .brushGallery_image:nth-child(2) {
  width:27.5862068966%;
  margin-top:346px
}


}

@media only screen and (max-width: 900px) {
  .brushGallery_image:nth-child(2) {
  margin-top:52px;
  height:68.2051282051vw
}

.brushGallery_image:nth-child(2)>div {
  width:68.5534591195%;
  height:100%
}


}

@media only screen and (min-width: 901px) {
  .brushGallery_image:nth-child(3) {
  width:27.5862068966%;
  margin-top:70px
}


}

@media only screen and (max-width: 900px) {
  .brushGallery_image:nth-child(3) {
  display:flex;
  justify-content:flex-end;
  margin-top:52px
}

.brushGallery_image:nth-child(3)>div {
  width:68.5534591195%;
  height:68.2051282051vw
}


}

.cavitationAbout {
  margin-top:120px
}

@media only screen and (max-width: 900px) {
  .cavitationAbout {
  margin-top:60px
}


}

.cavitationAbout_content {
  background-color:#f8f8f3;
  padding:17.8472222222vw 0 100px;
  margin-top:-13.1944444444vw
}

@media only screen and (max-width: 900px) {
  .cavitationAbout_content {
  margin-top:-20.5128205128vw;
  padding:29.4871794872vw 0 60px
}


}

.cavitationAbout_lead {
  font-size:20px;
  line-height:180%;
  text-align:center;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .cavitationAbout_lead {
  font-size:16px;
  line-height:170%
}


}

.cavitationAbout_image {
  margin-top:40px;
  max-width:837px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (max-width: 900px) {
  .cavitationAbout_image {
  width:81.5384615385vw;
  margin-top:20px
}Ï


}

.cavitationAboutGallery {
  display:flex;
  justify-content:space-between
}

.cavitationAboutGallery_image {
  overflow:hidden
}

.cavitationAboutGallery_image:nth-child(1) {
  width:30.4166666667vw;
  border-radius:0 4px 4px 0
}

@media only screen and (max-width: 900px) {
  .cavitationAboutGallery_image:nth-child(1) {
  width:24.6153846154vw
}


}

.cavitationAboutGallery_image:nth-child(2) {
  width:33.6805555556vw;
  border-radius:4px
}

@media only screen and (max-width: 900px) {
  .cavitationAboutGallery_image:nth-child(2) {
  width:41.0256410256vw
}


}

.cavitationAboutGallery_image:nth-child(3) {
  width:30.4166666667vw;
  border-radius:4px 0 0 4px
}

@media only screen and (max-width: 900px) {
  .cavitationAboutGallery_image:nth-child(3) {
  width:24.6153846154vw
}


}

.cavitationAboutGallery_image picture {
  height:100%
}

@media only screen and (max-width: 900px) {
  .cavitationAboutGallery_image picture {
  height:62.0512820513vw
}


}

@media only screen and (max-width: 900px) {
  .cavitationAboutGallery_image picture img {
  height:100%;
  width:auto
}


}

.cavitationAboutGallery_image {
  opacity:0;
  transform:translateY(8%);
  transition:2.6s cubic-bezier(0.19, 1, 0.22, 1)
}

.inView .cavitationAboutGallery_image {
  opacity:1;
  transform:none
}

.cavitationAboutGallery_image:nth-child(1) {
  transition-delay:0.1s
}

.cavitationAboutGallery_image:nth-child(2) {
  transition-delay:0.2s
}

.cavitationAboutGallery_image:nth-child(3) {
  transition-delay:0.3s
}

.cavitationAboutGallery_image:nth-child(4) {
  transition-delay:0.4s
}

@media only screen and (min-width: 901px) {
  .cavitationArticle {
  max-width:1212px;
  margin:80px auto 0
}


}

@media screen and (1440px > width) {
  .cavitationArticle {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%;
  max-width:none
}


}

@media only screen and (max-width: 900px) {
  .cavitationArticle {
  padding:0 4.1025641026%;
  margin:60px auto
}


}

.cavitationArticle_wrap {
  background-color:#f8f8f3;
  border-radius:4px 4px 0 0;
  position:relative;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  [data-article=point1] .cavitationArticle_wrap {
  padding:95px 3% 55px
}


}

@media only screen and (max-width: 900px) {
  [data-article=point1] .cavitationArticle_wrap {
  padding:20px 5.5865921788% 54px
}


}

@media only screen and (min-width: 901px) {
  [data-article=point6] .cavitationArticle_wrap {
  padding:80px 7% 80px
}


}

@media only screen and (max-width: 900px) {
  [data-article=point6] .cavitationArticle_wrap {
  padding:18px 5.5865921788% 55px
}


}

.cavitationArticle_wrap::before {
  content:"";
  display:block;
  width:100%;
  height:48px;
  bottom:-48px;
  background-color:#1a1a1a;
  position:absolute;
  left:0;
  z-index:1;
  border-radius:0 0 4px 4px
}

@media only screen and (max-width: 900px) {
  .cavitationArticle_wrap::before {
  height:28px;
  bottom:-28px
}


}

.cavitationArticle_column {
  position:relative;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  [data-article=point1] .cavitationArticle_column {
  max-width:970px
}


}

@media only screen and (min-width: 901px) {
  .cavitationArticle_column[data-row="2"] {
  display:flex;
  justify-content:space-between;
  align-items:center
}


}

.cavitationArticle_illust {
  width:30.8%;
  position:absolute;
  right:0;
  top:-37px
}

@media only screen and (max-width: 900px) {
  .cavitationArticle_illust {
  width:144px;
  right:0;
  top:180px
}


}

.cavitationArticle_image {
  overflow:hidden;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .cavitationArticle_image {
  width:51.724137931%
}


}

@media only screen and (max-width: 900px) {
  .cavitationArticle_image {
  width:100%;
  margin:15px 0 28px
}


}

@media only screen and (min-width: 901px) {
  [data-article=point1] .cavitationArticle_content {
  width:52.6315789474%
}


}

@media only screen and (max-width: 900px) {
  [data-article=point1] .cavitationArticle_content {
  padding:40px 0 15px
}


}

@media only screen and (min-width: 901px) {
  [data-article=point6] .cavitationArticle_content {
  width:35.0877192982%
}


}

@media only screen and (max-width: 900px) {
  [data-article=point6] .cavitationArticle_content {
  padding:40px 0 15px
}


}

.cavitationArticle_body p {
  font-size:14px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .cavitationArticle_body p {
  line-height:170%
}


}

.cavitationArticle_body p sup {
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .cavitationArticle_body p sup {
  font-size:8px
}


}

.cavitationArticle {
  perspective:1500px
}

.cavitationArticle>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .cavitationArticle>* {
  opacity:1;
  transform:none
}

.cavitationArticle.inView>* {
  opacity:1;
  transform:none
}

.cativationHead[data-align=center] {
  text-align:center
}

@media only screen and (min-width: 901px) {
  .cativationHead[data-align=desktop-center] {
  text-align:center
}


}

.cativationHead_volume {
  font-size:12px;
  position:relative;
  display:flex;
  align-items:center;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

[data-align=center] .cativationHead_volume {
  justify-content:center
}

@media only screen and (min-width: 901px) {
  [data-align=desktop-center] .cativationHead_volume {
  justify-content:center
}


}

.cativationHead_volume.is-no-dot::before {
  display:none
}

.cativationHead_volume::before {
  content:"";
  display:block;
  border:1px solid #1a1a1a;
  width:5px;
  height:5px;
  border-radius:50%;
  margin-right:5px
}

@media only screen and (max-width: 900px) {
  .cativationHead_volume::before {
  margin-top:-2px;
  margin-right:7px
}


}

.cativationHead_headline {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .cativationHead_headline {
  margin-top:20px
}


}

.cativationHead_headline span {
  margin-top:16px;
  font-size:32px;
  line-height:180%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .cativationHead_headline span {
  font-size:24px;
  line-height:160%
}


}

.cativationHead_headline span sup {
  font-size:12px;
  position:relative;
  top:-0.1em
}

@media only screen and (max-width: 900px) {
  .cativationHead_headline span sup {
  font-size:10px;
  top:-0.2em
}


}

.cativationHead_body {
  margin-top:14px
}

@media only screen and (max-width: 900px) {
  .cativationHead_body {
  margin-top:10px
}


}

.cativationHead_body p {
  font-size:16px;
  line-height:180%;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .cativationHead_body p {
  font-size:14px
}


}

.cativationHead_body p sup {
  font-weight:normal;
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .cativationHead_body p sup {
  font-size:9px
}


}

.cativationNote {
  margin-top:24px
}

@media only screen and (max-width: 900px) {
  .cativationNote {
  margin-top:10px
}


}

.cativationNote p {
  font-size:9px;
  color:gray;
  line-height:180%
}

.cavitationExplains {
  padding-left:10.4166666667%;
  padding-right:10.4166666667%;
  margin-top:180px
}

@media only screen and (max-width: 900px) {
  .cavitationExplains {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%;
  margin-top:88px
}


}

.cavitationExplain {
  max-width:1044px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .cavitationExplain {
  display:flex;
  justify-content:space-between;
  margin-bottom:60px
}


}

@media only screen and (max-width: 900px) {
  .cavitationExplain {
  margin-bottom:50px
}


}

@media only screen and (min-width: 901px) {
  .cavitationExplain:nth-child(even) {
  flex-direction:row-reverse
}


}

@media only screen and (min-width: 901px) {
  .cavitationExplain_content {
  width:51.724137931%
}


}

@media only screen and (min-width: 901px) {
  .cavitationExplainMedia {
  width:43.6781609195%
}


}

@media only screen and (max-width: 900px) {
  .cavitationExplainMedia {
  margin-top:30px
}


}

.cavitationExplainMedia_image {
  background-color:#f8f8f3;
  overflow:hidden;
  border-radius:4px
}

[data-width="284"] .cavitationExplainMedia_image {
  padding-top:40px;
  padding-bottom:40px
}

@media only screen and (max-width: 900px) {
  [data-width="284"] .cavitationExplainMedia_image {
  padding-top:23px;
  padding-bottom:23px
}


}

[data-width="428"] .cavitationExplainMedia_image {
  padding:60px 0 20px
}

@media only screen and (max-width: 900px) {
  [data-width="428"] .cavitationExplainMedia_image {
  padding:40px 0 10px
}


}

.cavitationExplainMedia_inner {
  margin-left:auto;
  margin-right:auto
}

[data-width="284"] .cavitationExplainMedia_inner {
  width:62.2807017544%
}

@media only screen and (max-width: 900px) {
  [data-width="284"] .cavitationExplainMedia_inner {
  width:75.786163522%
}


}

[data-width="428"] .cavitationExplainMedia_inner {
  width:93.8596491228%
}

@media only screen and (max-width: 900px) {
  [data-width="428"] .cavitationExplainMedia_inner {
  width:95.2830188679%
}


}

.cavitationExplain {
  perspective:600px
}

.cavitationExplainMedia {
  perspective:800px
}

.cavitationExplainMedia>div {
  transition:2.4s cubic-bezier(0.19, 1, 0.22, 1);
  opacity:0;
  display:block;
  transform:scale(1.08)
}

.inView .cavitationExplainMedia>div {
  opacity:1;
  transform:none
}

.cavitationExplain_content>* {
  opacity:0;
  transform:rotateX(-5deg) translateY(30px) scale(0.92);
  transform-origin:center center;
  transition:0s cubic-bezier(0.19, 1, 0.22, 1) 0s
}

.inView .cavitationExplain_content>* {
  opacity:1;
  transform:none
}

.cavitationExplain_content>*:nth-child(1) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.1s
}

.cavitationExplain_content>*:nth-child(2) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.18s
}

.cavitationExplain_content>*:nth-child(3) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.26s
}

.cavitationExplain_content>*:nth-child(4) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.34s
}

.cavitationExplain_content>*:nth-child(5) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.42s
}

.cavitationExplain_content>*:nth-child(6) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.5s
}

.cavitationExplain_content>*:nth-child(7) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.58s
}

.cavitationExplain_content>*:nth-child(8) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.66s
}

.cavitationExplain_content>*:nth-child(9) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.74s
}

.cavitationExplain_content>*:nth-child(10) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.82s
}

.cavitationExplain_content>*:nth-child(11) {
  transition:2.9s cubic-bezier(0.19, 1, 0.22, 1) 0.9s
}

.cavitationLed {
  margin-top:135px
}

@media only screen and (max-width: 900px) {
  .cavitationLed {
  margin-top:60px
}


}

.cavitationLed_hero {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%
}

@media only screen and (max-width: 900px) {
  .cavitationLed_hero {
  padding-left:9.2307692308%;
  padding-right:9.2307692308%
}


}

.cavitationLed_hero>div {
  max-width:1212px;
  margin-left:auto;
  margin-right:auto;
  border-radius:4px;
  overflow:hidden
}

.cavitationLed_wrap {
  background-color:#f8f8f3;
  padding:120px 5% 125px;
}

@media only screen and (max-width: 900px) {
  .cavitationLed_wrap {
  padding:60.7692307692vw 9% 60px;
  margin-top:-48.7179487179vw
}


}

.cavitationLed_content {
  max-width:972px;
  margin-left:auto;
  margin-right:auto
}

.cavitationLed_list {
  display:flex;
  justify-content:space-between;
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .cavitationLed_list {
  margin-top:20px
}


}

.cavitationLed_list div {
  width:30.8641975309%;
  overflow:hidden;
  border-radius:4px
}

.cavitationLed_content {
  perspective:1500px
}

.cavitationLed_content>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .cavitationLed_content>* {
  opacity:1;
  transform:none
}

.cavitationLed_content.inView>* {
  opacity:1;
  transform:none
}

.cavitationMode {
  padding:140px 5% 35px
}

@media only screen and (max-width: 900px) {
  .cavitationMode {
  padding:60px 9% 0
}


}

.cavitationMode_wrap {
  max-width:972px;
  margin-left:auto;
  margin-right:auto
}

.cavitationModeCards {
  margin-top:45px
}

@media only screen and (max-width: 900px) {
  .cavitationModeCards {
  margin-top:25px
}


}

.cavitationModeCard {
  border-radius:4px;
  background-color:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .cavitationModeCard {
  display:flex;
  justify-content:space-between;
  padding:48px 4.9382716049%;
  margin-bottom:24px
}


}

@media only screen and (max-width: 900px) {
  .cavitationModeCard {
  padding:0 0 20px;
  margin-bottom:24px
}


}

@media only screen and (min-width: 901px) {
  .cavitationModeCard_hero {
  width:24.6575342466%
}


}

.cavitationModeCard_hero picture {
  overflow:hidden;
  border-radius:4px
}

@media only screen and (max-width: 900px) {
  .cavitationModeCard_hero picture {
  border-radius:4px 4px 0 0
}


}

@media only screen and (min-width: 901px) {
  .cavitationModeCard_content {
  width:68.8356164384%
}


}

@media only screen and (max-width: 900px) {
  .cavitationModeCard_content {
  padding:33px 5.9% 20px
}


}

@media only screen and (max-width: 900px) {
  .cavitationModeCard_head {
  padding-left:7.2%;
  padding-right:7.2%
}


}

.cavitationModeCard_title {
  font-size:20px;
  position:relative;
  letter-spacing:.12em
}

.cavitationModeCard_title:before {
  left:-20px;
  top:15px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.cavitationModeCard_body {
  margin-top:10px;
  font-size:14px;
  line-height:180%
}

.cavitationModeCard_image {
  margin-top:17px
}

@media only screen and (min-width: 901px) {
  .cavitationModeCard_image.is-column3 picture {
  width:74.3%
}


}

.cavitationModeCard {
  opacity:0;
  transform:translateY(15%);
  transition:2s cubic-bezier(0.19, 1, 0.22, 1)
}

.inView .cavitationModeCard {
  opacity:1;
  transform:none
}

.cavitationModeCard:nth-child(1) {
  transition-delay:0.1s
}

.cavitationModeCard:nth-child(2) {
  transition-delay:0.2s
}

.cavitationModeCard:nth-child(3) {
  transition-delay:0.3s
}

.cavitationModeCard:nth-child(4) {
  transition-delay:0.4s
}

@media only screen and (min-width: 901px) {
  .cavitationSonic {
  display:flex;
  justify-content:space-between;
  margin-top:65px
}


}

@media only screen and (max-width: 900px) {
  .cavitationSonic {
  margin-top:58px
}


}

.cavitationSonic_item {
  border-radius:4px;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .cavitationSonic_item:nth-child(1) {
  margin-bottom:12px
}


}

@media only screen and (min-width: 901px) {
  .cavitationSonic_item {
  width:48.4210526316%
}


}

.cavitationSonic_video {
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .cavitationSonic_video {
  height:45.641025641vw
}


}

.cavitationSonic_video video {
  width:100%;
  height:auto
}

.cavitationSonic_content {
  background-color:#fff;
  padding-top:20px;
  padding-bottom:20px;
  text-align:center
}

@media only screen and (max-width: 900px) {
  .cavitationSonic_content {
  padding-top:10px;
  padding-bottom:10px
}


}

.cavitationSonic_content p {
  font-size:16px
}

@media only screen and (max-width: 900px) {
  .cavitationSonic_content p {
  font-size:12px
}


}

.cavitationSuprevise {
  background-color:#f8f8f3
}

@media only screen and (min-width: 901px) {
  .cavitationSuprevise {
  margin:190px 0 0;
  padding:60px 0 65px
}


}

@media only screen and (max-width: 900px) {
  .cavitationSuprevise {
  margin:90px 0;
  padding:60px 0 50px
}


}

.cavitationSuprevise_wrap {
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .cavitationSuprevise_wrap {
  max-width:1212px
}


}

@media screen and (1440px > width) {
  .cavitationSuprevise_wrap {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%;
  max-width:none
}


}

@media only screen and (max-width: 900px) {
  .cavitationSuprevise_wrap {
  padding:0 9.2307692308%
}


}

@media only screen and (min-width: 901px) {
  .cavitationSuprevise_main {
  margin-top:35px
}


}

@media only screen and (max-width: 900px) {
  .cavitationSuprevise_main {
  margin-top:15px
}


}

.cavitationSupreviseCard {
  background-color:#fff;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .cavitationSupreviseCard {
  padding:20px 40px;
  display:flex;
  justify-content:space-between;
  align-items:center
}


}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard {
  padding:30px 5.6603773585% 25px
}


}

@media only screen and (min-width: 901px) {
  .cavitationSupreviseCard_image {
  width:33.9130434783%
}


}

.cavitationSupreviseCard_image>picture {
  overflow:hidden;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .cavitationSupreviseCard_content {
  width:60.8695652174%
}


}

@media only screen and (min-width: 901px) {
  .cavitationSupreviseCard_name {
  margin-top:10px
}


}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard_name {
  margin-top:20px
}


}

.cavitationSupreviseCard_name span {
  display:block
}

.cavitationSupreviseCard_name span.is-sub {
  font-size:11px;
  line-height:170%;
  letter-spacing:.12em;
  margin-top:10px
}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard_name span.is-sub {
  line-height:150%;
  letter-spacing:.08em;
  margin-top:5px
}


}

.cavitationSupreviseCard_name span.is-main {
  font-size:18px
}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard_name span.is-main {
  font-size:16px
}


}

.cavitationSupreviseCard_body {
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard_body {
  margin-top:10px
}


}

.cavitationSupreviseCard_body p {
  font-size:13px;
  line-height:170%;
  color:gray
}

@media only screen and (max-width: 900px) {
  .cavitationSupreviseCard_body p {
  font-size:12px
}


}

.cavitationSuprevise {
  perspective:1500px
}

.cavitationSuprevise>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .cavitationSuprevise>* {
  opacity:1;
  transform:none
}

.cavitationSuprevise.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 901px) {
  .technologyBanner {
  max-width:1440px;
  margin:300px auto 0
}
 [data-bursh-type=pro2] .technologyBanner {
  max-width:1044px;
}
}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro2] .technologyBanner {
  margin:180px auto 0;
width: 91.7948717949vw;
}


}

@media only screen and (min-width: 901px) {
  .technologyBanner_wrap {
  padding:0 7.9166666667%
}
 [data-bursh-type=pro2] .technologyBanner_wrap {
  padding:0
}


}

.technologyBanner_link {
  display:flex;
  align-items:center;
  background-color:#fff;
  border-radius:4px;
  position:relative;
  border:1px solid #ccc;
  overflow:hidden
}

[data-bursh-type=pro2] .technologyBanner_link {
  border: none;
}

@media only screen and (min-width: 901px) {
  .technologyBanner_link {
  margin-left:21%;
  padding:10px 5% 10px 5%;
  height:192px
}
 [data-bursh-type=pro2] .technologyBanner_link {
  margin-left:0;
  padding:10px 5% 10px 5%;
  height:280px;
}
.lift-brush-pro2_tec-banner-link{
  margin-left:0;
  max-width:1044px;
  height:280px;
  margin-inline:auto;
}


}

@media only screen and (max-width: 900px) {
  .technologyBanner_link {
  padding:40px 4% 30px 4%;
  border-radius:2px;
  height:280px
}

  [data-bursh-type=pro2] .technologyBanner_link {
  padding:40px 4% 30px 4%;
  border-radius:2px;
  height:233px
}


}

.technologyBanner_image {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.technologyBanner_image picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.technologyBanner_image picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

@media only screen and (min-width: 901px) {
  .technologyBanner_content {
  position:absolute;
  left:35%;
  top:64px;
  z-index:1
}
 [data-bursh-type=pro2] .technologyBanner_content {
   left:56.3%;
}

.lift-brush-pro2_tec-banner-content{
  left:56.3%;
}


}

.technologyBanner_title {
  font-size:24px;
  margin-bottom:20px
}

@media only screen and (max-width: 900px) {
  .technologyBanner_title {
  font-size:17px;
  line-height:150%;
  margin-bottom:10px;
  position:absolute;
  left:52.3%;
  top:93px
}


}


[data-bursh-type=pro2] .technologyBanner_title {
    line-height: 160%;
    font-size: 18px;
}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro2] .technologyBanner_title {
    font-size: 16px;
    line-height: 160%;
    letter-spacing: .12em;
    left: 44.3%;
    top: 57px;
}
}

.technologyBanner_label {
  display:flex;
  align-items:flex-start;
  position:absolute;
  right:1.3%;
  top:15px
}

.technologyBanner_label:after {
  content:""
}

@media only screen and (max-width: 900px) {
  .technologyBanner_label {
  right:4.8%;
  top:16px
}


}

.technologyBanner_label span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.technologyBanner_label::after {
  padding-left:3px;
  font-size:5px;
  color:gray
}

@media only screen and (max-width: 900px) {
  .technologyBanner .textLink {
  position:absolute;
  right:5%;
  bottom:20px
}


}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro2] .technologyBanner .textLink {
  position:absolute;
  right:8.4%;
  bottom:60px
}


}

@media only screen and (max-width: 900px) {
  .technologyBanner .textLink div span {
  font-size:13px
}


}

.botanicalBanner {
  position:relative;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .botanicalBanner {
  max-width:1210px;
  margin:160px auto 0;
  padding:90px 8.3% 75px
}


}

@media only screen and (max-width: 900px) {
  .botanicalBanner {
  padding:72px 0 270px;
  margin-top:60px
}


}

.botanicalBanner_background picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.botanicalBanner_background picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.botanicalBanner_background picture img {
  object-position:50% 100%
}

.botanicalBanner_content {
  position:relative;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .botanicalBanner_content {
  width:47.9338842975%
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .botanicalBanner_content {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

.botanicalBanner_title {
  font-size:42px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .botanicalBanner_title {
  font-size:40px
}


}

.botanicalBanner_tag {
  display:flex;
  flex-wrap:wrap;
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .botanicalBanner_tag {
  margin-top:40px
}


}

.botanicalBanner_tag li {
  margin:0 9px 8px 0
}

.botanicalBanner_tag li span {
  display:block;
  font-size:14px;
  background-color:#fff;
  height:20px;
  border-radius:10px;
  background-color:rgba(177,191,203,.2);
  display:flex;
  align-items:center;
  padding-left:10px;
  padding-right:10px;
  line-height:1
}

@media only screen and (max-width: 900px) {
  .botanicalBanner_tag li span {
  font-size:13px
}


}

.botanicalBanner_body {
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .botanicalBanner_body {
  margin-top:20px
}


}

.botanicalBanner_body p {
  font-size:12px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .botanicalBanner_body p {
  font-size:14px
}


}

.botanicalBanner .textLink {
  margin-top:25px
}

@media only screen and (max-width: 900px) {
  .botanicalBanner .textLink {
  margin-top:20px
}


}

.brushImages {
  position:relative
}

@media only screen and (min-width: 901px) {
  .brushImages {
  margin:160px 0 233px;
  max-width:1392px;
  padding-left:90px;
  padding-right:90px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 750px)and (max-width: 1440px) {
  .brushImages {
  padding-left:60px;
  padding-right:60px
}


}

@media only screen and (min-width: 901px)and (max-width: 900px) {
  .brushImages {
  padding-left:8%;
  padding-right:8%
}


}

@media only screen and (max-width: 900px) {
  .brushImages {
  margin:100px 0 100px;
  width:100%
}


}

.brushImages_item div {
  border-radius:4px;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .brushImages_item div {
  border-radius:0 2px 2px 0
}


}

@media only screen and (min-width: 901px) {
  .brushImages_item:nth-child(1) {
  margin-bottom:100px;
  padding-left:15.7%
}


}

.brushImages_item:nth-child(1) div {
  width:624px
}

@media only screen and (max-width: 900px) {
  .brushImages_item:nth-child(1) div {
  width:90.7692307692vw
}


}

@media only screen and (min-width: 901px) {
  .brushImages_item:nth-child(2) {
  position:absolute;
  right:6.3%;
  bottom:-558px
}


}

@media only screen and (max-width: 900px) {
  .brushImages_item:nth-child(2) {
  margin-top:64px;
  display:flex;
  justify-content:flex-end
}


}

.brushImages_item:nth-child(2) div {
  width:540px
}

@media only screen and (max-width: 900px) {
  .brushImages_item:nth-child(2) div {
  width:86.1538461538vw;
  border-radius:2px 0 0 2px
}


}

@media only screen and (min-width: 901px) {
  .supervisor {
  max-width:1290px;
  margin:200px auto 0;
  padding-left:40px;
  padding-right:40px
}


}

@media only screen and (max-width: 900px) {
  .supervisor {
  margin:60px auto 0;
  width:82.0512820513vw
}


}

@media only screen and (max-width: 900px) {
  .supervisor .tecHeadlineLv2 span.is-ja {
  font-size:24px;
  margin-top:15px
}


}

.supervisor_wrap {
  position:relative
}

@media only screen and (min-width: 901px) {
  .supervisor_wrap {
  padding-left:3.3%;
  padding-right:3.3%
}


}

@media only screen and (max-width: 900px) {
  .supervisor_wrap {
  margin-top:40px;
  padding-left:6%;
  padding-right:6%
}


}

.supervisor_main {
  position:relative
}

@media only screen and (min-width: 901px) {
  .supervisor_main {
  display:flex;
  justify-content:space-between;
  margin-top:56px
}


}

@media only screen and (min-width: 901px) {
  .supervisor_image {
  width:34.7593582888%
}


}

.supervisor_image div {
  border-radius:2px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .supervisor_content {
  width:59.9821746881%;
  padding-top:25px
}


}

@media only screen and (max-width: 900px) {
  .supervisor_content {
  margin-top:19px
}


}

.supervisor_name span {
  display:block
}

.supervisor_name span.is-main {
  font-size:18px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .supervisor_name span.is-main {
  font-size:16px
}


}

.supervisor_name span.is-sub {
  font-size:11px
}

@media only screen and (min-width: 901px) {
  .supervisor_name span.is-sub {
  margin-top:15px
}


}

@media only screen and (max-width: 900px) {
  .supervisor_name span.is-sub {
  margin-top:5px
}


}

.supervisor_description {
  font-size:11px;
  line-height:170%;
  margin-top:5px
}

.supervisor_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .supervisor_body {
  margin-top:10px
}


}

.supervisor_body p {
  font-size:13px;
  line-height:170%;
  color:gray
}

@media only screen and (min-width: 901px) {
  .supervisor_button {
  display:flex;
  justify-content:flex-end;
  margin-top:52px
}


}

@media only screen and (max-width: 900px) {
  .supervisor_button {
  margin-top:40px
}


}

.supervisor_button .buttonFill a {
  width:222px
}

.tecBrushColumn {
  margin-top:40px
}

.tecBrushColumn_headline {
  font-size:12px;
  padding-left:12px;
  position:relative
}

.tecBrushColumn_headline::before {
  position:absolute;
  left:0;
  top:9px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.tecBrushColumn_wrap {
  display:flex;
  justify-content:space-between;
  margin-top:20px
}

.tecBrushColumn_item {
  width:48%;
  background-color:#fff;
  border:1px solid #f0f0e6;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .tecBrushColumn_item {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-radius:2px;
  padding:14px 1.5% 10px 2.9%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushColumn_item {
  display:flex;
  flex-direction:column-reverse;
  padding:20px 4% 20px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushColumn_image {
  width:40.2777777778%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushColumn_image {
  width:29.2307692308vw
}


}

@media only screen and (min-width: 901px) {
  .tecBrushColumn_content {
  width:55.5555555556%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushColumn_content {
  min-height:100px;
  margin-top:10px
}


}

.tecBrushColumn_title {
  font-size:13px;
  line-height:170%;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.tecBrushColumn_body {
  margin-top:5px
}

.tecBrushColumn_body p {
  font-size:13px;
  line-height:160%
}

@media only screen and (max-width: 900px) {
  .tecBrushColumn_body p {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushCare {
  margin-top:210px;
  padding-left:10.4166666667%;
  padding-right:10.4166666667%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushCare {
  margin-top:47px
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .tecBrushCare {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

.tecBrushCare_wrap {
  max-width:1140px;
  margin-left:auto;
  margin-right:auto
}

.tecBrushCare_list {
  margin-top:55px
}

@media only screen and (max-width: 900px) {
  .tecBrushCare_list {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushCareCard {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:40px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushCareCard {
  margin-bottom:30px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushCareCard_image {
  width:26.5017667845%
}


}

@media only screen and (min-width: 901px) {
  .tecBrushCareCard_content {
  width:66.0777385159%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushCareCard_content {
  margin-top:30px
}


}

.tecBrushCareCard_title {
  font-size:22px;
  position:relative
}

.tecBrushCareCard_title::before {
  position:absolute;
  box-sizing: content-box;
  left:-20px;
  top:18px;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

@media only screen and (max-width: 900px) {
  .tecBrushCareCard_title::before {
  left:-15px
}


}

.tecBrushCareCard_body {
  margin-top:10px
}

.tecBrushCareCard_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .tecBrushCareCard_body p {
  font-size:14px
}


}

.tecBrushCareCard_body p sup {
  font-size:10px
}

@media only screen and (max-width: 900px) {
  .tecBrushCareCard_body p sup {
  font-size:9px
}


}

.tecBrushFive {
  position:relative;
  margin-top:400px
}

@media only screen and (max-width: 900px) {
  .tecBrushFive {
  margin-top:50px
}

[data-bursh-type=std] .tecBrushFive {
  padding-bottom:60px
}

[data-bursh-type=pro] .tecBrushFive {
  padding-bottom:1px
}


}

.tecBrushFive_hero {
  width:89.5833333333vw;
  height:540px;
  position:absolute;
  right:0;
  top:-240px;
  overflow:hidden;
  border-radius:4px 0 0 4px
}

@media only screen and (max-width: 900px) {
  .tecBrushFive_hero {
  width:90.7692307692vw;
  height:358px;
  top:-75px
}


}

.tecBrushFive_hero picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.tecBrushFive_hero picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.tecBrushFive_wrap {
  max-width:1052px;
  padding:370px 40px 0;
  margin:0 auto
}

.tecBrushFive_content {
  margin-top:60px
}

@media only screen and (min-width: 901px) {
  .tecBrushFiveCard {
  display:flex;
  justify-content:space-between;
  margin-bottom:42px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard {
  margin-bottom:100px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushFiveCard_image {
  width:22.2222222222%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_image {
  width:53.8461538462vw;
  margin-left:auto;
  margin-right:auto
}


}

.tecBrushFiveCard_content {
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecBrushFiveCard_content {
  width:60.6995884774%;
  margin-top:5px
}

.is-wide .tecBrushFiveCard_content {
  width:56.5843621399%;
  margin-top:0
}


}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_content {
  margin-top:30px;
  padding-left:75px
}


}

.tecBrushFiveCard_label {
  font-size:18px;
  position:absolute;
  font-family:neue-haas-grotesk-display,fot-cezanne-pron,sans-serif
}

@media only screen and (min-width: 901px) {
  .is-wide .tecBrushFiveCard_label {
  font-size:15px;
  left:-170px
}


}

@media only screen and (max-width: 900px) {
  .is-wide .tecBrushFiveCard_label {
  font-size:18px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushFiveCard_label {
  left:-130px;
  top:-2px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_label {
  left:0;
  top:0
}


}

.tecBrushFiveCard_label::before {
  content:"";
  display:block;
  background-color:#1a1a1a;
  position:absolute
}

@media only screen and (min-width: 901px) {
  .tecBrushFiveCard_label::before {
  width:0.1em;
  height:12px;
  left:100px;
  /* top:3px */
  top:50%;
  transform:translateY(-50%);
  background-color:#ccc;
}


}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_label::before {
  right:-18px;
  /* top:8px;*/
  top:50%;
  transform:translateY(-50%);
  width:12px;
  height:1px;
  background-color:#ccc
}


}

@media only screen and (min-width: 901px) {
  .is-wide .tecBrushFiveCard_label::before {
  left:134px
}


}

@media only screen and (max-width: 900px) {
  .is-wide .tecBrushFiveCard_label::before {
  right:-24px
}


}

.tecBrushFiveCard_title {
  font-size:15px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_title {
  font-size:18px
}


}

.tecBrushFiveCard_title+.tecBrushFiveCard_body {
  margin-top:17px
}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_title+.tecBrushFiveCard_body {
  margin-top:15px
}


}

.tecBrushFiveCard_label+.tecBrushFiveCard_body {
  margin-top:-6px
}

@media only screen and (max-width: 900px) {
  .tecBrushFiveCard_label+.tecBrushFiveCard_body {
  padding-top:30px
}


}

.tecBrushFiveCard_body p {
  font-size:14px;
  line-height:180%
}

.tecBrushProFunction {
  background-color:#405260;
  border-radius:4px;
  position:relative;
  overflow:hidden;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .tecBrushProFunction {
  padding:80px 6% 65px;
  margin-top:100px;
  max-width:1140px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunction {
  padding:72px 6% 35px;
  margin-top:10px;
  width:91.7948717949vw
}


}

.tecBrushProFunction * {
  color:#fff
}

.tecBrushProFunction_label {
  font-size:11px;
  position:absolute;
  z-index:1;
  left:0;
  top:37px;
  background-color:#1a1a1a;
  padding:2px 23px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.08em;
  font-weight:bold
}

.tecBrushProFunction_title {
  font-size:24px;
  line-height:180%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .tecBrushProFunction_title {
  padding-left:5%
}


}

.tecBrushProFunction_list {
  margin-top:50px
}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunctionCard {
  margin-bottom:30px
}


}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard_image {
  width:22.2222222222%
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunctionCard_image img {
  width:100%;
  height:auto
}


}

.tecBrushProFunctionCard_image div {
  overflow:hidden;
  border-radius:2px
}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard_content {
  width:73.8683127572%
}


}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard_body {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunctionCard_body {
  margin-top:20px
}


}

.tecBrushProFunctionCard_body dt {
  font-size:18px;
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard_body dt {
  width:170px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunctionCard_body dt {
  width:fit-content
}

.tecBrushProFunctionCard_body dt::before {
  content:"";
  display:block;
  width:12px;
  height:1px;
  background-color:#ccc;
  position:absolute;
  right:-24px;
  /* top:9px */
  top: 50%;
  transform: translateY(-50%);
}


}

.tecBrushProFunctionCard_body dd {
  font-size:14px;
  line-height:180%;
  position:relative
}

@media only screen and (min-width: 901px) {
  .tecBrushProFunctionCard_body dd {
  width:calc(100% - 170px)
}

.tecBrushProFunctionCard_body dd::before {
  content:"";
  display:block;
  width:12px;
  height:1px;
  background-color:#ccc;
  position:absolute;
  left:-28px;
  top:14px
}


}

@media only screen and (max-width: 900px) {
  .tecBrushProFunctionCard_body dd {
  margin-top:10px
}


}

.traitBrushProBanner {
  margin-top:30px
}

@media only screen and (min-width: 901px) {
  .traitBrushProBanner {
  width:96%
}


}

.traitBrushProBanner_link {
  height:198px;
  display:flex;
  align-items:center;
  border-radius:2px;
  position:relative;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .traitBrushProBanner_link {
  height:191px
}


}

.traitBrushProBanner_link picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.traitBrushProBanner_link picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.traitBrushProBanner_link picture img {
  object-position:left top
}

.traitBrushProBanner_content {
  padding:0px 8% 0 55%;
  position:relative;
  z-index:1
}

@media only screen and (max-width: 900px) {
  .traitBrushProBanner_content {
  padding:0px 8% 0 49.5%
}


}

.traitBrushProBanner_label {
  position:relative
}

.traitBrushProBanner_label span {
  font-size:8px;
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.traitBrushProBanner_label::before {
  left:-14px;
  top:11px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute;
  border-color:#fff
}

.traitBrushProBanner_body {
  margin-top:10px
}

@media only screen and (max-width: 900px) {
  .traitBrushProBanner_body {
  margin-top:15px
}


}

.traitBrushProBanner_body p {
  font-size:12px;
  line-height:160%;
  letter-spacing:.12em;
  color:#fff
}

.traitBrushProList {
  margin-top:60px
}

.traitBrushProList_headline {
  font-size:14px
}

.traitBrushProList_list {
  margin-top:30px
}

.traitBrushProList_item {
  display:flex;
  margin-bottom:15px
}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro] .traitBrushProList_item {
  display:block
}


}

.traitBrushProList_label {
  /* width:75px; */
  width:120px;
  flex-shrink: 0;
  position:relative;
  font-size:12px;
  letter-spacing:.12em;
  padding-left:18px;
  font-family:neue-haas-grotesk-display,fot-cezanne-pron,sans-serif
}

@media only screen and (min-width: 901px) {
  [data-bursh-type=pro] .traitBrushProList_label {
  width:120px
}


}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro] .traitBrushProList_label {
  width:100%;
  margin-bottom:10px
}


}

@media only screen and (min-width: 901px) {
  .traitBrushProList_label {
  margin-top:2px
}


}

@media only screen and (max-width: 900px) {
  .traitBrushProList_label {
  font-size:13px
}

[data-bursh-type=std] .traitBrushProList_label {
  width:65px
}


}

.traitBrushProList_label:before {
  position:absolute;
  top:8px;
  left:0;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute;
  box-sizing: content-box;
}

@media only screen and (max-width: 900px) {
  .traitBrushProList_label:before {
  top:8px;
  left:2px
}


}

[data-bursh-type=std] .traitBrushProList_content {
  width:calc(100% - 75px)
}

@media only screen and (max-width: 900px) {
  [data-bursh-type=std] .traitBrushProList_content {
  width:calc(100% - 65px)
}


}

@media only screen and (min-width: 901px) {
  [data-bursh-type=pro] .traitBrushProList_content {
  width:calc(100% - 120px)
}


}

@media only screen and (max-width: 900px) {
  [data-bursh-type=pro] .traitBrushProList_content {
  padding-left:18px
}


}

.traitBrushProList_title {
  font-size:12px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .traitBrushProList_title {
  font-size:13px
}


}

.traitBrushProList_title+.traitBrushProList_body {
  padding-top:7px
}

.traitBrushProList_body p {
  font-size:11px;
  line-height:160%;
  letter-spacing:.1em
}

.traitBrushProFunction {
  background-color:#405260;
  border-radius:4px;
  position:relative;
  overflow:hidden;
  padding:40px 6% 35px;
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  .traitBrushProFunction {
  border-radius:2px;
  padding:40px 8% 50px
}


}

.traitBrushProFunction * {
  color:#fff
}

.traitBrushProFunction::before {
  content:"";
  display:block;
  width:100%;
  height:14px;
  position:absolute;
  left:0;
  bottom:0;
  background-color:#1a1a1a
}

.traitBrushProFunction_label {
  font-size:11px;
  position:absolute;
  z-index:1;
  left:0;
  top:12px;
  background-color:#1a1a1a;
  padding:2px 5px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.08em;
  font-weight:bold
}

.traitBrushProFunction_title {
  font-size:14px;
  letter-spacing:.12em
}

@media only screen and (min-width: 901px) {
  .traitBrushProFunction_list {
  margin-top:23px;
  display:flex;
  flex-wrap:wrap
}


}

@media only screen and (max-width: 900px) {
  .traitBrushProFunction_list {
  margin-top:17px
}


}

.traitBrushProFunction_list dt,.traitBrushProFunction_list dd {
  line-height:160%
}

@media only screen and (min-width: 901px) {
  .traitBrushProFunction_list dt,.traitBrushProFunction_list dd {
  font-size:11px;
  margin-bottom:10px
}


}

.traitBrushProFunction_list dt {
  position:relative
}

@media only screen and (min-width: 901px) {
  .traitBrushProFunction_list dt {
  width:120px;
  padding-left:15px
}


}

@media only screen and (max-width: 900px) {
  .traitBrushProFunction_list dt {
  font-size:13px;
  padding-left:15px
}


}

.traitBrushProFunction_list dt:before {
  position:absolute;
  top:7px;
  left:0;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute;
  border-color:#fff
}

@media only screen and (max-width: 900px) {
  .traitBrushProFunction_list dd+dt {
  margin-top:15px
}


}

@media only screen and (min-width: 901px) {
  .traitBrushProFunction_list dd {
  width:calc(100% - 120px)
}


}

@media only screen and (max-width: 900px) {
  .traitBrushProFunction_list dd {
  padding-left:16px;
  font-size:11px
}


}

.proBanner {
  position:relative;
  z-index:20
}

@media only screen and (min-width: 901px) {
  .proBanner {
  margin:300px auto 90px;
  max-width:1052px;
  padding:0 40px
}
}

@media only screen and (max-width: 900px) {
  .proBanner {
  width:91.7948717949vw;
  margin:45px auto 110px
}
}

.proBanner_wrap {
  width:100%;
  position:relative
}

.proBanner_fill {
  background-color:#405260;
  overflow:hidden;
  border-radius:4px;
}

@media only screen and (min-width: 901px) {
    [data-bursh-type=pro2] .proBanner_body {
        width: 100%;
    }
}

@media only screen and (min-width: 901px) {
  .proBanner_fill {
  display:flex;
  align-items:center;
  padding:155px 0 148px 8.5%;
  width:100%
}



}

@media only screen and (max-width: 900px) {
  .proBanner_fill {
  padding:107px 5% 86px
}


}

.is-extend .proBanner_fill {
  padding:155px 0 288px 8.5%
}

@media only screen and (max-width: 900px) {
  .is-extend .proBanner_fill {
  padding:107px 5% 304px
}


}

.is-extend .proBanner_fill::before {
  height:154px
}

@media only screen and (max-width: 900px) {
  .is-extend .proBanner_fill::before {
  height:230px
}


}

.proBanner_fill * {
  color:#fff
}


@media only screen and (min-width: 901px) {
  .proBanner_annotation {
      margin-top: 27px;
  }
}

.proBanner_annotation li.is-noIndent {
    text-indent: 0;
    padding-left: 0;
}

.proBanner_body[data-size="13"] p {
    font-size: 13px;
}

[data-bursh-type=pro2] .proBanner_body p sup {
    color: #1a1a1a;
}

.proBanner_fill::before {
  content:"";
  display:block;
  width:100%;
  height:48px;
  position:absolute;
  left:0;
  bottom:0;
  background-color:#1a1a1a;
  border-radius:0 0 4px 4px
}

[data-bursh-type=pro2] .proBanner_fill::before {
    background-color: #e3e2e2;
    height: 67px;
}

[data-bursh-type=pro2] .proBanner_fill {
    background-color: #f7f7f7;
}

[data-bursh-type=pro2] .proBanner_title {
    color: #1a1a1a;
}

[data-bursh-type=pro2] .proBanner_body p {
    color: #1a1a1a;
}

.proBanner_annotation li+li {
    padding-top: 5px;
}

.proBanner_annotation li {
    font-size: 10px;
    letter-spacing: .12em;
    line-height: 180%;
    display: block;
    color: gray;
    text-indent: -1.5em;
    padding-left: 1.5em;
}

@media only screen and (max-width: 900px) {
  .proBanner_fill::before {
  height:31px
}


}

.proBanner_label {
  font-size:11px;
  position:absolute;
  z-index:1;
  left:0;
  top:22px;
  background-color:#1a1a1a;
  padding:2px 23px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.08em;
  font-weight:bold
}

@media only screen and (max-width: 900px) {
  .proBanner_label {
  top:32px
}


}

@media only screen and (min-width: 901px) {
  .proBanner_content {
  width:60%;
  margin-top:-25px
}


}

.proBanner_title {
  font-size:42px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  line-height: 1em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .proBanner_title {
  font-size:36px;
  letter-spacing:.08em;
  line-height:150%
}


}

@media only screen and (min-width: 901px) {
  .proBanner_body {
  margin-top:30px;
  width:88%
}


}

@media only screen and (max-width: 900px) {
  .proBanner_body {
  margin-top:15px
}


}

.proBanner_body p {
  font-size:14px;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .proBanner_body p {
  font-size:13px
}


}

.proBanner_body p span {
  font-size:10px;
  letter-spacing:.12em;
  line-height:180%;
  display:block
}

@media only screen and (min-width: 901px) {
  .proBanner_body p span {
  margin-top:30px
}


}

@media only screen and (max-width: 900px) {
  .proBanner_body p span {
  margin-top:10px
}


}

.proBanner_product {
  position:absolute
}

@media only screen and (min-width: 901px) {
  .proBanner_product {
        right: 10.6%;
        bottom: -20px;
        width: 261px;
}


}

@media only screen and (max-width: 900px) {
  .proBanner_product {
  width:125px;
  right:14.3%;
  top:-7px
}


}

@media only screen and (max-width: 900px) {
    [data-bursh-type=pro2] .proBanner_fill {
        padding: 69px 7.9% 74px;
    }
    [data-bursh-type=pro2] .proBanner_product {
        width: 173px;
        right: -0.7%;
        top: 20px;
    }

    [data-bursh-type=pro2] .proBanner_title {
        font-size: 32px;
    }

    [data-bursh-type=pro2] .proBanner_body {
        margin-top: 73px;
    }

        [data-bursh-type=pro2] .proBanner_fill::before {
        height: 40px;
    }
}

@media only screen and (min-width: 901px) {
  .is-extend .proBanner_product {
  right:5.1%;
  bottom:95px;
  width:291px
}


}

@media only screen and (max-width: 900px) {
  .is-extend .proBanner_product {
  width:130px;
  right:7.3%;
  bottom:99px
}


}

.proBannerButton {
  position:absolute
}

@media only screen and (min-width: 901px) {
  .proBannerButton {
  display:flex;
  align-items:flex-end;
  left:8.6%;
  bottom:52px
}


}

@media only screen and (max-width: 900px) {
  .proBannerButton {
  left:3.6%;
  bottom:33px
}


}

@media only screen and (min-width: 901px) {
  .proBannerButton_thumbnail {
  width:216px;
  margin-right:35px
}


}

@media only screen and (max-width: 900px) {
  .proBannerButton_thumbnail {
  max-width:318px;
  width:96.3%
}


}

.proBannerButton_thumbnail>picture {
  border-radius:4px;
  overflow:hidden
}

.proBannerButton_title {
  font-size:20px;
  letter-spacing:.12em;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .proBannerButton_title {
  font-size:18px;
  margin-top:30px
}


}

.proBannerButton_textLink {
  margin-top:15px;
  padding-bottom:10px
}

@media only screen and (max-width: 900px) {
  .proBannerButton_textLink {
  margin-top:10px
}


}

.proBanner_note {
  font-size:10px;
  letter-spacing:.12em;
  line-height:180%;
  display:block
}

@media only screen and (min-width: 901px) {
  .proBanner_note {
  text-align:right;
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .proBanner_note {
  margin-top:20px
}


}

.botanicalBrush {
  position:relative;
  margin-top:360px
}

@media only screen and (max-width: 900px) {
  .botanicalBrush {
  margin-top:120px
}


}

.botanicalBrush_hero {
  width:89.5833333333vw;
  height:540px;
  position:absolute;
  right:0;
  top:-240px;
  overflow:hidden;
  border-radius:4px 0 0 4px
}

@media only screen and (max-width: 900px) {
  .botanicalBrush_hero {
  width:91.7948717949vw;
  height:204px;
  top:-60px
}


}

.botanicalBrush_hero picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.botanicalBrush_hero picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.botanicalBrush_wrap {
  max-width:1220px;
  padding:420px 40px 120px;
  margin:0 auto
}

@media only screen and (max-width: 900px) {
  .botanicalBrush_wrap {
  padding:185px 0 60px
}


}

.botanicalBrushCard {
  display:flex;
  background-color:#fff;
  border-radius:4px;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .botanicalBrushCard {
  flex-direction:column-reverse
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .botanicalBrushCard {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .botanicalBrushCard_content {
  display:flex;
  align-items:center;
  width:58.2799634035%
}


}

@media only screen and (min-width: 901px) {
  .botanicalBrushCard_inner {
  margin-left:auto;
  margin-right:auto;
  width:75%
}


}

@media only screen and (max-width: 900px) {
  .botanicalBrushCard_inner {
  padding:45px 8% 50px
}


}

.botanicalBrushCard_title {
  font-size:40px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .botanicalBrushCard_title {
  font-size:30px
}


}

.botanicalBrushCard_title sup {
  font-size:12px
}

@media only screen and (max-width: 900px) {
  .botanicalBrushCard_title sup {
  font-size:10px
}


}

.botanicalBrushCard_body {
  margin-top:30px
}

.botanicalBrushCard_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .botanicalBrushCard_body p {
  font-size:14px;
  line-height:180%
}


}

.botanicalBrushCard .textLink {
  margin-top:20px
}

@media only screen and (min-width: 901px) {
  .botanicalBrushCard_image {
  width:41.7200365965%
}


}

.botanicalDetail {
  background-color:#f8f8f3;
  padding:110px 0;
  margin-top:120px
}

@media only screen and (max-width: 900px) {
  .botanicalDetail {
  margin-top:60px;
  padding:56px 0 20px
}


}

.botanicalDetail_wrap {
  max-width:1052px;
  padding-left:40px;
  padding-right:40px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (max-width: 900px) {
  .botanicalDetail_wrap {
  padding-left:9%;
  padding-right:9%
}


}

.botanicalDetail_title {
  font-size:40px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .botanicalDetail_title {
  font-size:30px
}


}

.botanicalDetail_body {
  margin-top:27px
}

@media only screen and (max-width: 900px) {
  .botanicalDetail_body {
  margin-top:20px
}


}

.botanicalDetail_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .botanicalDetail_body p {
  font-size:14px;
  line-height:180%
}


}

.botanicalDetail_column {
  display:flex;
  justify-content:space-between
}

@media only screen and (max-width: 900px) {
  .botanicalDetail_column[data-row="3"] {
  display:block
}


}

@media only screen and (max-width: 900px) {
  .botanicalDetail_column[data-row="5"] {
  flex-wrap:wrap
}


}

@media only screen and (min-width: 901px) {
  .botanicalDetail_column {
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .botanicalDetail_column {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  [data-row="3"] .botanicalDetailCard {
  width:30.8641975309%
}

[data-row="5"] .botanicalDetailCard {
  width:18.0041152263%
}


}

@media only screen and (max-width: 900px) {
  .botanicalDetailCard {
  margin-bottom:35px
}

[data-row="5"] .botanicalDetailCard {
  width:47.1698113208%
}


}

.botanicalDetailCard_image {
  overflow:hidden;
  border-radius:4px
}

.botanicalDetailCard_title {
  font-size:18px;
  line-height:200%;
  margin-top:27px
}

[data-row="5"] .botanicalDetailCard_title {
  font-size:14px;
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  [data-row="5"] .botanicalDetailCard_title {
  margin-top:5px
}


}

@media only screen and (max-width: 900px) {
  .botanicalDetailCard_title {
  font-size:16px;
  margin-top:20px
}


}

.botanicalDetailCard_body {
  margin-top:10px
}

.botanicalDetailCard_body p {
  font-size:14px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .botanicalDetailCard_body p {
  font-size:13px;
  line-height:180%
}


}

.botanicalFeature {
  max-width:1292px;
  margin:120px auto 0;
  padding-left:40px;
  padding-right:40px
}

@media only screen and (max-width: 900px) {
  .botanicalFeature {
  margin-top:60px;
  padding-left:5%;
  padding-right:5%
}


}

.botanicalFeature_wrap {
  border-radius:4px;
  background-repeat:no-repeat;
  background-color:#ebeef3
}

@media only screen and (min-width: 901px) {
  .botanicalFeature_wrap {
  padding:120px 0 111px 9.9%;
  background-position:right center;
  background-size:auto 100%;
  background-image:url("/cdn/shop/files/feature-pc.jpg?v=1751007037")
}


}

@media only screen and (min-width: 901px) {
  .botanicalFeature_content {
  width:50%
}


}

@media only screen and (max-width: 900px) {
  .botanicalFeature_content {
  padding:20px 9% 50px
}


}

@media only screen and (min-width: 901px) {
  .botanicalFeature_image {
  display:none
}


}

.botanicalFeature_label {
  font-size:12px;
  position:relative;
  padding-left:10px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.botanicalFeature_label::before {
  content:"";
  display:block;
  width:3px;
  height:3px;
  border:1px solid #1a1a1a;
  position:absolute;
  left:0;
  top:4px;
  border-radius:50%
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_label::before {
  top:3px
}


}

.botanicalFeature_title {
  font-size:40px;
  margin-top:45px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_title {
  font-size:30px;
  margin-top:25px
}


}

.botanicalFeature_tag {
  display:flex;
  flex-wrap:wrap;
  margin-top:35px
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_tag {
  margin-top:20px
}


}

.botanicalFeature_tag li {
  margin:0 7px 8px 0
}

.botanicalFeature_tag li span {
  display:block;
  font-size:14px;
  background-color:#fff;
  height:20px;
  border-radius:10px;
  background-color:rgba(177,191,203,.2);
  display:flex;
  align-items:center;
  padding-left:10px;
  padding-right:10px;
  line-height:1
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_tag li span {
  font-size:13px
}


}

.botanicalFeature_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_body {
  margin-top:10px
}


}

.botanicalFeature_body p {
  font-size:16px;
  line-height:200%
}

@media only screen and (max-width: 900px) {
  .botanicalFeature_body p {
  font-size:14px;
  line-height:180%
}


}

.shopListBanner {
  background-color:#f8f8f3;
  position:relative
}

@media only screen and (min-width: 901px) {
  .shopListBanner {
  border-radius:4px;
  width:60.8333333333%;
  margin:120px auto 0
}


}

@media only screen and (max-width: 900px) {
  .shopListBanner {
  border-radius:2px;
  margin:60px auto 0;
  width:91.7948717949%
}


}

.shopListBanner_link {
  display:block
}

@media only screen and (min-width: 901px) {
  .shopListBanner_link {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:33px 3.9%
}


}

@media only screen and (max-width: 900px) {
  .shopListBanner_link {
  padding:36px 5.7%
}


}

@media only screen and (min-width: 901px) {
  .shopListBanner_image {
  width:26.8656716418%
}


}

@media only screen and (max-width: 900px) {
  .shopListBanner_image {
  width:67.9245283019%;
  margin-left:auto;
  margin-right:auto
}


}

.shopListBanner_image>div {
  border-radius:3px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .shopListBanner_content {
  width:62.6865671642%
}


}

@media only screen and (max-width: 900px) {
  .shopListBanner_content {
  margin-top:35px
}


}

.shopListBanner_label {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.shopListBanner_title {
  font-size:20px;
  letter-spacing:.12em;
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .shopListBanner_title {
  font-size:19px;
  letter-spacing:.1em
}


}

.shopListBanner_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .shopListBanner_body {
  margin-top:15px
}


}

.shopListBanner_body p {
  font-size:14px;
  line-height:170%;
  letter-spacing:.12em;
  color:gray
}

@media only screen and (max-width: 900px) {
  .shopListBanner_body p {
  font-size:13px
}


}

@media only screen and (min-width: 901px) {
  .shopListBanner .textLink {
  position:absolute;
  right:3.4%;
  bottom:30px
}


}

@media only screen and (max-width: 900px) {
  .shopListBanner .textLink {
  margin-top:20px;
  display:flex;
  justify-content:flex-end
}


}

.shopCard {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative
}

@media only screen and (min-width: 901px) {
  .shopCard {
  display:flex;
  justify-content:space-between;
  padding:45px 0 48px
}


}

@media only screen and (max-width: 900px) {
  .shopCard {
  padding:35px 0 40px
}


}

.shopCard::before {
  content:"";
  display:block;
  width:12px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .shopCard_image {
  width:120px
}


}

@media only screen and (max-width: 900px) {
  .shopCard_image {
  width:37.7358490566%
}


}

.shopCard_image>div {
  border:1px solid #dfdfdf
}

@media only screen and (min-width: 901px) {
  .shopCard_content {
  width:calc(100% - 168px)
}


}

@media only screen and (max-width: 900px) {
  .shopCard_content {
  margin-top:25px
}


}

.shopCard_title {
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.shopCard_title:after {
  content:""
}

.shopCard_title::after {
  font-size:8px;
  margin-left:-2px;
  transform:translateY(-9px);
  display:inline-block
}

.shopCard_title a {
  position:relative;
  text-decoration:underline;
  text-underline-offset:3px
}

.shopCard_title a span {
  font-size:22px;
  letter-spacing:.12em
}

@media only screen and (max-width: 900px) {
  .shopCard_title a span {
  line-height:170%;
  font-size:18px
}


}

@media only screen and (min-width: 901px) {
  .shopCard_title:hover {
  opacity:.6
}


}

.shopCard_list {
  display:flex;
  flex-wrap:wrap;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .shopCard_list {
  margin-top:27px
}


}

.shopCard_list dt,.shopCard_list dd {
  line-height:160%
}

@media only screen and (max-width: 900px) {
  .shopCard_list dt,.shopCard_list dd {
  line-height:140%;
  margin-bottom:7px
}


}

.shopCard_list dt {
  font-size:13px;
  letter-spacing:.04em;
  width:75px
}

@media only screen and (min-width: 901px) {
  .shopCard_list dt {
  margin-top:2px
}


}

.shopCard_list dd {
  font-size:14px;
  letter-spacing:.04em;
  width:calc(100% - 75px)
}

@media only screen and (max-width: 900px) {
  .shopCard_list dd {
  font-size:13px
}


}

@media only screen and (min-width: 901px) {
  .shopCardItem {
  display:flex;
  margin-top:12px
}


}

@media only screen and (max-width: 900px) {
  .shopCardItem {
  margin-top:20px
}


}

@media only screen and (min-width: 901px) {
  .shopCardItem_title {
  margin-right:24px
}


}

@media only screen and (max-width: 900px) {
  .shopCardItem_title {
  width:fit-content
}


}

.shopCardItem_title span {
  display:block;
  padding:1px 9px;
  font-size:12px;
  letter-spacing:.04em;
  line-height:180%;
  background-color:#f8f8f3;
  border-radius:2px;
  white-space:nowrap
}

.shopCardItem_list {
  display:flex;
  flex-wrap:wrap
}

@media only screen and (max-width: 900px) {
  .shopCardItem_list {
  margin-top:10px
}


}

.shopCardItem_list li {
  font-size:12px;
  letter-spacing:.12em;
  line-height:180%;
  position:relative;
  padding-right:12px;
  margin-right:12px
}

@media only screen and (max-width: 900px) {
  .shopCardItem_list li {
  padding-right:8px;
  margin-right:8px;
  line-height:140%
}


}

.shopCardItem_list li::before {
  content:"";
  position:absolute;
  right:0;
  top:7px;
  background-color:#dfdfdf;
  display:block;
  height:7px;
  width:1px
}

.shopCardItem_list li:last-child {
  margin-right:0;
  padding-right:0
}

.shopCardItem_list li:last-child::before {
  display:none
}

.shopCard_note {
  font-size:11px;
  letter-spacing:.04em;
  line-height:180%;
  margin-top:20px;
  color:gray
}

.shopPopup {
  border-top:1px solid rgba(128,128,128,.25);
  position:relative
}

@media only screen and (min-width: 901px) {
  .shopPopup {
  padding-top:42px
}


}

@media only screen and (max-width: 900px) {
  .shopPopup {
  padding-top:50px
}


}

.shopPopup+.shopPopup {
  margin-top:40px
}

.shopPopup::before {
  content:"";
  display:block;
  width:12px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  background-color:#1a1a1a
}

.shopPopup_headline a,.shopPopup_headline div {
  position:relative
}

.shopPopup_headline a span,.shopPopup_headline div span {
  font-size:22px;
  display:block;
  width:fit-content;
  letter-spacing:.12em
}

.shopPopup_headline a {
  display:flex;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.shopPopup_headline a:after {
  content:""
}

.shopPopup_headline a::after {
  font-size:8px;
  margin-left:2px;
  transform:translateY(1px);
  display:inline-block
}

.shopPopup_headline a span {
  border-bottom:1px solid #1a1a1a
}

.shopPopup_headline a:hover {
  opacity:.7
}

@media only screen and (min-width: 901px) {
  .shopPopup_wrap {
  display:flex;
  justify-content:space-between;
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .shopPopup_outline {
  width:53.300330033%
}


}

@media only screen and (max-width: 900px) {
  .shopPopup_outline {
  margin-top:40px
}


}

.shopPopup_outline dl {
  display:flex;
  flex-wrap:wrap
}

.shopPopup_outline dl dt,.shopPopup_outline dl dd {
  margin-bottom:15px
}

.shopPopup_outline dl dt {
  text-align:center;
  width:90px
}

.shopPopup_outline dl dt span {
  display:block;
  padding:1px 9px;
  font-size:12px;
  letter-spacing:.04em;
  line-height:180%;
  background-color:#f8f8f3;
  border-radius:2px
}

.shopPopup_outline dl dd {
  width:calc(100% - 95px);
  padding-left:20px
}

@media only screen and (max-width: 900px) {
  .shopPopup_outline dl dd {
  padding-left:12px
}


}

.shopPopup_outline dl dd p {
  font-size:12px
}

@media only screen and (max-width: 900px) {
  .shopPopup_outline dl dd p {
  font-size:13px
}


}

.shopPopup_item {
  display:flex;
  flex-wrap:wrap
}

.shopPopup_item li {
  font-size:12px;
  letter-spacing:.12em;
  line-height:180%;
  position:relative;
  padding-right:12px;
  margin-right:12px
}

@media only screen and (min-width: 901px) {
  .shopPopup_item li::before {
  content:"";
  position:absolute;
  right:0;
  top:7px;
  background-color:#dfdfdf;
  display:block;
  height:7px;
  width:1px
}


}

@media only screen and (max-width: 900px) {
  .shopPopup_item li {
  padding-right:8px;
  margin-right:8px;
  line-height:140%;
  font-size:13px
}


}

.shopPopup_item li:last-child {
  margin-right:0;
  padding-right:0
}

.shopPopup_item li:last-child::before {
  display:none
}

@media only screen and (min-width: 901px) {
  .shopPopup_branch {
  width:43.7293729373%
}


}

@media only screen and (max-width: 900px) {
  .shopPopup_branch {
  margin-top:30px
}


}

@media only screen and (min-width: 901px) {
  .shopPopupBranch {
  margin-bottom:20px
}


}

@media only screen and (max-width: 900px) {
  .shopPopupBranch {
  margin-bottom:20px;
  padding-left:20px
}


}

.shopPopupBranch_title {
  position:relative
}

.shopPopupBranch_title::before {
  left:-19px;
  top:5px;
  width:2px;
  height:2px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

@media only screen and (max-width: 900px) {
  .shopPopupBranch_title::before {
  left:-14px;
  top:6px
}


}

.shopPopupBranch_title>span>span,.shopPopupBranch_title>a>span {
  font-size:14px;
  letter-spacing:.04em
}

.shopPopupBranch_title>a {
  display:flex;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.shopPopupBranch_title>a:after {
  content:""
}

.shopPopupBranch_title>a:hover {
  opacity:.7
}

.shopPopupBranch_title>a>span {
  text-decoration:underline;
  text-underline-offset:3px
}

.shopPopupBranch_title>a::after {
  font-size:8px;
  margin-left:4px;
  transform:translateY(1px);
  display:inline-block
}

.shopPopupBranch_list {
  display:flex;
  flex-wrap:wrap;
  margin-top:11px
}

@media only screen and (max-width: 900px) {
  .shopPopupBranch_list {
  margin-top:14px
}


}

.shopPopupBranch_list dt,.shopPopupBranch_list dd {
  line-height:160%
}

@media only screen and (max-width: 900px) {
  .shopPopupBranch_list dt,.shopPopupBranch_list dd {
  line-height:140%;
  margin-bottom:7px
}


}

.shopPopupBranch_list dt {
  font-size:13px;
  letter-spacing:.04em;
  width:75px
}

@media only screen and (max-width: 900px) {
  .shopPopupBranch_list dt {
  width:60px
}


}

.shopPopupBranch_list dd {
  font-size:14px;
  letter-spacing:.04em;
  width:calc(100% - 75px)
}

@media only screen and (max-width: 900px) {
  .shopPopupBranch_list dd {
  width:calc(100% - 60px);
  font-size:13px
}


}

.shop {
  margin:150px auto 200px;
  max-width:1392px;
  padding-left:90px;
  padding-right:90px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 750px)and (max-width: 1440px) {
  .shop {
  padding-left:60px;
  padding-right:60px
}


}

@media only screen and (max-width: 900px) {
  .shop {
  padding-left:8%;
  padding-right:8%
}
}

@media only screen and (max-width: 900px) {
  .shop {
  margin-top:130px
}


}

.shop_content {
  margin-top:160px
}

@media only screen and (max-width: 900px) {
  .shop_content  {
  margin-top:60px
}


}

.shop_title {
  font-size:24px;
  margin-bottom:57px
}

@media only screen and (max-width: 900px) {
  .shop_title {
  font-size:20px
}


}

.shopHeadline span {
  display:block
}

.shopHeadline span.is-en {
  font-size:32px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .shopHeadline span.is-en {
  font-size:24px
}


}

.shopHeadline span.is-ja {
  font-size:18px;
  letter-spacing:.12em;
  line-height:170%;
  margin-top:10px
}

@media only screen and (max-width: 900px) {
  .shopHeadline span.is-ja {
  font-size:16px
}


}

.menBackground {
  height:90lvh;
  position:relative;
  overflow:hidden;
  background-color:#2e404e
}

@media only screen and (max-width: 900px) {
  .menBackground {
  height:100vw
}


}

.menBackground_image {
  position:absolute
}

@media only screen and (min-width: 901px) {
  .menBackground_image {
  left:0;
  top:0;
  width:100%;
  height:100%
}


}

@media only screen and (max-width: 900px) {
  .menBackground_image {
  top:-10vw;
  left:-10vw;
  width:120vw;
  height:100%
}


}

.menBackground_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menBackground_image>div img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

@media only screen and (min-width: 901px) {
  .menBackground_image>div picture img {
  transform:scale(1.15);
  transform-origin:50% 100%
}


}

.menEffect {
  padding:160px 0 100px;
  background-color:#263745
}

@media only screen and (max-width: 900px) {
  .menEffect {
  padding:78px 0 41px
}


}

.menEffect>* {
  color:#fff
}

.menEffect_wrap {
  max-width:1260px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .menEffect_wrap {
  padding-left:6.25%;
  padding-right:6.25%;
  max-width:1440px
}


}

@media only screen and (min-width: 901px) {
  .menEffect_wrap {
  display:flex;
  justify-content:space-between;
  align-items:flex-end
}


}

@media only screen and (max-width: 900px) {
  .menEffect_wrap {
  width:82.5641025641vw
}


}

@media only screen and (min-width: 901px) {
  .menEffect_side {
  width:215px
}


}

@media only screen and (min-width: 901px) {
  .menEffect_content {
  padding-right:4.5%;
  padding-bottom:130px;
  width:72.2222222222%
}


}

.menEffectHead_headline {
  position:relative
}

.menEffectHead_headline::before {
  display:block;
  background-color:#fff;
  position:absolute;
  left:-23px;
  top:7px;
  content:"";
  width:6px;
  height:6px
}

@media only screen and (max-width: 900px) {
  .menEffectHead_headline::before {
  width:4px;
  height:4px;
  left:-18px;
  top:5px
}


}

.menEffectHead_headline span {
  display:block
}

.menEffectHead_headline span.is-en {
  font-size:20px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menEffectHead_headline span.is-en {
  font-size:13px
}


}

.menEffectHead_headline span.is-ja {
  width:159px;
  margin-top:27px
}

@media only screen and (max-width: 900px) {
  .menEffectHead_headline span.is-ja {
  width:100px;
  margin-top:30px
}


}

.menEffectHead_body {
  margin-top:37px
}

@media only screen and (max-width: 900px) {
  .menEffectHead_body {
  margin-top:32px
}


}

.menEffectHead_body p {
  font-size:13px;
  line-height:170%
}

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


}

@media only screen and (max-width: 900px) {
  .menEffectCards {
  margin-top:40px;
  width:95.3%
}


}

@media only screen and (min-width: 901px) {
  .menEffectCard {
  width:32%
}


}

@media only screen and (max-width: 900px) {
  .menEffectCard {
  margin-bottom:35px
}


}

.menEffectCard_volume {
  font-size:12px;
  margin-top:27px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menEffectCard_volume {
  margin-top:23px
}


}

.menEffectCard_body {
  margin-top:8px
}

.menEffectCard_body p {
  font-size:18px;
  line-height:140%;
  letter-spacing:.07em
}

.menFeature {
  background-image:url("/cdn/shop/files/texture_normal01.png?v=1751007037");
  padding-top:160px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .menFeature {
  padding-top:80px
}


}

.menFeature>* {
  color:#fff
}

.menFeature_progress {
  position:absolute;
  height:145px;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .menFeature_progress {
  top:calc(50lvh - 59px + 160px);
  right:32px
}


}

@media only screen and (max-width: 900px) {
  .menFeature_progress {
  top:calc(50lvh - 59px + 80px);
  right:14px;
  width:12px
}


}

.menFeature_progress p {
  font-size:12px;
  color:#fff;
  line-height:1;
  -ms-writing-mode:tb-rl;
  writing-mode:vertical-rl;
  font-feature-settings:normal
}

.menFeature_progress p em {
  font-style:normal;
  display:inline-block
}

.menFeature_content {
  position:relative;
  z-index:0
}

.menFeature_section {
  position:relative;
  padding-bottom:120px
}

@media only screen and (max-width: 900px) {
  .menFeature_section {
  padding-bottom:50px
}


}

.menFeature_section[data-layout=image-left] {
  display:flex;
  justify-content:flex-end
}

@media only screen and (max-width: 900px) {
  .menFeature_section[data-section=feature-4] {
  padding-bottom:80px
}


}

.menFeatureImage {
  overflow:hidden;
  position:absolute
}

@media only screen and (min-width: 901px) {
  .menFeatureImage {
  width:53.4027777778vw;
  height:679px;
  top:0
}


}

@media only screen and (max-width: 900px) {
  .menFeatureImage {
  width:89.2307692308vw;
  height:89.2307692308vw
}


}

[data-layout=image-left] .menFeatureImage {
  left:0
}

[data-layout=image-right] .menFeatureImage {
  right:0
}

@media only screen and (min-width: 901px) {
  .menFeatureImage>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menFeatureImage>div img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}


}

@media only screen and (max-width: 900px) {
  .menFeatureImage>div img {
  width:107%;
  max-width:none
}


}

.menFeatureExplain {
  background-image:url("/cdn/shop/files/texture_dark01.png?v=1751007037")
}

@media only screen and (min-width: 901px) {
  .menFeatureExplain {
  width:81.6666666667vw
}

[data-layout=image-left] .menFeatureExplain {
  padding-right:11%
}

[data-layout=image-right] .menFeatureExplain {
  padding-left:10.2%
}


}

@media only screen and (max-width: 900px) {
  .menFeatureExplain {
  width:95.8974358974vw
}

[data-layout=image-left] .menFeatureExplain {
  padding:98.7179487179vw 10.7692307692vw 12.8205128205vw 6.1538461538vw
}

[data-layout=image-right] .menFeatureExplain {
  padding:101.7948717949vw 6.1538461538vw 12.8205128205vw 10.7692307692vw
}


}

@media only screen and (min-width: 901px) {
  .menFeatureExplain_content {
  height:679px;
  display:flex;
  align-items:flex-end
}

[data-layout=image-left] .menFeatureExplain_content {
  padding-left:57.2%
}

[data-layout=image-right] .menFeatureExplain_content {
  padding-right:55.8%
}


}

.menFeatureExplain_headline span {
  display:block
}

.menFeatureExplain_headline span.is-volume {
  font-size:18px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_headline span.is-volume {
  font-size:13px
}


}

.menFeatureExplain_headline span.is-main {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_headline span.is-main {
  margin-top:30px
}


}

[data-section=feature-1] .menFeatureExplain_headline {
  max-width:340px
}

@media only screen and (max-width: 900px) {
  [data-section=feature-1] .menFeatureExplain_headline {
  max-width:160px
}


}

[data-section=feature-2] .menFeatureExplain_headline {
  max-width:297px
}

@media only screen and (max-width: 900px) {
  [data-section=feature-2] .menFeatureExplain_headline {
  max-width:138px
}


}

[data-section=feature-3] .menFeatureExplain_headline {
  max-width:232px
}

@media only screen and (max-width: 900px) {
  [data-section=feature-3] .menFeatureExplain_headline {
  max-width:108px
}


}

[data-section=feature-4] .menFeatureExplain_headline {
  max-width:222px
}

@media only screen and (max-width: 900px) {
  [data-section=feature-4] .menFeatureExplain_headline {
  max-width:104px
}


}

.menFeatureExplain_lead {
  font-size:24px;
  line-height:120%;
  letter-spacing:.1em;
  margin-top:58px
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_lead {
  font-size:22px;
  margin-top:30px
}


}

.menFeatureExplain_tag {
  display:flex;
  flex-wrap:wrap;
  margin-top:23px
}

.menFeatureExplain_tag li {
  margin-right:5px;
  margin-bottom:5px
}

.menFeatureExplain_tag li span {
  font-size:16px;
  padding:2px 7px;
  border-radius:2px;
  background-color:rgba(255,255,255,.1);
  display:block;
  letter-spacing:.04em
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_tag li span {
  font-size:14px
}


}

.menFeatureExplain_body {
  margin-top:24px
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_body {
  margin-top:18px
}


}

.menFeatureExplain_body p {
  font-size:16px;
  line-height:150%;
  letter-spacing:.07em
}

@media only screen and (max-width: 900px) {
  .menFeatureExplain_body p {
  font-size:14px
}


}

.menFeaturePoint {
  padding:100px 0 87px 0
}

@media only screen and (min-width: 901px) {
  [data-layout=image-left] .menFeaturePoint {
  padding-left:11.8%
}

[data-layout=image-right] .menFeaturePoint {
  padding-right:11.5%
}


}

@media only screen and (max-width: 900px) {
  .menFeaturePoint {
  padding:45px 0 0
}


}

.menFeaturePoint_wrap {
  border-top:1px solid rgba(255,255,255,.4);
  padding-top:40px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .menFeaturePoint_wrap {
  padding-top:30px
}


}

.menFeaturePoint_wrap::before {
  width:24px;
  height:1px;
  position:absolute;
  left:0;
  top:-1px;
  background-color:#fff;
  content:"";
  display:block
}

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


}

.menFeaturePoint_wrap+.menFeaturePoint_wrap {
  margin-top:35px
}

.menFeaturePoint_image {
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .menFeaturePoint_image {
  width:25.1925192519%;
  padding-right:5%;
  margin-top:-10px
}


}

[data-feature-point="1-1"] .menFeaturePoint_image {
  width:168px
}

@media only screen and (max-width: 900px) {
  [data-feature-point="1-1"] .menFeaturePoint_image {
  width:130px;
  margin:-10px auto 30px
}


}

[data-feature-point="2-1"] .menFeaturePoint_image {
  max-width:192px
}

@media only screen and (max-width: 900px) {
  [data-feature-point="2-1"] .menFeaturePoint_image {
  max-width:224px
}


}

[data-feature-point="2-2"] .menFeaturePoint_image {
  max-width:183px
}

@media only screen and (max-width: 900px) {
  [data-feature-point="2-2"] .menFeaturePoint_image {
  max-width:204px
}


}

[data-feature-point="3-1"] .menFeaturePoint_image {
  max-width:192px
}

@media only screen and (max-width: 900px) {
  [data-feature-point="3-1"] .menFeaturePoint_image {
  max-width:306px;
  margin-bottom:30px
}


}

[data-feature-point="3-1"] .menFeaturePoint_image>div {
  border-radius:2px;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  [data-feature-point="4-1"] .menFeaturePoint_image {
  max-width:280px;
  padding-right:0;
  margin-left:0;
  margin-top:-45px
}


}

@media only screen and (max-width: 900px) {
  [data-feature-point="4-1"] .menFeaturePoint_image {
  max-width:306px
}


}

@media only screen and (min-width: 901px) {
  [data-feature-point="4-2"] .menFeaturePoint_image {
  max-width:187px;
  padding-right:0;
  margin-left:0
}


}

@media only screen and (max-width: 900px) {
  [data-feature-point="4-2"] .menFeaturePoint_image {
  max-width:306px
}


}

@media only screen and (min-width: 901px) {
  .menFeaturePoint_content {
  width:74.8074807481%
}


}

@media only screen and (max-width: 900px) {
  .menFeaturePoint_content {
  margin-top:10px
}


}

.menFeaturePoint_headline span {
  display:block
}

.menFeaturePoint_headline span.is-volume {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

.menFeaturePoint_headline span.is-volume sup {
  font-size:70%;
  margin-right:.5em
}

.menFeaturePoint_headline span.is-main {
  margin-top:20px;
  font-size:22px;
  line-height:120%;
  letter-spacing:.07em
}

.menFeaturePoint_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .menFeaturePoint_body {
  margin-top:18px
}


}

.menFeaturePoint_body p {
  font-size:16px;
  letter-spacing:.09em;
  line-height:140%
}

@media only screen and (max-width: 900px) {
  .menFeaturePoint_body p {
  font-size:14px
}


}

.menFeaturePoint_list {
  margin-top:20px
}

.menFeaturePoint_list p {
  font-size:13px;
  line-height:140%;
  letter-spacing:.09em
}

@media only screen and (max-width: 900px) {
  .menFeaturePoint_list p {
  font-size:12px;
  line-height:150%
}


}

.menFeaturePoint_note {
  margin-top:20px
}

.menFeaturePoint_note p {
  font-size:11px;
  letter-spacing:.09em;
  color:#ccc
}

.menFeatureHero {
  position:relative
}

@media only screen and (min-width: 901px) {
  .menFeatureHero {
  height:100lvh
}


}

@media only screen and (min-width: 901px) {
  .menFeatureHero_image {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.menFeatureHero_image>div picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menFeatureHero_image>div picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}


}

.menFeatureHero_image>div picture img {
  max-width:none;
  width:100%
}

@media only screen and (min-width: 901px) {
  .menFeatureHero_inner {
  position:absolute;
  z-index:1;
  width:420px;
  height:100%;
  display:flex;
  align-items:center;
  right:0;
  top:0
}


}

@media only screen and (max-width: 900px) {
  .menFeatureHero_inner {
  background-color:#263745;
  padding:95px 10.8% 66px
}


}

@media only screen and (min-width: 901px) {
  .menFeatureHero_content {
  margin-top:10%
}


}

@media only screen and (max-width: 900px) {
  .menFeatureHero_content {
  transform:none !important
}


}

.menFeatureHero_headline {
  width:237px;
  position:relative
}

@media only screen and (max-width: 900px) {
  .menFeatureHero_headline {
  width:148px
}


}

.menFeatureHero_headline::before {
  content:"";
  display:block;
  width:8px;
  height:8px;
  position:absolute;
  left:0;
  top:-51px;
  background-color:#fff
}

@media only screen and (max-width: 900px) {
  .menFeatureHero_headline::before {
  width:6px;
  height:6px;
  top:-43px
}


}

.menFeatureHero_body {
  margin-top:65px
}

@media only screen and (max-width: 900px) {
  .menFeatureHero_body {
  margin-top:27px
}


}

.menFeatureHero_body p {
  font-size:18px;
  line-height:160%;
  letter-spacing:.07em;
  color:#fff
}

@media only screen and (max-width: 900px) {
  .menFeatureHero_body p {
  font-size:16px
}


}

.menGlobal {
  position:fixed;
  left:12px;
  top:14px;
  width:calc(100% - 24px)
}

@media only screen and (max-width: 900px) {
  .menGlobal {
  left:8px;
  top:8px;
  width:calc(100% - 16px)
}


}

.menGlobal_wrap {
  padding:58px 1.5% 17px;
  background-color:#f4f4f4;
  border-radius:4px
}

@media only screen and (max-width: 900px) {
  .menGlobal_wrap {
  padding:109px 8.9% 30px
}


}

.menGlobal_bottom {
  border-top:1px solid #ccc;
  padding-top:24px;
  margin-top:16px;
  display:flex;
  justify-content:space-between
}

.menGlobal_instagram a {
  display:block
}

.menGlobal_instagram a:before {
  content:""
}

.menGlobal_instagram a::before {
  font-size:22px;
  color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .menGlobal_instagram a {
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.menGlobal_instagram a:hover {
  opacity:.6
}


}

.menGlobal_copyright p {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:.02em
}

.menGlobalMenu {
  counter-reset:listnum;
  display:flex;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .menGlobalMenu {
  justify-content:center;
  width:70%
}


}

@media only screen and (max-width: 900px) {
  .menGlobalMenu {
  flex-wrap:wrap;
  width:89%
}


}

.menGlobalMenu_item {
  position:relative
}

@media only screen and (min-width: 901px) {
  .menGlobalMenu_item {
  margin-left:2.7%;
  margin-right:2.7%
}


}

@media only screen and (max-width: 900px) {
  .menGlobalMenu_item {
  margin:0 32px 20px 0
}


}

.menGlobalMenu_item::before {
  counter-increment:listnum;
  content:"0" counter(listnum);
  position:absolute;
  left:-16px;
  top:2px;
  font-size:8px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.menGlobalMenu_link {
  display:block;
  cursor:pointer;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .menGlobalMenu_link:hover {
  opacity:.6
}


}

.menGlobalMenu_link.is-blank:before {
  content:""
}

.menGlobalMenu_link.is-blank::before {
  position:absolute;
  right:-15px;
  top:3px;
  font-size:7px
}

.menGlobalMenu_title {
  font-size:20px;
  white-space:nowrap;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menGlobalMenu_title {
  font-size:16px
}


}

.menGlobal_wrap {
  transition:1.2s cubic-bezier(0.19, 1, 0.22, 1);
  transform:translateY(calc(-100% - 14px))
}

[data-show=global-men] .menGlobal_wrap {
  transform:translateY(0)
}

.menHeader {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  display:flex;
  justify-content:space-between;
  padding:32px 2.2% 0;
  pointer-events:none
}

@media only screen and (max-width: 900px) {
  .menHeader {
  padding:24px 4.3% 0
}


}

.menHeader_logo span {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  display:block;
  position:absolute
}

.menHeader_logo svg {
  fill:#fff;
  width:127px;
  height:58px;
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 900px) {
  .menHeader_logo svg {
  width:101px;
  height:47px
}


}

[data-show=global-men] .menHeader_logo svg,[data-current-section=scene1] .menHeader_logo svg,[data-current-section=scene2] .menHeader_logo svg,[data-current-section=scene3] .menHeader_logo svg,[data-current-section=use] .menHeader_logo svg,[data-current-section=spec] .menHeader_logo svg,[data-current-section=news] .menHeader_logo svg,[data-current-section=faq] .menHeader_logo svg {
  fill:#000
}

@media only screen and (min-width: 901px) {
  [data-show=global-men] .menHeader_logo svg,[data-current-section=scene1] .menHeader_logo svg,[data-current-section=scene2] .menHeader_logo svg,[data-current-section=scene3] .menHeader_logo svg,[data-current-section=use] .menHeader_logo svg,[data-current-section=spec] .menHeader_logo svg,[data-current-section=news] .menHeader_logo svg,[data-current-section=faq] .menHeader_logo svg {
  fill:#000
}


}

.menHeader {
  transform:translateY(calc(-100% + 0px));
  transition:1s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  will-change:transform
}

[data-loaded="1"] .menHeader {
  transform:none
}

.menHero {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  height:100lvh;
  background-color:#e7e7e7;
  visibility:hidden
}

.menHero.inview {
  visibility:visible
}

.menHero_scroll {
  width:11px;
  height:54px;
  position:absolute;
  z-index:1;
  right:35px;
  top:calc(50% + 4px);
  color:#fff
}

.menHero_scroll:before {
  content:""
}

@media only screen and (max-width: 900px) {
  .menHero_scroll {
  display:none
}


}

.menHero_scroll::before {
  font-size:10px;
  transform:rotate(90deg);
  position:absolute;
  left:0;
  bottom:0;
  display:block
}

.menHero_scroll p {
  font-size:13px;
  text-align:left;
  line-height:1;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  -ms-writing-mode:tb-rl;
  writing-mode:vertical-rl;
  font-feature-settings:normal;
  letter-spacing:0
}

.menHero_slider {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menHero_overlay {
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  background-color:rgba(0,0,0,.4);
  z-index:3;
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:0
}

.menHero_headline {
  top:39.1%;
  left:10.5%;
  position:absolute;
  z-index:2
}

@media only screen and (max-width: 900px) {
  .menHero_headline {
  top:calc(100svh - 385px)
}


}

.hero .menHero_headline {
  top:44.6%;
  left:10.3%
}

@media only screen and (max-width: 900px) {
  .hero .menHero_headline {
  top:auto;
  bottom:25.2%;
  left:8.2%
}


}

.menHero_headline div.is-en span {
  display:block;
  font-size:16px;
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0;
  font-weight:bold
}

@media only screen and (max-width: 900px) {
  .menHero_headline div.is-en span {
  font-size:12px
}

.hero .menHero_headline div.is-en span {
  font-size:9px
}


}

.menHero_headline div.is-ja {
  margin-top:20px;
  width:367px;
  height:170px
}

@media only screen and (max-width: 900px) {
  .menHero_headline div.is-ja {
  margin-top:17px;
  width:223px;
  height:104px
}

.hero .menHero_headline div.is-ja {
  width:156px;
  height:71px
}


}

.menHeroVideo {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100lvh
}

.menHeroVideo .slick-list,.menHeroVideo .slick-track,.menHeroVideo .slick-slide {
  height:100%
}

.menHeroVideo .slick-slide {
  position:relative
}

.menHeroVideo_image {
  z-index:0;
  opacity:0;
  transition:.5s cubic-bezier(0.19, 1, 0.22, 1);
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menHeroVideo_image img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.slick-active .menHeroVideo_image {
  transition-delay:.2s;
  opacity:1
}

.menHeroVideo_item {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100vw;
  height:100lvh;
  overflow:hidden;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover
}

.menHeroVideo_item video {
  min-width:100%;
  min-height:100lvh;
  position:absolute;
  z-index:1
}

@media(aspect-ratio: 1280/720),(min-aspect-ratio: 1280/720) {
  .desktop .menHeroVideo_item video {
  width:100%;
  top:50%;
  transform:translateY(-50%)
}


}

@media(max-aspect-ratio: 1280/720) {
  .desktop .menHeroVideo_item video {
  height:100%;
  left:50%;
  transform:translateX(-50%)
}


}

@media(aspect-ratio: 720/1280),(min-aspect-ratio: 720/1280) {
  .tablet .menHeroVideo_item video,.mobile .menHeroVideo_item video {
  width:110%;
  top:50%;
  transform:translateY(-55%)
}


}

@media(max-aspect-ratio: 720/1280) {
  .tablet .menHeroVideo_item video,.mobile .menHeroVideo_item video {
  height:100%;
  left:50%;
  transform:translateX(-50%)
}


}

.menHeroVideo_item video_ {
  display:block;
  position:absolute;
  top:50%;
  left:50%;
  width:auto;
  height:auto;
  transform:translate(-50%, -50%)
}

@media only screen and (min-width: 901px) {
  .menHeroVideo_item video_ {
  min-width:100%;
  min-height:100%
}


}

@media only screen and (max-width: 900px) {
  .menHeroVideo_item video_ {
  width:110%;
  height:auto
}


}

.menHeroMenu {
  position:absolute;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .menHeroMenu {
  left:2.2222222222vw;
  bottom:25px;
  width:83.4722222222vw;
  height:26px;
  display:flex;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .menHeroMenu {
  right:4.1025641026vw;
  width:59.7435897436vw;
  top:calc(100svh - 180px)
}


}

.menHeroMenu li {
  height:1px;
  background-color:rgba(255,255,255,.4);
  position:relative
}

@media only screen and (min-width: 901px) {
  .menHeroMenu li {
  width:27.0138888889vw;
  margin-right:1.25vw
}


}

@media only screen and (max-width: 900px) {
  .menHeroMenu li {
  margin-bottom:44px
}


}

.menHeroMenu li::before {
  content:"";
  display:block;
  position:absolute;
  left:0;
  top:5px;
  height:19px;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li::before {
  top:9px;
  height:15px
}


}

.menHeroMenu li::after {
  content:"";
  display:block;
  position:absolute;
  left:69px;
  top:12px;
  color:#fff;
  font-size:13px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li::after {
  left:64px
}


}

.menHeroMenu li:nth-child(1)::before {
  width:62px;
  height:19px;
  background-image:url("/cdn/shop/files/time01.svg?v=1751007034")
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li:nth-child(1)::before {
  width:55px;
  height:17px
}


}

.menHeroMenu li:nth-child(1)::after {
  content:"In the bathroom"
}

.menHeroMenu li:nth-child(2)::before {
  width:63px;
  height:17px;
  background-image:url("/cdn/shop/files/time02.svg?v=1751007034")
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li:nth-child(2)::before {
  width:57px;
  height:15px
}


}

.menHeroMenu li:nth-child(2)::after {
  content:"In the car"
}

.menHeroMenu li:nth-child(3)::before {
  width:71px;
  height:17px;
  background-image:url("/cdn/shop/files/time03.svg?v=1751007034")
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li:nth-child(3)::before {
  width:64px;
  height:14px
}


}

.menHeroMenu li:nth-child(3)::after {
  content:"In the kitchen"
}

@media only screen and (max-width: 900px) {
  .menHeroMenu li:nth-child(3)::after {
  left:70px
}


}

.menHeroMenu li button {
  opacity:0;
  left:0;
  top:-20px;
  height:40px;
  width:100%;
  background-color:rgba(23,22,33,.5);
  cursor:pointer;
  position:absolute
}

.menHeroMenu li button::before {
  display:none
}

.menHeroMenu li i {
  width:0;
  height:100%;
  left:0;
  top:0;
  background:#fff;
  position:absolute;
  display:block;
  content:"";
  animation-play-state:paused
}

.menHeroMenu.is-start li.slick-active {
  pointer-events:none
}

.menHeroMenu.is-start li.slick-active i {
  animation-play-state:running;
  animation:5s linear 0s 1 alternate slide_meter
}

@keyframes slide_meter {
  from {
  width:0
}

to {
  width:100%
}


}

.menHero_headline div.is-en {
  overflow:hidden
}

.menHero_headline div.is-en span {
  transform:translateY(calc(100% + 1px));
  transition:1.5s cubic-bezier(0.075, 0.82, 0.165, 1) .8s;
  will-change:transform
}

[data-loaded="1"] .menHero_headline div.is-en span {
  transform:none
}

.menHero_headline div.is-ja {
  clip-path:inset(0 100% 0 0);
  transition:1.9s cubic-bezier(0.075, 0.82, 0.165, 1) 1.2s;
  transform:translateX(30px);
  will-change:transform,clip-path
}

[data-loaded="1"] .menHero_headline div.is-ja {
  clip-path:inset(0);
  transform:none
}

.menHero_scroll {
  transform:translateX(50px);
  transition:1.4s cubic-bezier(0.19, 1, 0.22, 1) 1.7s;
  will-change:transform
}

[data-loaded="1"] .menHero_scroll {
  transform:none
}

[data-loaded="1"] .menHero_scroll::before {
  animation:scrolldown cubic-bezier(0.39, 0.575, 0.565, 1) 2s infinite
}

@keyframes scrolldown {
  0% {
  transform:translateY(0) rotate(90deg)
}

4% {
  transform:translateY(5px) rotate(90deg)
}

8% {
  transform:translateY(0) rotate(90deg)
}

12% {
  transform:translateY(5px) rotate(90deg)
}

16% {
  transform:translateY(0) rotate(90deg)
}

100% {
  transform:translateY(0) rotate(90deg)
}


}

.menHeroMenu {
  transform:translateY(calc(100% + 30px));
  transition:1s cubic-bezier(0.19, 1, 0.22, 1) 1.3s;
  will-change:transform
}

[data-loaded="1"] .menHeroMenu {
  transform:none
}

.men_main {
  position:relative;
  background-color:#e7e7e7
}

.men_bottom {
  background-image:url("/cdn/shop/files/texture_normal01.png?v=1751007037");
  padding:35px 0;
  margin-top:145px
}

@media only screen and (max-width: 900px) {
  .men_bottom {
  margin-top:70px;
  padding:1px 0 120px
}


}

.menHero {
  z-index:0
}

.mein_main {
  z-index:1
}

.menColumn {
  margin-left:6.2%
}

@media only screen and (min-width: 901px) {
  .menColumn {
  padding:195px 0 0 0;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .menColumn {
  padding-left:8.3333333333%;
  padding-right:8.3333333333%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .menColumn {
  padding:68px 0 0
}


}

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


}

@media only screen and (min-width: 901px) {
  .menColumn_side {
  width:174px
}


}

@media only screen and (min-width: 901px) {
  .menColumn_content {
  width:calc(100% - 174px)
}


}

@media only screen and (max-width: 900px) {
  .menColumn_content {
  margin-top:-87px;
  padding:0 11.5% 0 16%
}

[data-sectino=faq] .menColumn_content {
  margin-top:-220px
}


}

.menColumn_headline {
  width:39px
}

@media only screen and (max-width: 900px) {
  .menColumn_headline {
  width:32px
}


}

.menColumn_headline svg {
  width:100%;
  height:auto
}

.menScene {
  position:relative;
  margin-top:150lvh
}

.menScene::before {
  content:"";
  width:100%;
  height:20px;
  background-color:#e7e7e7;
  display:block
}

@media only screen and (max-width: 900px) {
  .menScene::before {
  display:none
}


}

.menScene_section {
  position:relative;
  z-index:1
}

.menSceneBackground {
  height:100lvh;
  width:100%
}

@media only screen and (min-width: 901px) {
  .menSceneBackground {
  position:sticky;
  z-index:0;
  top:0;
  right:0
}


}

@media only screen and (max-width: 900px) {
  .menSceneBackground {
  position:relative;
  clip-path:inset(6px)
}


}

@media only screen and (min-width: 901px) {
  .menSceneBackground_item {
  position:absolute;
  z-index:1;
  right:0;
  top:0;
  height:100%;
  width:calc(100% - 497px)
}


}

.menSceneBackground_item:first-child {
  z-index:2
}

.menSceneBackground_headline {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .menSceneBackground_headline {
  right:9.3%;
  top:83px
}


}

@media only screen and (max-width: 900px) {
  .menSceneBackground_headline {
  left:57.2%;
  bottom:55px
}


}

[data-background-section=scene1] .menSceneBackground_headline {
  width:157px
}

@media only screen and (max-width: 900px) {
  [data-background-section=scene1] .menSceneBackground_headline {
  width:112px
}


}

.menSceneBackground_image {
  z-index:0
}

.menSceneBackground_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.menSceneBackground_image>div img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

@media only screen and (max-width: 900px) {
  .menSceneBackground_image>div {
  height:110%
}


}

.menSceneBackground_current .menSceneBackground_headline {
  clip-path:inset(0 0 0 0)
}

.menSceneBackground_current .menSceneBackground_headline>div {
  transform:none
}

.menSceneBackground_headline {
  clip-path:inset(0 100% 0 0)
}

@media only screen and (min-width: 901px) {
  .menSceneDetail {
  width:497px;
  height:200lvh;
  display:flex;
  align-items:center;
  padding-left:6.2%;
  padding-right:6.2%
}


}

@media only screen and (max-width: 900px) {
  .menSceneDetail {
  padding:40px 10.8% 57px
}


}

.menSceneDetail_image {
  margin-top:45px;
  width:68%
}

@media only screen and (max-width: 900px) {
  .menSceneDetail_image {
  margin-top:25px;
  width:215px
}


}

.menSceneDetail_title {
  margin-top:25px
}

.menSceneDetail_title span {
  display:block
}

.menSceneDetail_title span.is-sub {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  letter-spacing:0
}

.menSceneDetail_title span.is-main {
  font-size:24px;
  margin-top:5px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  font-weight:bold;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menSceneDetail_title span.is-main {
  font-size:20px
}


}

.menSceneDetail_body p {
  font-size:18px;
  line-height:160%;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .menSceneDetail_body p {
  font-size:16px
}


}

.menSpec_image {
  max-width:472px;
  margin:0 auto 35px
}

@media only screen and (max-width: 900px) {
  .menSpec_image {
  max-width:234px
}


}

.menTrigger {
  width:74px;
  height:31px;
  display:flex;
  align-items:start;
  justify-content:center
}

.menTrigger_button {
  border:1px solid rgba(255,255,255,.2);
  border-radius:2px;
  display:flex;
  align-items:center;
  justify-content:center;
  background-color:transparent;
  padding:0;
  margin:0;
  width:100%;
  height:100%;
  cursor:pointer;
  outline:none;
  pointer-events:auto;
  transition:.6s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .menTrigger_button:hover {
  opacity:.6
}


}

.menTrigger_line {
  position:relative;
  width:8px;
  height:6px;
  display:block;
  transition:all .4s;
  box-sizing:border-box;
  margin-top:-1px
}

.menTrigger_line span {
  display:inline-block;
  transition:all .4s;
  box-sizing:border-box;
  position:absolute;
  width:100%;
  height:1px;
  left:0;
  background-color:#fff
}

.menTrigger_line span:nth-child(1) {
  top:0;
  animation:menu-bar01 .5s forwards
}

.menTrigger_line span:nth-child(2),.menTrigger_line span:nth-child(3) {
  height:1px
}

.menTrigger_line span:nth-child(2) {
  top:3px;
  opacity:1
}

.menTrigger_line span:nth-child(3) {
  top:6px;
  animation:menu-bar02 .5s forwards
}

[data-show=global-men] .menTrigger_line span:nth-child(1) {
  animation:active-menu-bar01 .5s forwards;
  top:3px
}

[data-show=global-men] .menTrigger_line span:nth-child(2) {
  opacity:0
}

[data-show=global-men] .menTrigger_line span:nth-child(3) {
  animation:active-menu-bar03 .5s forwards;
  top:3px
}

.menTrigger_title {
  font-size:15px;
  font-weight:normal;
  margin-left:8px;
  color:#fff;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em;
  font-weight:bold;
  letter-spacing:-0.01em
}

[data-show=global-men] .menTrigger_title span.is-menu {
  display:none
}

.menTrigger_title span.is-close {
  display:none
}

[data-show=global-men] .menTrigger_title span.is-close {
  display:block
}

@keyframes menu-bar01 {
  0% {
  transform:translateY(0) rotate(45deg)
}

50% {
  transform:translateY(0) rotate(0)
}

100% {
  transform:translateY(0) rotate(0)
}


}

@keyframes menu-bar02 {
  0% {
  transform:translateY(0) rotate(-45deg)
}

50% {
  transform:translateY(0) rotate(0)
}

100% {
  transform:translateY(0) rotate(0)
}


}

@keyframes active-menu-bar01 {
  0% {
  transform:translateY(0) rotate(0)
}

50% {
  transform:translateY(0px) rotate(0)
}

100% {
  transform:translateY(0px) rotate(45deg)
}


}

@keyframes active-menu-bar03 {
  0% {
  transform:translateY(0) rotate(0)
}

50% {
  transform:translateY(0px) rotate(0)
}

100% {
  transform:translateY(0px) rotate(-45deg)
}


}

[data-show=global-men] .menTrigger_button {
  background-color:#ccc
}

[data-show=global-men] .menTrigger_title {
  color:#1a1a1a
}

[data-show=global-men] .menTrigger_line span {
  background-color:#1a1a1a
}

@media only screen and (min-width: 901px) {
  .lunaAuto_wrap {
  padding-top:80px;
  padding-bottom:0;
  display:flex;
  align-items:center;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .lunaAuto_wrap {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaAuto_wrap {
  width:91.7948717949vw;
  margin:0 auto;
  padding-bottom:60px
}


}

@media only screen and (min-width: 901px) {
  .lunaAuto_content {
  width:50.462962963%;
  padding:0 16% 0 7%
}


}

@media only screen and (max-width: 900px) {
  .lunaAuto_content {
  padding:50px 8.9% 45px
}


}

@media only screen and (min-width: 901px) {
  .lunaAuto_image {
  width:49.537037037%
}


}

.lunaAuto_headline span {
  font-size:22px;
  line-height:170%;
  letter-spacing:.18em;
  font-weight:bold
}

@media only screen and (max-width: 900px) {
  .lunaAuto_headline span {
  font-size:18px
}


}

.lunaAuto_body {
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .lunaAuto_body {
  margin-top:12px
}


}

.lunaAuto_body p {
  font-size:13px;
  line-height:180%;
  letter-spacing:.08em;
  color:#727272
}

.lunaAuto_body p sup {
  line-height:0;
  font-size:8px
}

@media only screen and (max-width: 900px) {
  .lunaAuto_body p sup {
  font-size:7px
}


}

.lunaAuto_tag {
  display:flex;
  align-items:center;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .lunaAuto_tag {
  margin-top:10px
}


}

.lunaAuto_tag li {
  margin-right:8px
}

.lunaAuto_tag li span {
  font-size:12px;
  color:#917a64;
  border:1px solid #917a64;
  height:24px;
  border-radius:12px;
  display:block;
  padding:4px 10px 0;
  font-weight:bold;
  white-space:nowrap;
  box-sizing: content-box;
}

.lunaAuto_tag li span em {
  font-style:normal;
  font-size:13px;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaAuto_tag li span sup {
  font-size:7px;
  line-height:0
}

.lunaAuto_note {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .lunaAuto_note {
  margin-top:23px
}


}

.lunaAuto_note li {
  font-size:10px;
  letter-spacing:.04em;
  line-height:180%;
  color:#9d9d9d
}

.lunaCards {
  position:relative;
  padding-top:120px
}

@media only screen and (max-width: 900px) {
  .lunaCards {
  padding-top:54px
}


}

.lunaCard {
  position:relative
}

@media only screen and (max-width: 900px) {
  .lunaCard {
  margin-bottom:16px
}


}

@media only screen and (min-width: 901px) {
  .lunaCard--fix {
  z-index:2;
  height:calc(100dvh - 200px)
}


}

@media only screen and (min-width: 901px) {
  .lunaCard_container {
  height:100%;
  display:flex
}


}

.lunaCard_image {
  position:relative;
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .lunaCard_image {
  width:56.6358024691%;
  border-radius:4px 0 0 4px
}


}

@media only screen and (max-width: 900px) {
  .lunaCard_image {
  border-radius:4px 4px 0 0;
  width:100%;
  height:358px
}


}

.lunaCard_image>div {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.lunaCard_image>div img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.lunaCard_image>div:nth-child(1) {
  z-index:2
}

@media only screen and (max-width: 900px) {
  .lunaCard_image>div img {
  transform:scale(1.1)
}


}

.lunaCard_content {
  position:relative;
  background-color:#f9f6f2
}

@media only screen and (min-width: 901px) {
  .lunaCard_content {
  width:43.3641975309%
}


}

@media only screen and (max-width: 900px) {
  .lunaCard_content {
  border-radius:0 0 4px 4px
}


}

@media only screen and (min-width: 901px) {
  .lunaCard_item {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:flex;
  align-items:flex-end;
  overflow:hidden
}


}

.lunaCard_inner {
  margin-left:auto;
  margin-right:auto
}

@media only screen and (min-width: 901px) {
  .lunaCard_inner {
  max-width:362px;
  padding-bottom:92px
}


}

@media only screen and (min-width: 901px)and (max-height: 799px) {
  .lunaCard_inner {
  padding-bottom:41px
}


}

@media only screen and (min-width: 901px)and (max-height: 719px) {
  .lunaCard_inner {
  padding-bottom:15px
}


}

@media only screen and (max-width: 900px) {
  .lunaCard_inner {
  padding:38px 8.4% 48px
}


}

.lunaCard_title span {
  font-size:20px;
  line-height:170%;
  letter-spacing:.3em;
  font-family:"shippori-mincho",sans-serif
}

@media only screen and (max-width: 900px) {
  .lunaCard_title span {
  font-size:18px
}


}

.lunaCard_title span sup {
  font-size:12px;
  line-height:0;
  letter-spacing:.18em
}

@media only screen and (max-width: 900px) {
  .lunaCard_title span sup {
  font-size:10px
}


}

.lunaCard_body {
  margin-top:25px
}

.lunaCard_body+.lunaCard_body {
  margin-top:0
}

@media only screen and (min-width: 901px) {
  .lunaCard_body[\:has\(div\)] {
  display:flex;
  justify-content:space-between
}

.lunaCard_body:has(div) {
  display:flex;
  justify-content:space-between
}


}

@media only screen and (min-width: 901px) {
  .lunaCard_body[\:has\(div\)] p {
  width:calc(100% - 140px)
}

.lunaCard_body:has(div) p {
  width:calc(100% - 140px)
}


}

.lunaCard_body[\:has\(div\)] div {
  width:140px
}

.lunaCard_body:has(div) div {
  width:140px
}

@media only screen and (min-width: 901px) {
  .lunaCard_body[\:has\(div\)] div {
  padding-left:15px
}

.lunaCard_body:has(div) div {
  padding-left:15px
}


}

@media only screen and (max-width: 900px) {
  .lunaCard_body[\:has\(div\)] div {
  padding-top:15px
}

.lunaCard_body:has(div) div {
  padding-top:15px
}


}

@media only screen and (max-width: 900px) {
  .lunaCard_body {
  margin-top:12px
}


}

.lunaCard_body p {
  font-size:13px;
  line-height:180%;
  letter-spacing:.08em;
  color:#727272
}

.lunaCard_body p sup {
  font-size:8px;
  line-height:0;
  letter-spacing:.18em
}

.lunaCard_video {
  margin-top:35px;
  overflow:hidden;
  border-radius:2px
}

.lunaCard_video video {
  width:100%;
  display:block
}

.lunaCard_note {
  margin-top:15px
}

.lunaCard_note li {
  font-size:10px;
  line-height:180%;
  letter-spacing:.04em;
  color:#9d9d9d
}

@media only screen and (max-width: 900px) {
  .lunaCard_note li {
  line-height:170%
}


}

@media only screen and (min-width: 901px) {
  .lunaCard_current,[data-card-current="6"] .lunaCard_item[data-card-item="6"],[data-card-current="5"] .lunaCard_item[data-card-item="5"],[data-card-current="4"] .lunaCard_item[data-card-item="4"],[data-card-current="3"] .lunaCard_item[data-card-item="3"],[data-card-current="2"] .lunaCard_item[data-card-item="2"],[data-card-current="1"] .lunaCard_item[data-card-item="1"] {
  opacity:1;
  transform:none;
  pointer-events:auto
}


}

@media only screen and (min-width: 901px) {
  .lunaCard_item {
  opacity:0;
  pointer-events:none;
  transition:.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform:translateY(10px);
  will-change:opacity,transform
}


}

.lunaCardButton {
  padding:20px 5%;
  margin-top:35px;
  background-color:#fff;
  border-radius:2px
}

@media only screen and (max-width: 900px) {
  .lunaCardButton {
  margin-top:25px;
  padding:20px 7.6%
}


}

.lunaCardButton_wrap {
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  outline:none;
  appearance:none;
  border:none;
  outline:none;
  text-align:left;
  cursor:pointer;
  background-color:transparent;
  width:100%;
  padding:0
}

.lunaCardButton_image {
  width:25.2365930599%
}

@media only screen and (max-width: 900px) {
  .lunaCardButton_image {
  width:32%
}


}

.lunaCardButton_image>div {
  border-radius:2px;
  overflow:hidden
}

.lunaCardButton_content {
  width:67.1924290221%;
  display:flex;
  flex-flow:column;
  justify-content:space-between
}

@media only screen and (max-width: 900px) {
  .lunaCardButton_content {
  width:60%
}


}

.lunaCardButton_title {
  font-size:13px;
  letter-spacing:.08em;
  line-height:180%;
  font-feature-settings:"palt";
  color:#3d3d3d
}

@media only screen and (max-width: 900px) {
  .lunaCardButton_title {
  font-size:12px
}


}

.lunaCardButton_body {
  font-size:10px;
  line-height:180%;
  letter-spacing:.06em;
  color:#727272;
  font-feature-settings:"palt"
}

.lunaCardButton_body sup {
  line-height:0;
  font-size:6px
}

.lunaCardButton_body span.is-open {
  display:block;
  opacity:0;
  transition:.8s cubic-bezier(0.19, 1, 0.22, 1);
  display:none
}

[data-accordion-state=open] .lunaCardButton_body span.is-open {
  display:block;
  animation:fadeIn ease-out 1.2s forwards
}

@media only screen and (max-width: 900px) {
  .lunaCardButton_body span.is-open {
  display:none !important
}


}

.lunaCardButton_target {
  padding-left:33.4%
}

@media only screen and (max-width: 900px) {
  .lunaCardButton_target {
  padding-left:40%
}


}

.lunaCardButton_text p {
  font-size:11px;
  letter-spacing:.08em;
  line-height:180%;
  color:#727272
}

.lunaCardButton_more {
  display:flex;
  align-items:center
}

.lunaCardButton_more span {
  font-size:11px;
  letter-spacing:.02em;
  color:#917a64;
  display:block;
  margin-right:7px;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaCardButton_more svg {
  width:10px;
  height:10px
}

.lunaCardButton_trigger {
  display:flex;
  align-items:center;
  margin-top:5px
}

[data-accordion-state=open] .lunaCardButton_trigger.is-open {
  opacity:0
}

.lunaCardButton_trigger.is-close {
  margin-top:15px;
  outline:none;
  appearance:none;
  border:none;
  outline:none;
  text-align:left;
  cursor:pointer;
  background-color:transparent;
  width:100%;
  padding:0
}

.lunaCardButton_trigger.is-close svg {
  transform:rotate(180deg)
}

.lunaCardButton_trigger span {
  font-size:11px;
  letter-spacing:.02em;
  color:#917a64;
  display:block;
  margin-right:7px;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaCardButton_trigger svg {
  width:10px;
  height:10px
}

.lunaCardButton {
  transition:.8s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (min-width: 901px) {
  .lunaCardButton:hover {
  background-color:rgba(255,255,255,.4)
}


}

@media only screen and (min-width: 901px) {
  .lunaFunction {
  overflow:hidden
}


}

.lunaFunction_container {
  position:relative;
  background:linear-gradient(347deg, #DAD0C3 2.95%, #EFEAE5 17.08%, #EFE8DD 63.22%, #DAD0C3 100.18%)
}

.lunaFunction_wrap {
  overflow:hidden;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaFunction_wrap {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaFunction_wrap {
  width:91.7948717949vw;
  position:relative;
  z-index:1;
  padding-bottom:45px
}


}

@media only screen and (min-width: 901px) {
  .lunaFunction_section {
  opacity:0;
  position:relative;
  z-index:0
}

.lunaFunction_section:nth-child(1) {
  opacity:1;
  z-index:2;
  height:100dvh
}


}

.lunaFunctionProgress {
  height:120px;
  display:flex;
  align-items:center;
  position:absolute;
  width:100%;
  left:0;
  top:0
}

@media only screen and (max-width: 900px) {
  .lunaFunctionProgress {
  height:54px;
  position:sticky;
  z-index:2
}


}

.lunaFunctionProgress_content {
  display:flex;
  justify-content:center;
  width:100%
}

.lunaFunctionProgress_content span {
  font-size:14px;
  color:#a19585;
  display:block;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaFunctionProgress_content span.is-title {
  margin-right:12px
}

.lunaFunctionProgress_content span.is-current {
  margin-right:28px
}

.lunaFunctionProgress_content span.is-total {
  position:relative
}

.lunaFunctionProgress_content span.is-total::before {
  content:"";
  width:4px;
  height:1px;
  background-color:#a19585;
  position:absolute;
  left:-16px;
  top:7px;
  display:block
}

.lunaGallery {
  border-top:1px solid rgba(128,128,128,.25);
  overflow:hidden
}

@media only screen and (min-width: 901px) {
  .lunaGallery {
  padding-top:96px;
  padding-bottom:96px;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .lunaGallery {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaGallery {
  padding-top:60px;
  margin-bottom:60px
}


}

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


}

@media only screen and (max-width: 900px) {
  .lunaGallery_wrap {
  position:relative;
  width:91.7948717949vw;
  height:179.4871794872vw;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .lunaGallery_column--left {
  position:relative;
  width:50.462962963%
}


}

@media only screen and (max-width: 900px) {
  .lunaGallery_column--left {
  height:100%
}


}

@media only screen and (min-width: 901px) {
  .lunaGallery_column--right {
  width:42.3611111111%
}


}

.lunaGallery_image>div {
  overflow:hidden;
  border-radius:4px
}

.lunaGallery_image--1 {
  position:absolute;
  left:0;
  top:30px;
  width:40.9785932722%
}

@media only screen and (max-width: 900px) {
  .lunaGallery_image--1 {
  width:48.7179487179vw;
  top:0
}


}

.lunaGallery_image--2 {
  position:absolute;
  right:0
}

@media only screen and (min-width: 901px) {
  .lunaGallery_image--2 {
  top:111px;
  width:44.6483180428%
}


}

@media only screen and (max-width: 900px) {
  .lunaGallery_image--2 {
  width:40vw;
  top:24.1025641026vw
}


}

@media only screen and (max-width: 900px) {
  .lunaGallery_image--3 {
  width:49.2307692308vw;
  top:71.2820512821vw;
  left:8.2051282051vw;
  position:absolute
}


}

.lunaGallery_image--4 {
  position:absolute;
  bottom:0
}

@media only screen and (min-width: 901px) {
  .lunaGallery_image--4 {
  left:0;
  width:69.4189602446%
}


}

@media only screen and (max-width: 900px) {
  .lunaGallery_image--4 {
  width:66.1538461538vw;
  right:0
}


}

.lunaGallery_image>div>picture {
  opacity:0;
  transition:1.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform:scale(1.1);
  will-change:transform,opacity
}

.inview .lunaGallery_image>div>picture {
  transform:scale(1);
  opacity:1
}

.lunaGallery_image--1>div>picture {
  transition-delay:.1s
}

.lunaGallery_image--2>div>picture {
  transition-delay:.2s
}

.lunaGallery_image--3>div>picture {
  transition-delay:.3s
}

.lunaGallery_image--4>div>picture {
  transition-delay:.4s
}

.lunaHero {
  height:100dvh;
  position:relative;
  pointer-events:none;
  overflow:hidden
}

.lunaHero_scroll {
  position:absolute;
  z-index:4;
  color:#b8ac9c
}

.lunaHero_scroll:after {
  content:""
}

@media only screen and (min-width: 901px) {
  .lunaHero_scroll {
  top:calc(50% - 25px);
  right:24px
}


}

@media only screen and (max-width: 900px) {
  .lunaHero_scroll {
  bottom:63px;
  left:43.5897435897vw;
  display:flex;
  align-items:center;
  color:#fff
}


}

.lunaHero_scroll::after {
  font-size:10px;
  display:block;
  position:relative
}

@media only screen and (min-width: 901px) {
  .lunaHero_scroll::after {
  left:-1px;
  bottom:-17px;
  animation:_arrowDown_pc 1.8s cubic-bezier(0.12, 0, 0.39, 0) 0s infinite
}


}

@media only screen and (max-width: 900px) {
  .lunaHero_scroll::after {
  left:10px;
  bottom:-5px;
  animation:_arrowDown_sp 1.8s cubic-bezier(0.12, 0, 0.39, 0) 0s infinite
}


}

.lunaHero_scroll p {
  letter-spacing:.02em;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

@media only screen and (min-width: 901px) {
  .lunaHero_scroll p {
  font-size:11px;
  width:14px;
  line-height:1.5;
  -ms-writing-mode:tb-rl;
  writing-mode:vertical-rl;
  font-feature-settings:normal
}


}

@media only screen and (max-width: 900px) {
  .lunaHero_scroll p {
  font-size:13px
}


}

.lunaHero_slider {
  position:relative;
  z-index:0;
  padding:52px 72px 93px 72px;
  height:100%
}

@media only screen and (max-width: 900px) {
  .lunaHero_slider {
  padding:16px 16px 52px 16px
}


}

.lunaHero_slider .splide {
  height:100%
}

.lunaHero_slider .splide__track,.lunaHero_slider .splide__list {
  height:100%
}

.lunaHero_slider .splide__slide {
  position:relative;
  overflow:hidden;
  border-radius:6px;
  height:100%
}

.lunaHero_slider .splide__slide picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.lunaHero_slider .splide__slide picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.lunaHero_cloud {
  position:absolute;
  z-index:1;
  opacity:0
}

.lunaHero_cloud--1 {
  left:0;
  top:0;
  width:110%
}

@media only screen and (min-width: 901px) {
  .lunaHero_cloud--2 {
  left:-9%;
  top:12%;
  width:100%
}


}

@media only screen and (max-width: 900px) {
  .lunaHero_cloud--2 {
  left:-76%;
  bottom:18%;
  width:210%
}


}

.lunaHero_cloud--3 {
  right:-23%;
  bottom:93px;
  width:120%
}

@media only screen and (max-width: 900px) {
  .lunaHero_cloud--3 {
  bottom:23px
}


}

.lunaHero_cloud--3 img {
  transform:scaleX(-1)
}

.lunaHero_cloud img {
  width:100%;
  max-width:none;
  height:auto
}

.lunaHeroHead {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .lunaHeroHead {
  right:23.6%;
  top:34.5%
}


}

@media only screen and (max-width: 900px) {
  .lunaHeroHead {
  left:18%;
  bottom:calc(52px + 10.1%)
}


}

.lunaHeroHead_title span {
  display:block;
  color:#fff
}

.lunaHeroHead_title span.is-ja {
  font-size:11px;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .lunaHeroHead_title span.is-ja {
  font-size:14px
}


}

.lunaHeroHead_title span.is-en {
  margin-top:15px
}

.lunaHeroHead_title span.is-en svg {
  width:116px;
  height:39px;
  fill:#fff
}

@media only screen and (max-width: 900px) {
  .lunaHeroHead_title span.is-en svg {
  width:94px;
  height:32px
}


}

.lunaHeroHead_title span.is-hidden {
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  display:block;
  position:absolute
}

.lunaHeroHead_body {
  margin-top:35px;
  width:187px
}

@media only screen and (max-width: 900px) {
  .lunaHeroHead_body {
  margin-top:23px;
  width:150px
}


}

.lunaHeroGauge {
  position:absolute;
  z-index:3;
  right:8.6%;
  bottom:calc(72px + 8.1%)
}

@media only screen and (max-width: 900px) {
  .lunaHeroGauge {
  right:8.2%;
  bottom:calc(52px + 3%)
}


}

.lunaHeroGauge_inner {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center
}

.lunaHeroGauge_item {
  display:none
}

.lunaHeroGauge_item.is-show {
  display:block;
  animation:fadeIn ease-out 1.2s forwards
}

.lunaHeroGauge_volume {
  font-size:11px;
  padding-bottom:1px;
  letter-spacing:-0.02em;
  color:#fff;
  width:fit-content;
  margin-left:auto;
  margin-right:auto;
  position:relative;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaHeroGauge_volume::before {
  content:"";
  display:block;
  width:11px;
  height:1px;
  background-color:#fff;
  position:absolute;
  left:calc(50% - 5px);
  bottom:-1px
}

.lunaHeroGauge_title {
  font-size:14px;
  margin-top:7px;
  color:#fff;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0;
  letter-spacing:.02em
}

.lunaHeroGauge_circle {
  width:82px;
  height:82px;
  transform:rotate(-90deg)
}

@media only screen and (max-width: 900px) {
  .lunaHeroGauge_circle {
  transform:rotate(-90deg) scale(0.8)
}


}

.lunaHeroGauge_circle svg {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.lunaHeroGauge_circle svg circle {
  fill:none;
  stroke-width:1px;
  stroke-linecap:round
}

.lunaHeroGauge_circle svg.is-progress circle {
  stroke:#fff;
  stroke-dasharray:257.61;
  stroke-dashoffset:257.61
}

.lunaHeroGauge_circle svg.is-base circle {
  stroke:rgba(255,255,255,.4)
}

.lunaHero_slider {
  overflow:hidden
}

.lunaHero_slider .splide__slide img {
  transform:scale(1.1);
  transition:6s ease-out;
  display:block
}

.lunaHero_slider .splide__slide.is-active img {
  transform:scale(1);
  transition-delay:0s
}

.lunaHero_slider .splide__slide:first-child picture {
  transition:4s cubic-bezier(0.39, 0.575, 0.565, 1) .1s;
  transform:scale(1.08)
}

[data-loaded="1"] .lunaHero_slider .splide__slide:first-child picture {
  transform:scale(1)
}

.lunaHeroHead_title span.is-ja {
  overflow:hidden
}

.lunaHeroHead_title span.is-ja em {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1) .6s;
  transform:translateY(calc(100% + 1px));
  will-change:transform;
  font-style:normal;
  display:block
}

[data-loaded="1"] .lunaHeroHead_title span.is-ja em {
  transform:none
}

.lunaHeroHead_title span.is-en {
  perspective:700px
}

.lunaHeroHead_title span.is-en svg {
  display:block;
  transform:translateY(30px) rotateX(60deg);
  transition:1.8s cubic-bezier(0.19, 1, 0.22, 1) .8s;
  opacity:0;
  will-change:transform,opacity
}

[data-loaded="1"] .lunaHeroHead_title span.is-en svg {
  transform:none;
  opacity:1
}

.lunaHeroHead_body {
  perspective:1800px
}

.lunaHeroHead_body div {
  transform:translateY(30px) rotateX(20deg);
  transition:2.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;
  opacity:0;
  will-change:transform,opacity
}

[data-loaded="1"] .lunaHeroHead_body div {
  transform:none;
  opacity:1
}

@keyframes _arrowDown_pc {
  0% {
  transform:translateY(-5px) rotate(90deg)
}

30% {
  transform:translateY(0) rotate(90deg)
}

42% {
  transform:translateY(-3px) rotate(90deg)
}

50% {
  transform:translateY(0) rotate(90deg)
}

60% {
  transform:translateY(-5px) rotate(90deg)
}

100% {
  transform:translateY(-5px) rotate(90deg)
}


}

@keyframes _arrowDown_sp {
  0% {
  transform:translateY(-5px) rotate(90deg)
}

30% {
  transform:translateY(0) rotate(90deg)
}

42% {
  transform:translateY(-3px) rotate(90deg)
}

50% {
  transform:translateY(0) rotate(90deg)
}

60% {
  transform:translateY(-5px) rotate(90deg)
}

100% {
  transform:translateY(-5px) rotate(90deg)
}


}

.lunaIntro {
  background:linear-gradient(167deg, #EFE8DD -0.18%, #F3E5E4 26.06%, #EFE8DD 60.09%, #F3E5E4 97.05%);
  position:relative
}

.lunaIntro_wrap {
  padding:0 0 120px;
  overflow:hidden;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaIntro_wrap {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntro_wrap {
  padding-bottom:70px
}


}

.lunaIntroCloud {
  position:relative;
  z-index:2;
  width:100%;
  pointer-events:none
}

.lunaIntroCloud_wrap {
  position:absolute;
  z-index:1;
  left:0;
  top:-214px;
  width:100%;
  height:100dvh;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .lunaIntroCloud_wrap {
  top:-52px
}


}

.lunaIntroCloud_item {
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  width:100%;
  opacity:0
}

.lunaIntroCloud_item--1 {
  left:0;
  top:0
}

@media only screen and (max-width: 900px) {
  .lunaIntroCloud_item--1 {
  width:130%
}


}

.lunaIntroCloud_item--2 {
  left:10%;
  top:0;
  width:100vw
}

@media only screen and (max-width: 900px) {
  .lunaIntroCloud_item--2 {
  top:25.641025641vw;
  width:190vw;
  left:-30%
}


}

.lunaIntroCloud_item--3 {
  display:none
}

.lunaIntroCloud_item img {
  width:100%;
  max-width:none
}

.lunaIntroHead_copy p {
  font-size:18px;
  letter-spacing:.3em;
  line-height:160%;
  font-family:"shippori-antique-b1",sans-serif
}

@media only screen and (max-width: 900px) {
  .lunaIntroHead_copy p {
  font-size:16px
}


}

.lunaIntroHead_copy p+p {
  margin-top:15px
}

@media only screen and (max-width: 900px) {
  .lunaIntroHead_copy p+p {
  margin-top:10px
}


}

.lunaIntroHead_en {
  margin-top:32px
}

@media only screen and (max-width: 900px) {
  .lunaIntroHead_en {
  margin-top:20px
}


}

.lunaIntroHead_en p {
  font-size:11px;
  line-height:150%;
  letter-spacing:.02em;
  color:#727272
}

@media only screen and (max-width: 900px) {
  .lunaIntroHead_en p {
  font-size:10px
}


}

.lunaIntroHead_copy {
  perspective:1000px
}

.lunaIntroHead_copy p {
  opacity:0;
  transition:2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform:translateX(-35px) rotateY(30deg);
  will-change:trasform,opacity
}

.inView .lunaIntroHead_copy p {
  opacity:1;
  transform:none
}

.lunaIntroHead_en {
  perspective:1000px
}

.lunaIntroHead_en p {
  opacity:0;
  transition:2s cubic-bezier(0.165, 0.84, 0.44, 1) .2s;
  transform:translateX(35px) rotateY(-30deg);
  will-change:trasform,opacity
}

.inView .lunaIntroHead_en p {
  opacity:1;
  transform:none
}

.lunaIntroSection .snake {
  position:absolute
}

.lunaIntroSection .left,.lunaIntroSection .right {
  position:relative
}

.lunaIntroSection .image>div {
  overflow:hidden;
  border-radius:4px
}

.lunaIntroSection--1 {
  margin-top:120px
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--1 {
  display:flex;
  justify-content:space-between;
  flex-direction:row-reverse
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--1 .left {
  width:49.537037037%
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--1 .right {
  width:50.462962963%
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--1 .head {
  position:absolute;
  left:28.4%;
  top:21.8%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--1 .head {
  margin-top:50px;
  padding-left:17.9487179487vw
}


}

.lunaIntroSection--1 .image {
  position:relative
}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--1 .image {
  display:flex;
  justify-content:flex-end
}

.lunaIntroSection--1 .image>div:not(.snake) {
  width:78.9743589744vw
}


}

.lunaIntroSection--1 .snake {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--1 .snake {
  right:4%;
  bottom:3.1%;
  width:250px;
  animation:wave1_1_pc 2500ms -9800ms ease-in-out infinite alternate
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--1 .snake {
  right:5%;
  bottom:-1.9%;
  width:171px;
  animation:wave1_1_sp 2500ms -9800ms ease-in-out infinite alternate
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 {
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--2 {
  margin-top:60px
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 .left {
  width:49.5%;
  padding-left:7.1%;
  margin-top:-191px
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 .right {
  width:49.537037037%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--2 .right {
  display:flex;
  justify-content:flex-end;
  margin:15.3846153846vw 17.9487179487vw 0 0
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 .head {
  position:absolute;
  left:45.4%;
  top:52.5%
}


}

.lunaIntroSection--2 .image {
  aspect-ratio:549/518;
  position:relative
}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--2 .image {
  aspect-ratio:294/326;
  width:75.3846153846vw;
  margin-left:12.3076923077vw
}


}

.lunaIntroSection--2 .image--1 {
  position:absolute;
  left:0;
  top:0
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 .image--1 {
  width:66%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--2 .image--1 {
  width:57.9487179487vw
}


}

.lunaIntroSection--2 .image--2 {
  position:absolute;
  right:0;
  bottom:0
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--2 .image--2 {
  width:48.7%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--2 .image--2 {
  width:40.5128205128vw
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--3 {
  display:flex;
  margin-top:133px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--3 {
  margin-top:50px
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--3 .left {
  width:63.9660493827%
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--3 .right {
  width:36.0339506173%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--3 .image--1 {
  width:91.7948717949vw;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--3 .image--2 {
  position:absolute;
  width:57.9%;
  left:22.2%;
  top:26%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--3 .image--2 {
  width:40.5128205128vw;
  margin-top:48px;
  margin-left:21.0256410256vw
}


}

.lunaIntroSection--3 .snake {
  z-index:2
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--3 .snake {
  width:198px;
  left:3%;
  bottom:4%;
  animation:wave2_2_pc 2500ms -9800ms ease-in-out infinite alternate
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--3 .snake {
  width:142px;
  left:9%;
  bottom:5%;
  animation:wave2_2_sp 2500ms -9800ms ease-in-out infinite alternate
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--4 {
  display:flex;
  justify-content:space-between;
  margin-top:146px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--4 {
  margin-top:48px
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--4 .left {
  width:50.462962963%
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--4 .right {
  width:49.537037037%
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--4 .head {
  position:absolute;
  left:14.2%;
  top:15.1%
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--4 .head {
  margin-left:29.7435897436vw
}


}

.lunaIntroSection--4 .image {
  position:relative
}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--4 .image {
  margin-top:72px;
  display:flex;
  justify-content:flex-end
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--4 .image>div:not(.snake) {
  width:78.9743589744vw
}


}

.lunaIntroSection--4 .snake {
  position:absolute;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--4 .snake {
  right:7.5%;
  top:-11.5%;
  width:263px;
  animation:wave3_1_pc 2500ms -9800ms ease-in-out infinite alternate
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--4 .snake {
  width:183px;
  right:3.9%;
  top:-11.3%;
  animation:wave3_1_sp 2500ms -9800ms ease-in-out infinite alternate
}


}

.lunaIntroSection--5 {
  display:flex
}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--5 {
  margin-top:-222px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--5 {
  margin:52px auto 0;
  width:91.7948717949vw
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--5 .image--1 {
  width:20.6%;
  margin-right:12px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--5 .image--1 {
  width:48.7179487179vw;
  margin:0 3.0769230769vw 0 0
}


}

@media only screen and (min-width: 901px) {
  .lunaIntroSection--5 .image--2 {
  width:20.9%;
  margin-top:142px
}


}

@media only screen and (max-width: 900px) {
  .lunaIntroSection--5 .image--2 {
  width:40vw;
  margin-top:28.7179487179vw
}


}

.lunaIntroSection .snake>div {
  opacity:0;
  transform:scale(1.5);
  transition:1s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change:transform
}

.lunaIntroSection .inView .snake>div {
  opacity:1;
  transform:none
}

@keyframes wave1_1_pc {
  0% {
  transform:skew(1deg, 0deg) scaleX(0.94) rotateY(-10deg) rotateY(8deg) rotateZ(2deg)
}

100% {
  transform:skew(0deg, -4deg) scaleX(1.06) rotateY(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave1_1_sp {
  0% {
  transform:skew(1deg, 0deg) scaleX(0.98) rotateY(-8deg) rotateY(8deg) rotateZ(2deg)
}

100% {
  transform:skew(0deg, -4deg) scaleX(1.02) rotateY(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave2_1 {
  0% {
  transform:skew(-1deg, 0deg) scaleX(0.98) rotateX(-5deg) rotateY(2deg) rotateZ(-2deg)
}

100% {
  transform:skew(0deg, 2deg) scaleX(1.01) rotateX(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave2_2_pc {
  0% {
  transform:skew(0deg, 1deg) scaleY(0.98) rotateX(5deg) rotateY(-9deg) rotateZ(2deg)
}

100% {
  transform:skew(2deg, 0deg) scaleY(1.03) rotateX(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave2_2_sp {
  0% {
  transform:skew(0deg, 1deg) scaleY(0.98) rotateX(3deg) rotateY(0deg) rotateZ(2deg)
}

100% {
  transform:skew(2deg, 0deg) scaleY(1.03) rotateX(0deg) rotateY(-3deg) rotateZ(0deg)
}


}

@keyframes wave3_1_pc {
  0% {
  transform:skew(-1deg, 0deg) scaleY(0.98) rotateX(-2deg) rotateY(5deg) rotateZ(-1deg)
}

100% {
  transform:skew(0deg, 2deg) scaleY(1.02) rotateX(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave3_1_sp {
  0% {
  transform:skew(-1deg, -1deg) scaleY(0.98) rotateX(-2deg) rotateY(5deg) rotateZ(-2deg)
}

100% {
  transform:skew(0deg, 2deg) scaleY(1.03) rotateX(0deg) rotateY(0deg) rotateZ(0deg)
}


}

@keyframes wave3_2 {
  0% {
  transform:skew(0deg, 1deg) scaleY(0.98) rotateX(5deg) rotateY(-9deg) rotateZ(0deg)
}

100% {
  transform:skew(2deg, 0deg) scaleY(1.04) rotateX(0deg) rotateY(0deg) rotateZ(3deg)
}


}

@keyframes wave3_3 {
  0% {
  transform:skew(-1deg, 0deg) scaleX(0.98) rotateX(-5deg) rotateY(2deg) rotateZ(-3deg)
}

100% {
  transform:skew(0deg, 2deg) scaleX(1.01) rotateX(0deg) rotateY(0deg) rotateZ(0deg)
}


}

.lunaIpl {
  padding-bottom:128px;
  overflow:hidden;
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaIpl {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaIpl {
  width:91.7948717949vw;
  padding-bottom:60px
}


}

.lunaIpl_wrap {
  background-color:#e6e1db;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .lunaIpl_wrap {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:81px 7.3% 30px
}


}

@media only screen and (max-width: 900px) {
  .lunaIpl_wrap {
  padding:50px 8.5% 60px
}


}

@media only screen and (min-width: 901px) {
  .lunaIpl_content {
  width:40.5333333333%;
  margin-top:-70px
}


}

.lunaIpl_headline {
  font-size:22px;
  letter-spacing:.18em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .lunaIpl_headline {
  font-size:16px;
  line-height:150%
}


}

.lunaIpl_headline sup {
  font-size:12px;
  letter-spacing:0
}

@media only screen and (max-width: 900px) {
  .lunaIpl_headline sup {
  font-size:9px
}


}

.lunaIpl_body {
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .lunaIpl_body {
  margin-top:20px
}


}

.lunaIpl_body p {
  font-size:13px;
  letter-spacing:.08em;
  line-height:140%;
  color:#727272
}

.lunaIpl_body p sup {
  font-size:8px
}

@media only screen and (max-width: 900px) {
  .lunaIpl_body p sup {
  font-size:7px
}


}

.lunaIpl_note {
  margin-top:15px
}

.lunaIpl_note li {
  font-size:10px;
  letter-spacing:.04em;
  line-height:180%
}

.lunaIpl .lunaButton {
  margin-top:43px
}

@media only screen and (max-width: 900px) {
  .lunaIpl .lunaButton {
  margin-top:12px
}


}

@media only screen and (min-width: 901px) {
  .lunaIpl_image {
  width:58.6%
}


}

.lunaIpl_image>div {
  margin-top:40px
}

.lunaIpl {
  perspective:1000px
}

.lunaIpl_wrap {
  opacity:0;
  transform:rotateX(20deg) translateY(80px);
  will-change:opacity,transform;
  transition:1.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.inview .lunaIpl_wrap {
  opacity:1;
  transform:none
}

.luna {
  background-color:#ece7e1;
  color:#3d3d3d
}

.luna_bottom {
  background:#fff;
  padding-top:30px
}

@media only screen and (max-width: 900px) {
  .luna_bottom {
  padding-top:64px
}


}

.lunaButton_link {
  height:48px;
  border-radius:4px;
  background-color:#917a64;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  width:fit-content;
  padding-left:105px;
  padding-right:105px
}

.lunaButton_title {
  font-size:14px;
  color:#fff;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0;
  letter-spacing:.08em
}

.lunaButton_icon {
  width:10px;
  height:auto;
  position:absolute;
  right:12%;
  top:calc(50% - 10px);
}

.lunaButton_icon:before {
  content:""
}

.lunaButton_icon::before {
  color:#fff;
  font-size:10px
}

.lunaButton_link {
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.lunaButton_link:hover {
  background-color:#725c46
}

.lunaButton_link:hover .lunaButton_icon {
  transform:translateX(5px)
}

.lunaButton_icon {
  transition:.9s cubic-bezier(0.19, 1, 0.22, 1)
}

.lunaMen {
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaMen {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaMen {
  width:91.7948717949vw
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_wrap {
  display:flex;
  align-items:center;
  padding:96px 0 165px;
  border-top:1px solid rgba(128,128,128,.25);
  margin-top:75px;
  border-bottom:1px solid rgba(128,128,128,.25)
}


}

@media only screen and (max-width: 900px) {
  .lunaMen_wrap {
  padding:60px 0 52px
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_column--left {
  width:54.8611111111%
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_column--right {
  width:45.1388888889%
}


}

@media only screen and (max-width: 900px) {
  .lunaMen_column--right {
  padding:43px 8.8% 0
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_image {
  display:flex;
  align-items:flex-end;
  justify-content:space-between
}


}

@media only screen and (max-width: 900px) {
  .lunaMen_image {
  aspect-ratio:358/411;
  position:relative
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_image>div:nth-child(1) {
  width:64%
}


}

@media only screen and (max-width: 900px) {
  .lunaMen_image>div:nth-child(1) {
  position:absolute;
  left:0;
  top:0;
  width:83.3333333333vw
}


}

@media only screen and (min-width: 901px) {
  .lunaMen_image>div:nth-child(2) {
  width:34.3%;
  margin-bottom:-70px
}


}

@media only screen and (max-width: 900px) {
  .lunaMen_image>div:nth-child(2) {
  position:absolute;
  right:0;
  bottom:0;
  width:40vw
}


}

.lunaMen_content {
  max-width:360px;
  margin-left:auto;
  margin-right:auto
}

.lunaMen_headline {
  font-size:22px;
  font-weight:bold;
  letter-spacing:.18em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .lunaMen_headline {
  font-size:18px
}


}

.lunaMen_body {
  margin-top:30px
}

@media only screen and (max-width: 900px) {
  .lunaMen_body {
  margin-top:13px
}


}

.lunaMen_body p {
  font-size:13px;
  letter-spacing:.08em;
  line-height:180%;
  color:#727272
}

@media only screen and (max-width: 900px) {
  .lunaMen_body p {
  line-height:170%
}


}

.lunaMen_body p sup {
  font-size:8px
}

.lunaMen_note {
  margin-top:15px
}

.lunaMen_note li {
  font-size:10px;
  color:#9d9d9d;
  line-height:180%;
  letter-spacing:.04em
}

.lunaMen_image>div {
  overflow:hidden
}

.lunaMen_image>div>span {
  display:block
}

.lunaMen_image>div>span>img {
  transition:1.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform:scale(1.2);
  opacity:0
}

.inview .lunaMen_image>div>span>img {
  transform:none;
  opacity:1
}

.lunaMenu {
  position:fixed;
  z-index:10;
  left:0;
  bottom:28px;
  width:100%;
  pointer-events:none
}

@media only screen and (max-width: 900px) {
  .lunaMenu {
  display:none
}


}

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

.lunaMenu_item a {
  position:relative;
  display:block;
  padding:5px 12px;
  cursor:pointer;
  pointer-events:auto
}

.lunaMenu_item a::before {
  content:"";
  display:block;
  width:4px;
  height:4px;
  border-radius:50%;
  background-color:#3d3d3d;
  position:absolute;
  left:2px;
  top:10px;
  transform:scale(0)
}

.lunaMenu_item a span {
  font-size:12px;
  letter-spacing:.02em;
  color:#b8ac9c;
  font-family:"brisbane",sans-serif;
  font-weight:300;
  letter-spacing:0
}

.lunaMenu_current::before,[data-current-section=luna-news] .lunaMenu_item a[rel="#news"]::before,[data-current-section=luna-information] .lunaMenu_item a[rel="#information"]::before,[data-current-section=luna-use] .lunaMenu_item a[rel="#use"]::before,[data-current-section=luna-voice] .lunaMenu_item a[rel="#voice"]::before,[data-current-section=luna-function] .lunaMenu_item a[rel="#function"]::before,[data-current-section=luna-intro] .lunaMenu_item a[rel="#intro"]::before,[data-current-section=luna-hero] .lunaMenu_item a[rel="#hero"]::before {
  transform:scale(1);
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.lunaMenu_current span,[data-current-section=luna-news] .lunaMenu_item a[rel="#news"] span,[data-current-section=luna-information] .lunaMenu_item a[rel="#information"] span,[data-current-section=luna-use] .lunaMenu_item a[rel="#use"] span,[data-current-section=luna-voice] .lunaMenu_item a[rel="#voice"] span,[data-current-section=luna-function] .lunaMenu_item a[rel="#function"] span,[data-current-section=luna-intro] .lunaMenu_item a[rel="#intro"] span,[data-current-section=luna-hero] .lunaMenu_item a[rel="#hero"] span {
  color:#3d3d3d;
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.lunaMenu_item a span {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .lunaMenu_item a:hover span {
  color:#3d3d3d
}


}

.lunaMenu {
  transition:1s cubic-bezier(0.19, 1, 0.22, 1)
}

[data-current-scene=philosophy] .lunaMenu {
  transform:translateY(calc(100% + 30px))
}

.lunaModal {
  background-color:#f9f6f2;
  border-radius:4px;
  position:relative;
  z-index:1;
  max-width:922px;
  padding:63px 6.3% 30px;
  color:#3d3d3d;
  margin-left:auto;
  margin-right:auto;
  margin-top:95px
}

@media only screen and (max-width: 900px) {
  .lunaModal {
  width:91.7948717949vw;
  padding:63px 8.3% 30px;
  margin-top:42px
}


}

[data-modal-content=function1] .lunaModal,[data-modal-content=function4] .lunaModal {
  max-width:736px
}

.lunaModal_head {
  border-bottom:1px solid rgba(128,128,128,.25);
  padding-bottom:22px;
  margin-bottom:32px
}

.lunaModal_headline {
  text-align:center;
  letter-spacing:.08em;
  line-height:180%
}

.lunaModal_headline span {
  display:block
}

.lunaModal_headline span.is-main {
  font-size:18px
}

.lunaModal_headline span.is-sub {
  font-size:13px;
  color:#727272
}

.lunaModal_title {
  font-size:16px;
  line-height:180%;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .lunaModal_title {
  font-size:13px
}


}

.lunaModal_title sup {
  line-height:0;
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .lunaModal_title sup {
  font-size:7px
}


}

.lunaModal_body {
  margin-top:5px
}

.lunaModal_body p {
  font-size:13px;
  line-height:180%;
  letter-spacing:.08em;
  color:#727272
}

.lunaModal_body p sup {
  line-height:0;
  font-size:9px
}

@media only screen and (max-width: 900px) {
  .lunaModal_body p sup {
  font-size:7px
}


}

.lunaModal_note {
  margin-top:15px
}

.lunaModal_note li {
  font-size:10px;
  line-height:180%;
  letter-spacing:.04em;
  color:#9d9d9d
}

.lunaModalCard {
  border-bottom:1px solid rgba(128,128,128,.25)
}

@media only screen and (min-width: 901px) {
  .lunaModalCard {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-bottom:32px;
  margin-bottom:32px
}


}

@media only screen and (max-width: 900px) {
  .lunaModalCard {
  padding-bottom:28px;
  margin-bottom:28px
}


}

.lunaModalCard.is-noBorder {
  margin-bottom:0;
  border-bottom:none
}

@media only screen and (min-width: 901px) {
  .lunaModalCard>div[data-modal-width="456"] {
  width:61.9565217391%
}

.lunaModalCard>div[data-modal-width="240"] {
  width:32.6086956522%
}


}

@media only screen and (max-width: 900px) {
  .lunaModalCard_content {
  margin-top:25px
}


}

.lunaModalCard_credit {
  font-size:13px;
  letter-spacing:.08em;
  line-height:180%;
  margin-top:5px;
  color:#727272
}

.lunaModal {
  opacity:0;
  transition:1.8s cubic-bezier(0.19, 1, 0.22, 1);
  transition-delay:0s;
  transform:translateY(-40px)
}

[data-modal-state=visible] .lunaModal {
  opacity:1;
  transition-delay:.5s;
  transform:translateY(0)
}

.lunaProduct {
  position:relative
}

@media only screen and (min-width: 901px) {
  .lunaProduct {
  height:750px
}


}

@media only screen and (max-width: 900px) {
  .lunaProduct {
  height:840px
}


}

.lunaProduct_background {
  position:absolute;
  z-index:0;
  left:0;
  top:0;
  width:100%;
  height:100%
}

.lunaProduct_background picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.lunaProduct_background picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.lunaProduct_wrap {
  position:relative;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .lunaProduct_wrap {
  padding-top:180px;
  max-width:920px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .lunaProduct_wrap {
  padding-left:18.0555555556%;
  padding-right:18.0555555556%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaProduct_wrap {
  padding-top:72px
}


}

.lunaProduct_content {
  width:fit-content
}

@media only screen and (max-width: 900px) {
  .lunaProduct_content {
  margin-left:12.3076923077vw
}


}

.lunaProduct_headline span {
  display:block
}

.lunaProduct_headline span.is-ja {
  font-size:11px;
  letter-spacing:.08em
}

.lunaProduct_headline span.is-en {
  margin-top:19px
}

.lunaProduct_headline span.is-en svg {
  display:block;
  fill:#3d3d3d;
  width:94px;
  height:31px
}

.lunaProduct_copy {
  margin-top:63px
}

@media only screen and (max-width: 900px) {
  .lunaProduct_copy {
  margin-top:26px
}


}

.lunaProduct_copy p {
  font-size:18px;
  line-height:160%;
  letter-spacing:.3em;
  font-family:"shippori-antique-b1",sans-serif
}

.lunaProduct_body {
  margin-top:26px
}

@media only screen and (max-width: 900px) {
  .lunaProduct_body {
  margin-top:17px
}


}

.lunaProduct_body p {
  font-size:13px;
  line-height:200%;
  letter-spacing:.14em
}

@media only screen and (max-width: 900px) {
  .lunaProduct_body p {
  line-height:170%
}


}

.lunaProduct_body p+p {
  margin-top:26px
}

@media only screen and (max-width: 900px) {
  .lunaProduct_body p+p {
  margin-top:14px
}


}

.lunaProduct_content {
  -webkit-mask-image:linear-gradient(270deg, transparent 35%, #000 60%, #000);
  mask-image:linear-gradient(270deg, transparent 35%, #000 60%, #000);
  -webkit-mask-position:110% 0;
  mask-position:110% 0;
  -webkit-mask-size:250% 100%;
  mask-size:250% 100%;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  transition:opacity 4.4s,-webkit-mask-position 4.9s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition:opacity 4.4s,mask-position 4.9s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  transition:opacity 4.4s,mask-position 4.9s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s,-webkit-mask-position 4.9s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
  will-change:mask-position,opacity
}

.inView .lunaProduct_content,.lunaProduct_content.inView {
  -webkit-mask-position:0 0;
  mask-position:0 0
}

@media only screen and (max-width: 900px) {
  .lunaSafety {
  border-top:1px solid rgba(128,128,128,.25)
}


}

.lunaSafety_wrap {
  text-align:center;
  padding:72px 0 90px
}

@media only screen and (max-width: 900px) {
  .lunaSafety_wrap {
  padding-top:60px;
  padding-bottom:60px
}


}

.lunaSafety_logo {
  width:122px;
  margin-left:auto;
  margin-right:auto
}

@media only screen and (max-width: 900px) {
  .lunaSafety_logo {
  width:90px
}


}

.lunaSafety_content {
  margin-top:5px
}

.lunaSafety_title {
  font-size:22px;
  letter-spacing:.12em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .lunaSafety_title {
  font-size:18px
}


}

.lunaSafety_body {
  margin-top:5px
}

.lunaSafety_body p {
  font-size:13px;
  letter-spacing:.08em;
  line-height:170%;
  color:#727272
}

.lunaUse_hero {
  height:584px;
  position:relative;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .lunaUse_hero {
  height:340px
}


}

.lunaUse_hero>div {
  width:100%;
  height:100%;
  position:absolute;
  left:0;
  top:0
}

.lunaUse_hero>div>picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.lunaUse_hero>div>picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.lunaUse_wrap {
  max-width:1296px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaUse_wrap {
  padding-left:5%;
  padding-right:5%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaUse_wrap {
  width:91.7948717949vw;
  margin-left:auto;
  margin-right:auto
}


}

.lunaUse_main {
  border-radius:4px;
  overflow:hidden;
  background-color:#f9f6f2;
  position:relative;
  z-index:2
}

@media only screen and (min-width: 901px) {
  .lunaUse_main {
  margin-top:-40px;
  display:flex
}


}

@media only screen and (max-width: 900px) {
  .lunaUse_main {
  margin-top:-25px
}


}

@media only screen and (min-width: 901px) {
  .lunaUse_content {
  width:57.5617283951%;
  padding:77px 5% 80px 7.2%
}


}

@media only screen and (max-width: 900px) {
  .lunaUse_content {
  padding:43px 8.8% 48px
}


}

.lunaUse_title span {
  font-size:22px;
  letter-spacing:.18em;
  font-weight:500
}

@media only screen and (max-width: 900px) {
  .lunaUse_title span {
  font-size:18px
}


}

.lunaUse_list {
  margin-top:57px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between
}

@media only screen and (max-width: 900px) {
  .lunaUse_list {
  margin-top:30px
}


}

.lunaUse_image {
  width:14.2857142857%;
  margin-bottom:16px
}

@media only screen and (max-width: 900px) {
  .lunaUse_image {
  width:30.612244898%;
  margin-bottom:12px
}


}

.lunaUse_image>div {
  height:45px
}

@media only screen and (max-width: 900px) {
  .lunaUse_image>div {
  height:51px
}


}

.lunaUse_body {
  width:81.25%;
  margin-bottom:16px
}

@media only screen and (max-width: 900px) {
  .lunaUse_body {
  width:65.306122449%;
  margin-bottom:12px
}


}

.lunaUse_body p {
  font-size:15px;
  line-height:170%;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .lunaUse_body p {
  font-size:13px
}


}

.lunaUse_link {
  margin-top:38px;
  outline:none;
  appearance:none;
  border:none;
  outline:none;
  text-align:left;
  cursor:pointer;
  background-color:transparent;
  position:relative;
  padding:0
}

@media only screen and (max-width: 900px) {
  .lunaUse_link {
  margin-top:14px
}


}

.lunaUse_link::before {
  content:"";
  background-color:#917a64;
  width:100%;
  height:1px;
  position:absolute;
  left:0;
  bottom:0px;
  display:block
}

.lunaUse_link>div {
  display:flex;
  align-items:center
}

.lunaUse_link span {
  font-size:13px;
  letter-spacing:.08em;
  color:#917a64;
  display:block;
  margin-right:10px;
  font-family:fot-cezanne-pron,sans-serif;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.12em;
  font-feature-settings:"auto";
  letter-spacing:.02em
}

.lunaUse_link svg {
  display:block
}

@media only screen and (min-width: 901px) {
  .lunaUse_video {
  width:42.4382716049%
}


}

@media only screen and (max-width: 900px) {
  .lunaUse_video {
  aspect-ratio:550/310;
  width:100%
}


}

.lunaUse_video>button {
  position:relative;
  outline:none;
  appearance:none;
  border:none;
  outline:none;
  cursor:pointer;
  background-color:transparent;
  padding:0;
  display:block
}

@media only screen and (max-width: 900px) {
  .lunaUse_video>button {
  width:100%;
  height:100%
}


}

.lunaUse_video>button>svg {
  display:block;
  width:90px;
  height:90px;
  position:absolute;
  z-index:2;
  left:calc(50% - 45px);
  top:calc(50% - 45px)
}

@media only screen and (max-width: 900px) {
  .lunaUse_video>button>svg {
  width:64px;
  height:64px;
  left:calc(50% - 32px);
  top:calc(50% - 32px)
}


}

.lunaUse_link::before {
  transform:scale(1, 1);
  transform-origin:left top;
  transition:transform 1.2s;
  transition-timing-function:cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (min-width: 901px) {
  .lunaUse_link:hover::before {
  transform-origin:right top;
  transform:scale(0, 1)
}


}

.lunaUse_video button {
  overflow:hidden
}

.lunaUse_video button video,.lunaUse_video button>div {
  transition:1.6s cubic-bezier(0.19, 1, 0.22, 1)
}

.lunaUse_video button:hover video,.lunaUse_video button:hover>div {
  transform:scale(1.06)
}

.lunaVoice {
  background:linear-gradient(167deg, #DAD0C3 -0.18%, #ECE2D7 97.05%)
}

.lunaVoice_wrap {
  padding:82px 0 90px;
  overflow:hidden
}

@media only screen and (max-width: 900px) {
  .lunaVoice_wrap {
  padding:50px 0
}


}

.lunaVoice_headline {
  max-width:1110px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .lunaVoice_headline {
  padding-left:11.4583333333%;
  padding-right:11.4583333333%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .lunaVoice_headline {
  padding-left:12.3%
}


}

.lunaVoice_headline span {
  font-size:22px;
  line-height:170%;
  letter-spacing:.18em;
  font-weight:bold
}

@media only screen and (max-width: 900px) {
  .lunaVoice_headline span {
  font-size:18px
}


}

.lunaVoice_carousel {
  margin-top:44px
}

@media only screen and (max-width: 900px) {
  .lunaVoice_carousel {
  margin-top:25px
}


}

.lunaVoice_carousel .splide {
  visibility:visible
}

.lunaVoice_carousel .splide__track {
  overflow:visible
}

.lunaVoiceCard {
  width:307px
}

.lunaVoiceCard:nth-child(odd) {
  margin-top:20px
}

.lunaVoiceCard_wrap {
  background-color:#f9f6f2;
  border-radius:6px;
  padding:26px 7.7% 0;
  height:240px
}

.lunaVoiceCard_list {
  display:flex;
  flex-wrap:wrap
}

.lunaVoiceCard_list dt,.lunaVoiceCard_list dd {
  border-bottom:1px solid rgba(128,128,128,.25);
  padding-bottom:8px;
  margin-bottom:10px;
  font-size:13px;
  line-height:180%;
  letter-spacing:.08em
}

.lunaVoiceCard_list dt {
  width:80px;
  color:#727272
}

.lunaVoiceCard_list dd {
  width:calc(100% - 80px)
}

.lunaVoiceCard_body {
  margin-top:10px
}

.lunaVoiceCard_body p {
  font-size:13px;
  line-height:160%;
  letter-spacing:.08em
}

.lunaVoiceCard_name {
  margin-top:10px;
  font-size:13px;
  letter-spacing:.08em;
  line-height:180%;
  color:#727272
}

.lunaVoiceCard {
  transform:translateY(40px);
  opacity:0;
  transition:1.6s cubic-bezier(0.19, 1, 0.22, 1);
  will-change:transform,opacity
}

.inview .lunaVoiceCard {
  transform:none;
  opacity:1
}

.lunaVoiceCard:nth-child(1) {
  transition-delay:0s
}

.lunaVoiceCard:nth-child(2) {
  transition-delay:0.04s
}

.lunaVoiceCard:nth-child(3) {
  transition-delay:0.08s
}

.lunaVoiceCard:nth-child(4) {
  transition-delay:0.12s
}

.lunaVoiceCard:nth-child(5) {
  transition-delay:0.16s
}

.lunaVoiceCard:nth-child(6) {
  transition-delay:0.2s
}

.lunaVoiceCard:nth-child(7) {
  transition-delay:0.24s
}

.lunaVoiceCard:nth-child(8) {
  transition-delay:0.28s
}

.lunaVoiceCard:nth-child(9) {
  transition-delay:0.32s
}

.lunaVoiceCard:nth-child(10) {
  transition-delay:0.36s
}

.lunaVoiceCard:nth-child(11) {
  transition-delay:0.4s
}

.lunaVoiceCard:nth-child(12) {
  transition-delay:0.44s
}

.lunaVoiceCard:nth-child(13) {
  transition-delay:0.48s
}

.lunaVoiceCard:nth-child(14) {
  transition-delay:0.52s
}

.lunaVoiceCard:nth-child(15) {
  transition-delay:0.56s
}

.lunaVoiceCard:nth-child(16) {
  transition-delay:0.6s
}

.lunaVoiceCard:nth-child(17) {
  transition-delay:0.64s
}

.lunaVoiceCard:nth-child(18) {
  transition-delay:0.68s
}

.lunaVoiceCard:nth-child(19) {
  transition-delay:0.72s
}

.lunaVoiceCard:nth-child(20) {
  transition-delay:0.76s
}

.lunaVoiceCard:nth-child(21) {
  transition-delay:0.8s
}

.lunaVoiceCard:nth-child(22) {
  transition-delay:0.84s
}

.lunaVoiceCard:nth-child(23) {
  transition-delay:0.88s
}

.lunaVoiceCard:nth-child(24) {
  transition-delay:0.92s
}

.lunaVoiceCard:nth-child(25) {
  transition-delay:0.96s
}

.lunaVoiceCard:nth-child(26) {
  transition-delay:1s
}

.lunaVoiceCard:nth-child(27) {
  transition-delay:1.04s
}

.lunaVoiceCard:nth-child(28) {
  transition-delay:1.08s
}

.lunaVoiceCard:nth-child(29) {
  transition-delay:1.12s
}

.lunaVoiceCard:nth-child(30) {
  transition-delay:1.16s
}

.lunaVoiceCard:nth-child(31) {
  transition-delay:1.2s
}

.rinAnytime {
  perspective:1500px
}

.rinAnytime>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .rinAnytime>* {
  opacity:1;
  transform:none
}

.rinAnytime.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (min-width: 901px) {
  .rinAnytime {
  margin-top:128px;
  display:flex;
  justify-content:space-between;
  flex-direction:row-reverse;
  align-items:center;
  max-width:1044px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .rinAnytime {
  padding-left:13.75%;
  padding-right:13.75%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .rinAnytime {
  margin-top:64px
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .rinAnytime {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .rinAnytime_content {
  width:40.2298850575%
}


}

.rinAnytime_title {
  font-size:28px;
  letter-spacing:.08em;
  line-height:150%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .rinAnytime_title {
  font-size:24px
}


}

.rinAnytime_body {
  margin-top:20px
}

.rinAnytime_body p {
  font-size:13px;
  letter-spacing:.12em;
  line-height:180%
}

@media only screen and (min-width: 901px) {
  .rinAnytime_image {
  width:51.724137931%
}


}

@media only screen and (max-width: 900px) {
  .rinAnytime_image {
  margin-top:30px
}


}

.rinAnytime_image img {
  image-rendering:auto
}

.rinBfs {
  position:relative;
  overflow:hidden;
  border-radius:4px;
  background-color:#e7e8ed
}

@media only screen and (min-width: 901px) {
  .rinBfs {
  display:flex;
  align-items:center;
  margin-top:128px;
  height:537px;
  max-width:1212px;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px)and (min-width: 902px) and (max-width: 1439px) {
  .rinBfs {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .rinBfs {
  width:91.7948717949vw;
  margin:64px auto 0;
  padding-bottom:64px
}


}

@media only screen and (min-width: 901px) {
  .rinBfs_image {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.rinBfs_image img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}


}

.rinBfs_content {
  position:relative;
  z-index:1
}

@media only screen and (min-width: 901px) {
  .rinBfs_content {
  padding-left:55.5%
}


}

@media only screen and (max-width: 900px) {
  .rinBfs_content {
  width:78.8%;
  margin:-62px auto 0
}


}

.rinBfs_label {
  font-size:20px;
  letter-spacing:.08em;
  line-height:180%;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .rinBfs_label {
  font-size:16px
}


}

.rinBfs_title {
  font-size:32px;
  letter-spacing:.08em;
  line-height:150%;
  margin-top:20px;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .rinBfs_title {
  font-size:24px;
  margin-top:13px
}


}

.rinBfs_body {
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .rinBfs_body {
  margin-top:15px
}


}

.rinBfs_body p {
  font-size:15px;
  letter-spacing:.1em;
  line-height:180%
}

@media only screen and (max-width: 900px) {
  .rinBfs_body p {
  font-size:13px
}


}

.rinBfs .buttonFill {
  margin-top:30px
}

.rinBfs .buttonFill a {
  width:230px
}

@media only screen and (max-width: 900px) {
  .rinBfs .buttonFill a {
  width:100%
}


}

.rinCare {
  margin-top:128px;
  background-color:#f8f8f3;
  padding:118px 0 128px;
  perspective:1500px
}

.rinCare>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .rinCare>* {
  opacity:1;
  transform:none
}

.rinCare.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (max-width: 900px) {
  .rinCare {
  margin-top:80px;
  padding:72px 0 80px
}


}

.rinCare_wrap {
  max-width:1044px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .rinCare_wrap {
  padding-left:13.75%;
  padding-right:13.75%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px)and (max-width: 900px) {
  .rinCare_wrap {
  width:84%;
  margin-left:auto;
  margin-right:auto
}


}

@media only screen and (min-width: 901px) {
  .rinCare_head {
  display:flex;
  justify-content:space-between;
  align-items:flex-end
}


}

.rinCare_title {
  letter-spacing:.08em;
  line-height:150%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (min-width: 901px) {
  .rinCare_title {
  width:40.1340996169%;
  font-size:28px
}


}

@media only screen and (max-width: 900px) {
  .rinCare_title {
  font-size:24px
}


}

@media only screen and (min-width: 901px) {
  .rinCare_body {
  width:59.8659003831%
}


}

@media only screen and (max-width: 900px) {
  .rinCare_body {
  margin-top:15px
}


}

.rinCare_body p {
  font-size:13px;
  letter-spacing:.12em;
  line-height:180%
}

.rinCare_image {
  margin-top:54px
}

@media only screen and (max-width: 900px) {
  .rinCare_image {
  margin-top:32px
}


}

.rinMethod {
  position:relative;
  margin-top:256px;
  perspective:1500px
}

.rinMethod>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .rinMethod>* {
  opacity:1;
  transform:none
}

.rinMethod.inView>* {
  opacity:1;
  transform:none
}

@media only screen and (max-width: 900px) {
  .rinMethod {
  margin-top:160px
}


}

.rinMethod_image {
  width:570px;
  position:absolute;
  z-index:2;
  right:0;
  top:-128px
}

@media only screen and (max-width: 900px) {
  .rinMethod_image {
  top:-80px;
  width:305px
}


}

.rinMethod_image>div {
  overflow:hidden;
  border-radius:4px 0 0 4px
}

.rinMethod_wrap {
  width:86.25%;
  background-color:#f8f8f3;
  border-radius:0 4px 4px 0;
  padding:115px 6% 130px 13.7%
}

@media only screen and (max-width: 900px) {
  .rinMethod_wrap {
  padding:276px 6% 72px 9.1%;
  width:90.65%
}


}

.rinMethodMovie {
  border-top:1px solid #ccc;
  padding-top:83px;
  margin-top:100px
}

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


}

@media only screen and (max-width: 900px) {
  .rinMethodMovie {
  padding-top:60px;
  margin-top:67px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodMovie_column:nth-child(1) {
  width:46.6666666667%
}

.rinMethodMovie_column:nth-child(2) {
  width:47.5%
}


}

.rinMethodMovie_title {
  font-size:32px;
  letter-spacing:.08em;
  line-height:150%;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .rinMethodMovie_title {
  font-size:24px
}


}

.rinMethodMovie_lead {
  font-size:15px;
  letter-spacing:.1em;
  line-height:180%;
  margin-top:20px
}

@media only screen and (max-width: 900px) {
  .rinMethodMovie_lead {
  font-size:13px;
  margin-top:8px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodMovie_list {
  display:flex;
  justify-content:space-between;
  margin-top:5px
}


}

@media only screen and (max-width: 900px) {
  .rinMethodMovie_list {
  margin-top:25px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodMovie_list ul {
  width:50%
}


}

.rinMethodMovie_list ul li {
  display:flex;
  align-items:center;
  position:relative;
  padding-left:18px
}

@media only screen and (max-width: 900px) {
  .rinMethodMovie_list ul li {
  margin-bottom:1px
}


}

.rinMethodMovie_list ul li::before {
  left:2px;
  top:11px;
  width:4px;
  height:4px;
  transform:rotate(45deg);
  border:1px solid #1a1a1a;
  content:"";
  display:block;
  position:absolute
}

.rinMethodMovie_list ul li span {
  font-size:15px;
  letter-spacing:.1em;
  line-height:180%;
  display:block
}

@media only screen and (max-width: 900px) {
  .rinMethodMovie_list ul li span {
  font-size:14px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodMovie_button {
  display:flex;
  justify-content:flex-end
}


}

.rinMethodMovie .textLink {
  margin-top:45px
}

@media only screen and (max-width: 900px) {
  .rinMethodMovie .textLink {
  margin-top:26px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodUse {
  width:48%
}


}

.rinMethodUse_title {
  font-size:32px;
  letter-spacing:.08em;
  font-family:fot-tsukuaoldmin-pr6n,sans-serif;
  font-weight:300;
  font-style:normal;
  font-feature-settings:"palt";
  letter-spacing:.08em;
  -webkit-font-smoothing:antialiased
}

@media only screen and (max-width: 900px) {
  .rinMethodUse_title {
  font-size:24px
}


}

.rinMethodUse .textLink {
  margin-top:48px
}

@media only screen and (min-width: 901px) {
  .rinMethodUseCards {
  margin-top:50px
}


}

@media only screen and (max-width: 900px) {
  .rinMethodUseCards {
  margin-top:28px
}


}

.rinMethodUseCard {
  display:flex;
  justify-content:space-between;
  margin-bottom:16px
}

@media only screen and (max-width: 900px) {
  .rinMethodUseCard {
  margin-bottom:22px
}


}

@media only screen and (min-width: 901px) {
  .rinMethodUseCard_image {
  width:26.3157894737%
}


}

@media only screen and (max-width: 900px) {
  .rinMethodUseCard_image {
  width:35.4609929078%
}


}

@media only screen and (min-width: 901px) {
  .rinMethodUseCard_content {
  width:68.4210526316%;
  padding-top:5px
}


}

@media only screen and (max-width: 900px) {
  .rinMethodUseCard_content {
  width:57.4468085106%
}


}

.rinMethodUseCard_volume {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .rinMethodUseCard_body {
  margin-top:5px
}


}

@media only screen and (max-width: 900px) {
  .rinMethodUseCard_body {
  margin-top:6px
}


}

.rinMethodUseCard_body p {
  font-size:13px;
  line-height:180%;
  letter-spacing:.12em
}

.rinMovie {
  margin-top:128px;
  max-width:1044px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .rinMovie {
  padding-left:13.75%;
  padding-right:13.75%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .rinMovie {
  margin-top:64px;
  width:91.7948717949vw
}


}

.rinMovie_wrap {
  background-color:#f7f7f7;
  border-radius:4px
}

@media only screen and (min-width: 901px) {
  .rinMovie_wrap {
  padding:85px 8%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-direction:row-reverse
}


}

@media only screen and (max-width: 900px) {
  .rinMovie_wrap {
  padding:24px 5% 60px
}


}

@media only screen and (min-width: 901px) {
  .rinMovie_thumbnail {
  width:52.1739130435%
}


}

.rinMovie_image {
  display:block;
  position:relative
}

.rinMovie_image>div {
  overflow:hidden;
  border-radius:4px
}

.rinMovie_image>div>img {
  transition:1s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.rinMovie_image svg {
  display:block;
  position:absolute;
  z-index:2;
  left:calc(50% - 20px);
  top:calc(50% - 20px)
}

@media only screen and (max-width: 900px) {
  .rinMovie_image svg {
  left:calc(50% - 14px);
  top:calc(50% - 14px);
  width:28px;
  height:28px
}


}

.rinMovie_image[href="#"]:hover>div img {
  transform:scale(1.08)
}

@media only screen and (min-width: 901px) {
  .rinMovie_content {
  width:43.4782608696%
}


}

@media only screen and (max-width: 900px) {
  .rinMovie_content {
  margin-top:38px;
  padding-left:6.4%;
  padding-right:6.4%
}


}

.rinMovie_title {
  font-size:22px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (max-width: 900px) {
  .rinMovie_title {
  font-size:20px
}


}

.rinMovie_body {
  margin-top:40px
}

@media only screen and (max-width: 900px) {
  .rinMovie_body {
  margin-top:10px
}


}

.rinMovie_body p {
  font-size:18px;
  letter-spacing:.12em;
  line-height:170%
}

@media only screen and (max-width: 900px) {
  .rinMovie_body p {
  font-size:16px;
  line-height:180%
}


}

.rinMovie .textLink {
  margin-top:50px
}

@media only screen and (max-width: 900px) {
  .rinMovie .textLink {
  margin-top:25px
}


}

.rinMovie {
  perspective:1500px
}

.rinMovie>* {
  opacity:0;
  transform:rotateX(-15deg) translateY(35px) scale(0.94);
  transform-origin:center center;
  transition:2.5s cubic-bezier(0.23, 1, 0.32, 1)
}

.inView .rinMovie>* {
  opacity:1;
  transform:none
}

.rinMovie.inView>* {
  opacity:1;
  transform:none
}

.rinWide {
  height:510px;
  position:relative;
  overflow:hidden;
  margin-top:300px;
  background-color:#fff
}

@media only screen and (max-width: 900px) {
  .rinWide {
  height:320px;
  margin-top:180px
}


}

.rinWide>div {
  width:100%;
  height:55vw;
  position:absolute;
  left:0;
  top:calc(50% - 33vw)
}

.rinWide>div>picture {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  z-index:0
}

.rinWide>div>picture img {
  object-fit:cover;
  width:100%;
  height:100%;
  display:block
}

.rinShop {
  margin-top:128px;
  display:flex;
  justify-content:space-between;
  max-width:1212px;
  margin-left:auto;
  margin-right:auto
}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .rinShop {
  padding-left:7.9166666667%;
  padding-right:7.9166666667%;
  max-width:1440px
}


}

@media only screen and (max-width: 900px) {
  .rinShop {
  width:91.7948717949vw;
  margin-top:80px
}


}

@media only screen and (min-width: 901px) {
  .rinShop_side {
  width:27.7227722772%
}


}

@media only screen and (max-width: 900px) {
  .rinShop_side {
  display:none
}


}

.rinShop_title {
  font-size:24px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

@media only screen and (min-width: 901px) {
  .rinShop_content {
  width:72.2772277228%
}


}

.rinShopCard_link {
  background-color:#f7f7f7;
  border-radius:2px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  position:relative;
  transition:.8s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (min-width: 901px) {
  .rinShopCard_link {
  padding:32px 4.2%;
  flex-direction:row-reverse
}


}

@media only screen and (max-width: 900px) {
  .rinShopCard_link {
  padding:48px 7.7%
}


}

@media only screen and (min-width: 901px) {
  .rinShopCard_link:hover {
  background-color:#f0f0f0
}


}

.rinShopCard_image {
  width:27%
}

.rinShopCard_image>div {
  overflow:hidden;
  border-radius:2px
}

.rinShopCard_content {
  width:62.6%
}

@media only screen and (max-width: 900px) {
  .rinShopCard_content {
  width:53.6%
}


}

@media only screen and (max-width: 900px) {
  .rinShopCard_label {
  font-size:12px;
  letter-spacing:.08em;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}


}

.rinShopCard_title {
  font-size:18px;
  letter-spacing:.12em;
  line-height:160%
}

@media only screen and (max-width: 900px) {
  .rinShopCard_title {
  font-size:16px;
  margin-top:13px
}


}

.rinShopCard_body {
  margin-top:10px
}

.rinShopCard_body p {
  font-size:11px;
  line-height:180%;
  letter-spacing:.12em;
  color:gray
}

@media only screen and (max-width: 900px) {
  .rinShopCard_body p {
  font-size:10px
}


}

@media only screen and (max-width: 900px) {
  .rinShopCard_body p br {
  display:none
}


}

.rinShopCard_textLink {
  display:flex;
  align-items:flex-start;
  position:absolute;
  right:1.3%;
  top:12px
}

.rinShopCard_textLink:after {
  content:""
}

@media only screen and (min-width: 901px) {
  .rinShopCard_textLink {
  display:none
}


}

@media only screen and (max-width: 900px) {
  .rinShopCard_textLink {
  right:3.7%;
  top:14px
}


}

.rinShopCard_textLink span {
  font-size:12px;
  font-family:neue-haas-grotesk-display,sans-serif;
  font-weight:500;
  font-style:normal;
  letter-spacing:.08em
}

.rinShopCard_textLink::after {
  padding-left:3px;
  font-size:4px;
  color:gray;
  margin-top:1px
}

/* footer {
  position: relative;
  z-index: 2;
} */

@media screen and (min-width: 901px) {
[data-section=pro2] .aboutProductCard {
    padding-bottom: 20px;
}

[data-section=pro2] .aboutProductCard_image {
    width: 44%;
    margin-top: -4.5%;
    margin-right: 6.6%;
}

[data-section=cream] .aboutProductCard_image {
    width: 30.2%;
    margin-top: -2.4%;
    margin-right: 14.4%;
}

[data-section=mask] .aboutProductCard_image {
    width: 32.8%;
    margin-top: -3.8%;
    margin-right: 20.8%;
}

[data-section=botanical] .aboutProductCard_image {
    width: 21.7%;
    margin-top: -5%;
    margin-right: 17.6%;
}
}

@media screen and (max-width: 900px) {
[data-section=pro2] .aboutProductCard_image {
        padding: 77px 0 0 23px;
        width: 117%;
}

[data-section=cream] .aboutProductCard_image {
    padding: 65px 0 20px 78px;
    width: 99.4%;
}

[data-section=mask] .aboutProductCard_image {
    padding: 68px 0 20px 8px;
    width: 85%;
}

[data-section=botanical] .aboutProductCard_image {
    padding: 63px 0 0 124px;
    width: 91%;
}
}


.brandMovie {
    background-color: #f7f7f7;
    margin-top: 128px;
}

.brandMovie_wrap {
    padding: 127px 0 124px;
    max-width: 1044px;
    margin-left: auto;
    margin-right: auto;
}

.brandMovie_headline {
    font-size: 2.2rem;
    letter-spacing: .08em;
    font-family: neue-haas-grotesk-display,sans-serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: .08em;
}

.brandMovie_body {
    margin-top: 15px;
}

.brandMovie_body p {
    font-size: 1.8rem;
    letter-spacing: .12em;
}

.brandMovieCard_link {
    display: block;
}

.brandMovieCard_thumbnail {
    position: relative;
}

.brandMovieCard_image {
    overflow: hidden;
    border-radius: 4px;
}

.brandMovieCard_image img {
    transition: 2s cubic-bezier(0.19, 1, 0.22, 1);
}

.brandMovieCard_icon {
    position: absolute;
    left: calc(50% - 20px);
    top: calc(50% - 20px);
    z-index: 2;
}

@media only screen and (max-width: 900px) {
  .brandMovie {
    margin-top: 64px;
}

.brandMovie_wrap {
    width: 81.5%;
    padding: 63px 0 20px;
    margin-left: auto;
    margin-right: auto;
}

.brandMovie_headline {
    font-size: 2rem;
}

.brandMovie_body {
    margin-top: 10px;
}

.brandMovie_body p {
    font-size: 1.6rem;
    line-height: 180%;
}

.brandMovie_content {
    margin-top: 23px;
}

.brandMovieCard {
    margin-bottom: 16px;
}

}

@media screen and (min-width: 902px) and (max-width: 1439px) {
  .brandMovie_wrap {
    padding-left: 13.75%;
    padding-right: 13.75%;
    max-width: 1440px;
}
}

@media only screen and (min-width: 901px) {
  .brandMovie_content {
    margin-top: 53px;
    display: flex;
    justify-content: space-between;
}

.brandMovieCard {
    width: 30.8429118774%;
}
}

.tecHero_title[data-family=serif] {
    margin-top: 25px;
    padding-bottom: 10px;
    font-family: fot-tsukuaoldmin-pr6n,sans-serif;
    font-weight: 300;
    font-style: normal;
    font-feature-settings: "palt";
    letter-spacing: .08em;
    -webkit-font-smoothing: antialiased;
    letter-spacing: .08em;
}

.heroBannerCampaign {
    display: flex;
    align-items: center;
    padding-left: 10px;
    width: 240px;
    height: 90px;
    position: absolute;
    z-index: 5;
    left: 2.8%;
    bottom: 70px;
}

.heroBannerCampaign_link {
    display: block;
    transition: .8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.heroBannerCampaign_image {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.heroBannerCampaign_image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}

.heroBannerCampaign_title {
    position: relative;
    z-index: 1;
}

.heroBannerCampaign_title span {
    font-size: 14px;
    color: #ac1111;
    letter-spacing: .08em;
    line-height: 140%;
    display: block;
}

.heroBannerCampaign_title span svg{
    display: inline;
}

@media only screen and (max-width: 900px) {
  .heroBannerCampaign {
      display: none;
  }
}





@media only screen and (max-width: 900px) {
    [data-section=pro2] .homeProducts_copy {
        left: 21.4%;
        bottom: 33.8%;
        width: 272px;
    }
}

@media only screen and (max-width: 900px) {
    [data-section=pro2] .homeProducts_body {
        right: 8.4%;
        bottom: 70px;
    }
}

[data-section=cream] .homeProducts_copy {
  width: 22.2916666667vw
}

@media only screen and (max-width: 900px) {
  [data-section=cream] .homeProducts_copy {
    width: 69.7435897436vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=cream] .homeProducts_copy {
    width: 321px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=cream] .homeProducts_copy {
    left: 86.3%;
    top: 19.8%
  }
}

@media only screen and (max-width: 900px) {
  [data-section=cream] .homeProducts_copy {
    left: 29.2%;
    bottom: 27.8%;
    width: 272px
  }
}

[data-section=mask] .homeProducts_copy {
  left: -28.8%;
  top: 27.5%;
  width: 30vw
}

@media only screen and (max-width: 900px) {
  [data-section=mask] .homeProducts_copy {
    width: 69.7435897436vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=mask] .homeProducts_copy {
    width: 432px
  }
}

@media only screen and (max-width: 900px) {
  [data-section=mask] .homeProducts_copy {
    left: 10.3%;
    bottom: 34%;
    top: auto
  }
}

[data-section=botanical] .homeProducts_copy {
  width: 20.1388888889vw
}

@media only screen and (max-width: 900px) {
  [data-section=botanical] .homeProducts_copy {
    width: 69.7435897436vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=botanical] .homeProducts_copy {
    width: 290px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=botanical] .homeProducts_copy {
    left: 86.3%;
    top: 38.6%
  }
}

@media only screen and (max-width: 900px) {
  [data-section=botanical] .homeProducts_copy {
    left: 29%;
    bottom: 28%;
    width: 272px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=cream] .homeProducts_body {
    left: 86.7%;
    top: 50.6%;
    width: 272px
  }
}

@media only screen and (max-width: 900px) {
  [data-section=cream] .homeProducts_body {
    right: 8.4%;
    bottom: 70px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=mask] .homeProducts_body {
    left: -28.5%;
    top: 55.9%;
    width: 328px
  }
}

@media only screen and (max-width: 900px) {
  [data-section=mask] .homeProducts_body {
    left: 10.2%;
    bottom: 21.3%
  }
}

@media only screen and (min-width: 901px) {
  [data-section=botanical] .homeProducts_body {
    left: 86.7%;
    top: 50.6%;
    width: 272px
  }
}

@media only screen and (max-width: 900px) {
  [data-section=botanical] .homeProducts_body {
    right: 8.4%;
    bottom: 72px
  }
}

[data-section=cream] .homeProductsCard_image {
  width: 23.3333333333vw
}

@media only screen and (max-width: 900px) {
  [data-section=cream] .homeProductsCard_image {
    width: 61.5384615385vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=cream] .homeProductsCard_image {
    width: 336px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=cream] .homeProductsCard_image {
    margin-right: 16%
  }
}

@media only screen and (max-width: 900px) {
  [data-section=cream] .homeProductsCard_image {
    padding-top: 56px;
    margin-left: 20.7%
  }
}

[data-section=mask] .homeProductsCard_image {
  width: 24.1666666667vw
}

@media only screen and (max-width: 900px) {
  [data-section=mask] .homeProductsCard_image {
    width: 66.6666666667vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=mask] .homeProductsCard_image {
    width: 348px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=mask] .homeProductsCard_image {
    margin-right: 18%
  }
}

@media only screen and (max-width: 900px) {
  [data-section=mask] .homeProductsCard_image {
    padding-top: 62px;
    margin-bottom: 45px;
    margin-left: 7%
  }
}

[data-section=botanical] .homeProductsCard_image {
  width: 15.9722222222vw
}

@media only screen and (max-width: 900px) {
  [data-section=botanical] .homeProductsCard_image {
    width: 43.5897435897vw
  }
}

@media only screen and (min-width: 1440px) {
  [data-section=botanical] .homeProductsCard_image {
    width: 230px
  }
}

@media only screen and (min-width: 901px) {
  [data-section=botanical] .homeProductsCard_image {
    margin-right: 19%;
    margin-top: 2%
  }
}

@media only screen and (max-width: 900px) {
  [data-section=botanical] .homeProductsCard_image {
    padding-top: 56px;
    margin-left: 39.7%
  }
}

[data-section=pro2] .homeProductsCard_image {
  width:40.1388888889vw
}

@media only screen and (max-width: 900px) {
  [data-section=pro2] .homeProductsCard_image {
  width:82.0512820513vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=pro2] .homeProductsCard_image {
  width:578px
}


}

@media only screen and (min-width: 901px) {
  [data-section=pro2] .homeProductsCard_image {
  padding-top:58px;
  margin-right:9.2%
}


}

@media only screen and (max-width: 900px) {
  [data-section=pro2] .homeProductsCard_image {
  padding-top:63px
}


}


[data-section=pro2] .homeProductsCard_image {
  width:34.5138888889vw
}

@media only screen and (max-width: 900px) {
  [data-section=pro2] .homeProductsCard_image {
  width:82.0512820513vw
}


}

@media only screen and (min-width: 1440px) {
  [data-section=pro2] .homeProductsCard_image {
  width:578px
}


}

@media only screen and (min-width: 901px) {
  [data-section=pro2] .homeProductsCard_image {
  margin-right:4.5%
}


}

@media only screen and (max-width: 900px) {
  [data-section=pro2] .homeProductsCard_image {
  padding-top:63px
}


}
@media only screen and (min-width: 901px) {
  [data-section=pro2] .aboutProductCard_image {
        width: 44%;
        margin-top: -4.5%;
        margin-right: 6.6%;
}


}

@media only screen and (min-width: 901px) {
    [data-section=pro2] .homeProducts_copy {
        left: 86.3%;
        top: 25.5%;
    }
}

[data-section=pro2] .homeProducts_copy {
    width: 26.8055555556vw;
}

/* リフトブラシプロのバナー画像サイズ修正 */

@media only screen and (min-width: 901px){
  .template-page-lift-brush_pro .proBanner_product.proBanner_product--img-position{
      right: 10.6%;
      bottom: -20px;
      width: 261px;
  }
}

/** brush pro2 banner
/**************************************/
.heroBannerPro2 {
  position: absolute;
  z-index: 5;
  left: 2.8%;
}
@media only screen and (min-width: 901px) {
  .heroBannerPro2 {
    bottom: 70px;
  }
}
@media only screen and (max-width: 900px) {
  .heroBannerPro2 {
    display: none;
  }
}
.heroBannerPro2_link {
  width: 260px;
  height: 98px;
  display: flex;
  align-items: center;
  padding-left: 18px;
  transition: 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media only screen and (min-width: 901px) {
  .heroBannerPro2_link:hover {
    opacity: 0.7;
  }
}
.heroBannerPro2_image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.heroBannerPro2_image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.heroBannerPro2_title {
  position: relative;
  z-index: 1;
  margin-top: 10px;
}
.heroBannerPro2_title span {
  display: block;
}
.heroBannerPro2_title span:nth-child(1) {
  font-size: 10px;
  color: #1A1A1A;
  letter-spacing: 0.08em;
}
.heroBannerPro2_title span:nth-child(2) {
  font-size: 14px;
  color: #AC1111;
  letter-spacing: 0.08em;
  line-height: 140%;
  display: block;
  margin-top: 5px;
}
.heroBannerPro2_title span:nth-child(2) i {
  width: 6px;
  height: 6px;
  transform: translateY(-2px);
  display: inline-block;
}

.heroBannerPro2 {
  transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1) 1s;
  opacity: 0;
}
[data-loaded="1"] .heroBannerPro2 {
  opacity: 1;
}


@media only screen and (max-width: 900px) {
    .featureSpec_button {
        display: flex;
        justify-content: space-between;
        margin-top: 25px;
    }
}

@media only screen and (max-width: 900px) {
    .featureSpec_button .buttonFrame {
        width: 49.5%;
    }
}

.buttonFrame_link {
    border: 1px solid #ccc;
    border-radius: 4px;
    height: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 5%;
}

.buttonFrame_title {
    font-size: 12px;
    letter-spacing: .08em;
    line-height: 1em;
}

.buttonFrame[data-icon=arrowRight] .buttonFrame_link:after {
      font-family: "iconfont";
    font-size: 11px;
    color: gray;
    transform: rotate(-45deg);
    display: block;
}

.buttonFrame[data-icon=arrowRight] .buttonFrame_link:after {
    content: "";
}

@media only screen and (min-width: 901px) {
    .featureSpec_button {
        margin-top: 43px;
        width: 67%;
    }
}

@media only screen and (min-width: 901px) {
    .featureSpec_button .buttonFrame+.buttonFrame {
        margin-top: 8px;
    }
}


  /* tec-scene-menuのピン留めを無効化 */
  [data-js="tec-scene-menu"] {
    position: static !important;
    top: auto !important;
    transform: none !important;
  }
  
  /* ScrollTriggerが追加する.pin-spacerも無効化 */
  .pin-spacer {
    height: auto !important;
    //padding-bottom: 0 !important;
  }

  .traitBackground_banner {
    position: relative;
    z-index: 2;
    display: block;
    pointer-events: auto;
}
[data-current-section="0"] .traitBackground_banner>div {
    opacity: 1;
}
.traitBackground_banner>div {
    opacity: 0;
    transition: 1s cubic-bezier(0.19, 1, 0.22, 1);
}
.traitBackground_content img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    display: block;
}
@media only screen and (min-width: 901px) {
    .traitBackground_banner {
        display: none;
    }
}