@charset "UTF-8";
/* CSS Document */
.clearfix:after {
 content: " ";
 height: 0;
 clear: both;
 visibility: hidden;
}

@font-face {
    font-family: 'IBM';
    src: url('../fonts/IBMPlexSansJP-Regular.woff2');
}
@font-face {
    font-family: 'IBM-BLD';
    src: url('../fonts/IBMPlexSansJP-Bold.woff2');
}
@font-face {
    font-family: 'IBM-JP-BLD';
    src: url('../fonts/IBMPlexSansJP-SemiBold.woff2');
}
@font-face {
    font-family: 'IBM-MDI';
    src: url('../fonts/IBMPlexSans-Medium.woff2');
}
@font-face {
    font-family: 'IBM-JP-MDI';
    src: url('../fonts/IBMPlexSansJP-Medium.woff2');
}
@font-face {
    font-family: 'IBM-SEM-BLD';
    src: url('../fonts/IBMPlexSans-SemiBold.woff2');
}
@font-face {
    font-family: 'IBM-SEM-JP-BLD';
    src: url('../fonts/IBMPlexSansJP-SemiBold.woff2');
}
@font-face {
    font-family: 'NOTO';
    src: url('../fonts/NotoSansJP-Regular.otf');
}
@font-face {
    font-family: 'NOTO-MDI';
    src: url('../fonts/NotoSansJP-Medium.otf');
}
@font-face {
    font-family: 'NOTO-BLD';
    src: url('../fonts/NotoSansJP-Bold.otf');
}
@font-face {
    font-family: 'NOTO-SEM-BLD';
    src: url('../fonts/NotoSansJP-Medium.otf');
}
@font-face {
    font-family: 'NOTO-BLK';
    src: url('../fonts/NotoSansJP-Black.otf');
}

/ ＊Hides from IE-mac \＊/
* html .clearfix {height: 1%;}
/* End hide from IE-mac */

    html {
        scroll-behavior: smooth;
    }

    tr {
        display: inline-block;
        vertical-align: top;
        border-color: inherit;
    }

    tbody {
        margin: 0px auto;
        width: 100%;
        display: block;
        vertical-align: middle;
        border-color: inherit;
    }

    h1 {
        display: block;
        font-size: 2em;
        margin-block-start: 0.67em;
        margin-block-end: 0.67em;
        margin-inline-start: 0px;
        margin-inline-end: 0px;
        font-weight: unset;
    }

    h2 {
        font-weight: normal;
    }

    h3 {
        font-weight: normal;
    }

    h4 {
        font-weight: normal;
    }

    h5 {
        font-weight: normal;
    }

    h6 {
        font-weight: normal;
    }

    a {
        text-decoration: none;
    }

    .page-top-btn {
      position: fixed;
      right: 40px;
      bottom: 24px;
      width: 72px;
      height: 72px;
      border: 1px solid #999;
      border-radius: 50%;
      background: #f2f2f2;
      color: #777;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 25px;
      line-height: 1;
      text-decoration: none;
      box-sizing: border-box;
      z-index: 999;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
      transform: translateY(8px);
    }

    .page-top-btn span {
      display: block;
      transform: translateY(-2px);
    }

    .page-top-btn.is-show {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
      transform: translateY(0);
    }

    .page-top-btn:hover {
      background: #333;
      color: #fff;
      border-color: #333;
    }

    @media screen and (max-width: 1100px) {
      .page-top-btn {
        right: 16px;
        bottom: 16px;
        width: 56px;
        height: 56px;
        font-size: 24px;
      }
    }

/*  buy_button  */

.buy-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 42px;
  margin-bottom: 14px;
  border: 1px solid #666;
  border-radius: 9999px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  color: #333;
  background: #fff;
  box-sizing: border-box;
  transition: all 0.25s ease;
}

.buy-btn:hover {
    opacity: 1;
  background: #333;
  color: #fff;
}

.buy-btn:last-child {
  margin-bottom: 0;
}

/*  /buy_button  */

/* =========================================
   SPLIDE
========================================= */
.splide {
  width: 100%;
  position: relative;
  padding-bottom: 72px; /* progress + arrows 用 */
  box-sizing: border-box;
}

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

.splide__list {
  align-items: stretch;
}

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

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

/* 各スライド自身には黒を乗せない */
.splide__slide::after {
  content: none;
}

