﻿@charset "UTF-8";

/*//////////////////////////////////////////////////

to/one WEB STORE　|　HOLIDAY COLLECTION 2025

//////////////////////////////////////////////////*/

/* ========================================================
                      * Layout style *
========================================================= */


html {
  font-size: calc(10 * (100vw/600));
}

@media (min-width: 769px) {
  html {
    font-size: calc(10 * (100vw/1600));
  }
}

@media (min-width: 1600px) {
  html {
    font-size: 62.5%
  }
}

footer {
  position: relative;
  z-index: 10;
  margin-top: 0 !important;
}

.share-txt {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.share-txt span {
  margin-top: calc(40 * (100vw / 750));
  margin-bottom: calc(40* (100vw / 750));
}

span.result {
  display: none !important;
}


/* ========================================================
                      * root *
========================================================= */
:root {
  --color1: #fff;
  --color2: #F3A6B9;
  --color3: #FEF7FA;
  --color4: #FEFAFC;
  --font_ja: "helvetica-neue-lt-pro", "hiragino-kaku-gothic-pron", sans-serif;
  --font_en: "futura-pt", sans-serif;
}

#Wrap {
  width: 100%;
}

/* ========================================================
                      * lp_contents *
========================================================= */

.lp_contents * {
  box-sizing: border-box;
  font-feature-settings: "palt";
  line-height: 1;
  letter-spacing: .1em;
  font-weight: 400;
  text-align: center;
}

.lp_contents {
  width: 100%;
  max-width: 60rem;
  height: 100%;
  font-family: var(--font_ja);
  overflow-x: clip;
  color: var(--color2);
}

@media (min-width: 769px) {
  .lp_contents {
    position: relative;
    width: 100%;
    max-width: 100vw;
    height: 100%;
  }
}

.lp_contents .pcOnly {
  display: none;
}

.lp_contents img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.lp_contents a {
  width: 100%;
  height: 100%;
  display: inline-block;
}

.lp_contents h1,
.lp_contents h2,
.lp_contents h3,
.lp_contents h4,
.lp_contents h5 {
  font-weight: 400;
}

.lp_contents_inner {
  position: relative;
  z-index: 1;
  overflow: clip;
  background: var(--color3);
}

.lp_contents a,
.lp_contents button {
  -webkit-tap-highlight-color: transparent;
  /* iOS Safari用 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  /* Android Chrome用 */
}


/* ========================================================
                      * 共通設定  *
========================================================= */

.lp_contents .sp_only {
  display: none;
}

@media (max-width: 768px) {
  .lp_contents .sp_only {
    display: block;
  }
}

.lp_contents sup {
  font-size: .8em;
  vertical-align: text-top;
  position: relative;
  top: -0.5em;
}

.lp_contents .btn {
  background: var(--color2);

}

.lp_contents .btn a {
  color: var(--color1);
  font-family: var(--font_en);
  font-weight: 500;
}

.lp_contents .js-fadeIn,
.lp_contents .js-fadeIn-first {
  opacity: 0;
  transition: opacity 1.8s;
}

.lp_contents .js-fadeIn.is-show,
.lp_contents .js-fadeIn-first.is-show {
  opacity: 1;
}

@media (max-width: 768px) {
  .lp_contents .js-fadeIn-first.menu_list {
    opacity: 1;
  }
}


/* ========================================================
                      * PC *
========================================================= */
@media (min-width: 769px) {

  .lp_contents .fixed_area {
    position: relative;
    position: fixed;
    top: 0;
    left: 50%;
    translate: -50% 0;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background: var(--color4);
  }

  .lp_contents .fixed_area .fixed_nav {
    display: grid;
    place-items: center;
    width: calc((100% - 60rem) / 2);
    height: 100vh;
    margin-top: 8rem;
  }

  .fixed_left_inner .logo {
    width: 23rem;
    text-align: center;
  }

  .lp_contents_inner {
    width: 60rem;
    position: relative;
    z-index: 1;
    margin: 0 auto;
    overflow: clip;
  }

}


/* ========================================================
            * fixed_nav fixed_right   *
========================================================= */

.fixed_right .menu_list {}

.fixed_right .menu_list li {
  font-size: 2rem;
  font-family: var(--font_en);
  font-weight: 500;
  color: var(--color2);
}

.fixed_right .menu_list li:not(:first-of-type) {
  margin-top: 3rem;
}

.fixed_right .menu_list .btn_all {
  width: 23rem;
  font-size: 2rem;
  border-radius: 1.9rem;
}