/* 右側2枚目の位置に固定の黒フィルターを置く */
.splide::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: calc((100% - 0px) / 2);
  height: calc(100% - 72px);
  background: rgba(0, 0, 0, 0.42);
  pointer-events: none;
  z-index: 2;
  transition: none;
}

/* コントロール全体を右下へ */
.slider-controls {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  width: 100%;
  box-sizing: border-box;
}

/* プログレスバー */
.slider-progress {
  width: min(260px, 40%);
  height: 2px;
  background: #ddd;
  position: relative;
  overflow: hidden;
  margin: 0px 40px 0px 0px;
}

.slider-progress-bar {
  width: 0;
  height: 100%;
  background: #333;
  transition: width 0.3s ease;
}

/* 矢印 */
.slider-arrows {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0px 40px 0px 0px;
}

.slider-arrow {
  width: 48px;
  height: 48px;
  border: 1px solid #666;
  border-radius: 50%;
  background: #fff;
  color: #333;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.slider-arrow:hover {
  opacity: 0.7;
}

/* splide */

/*clearfix*/
    .lp-contents-clearfix {
        text-align: center;
        width: 900px;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 80px auto;
        flex-direction: row;
        justify-content: space-between;
        align-content: center;
        align-items: flex-start;
    }
    .lp-contents-clearfix a{
        opacity: 1;
    }
    .lp-contents-clearfix a:hover{
        opacity: 1;
    }
    .lp-contents-clearfix-2 {
        text-align: center;
        width: 100%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 24px auto;
        flex-direction: row;
        align-content: center;
        align-items: center;
        justify-content: center;
    }
    .lp-contents-clearfix-2 a{
        opacity: 1;
    }
    .lp-contents-clearfix-2 a:hover{
        opacity: 0.5;
    }

    .lp-contents-clearfix-3 {
        text-align: center;
        width: 100%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 0px auto;
        flex-direction: row;
        align-content: center;
        align-items: center;
        justify-content: center;
    }
    .lp-contents-clearfix-3 a{
        opacity: 1;
    }
    .lp-contents-clearfix-3 a:hover{
        opacity: 1;
    }
    .lp-contents-clearfix-4 {
        text-align: center;
        width: 948px;
        flex-wrap: wrap;
        display: flex;
        margin: 100px auto 32px auto;
        flex-direction: row;
        align-content: center;
        align-items: flex-start;
        justify-content: center;
        
    }
    .lp-contents-clearfix-4 a{
        opacity: 1;
        transition: all 0.3s ease;
    }
    .lp-contents-clearfix-4 a:hover{
        opacity: 0.5;
    }
.lp-contents-clearfix-5 {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 0;
  box-sizing: border-box;
  margin: 0px 0px 80px 0px;
}

.lp-contents-clearfix-6 {
    margin: auto 0px 16px 0px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    box-sizing: border-box;
}

.lp-contents-clearfix-6-2 {
  margin: auto 0px 0px 0px;
  width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    box-sizing: border-box;
}