.fixed_right .menu_list .btn_all a {
  font-size: 2rem;
  padding: .9rem 0;
}


/* ========================================================
                      * loading  *
========================================================= */
.loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  transition: all 1s;
  background: var(--color3);
}

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

.loading_inner {
  width: 100vw;
  height: 100svh;
  display: grid;
  place-items: center;
  position: relative;
}

.loading_bg {
  width: calc(750 * 60rem / 750);
  height: calc(420 * 60rem / 750);
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 2.3s;
  transform: translateY(-100%);
}

@media (min-width: 769px) {
  .loading_bg {
    width: 100%;
    height: auto;
  }
}

.loading_bg.is-show {
  transform: translateY(0);
}

.loading_logo {
  width: calc(320 * 60rem / 750);
  margin-top: calc(137 * 60rem / 750);
}

@media (min-width: 769px) {
  .loading_logo {
    width: calc(288 * (100vw/1600));
    margin-top: calc(250 * (100vw/1600));
  }
}

/* ========================================================
                      * sec_mv  *
========================================================= */

.sec_mv {
  background: url("../img/mv_bg.png") no-repeat center top;
  background-size: contain;
  padding-top: calc(340 * 60rem / 750);
}

.sec_mv .ttl_main {
  width: calc(460 * 60rem / 750);
  margin: 0 auto;
}

.sec_mv .ttl_sub {
  font-size: calc(32 * 60rem / 750);
  font-family: var(--font_en);
  font-weight: 500;
  margin-top: calc(75 * 60rem / 750);
}


/* ========================================================
                      * sec_item  *
========================================================= */

.sec_item {
  padding-top: calc(138 * 60rem / 750);
  padding-bottom: calc(160 * 60rem / 750);
}

.sec_item .visual_wrap {
  position: relative;
  height: calc(3000 * 60rem / 750);
}

.sec_item .visual_wrap .visual {
  position: sticky;
  margin: 0 auto;
}

.sec_item .visual_wrap .visual:nth-of-type(1) {
  width: calc(560 * 60rem / 750);
  z-index: 1;
  top: calc(var(--header-height) + calc(162 * 60rem / 750));
  padding-bottom: calc(10 * 60rem / 750);
}

.sec_item .visual_wrap .visual:nth-of-type(2) {
  width: calc(626 * 60rem / 750);
  z-index: 2;
  top: calc(var(--header-height) + calc(140 * 60rem / 750));
  left: calc(61 * 60rem / 750);
}

.sec_item .visual_wrap .visual:nth-of-type(3) {
  width: calc(605 * 60rem / 750);
  z-index: 3;
  top: calc(var(--header-height) + calc(147 * 60rem / 750));
  left: calc(73 * 60rem / 750);
}

.sec_item .release_day {
  margin-top: calc(128 * 60rem / 750);
}

.sec_item .release_day:nth-of-type(2) {
  margin-top: calc(37 * 60rem / 750);
}

.sec_item .release_day .ttl {
  font-size: calc(28 * 60rem / 750);
  font-weight: 700;
  color: var(--color1);
  background: var(--color2);
  border-radius: calc(10 * 60rem / 750);
  width: calc(160 * 60rem / 750);
  margin: 0 auto;
  padding: calc(9 * 60rem / 750) 0;
}

.sec_item .release_day .day {
  color: var(--color2);
  font-size: calc(28 * 60rem / 750);
  margin-top: calc(26 * 60rem / 750);
}

.sec_item .release_day .week {
  font-size: calc(26 * 60rem / 750);
}

.sec_item .release_day .note {
  display: block;
  font-size: calc(20 * 60rem / 750);
  margin-top: calc(34 * 60rem / 750);
}

.sec_item .release_day .note sup {
  vertical-align: sub;
}

.sec_item .item_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(63 * 60rem / 750) calc(40 * 60rem / 750);
  margin-top: calc(97 * 60rem / 750);
}

.sec_item .item_list li {}

.sec_item .item_list li .img {
  width: calc(325 * 60rem / 750);
}

.sec_item .item_list li .name {
  font-size: calc(28 * 60rem / 750);
  font-family: var(--font_en);
  font-weight: 400;
  line-height: 1.25;
  color: var(--color2);
  margin-top: calc(5 * 60rem / 750);
}

.sec_item .btn_all {
  border-radius: calc(37 * 60rem / 750);
  width: calc(460 * 60rem / 750);
  margin: calc(110 * 60rem / 750) auto 0;
}

.sec_item .btn_all a {
  font-size: calc(38 * 60rem / 750);
  padding: calc(18 * 60rem / 750) 0;
}