.lp-contents-clearfix-6-3 {
    margin: auto 0px 0px 0px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    box-sizing: border-box;
}

    .lp-contents-clearfix-7 {
        text-align: center;
        width: 949px;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 0px auto;
        flex-direction: row;
        align-content: center;
        align-items: center;
        justify-content: space-between;
    }
    .lp-contents-clearfix-7 a{
        opacity: 1;
    }
    .lp-contents-clearfix-7 a:hover{
        opacity: 1;
    }

    .box-img-1 {
        width: 438px;
        margin: 0px 0px 0px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-1 a{
        text-decoration: none;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        text-align: left;
        color: #000;
        overflow-wrap: break-word;
        cursor: default;
    }
    .box-img-1 a:hover{
        text-decoration: none;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        text-align: left;
        color: #000;
        overflow-wrap: break-word;
        cursor: default;
    }
    .box-img-1 img{
        width: 100%;
        margin: 0px auto 0px auto;
        display: block;
    }


    .box-img-2 {
        width: 64px;
        margin: 0px 64px 0px 0px;
        flex-direction: row;
        text-align: left;
    }
    .box-img-2 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-2 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-3 {
        width: 386px;
        margin: 0px 0px 0px 0px;
        flex-direction: row;
        text-align: left;
    }
    .box-img-3 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-3 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-4 {
        width: 87px;
        margin: 0px 24px 48px 24px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-4 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-4 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

.box-img-6 {
  width: 28.2291667vw;   /* 542 / 1920 */
  max-width: 542px;
  min-width: 338.75px;   /* 542 * (1200 / 1920) */
  position: relative;
  box-sizing: border-box;
}
    .box-img-6 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-6 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

.box-img-7 {
  flex: 1 1 auto;
  width: auto;
  box-sizing: border-box;
}
    .box-img-7 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-7 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

.box-img-8 {
  width: 8.3333333vw;    /* 160 / 1920 */
  max-width: 160px;
  min-width: 100px;      /* 160 * (1200 / 1920) */
  margin-left: auto;
  box-sizing: border-box;
}

.box-img-9 {
  width: 69.2708333vw;   /* 1330 / 1920 */
  max-width: 1330px;
  min-width: 831.25px;   /* 1330 * (1200 / 1920) */
  box-sizing: border-box;
  position: relative;
}

    .box-img-10 {
        width: 540px;
        margin: 0px 0px 0px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-10 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-10 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-11 {
        width: 380px;
        margin: 0px 0px 0px 0px;
        flex-direction: row;
        text-align: left;
    }
    .box-img-11 a{
        text-decoration: underline;
        font-family: 'NOTO';
        font-size: 18px;
        line-height: 25px;
        letter-spacing: 0px;
        color: #fff;
    }
    .box-img-11 a:hover{
        text-decoration: none;
        font-family: 'NOTO';
        font-size: 18px;
        line-height: 25px;
        letter-spacing: 0px;
        color: #fff;
    }
    .box-img-11 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-11 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

/*clearfix*/

/*youtube*/
    #movie-section {
        width: 380px;
        text-align: center;
        margin: 0px auto 0px auto;
    }
    #movie-section img{
        width: 100%;
        text-align: center;
        margin: 0px auto 0px auto;
    }

    #movie-section-2 {
        width: 100%;
        text-align: center;
        margin: 0px auto 0px auto;
    }
    #movie-section-2 img{
        width: 100%;
        text-align: center;
        margin: 0px auto 0px auto;
    }
    .tv__movie_2 {
        margin: 0px auto 0px auto;
        width: 100%;
        height: 170px;
        padding-top: 37%;
        position: relative;
    }
    .tv__movie_2 iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: 10px;
    }
    .tv__movie {
        margin: 0px auto 0px auto;
        width: 100%;
        height: auto;
        padding-top: 178%;
        position: relative;
    }
    .tv__movie iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .tv__movie-pink {
        margin: 0px auto 0px auto;
        width: 100%;
        height: auto;
        padding-top: 56%;
        position: relative;
    }
    .tv__movie-pink iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
/*youtube*/

/*img*/
    .title-img-top {
        width: 100%;
        margin: 0px auto 120px auto;
    }
    .title-img-top img {
      width: 100%;
      height: auto;
      display: block;
    }

    .title-img-top-2 {
        width: 87%;
        margin: 0px auto 120px auto;
    }
    .title-img-top-2 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-2 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-3 {
        width: 100%;
        margin: 0px auto 150px auto;
    }
    .title-img-top-3 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-3 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .title-img-top-4 {
        display: block;
        width: 810px;
        margin: 0px auto 120px auto;
    }
    .title-img-top-4 img{
        width: 100%;
        margin: 0px auto 32px auto;
    }
    .title-img-top-4 picture{
        width: 100%;
        margin: 0px auto 32px auto;
    }

    .title-img-top-5 {
        width: 85%;
        margin: 0px auto 20px auto;
    }
/*img*/

/*button*/
    .button {
        padding: 14px 0px;
        margin: 0px auto 0px auto;
        text-align: center;
        width: 100%;
        border: 1px solid #000;
        border-radius: 50px;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0px;
        color: #000;
        transition: all 0.25s ease;
    }
    .button:hover {
        padding: 14px 0px;
        margin: 0px auto 0px auto;
        text-align: center;
        width: 100%;
        background-color: #333;
        border: 1px solid #333;
        border-radius: 50px;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0px;
        color: #fff;
    }
/*button*/

/*txt*/

    .lp-title-1 {
        font-family: 'IBM-BLD';
        font-size: 50px;
        margin: 0px auto 16px auto;
        line-height: 60px;
        color: #000;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-2 {
        font-family: 'NOTO-BLD';
        font-size: 28px;
        margin: 0px auto 64px auto;
        line-height: 38px;
        color: #000;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-3 {
        font-family: 'NOTO-BLD';
        font-size: 25px;
        margin: 0px auto 32px auto;
        line-height: 35px;
        color: #000;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-4 {
        font-family: 'NOTO-BLD';
        font-size: 16px;
        margin: 0px auto 0px 0px;
        line-height: 36px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-title-5 {
        font-family: 'IBM-BLD';
        font-size: 42px;
        margin: 0px auto 48px auto;
        line-height: 52px;
        color: #fff;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-6 {
        font-family: 'NOTO-BLD';
        font-size: 18px;
        margin: 0px auto 0px 0px;
        line-height: 25px;
        color: #fff;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-title-6-2 {
        font-family: 'NOTO-BLD';
        font-size: 18px;
        margin: 20px auto 0px 0px;
        line-height: 25px;
        color: #fff;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-txt {
        font-family: 'NOTO';
        font-size: 16px;
        margin: 0px auto 0px 0px;
        line-height: 36px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-txt-1 {
        font-family: 'NOTO';
        font-size: 16px;
        margin: 0px auto 32px auto;
        line-height: 36px;
        color: #000;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-txt-2 {
        font-family: 'NOTO';
        font-size: 16px;
        margin: 0px auto 0px 0px;
        line-height: 36px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-txt-3 {
        font-family: 'NOTO-MDI';
        font-size: 14px;
        margin: 0px auto 0px 0px;
        line-height: 24px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-txt-3-sub {
      padding-left: 4.3em;
    }
    .lp-txt-3-sub-2 {
      padding-left: 3.2em;
    }
.lp-txt-3 .item-label,
.lp-txt-3 .item-value {
  display: inline;
  vertical-align: baseline;
}

.lp-txt-3 .item-label {
  min-width: 0;
}

.lp-txt-3 .item-value::before {
  content: " | ";
}
    .lp-txt-3-2 {
        font-family: 'NOTO';
        font-size: 14px;
        margin: 0px auto 0px 0px;
        line-height: 25px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
.lp-txt-3-2 .store-label,
.lp-txt-3-2 .store-lines {
  display: inline-block;
  vertical-align: top;
}
.lp-txt-3-2 .store-label {
  margin-right: 0.3em;
  white-space: nowrap;
}
.lp-txt-3-2 .store-lines span {
  display: block;
}
    .lp-txt-4 {
        font-family: 'NOTO';
        font-size: 18px;
        margin: 0px auto 0px 0px;
        line-height: 25px;
        color: #fff;
        text-align: left;
        letter-spacing: 0px;
    }
/*txt*/

/*border*/
    .border-1 {
        width: 700px;
        border-bottom: 1px solid #000;
        margin: 0px auto 32px auto;
        text-align: center;
    }

    .border-2 {
        width: 100%;
        border-bottom: 1px solid #000;
        margin: 13px auto 13px auto;
        text-align: center;
    }
/*border*/

/*main*/
    .lp-contents-box {
        width: 100%;
        margin: 0px auto 0px auto;
        text-align: center;
        padding: 0.1px 0px 0.1px 0px;
        background-color: #fff;
    }
/*main*/

/*article*/
    .lp-contents {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
/*article*/

/*section*/
    .fv-section {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 0.1px 0px 0.1px 0px;
        background-color: #F7F7F7;
    }
    .item-section {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 0.1px 0px;
    }
    .item-section-2 {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 120px 0px;
        background-color: #333333;
    }
/*section*/

    .text-box-1 {
        width: 900px;
        margin: 0px auto 32px auto;
        text-align: center;
        padding: 0px 0px;
    }
    .text-box-1-2 {
        width: 900px;
        margin: 0px auto 32px auto;
        text-align: center;
        padding: 0px 0px;
    }
    .text-box-2 {
        width: 438px;
        margin: 0px auto 80px auto;
        text-align: center;
        padding: 0px 0px;
    }
    .text-box-2-2 {
        width: 419px;
        margin: 0px auto 100px auto;
        text-align: center;
        padding: 0px 0px;
    }
	.text-box-2-3 {
  		width: 100%;
  		margin-bottom: 32px;
  		box-sizing: border-box;
	}
    .text-box-3 {
        width: 900px;
        margin: 0px auto 80px auto;
        text-align: center;
        padding: 64px 0px;
        background-color: #F7F7F7;
    }	
	.text-box-4 {
	  	width: 19.8958333vw;   /* 382 / 1920 */
	  	height: 100%;
	 	max-width: 382px;
	  	min-width: 238.75px;   /* 382 * (1200 / 1920) */
	  	margin-left: auto;
	  	position: relative;
	  	box-sizing: border-box;
	  	padding-top: 140px;
	}

@media screen and (max-width: 1500px) {

    .text-box-4 {
      width: 22.8958333vw;   /* 382 / 1920 */
      height: 100%;
      max-width: 382px;
      min-width: 238.75px;   /* 382 * (1200 / 1920) */
      margin-left: auto;
      position: relative;
      box-sizing: border-box;
      padding-top: 140px;
    }

}

.text-box-5 {
  width: 6.25vw;         /* 120 / 1920 */
  max-width: 120px;
  min-width: 75px;       /* 120 * (1200 / 1920) */
  position: absolute;
  top: 40px;
  left: 0%;
  box-sizing: border-box;
}

.text-box-5 img {
  display: block;
  width: 100%;
  height: auto;
}

.text-box-5-2 {
    position: absolute;
    bottom: 68px;
    left: 0%;
    width: 100%;
    box-sizing: border-box;
}

.text-box-5-3 {
    display: none;
}

@media screen and (max-width: 1100px) {
    .text-box-5-3 {
        width: 100%;
        display: block;
        margin: 0px auto 16px auto;
    }
    .text-box-5-3 img{
        width: 120px;
        display: block;
        margin: 0px auto 0px auto;
    }
}



/*article*/
    .lp-contents {
    	width: 100%;
    	margin: 0 auto;
    	text-align: center;
    }
/*article*/

/*video*/
    .v-section {
        width: 100%;
        text-align: center;
        margin: 0px auto 150px auto;
    }
    .v-section video {
        width: 100%;
    }
/*video*/

/*1200px*/
    .fv-img-box {
        width: 910px;
        margin: 0px auto;
        text-align: center;
    }
/*1200px*/

/*hide*/

    .hidden-1 {
        visibility: hidden;
        display: inline-block;
    }
    .hidden-2 {
        visibility: hidden;
    }
    .hidden-3 {
        visibility: hidden;
        display: inline;
    }

    .hide-pc {
    	display: none;
    }
    .hide-sp {
        display: inline;
        vertical-align: middle;
    }
    .hide-pc-2 {
        display: none;
    }
    .hide-sp-2 {
        display: block;
    }

/*hide*/

@media screen and (max-width: 1199px) {

/*article*/
	.lp-contents {
		width: 100%;
    }
/*article*/

/*youtube*/
    #movie-section {
        width: 88%;
        text-align: center;
        margin: 0px auto 0px auto;
    }
    #movie-section img{
        width: 100%;
        text-align: center;
        margin: 0px auto 0px auto;
    }
    .tv__movie {
        margin: 0px auto 0px auto;
        width: 100%;
        height: auto;
        padding-top: 178.25%;
        position: relative;
    }
    .tv__movie iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .tv__movie-pink {
        margin: 0px auto 0px auto;
        width: 100%;
        height: auto;
        padding-top: 56.5%;
        position: relative;
    }
    .tv__movie-pink iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
/*youtube*/

/*img*/
    .title-img-top {
        width: 100%;
        margin: 0px auto 64px auto;
    }
    .title-img-top img {
      width: 100%;
      height: auto;
      display: block;
      /*animation: focusIn 2s ease-out forwards;
      filter: blur(12px);
      opacity: 0;
      transform: scale(1.03);
      will-change: filter, opacity, transform;*/
    }

    .title-img-top-2 {
        display: none;
        width: 100px;
        margin: 0px auto 0px auto;
    }
    .title-img-top-2 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-2 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-3 {
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .title-img-top-4 {
        width: 88%;
        margin: 0px auto 48px auto;
    }
    .title-img-top-4 img{
        width: 100%;
        margin: 0px auto 32px auto;
    }
    .title-img-top-4 picture{
        width: 100%;
        margin: 0px auto 32px auto;
    }
    .title-img-top-5 {
        display: block;
        width: 85%;
        margin: 0px auto 30px auto;
    }
/*img*/

/*hide*/
    .hide-sp {
    	display: none;
    }
    .hide-pc {
    	display: block;
    }
    .hide-sp-2{
        display: none;
    }
    .hide-pc-2 {
        display: block;
    }

    .hidden-1 {
        visibility: hidden;
        display: none;
    }
    .hidden-2 {
        visibility: hidden;
    }
    .hidden-3 {
        visibility: hidden;
        display: inline;
    }
/*hide*/

/*video*/
    .v-section {
        width: 100%;
        text-align: center;
        margin: 0px auto 64px auto;
    }
    .v-section video {
        width: 100%;
    }
/*video*/

/*1200px*/
    .fv-img-box {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
/*1200px*/

    tr {
        width: 100%;
        display: inline-block;
        vertical-align: top;
        border-color: inherit;
    }
    .text-box-1 {
        width: 98%;
        margin: 0px auto 24px auto;
        text-align: center;
        padding: 0px 0px;
    }	
    .text-box-1-2 {
        width: 88%;
        margin: 0px auto 28px auto;
        text-align: center;
        padding: 0px 0px;
    }
    .text-box-2 {
        width: 88%;
        margin: 0px auto 64px auto;
        text-align: center;
    }
    .text-box-2-2 {
        width: 88%;
        margin: 0px auto 60px auto;
        text-align: center;
    }
    .text-box-2-3 {
      width: 100%;
      margin-bottom: 32px;
      box-sizing: border-box;
    }
    .text-box-3 {
        width: 88%;
        margin: 0px auto 80px auto;
        text-align: center;
        padding: 64px 0px;
        background-color: #F7F7F7;
    }

/*  txt  */

    .lp-title-1 {
        font-size: 32px;
        margin: 0px auto 16px auto;
        line-height: 36px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-2 {
        font-size: 18px;
        margin: 0px auto 24px auto;
        line-height: 25px;
        text-align: center;
        letter-spacing: 0px;
        padding: 0px 0px;
    }
    .lp-title-3 {
        font-size: 25px;
        margin: 0px auto 32px auto;
        line-height: 35px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-4 {
        font-size: 16px;
        margin: 0px auto 0px auto;
        line-height: 26px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-5 {
        font-size: 28px;
        margin: 0px auto 24px auto;
        line-height: 38px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-6 {
        font-size: 18px;
        margin: 0px auto 0px auto;
        line-height: 25px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-title-6-2 {
        font-size: 18px;
        margin: 18px auto 0px auto;
        line-height: 25px;
        text-align: center;
        letter-spacing: 0px;
    }
    .lp-txt {
        font-size: 16px;
        margin: 0px auto 0px 0px;
        line-height: 28px;
        text-align: left;
        padding: 0px 0px;
        letter-spacing: 0px;
    } 	
    .lp-txt-1 {
        font-size: 16px;
        margin: 0px auto 0px auto;
        line-height: 36px;
        text-align: center;
        padding: 0px 0px;
        letter-spacing: 0px;
    }
    .lp-txt-2 {
        font-size: 16px;
        margin: 0px auto 0px auto;
        line-height: 36px;
        text-align: center;
        padding: 0px 0px;
        letter-spacing: 0px;
    }
    .lp-txt-3 {
        font-family: 'NOTO-MDI';
        font-size: 14px;
        margin: 0px auto 0px 0px;
        line-height: 24px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
    .lp-txt-3-sub {
      padding-left: 4.3em;
    }
    .lp-txt-3-sub-2 {
      padding-left: 3.2em;
    }
.lp-txt-3 .item-label,
.lp-txt-3 .item-value {
  display: inline;
  vertical-align: baseline;
}

.lp-txt-3 .item-label {
  min-width: 0;
}

.lp-txt-3 .item-value::before {
  content: " | ";
}
    .lp-txt-3-2 {
        font-family: 'NOTO';
        font-size: 14px;
        margin: 0px auto 0px 0px;
        line-height: 25px;
        color: #000;
        text-align: left;
        letter-spacing: 0px;
    }
.lp-txt-3-2 .store-label,
.lp-txt-3-2 .store-lines {
  display: inline-block;
  vertical-align: top;
}
.lp-txt-3-2 .store-label {
  margin-right: 0.3em;
  white-space: nowrap;
}
.lp-txt-3-2 .store-lines span {
  display: block;
}
    .lp-txt-4 {
        font-size: 18px;
        margin: 0px auto 0px auto;
        line-height: 25px;
        text-align: center;
        padding: 0px 0px;
        letter-spacing: 0px;
    }
/*  txt_end  */

/* section */
    .fv-section {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 0.1px 0px 0.1px 0px;
        background-color: #F7F7F7;
    }
    .item-section {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 0.1px 0px;
    }
    .item-section-2 {
        width: 100%;
        margin: 0 auto;
        text-align: center;
        padding: 64px 0px;
        background-color: #333333;
    }
/* section_end */

/*border*/
    .border-1 {
        width: 88%;
        border-bottom: 1px solid #000;
        margin: 0px auto 32px auto;
        text-align: center;
    }

    .border-2 {
        width: 100%;
        border-bottom: 1px solid #000;
        margin: 13px auto 13px auto;
        text-align: center;
    }
/*border*/

/*button*/
    .button {
        padding: 14px 0px;
        margin: 0px auto 0px auto;
        text-align: center;
        width: 100%;
        border: 1px solid #000;
        border-radius: 50px;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0px;
        color: #000;
    }
    .button:hover {
        padding: 14px 0px;
        margin: 0px auto 0px auto;
        text-align: center;
        width: 100%;
        background-color: #000;
        border: 1px solid #000;
        border-radius: 50px;
        font-family: 'NOTO-BLD';
        font-size: 16px;
        line-height: 24px;
        letter-spacing: 0px;
        color: #fff;
    }
/*button*/

/*main*/
    .lp-contents-box {
        width: 100%;
        margin: 0px auto 0px auto;
        text-align: center;
        padding: 0.1px 0px 0.1px 0px;
        background-color: #fff;
    }
/*main*/

/*clearfix*/
    .lp-contents-clearfix {
        text-align: center;
        width: 88%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 48px auto;
        flex-direction: row;
        justify-content: space-between;
        align-content: center;
        align-items: flex-start;
    }
    .lp-contents-clearfix a{
        opacity: 1;
    }
    .lp-contents-clearfix a:hover{
        opacity: 1;
    }	
    .lp-contents-clearfix-2 {
        text-align: center;
        width: 88%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 24px auto;
        flex-direction: row;
        justify-content: center;
        align-content: center;
        align-items: center;
    }
    .lp-contents-clearfix-2 a{
        opacity: 1;
    }
    .lp-contents-clearfix-2 a:hover{
        opacity: 0.5;
    }

    .lp-contents-clearfix-3 {
        text-align: center;
        width: 100%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 0px auto;
        flex-direction: row;
        justify-content: center;
        align-content: center;
        align-items: center;
    }
    .lp-contents-clearfix-3 a{
        opacity: 1;
    }
    .lp-contents-clearfix-3 a:hover{
        opacity: 1;
    }
    .lp-contents-clearfix-4 {
        text-align: center;
        width: 87.2%;
        flex-wrap: wrap;
        display: flex;
        margin: 64px auto 0px auto;
        flex-direction: row;
        justify-content: space-between;
        align-content: center;
        align-items: flex-start;
    }
    .lp-contents-clearfix-4 a{
        opacity: 1;
    }
    .lp-contents-clearfix-4 a:hover{
        opacity: 1;
    }
    .lp-contents-clearfix-5 {
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 0;
        box-sizing: border-box;
        margin: 0px 0px 80px 0px;
        flex-direction: column-reverse;
        flex-wrap: wrap;
        align-content: center;
    }

.lp-contents-clearfix-6 {
    margin: 0px auto 16px auto;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: unset;
    box-sizing: border-box;
}
    .lp-contents-clearfix-6 a{
        opacity: 1;
    }
    .lp-contents-clearfix-6 a:hover{
        opacity: 1;
    }

    .lp-contents-clearfix-6-2 {
        margin: 0px auto 0px auto;
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: unset;
        box-sizing: border-box;
    }
    .lp-contents-clearfix-6-2 a{
        opacity: 1;
    }
    .lp-contents-clearfix-6-2 a:hover{
        opacity: 1;
    }

    .lp-contents-clearfix-6-3 {
        margin: 0px auto 0px auto;
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: unset;
        box-sizing: border-box;
    }
    .lp-contents-clearfix-6-3 a{
        opacity: 1;
    }
    .lp-contents-clearfix-6-3 a:hover{
        opacity: 1;
    }



    .lp-contents-clearfix-7 {
        text-align: center;
        width: 88%;
        flex-wrap: wrap;
        display: flex;
        margin: 0px auto 0px auto;
        flex-direction: row;
        align-content: center;
        align-items: center;
        justify-content: space-between;
    }
    .lp-contents-clearfix-7 a{
        opacity: 1;
    }
    .lp-contents-clearfix-7 a:hover{
        opacity: 1;
    }

    .box-img-1 {
        width: 100%;
        margin: 0px auto 24px auto;
        flex-direction: row;
        text-align: center;
    }
    .box-img-1 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-1 img{
        width: 100%;
        margin: 0px auto 0px auto;
        display: block;
    }

    .box-img-2 {
        width: 100%;
        margin: 0px 0px 8px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-2 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-2 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-3 {
        width: 100%;
        margin: 0px 0px 0px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-3 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-3 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-4 {
        width: 20.3%;
        margin: 0px 0px 24px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-4 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-4 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-5 {
        width: 100%;
        margin: 0px 0px 46px 0px;
        flex-direction: row;
        text-align: center;
    }
    .box-img-5 picture{
        width: 100%;
        margin: 0px auto 8px auto;
    }
    .box-img-5 img{
        width: 100%;
        margin: 0px auto 8px auto;
    } 

.box-img-6,
.box-img-9,
.text-box-4,
.text-box-5 {
    width: 100%;
    max-width: none;
    min-width: 0;
}

    .box-img-6 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-6 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

.text-box-4 {
  width: 88%;
  height: unset;
  max-width: unset;
  min-width: unset;
  margin-left: unset;
  position: unset;
  box-sizing: unset;
  padding-top: 0px;
  margin: 0px auto 0px auto;
}

.text-box-5 {
    display: none;
}

.text-box-5-2 {
    position: unset;
    bottom: unset;
    left: unset;
    width: 100%;
    box-sizing: border-box;
    display: block;
}

    .box-img-7 {
  flex: 1 1 auto;
  width: auto;
  box-sizing: border-box;
}
    .box-img-7 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-7 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .slider-controls {
        position: static;
        margin-top: 20px;
        justify-content: flex-end;
      }

/*clearfix*/
    
}

/* =========================================
   SP
========================================= */
@media screen and (max-width: 1100px) {

  .box-img-8 {
      width: 140px;    /* 160 / 1920 */
      max-width: unset;
      min-width: unset;      /* 160 * (1200 / 1920) */
      margin-left: auto;
      box-sizing: border-box;
    }

.box-img-8 picture{
    width: 100%;
    margin: 0px auto 0px auto;
}
.box-img-8 img{
    width: 100%;
    margin: 0px auto 0px auto;
}

.box-img-9 {
  width: 100%;
  max-width: unset;
  min-width: unset;
  box-sizing: border-box;
  position: relative;
  margin: 0px 0px 24px 0px;
}

.box-img-9 picture{
    width: 100%;
    margin: 0px auto 0px auto;
}
.box-img-9 img{
    width: 100%;
    margin: 0px auto 0px auto;
}

    .box-img-10 {
        width: 100%;
        margin: 0px auto 24px auto;
        flex-direction: row;
        text-align: center;
    }
    .box-img-10 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-10 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

    .box-img-11 {
        width: 100%;
        margin: 0px auto 0px auto;
        flex-direction: row;
        text-align: center;
    }
    .box-img-11 a{
        text-decoration: underline;
        font-family: 'NOTO';
        font-size: 18px;
        line-height: 25px;
        letter-spacing: 0px;
        color: #fff;
    }
    .box-img-11 a:hover{
        text-decoration: none;
        font-family: 'NOTO';
        font-size: 18px;
        line-height: 25px;
        letter-spacing: 0px;
        color: #fff;
    }
    .box-img-11 picture{
        width: 100%;
        margin: 0px auto 0px auto;
    }
    .box-img-11 img{
        width: 100%;
        margin: 0px auto 0px auto;
    }

  .buy-btn {
    height: 38px;
    font-size: 14px;
    margin-bottom: 12px;
  }

  .splide {
    padding-bottom: 56px;
  }

  .splide::after {
    display: none;
  }

  .slider-controls {
    gap: 16px;
  }

  .slider-progress {
    width: 45%;
  }

  .slider-arrow {
    width: 40px;
    height: 40px;
    font-size: 16px;
  }

  .splide {
      width: 100%;
      position: relative;
      padding-bottom: 0px; /* progress + arrows 用 */
      box-sizing: border-box;
    }
}