@charset "UTF-8";

/*==============================================
 共通 ここから
================================================*/
:root {
    --font-color-zabu: #3b1d05;
}

body {
    background-color: #f0e8dd;
}
/* パンくず削除 */
#pankuzu {
    display: none;
}
main, main#wrapper {
    padding: 0;
    max-width: none !important;
}
#newlife2025 img {
  width: 100%;
}
#newlife2025 a {
    display: block;
}
#newlife2025 a:hover {
    opacity: .7;
}
/* マーカー */
span.marker {
    background: linear-gradient(transparent 60%, #fbab3b99 40%);
    font-weight: bold;
    line-height: 1;
}
/* テキスト下線 */
#newlife2025 span.text-border {
    position: relative;
    line-height: 1;
}
#newlife2025 span.text-border::after {
    content: '';
    position: absolute;
    bottom: 1px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #222;
}
/* SVG共通 */
#newlife2025 svg {
    width: 100%;
    height: auto;
    display: block;
}
/* 価格プロリセット */
.buy_price>ol .spesicalprice, .buy_price>ul .spesicalprice {
    display: none;
}
.buy_price>ul .intax {
    display: none !important;
}
.buy_price>ol .price, .buy_price>ul .price {
    color: #eb0012;
    font-size: 30px;
}
/* ヘッダー画像削除 */
.header-info-red a{
    display: none;
}
/* フッター調整 */
footer {
    position: relative;
    z-index: 1;
}
footer,
footer .bottom {
    margin-top: 0 !important;
    margin: 0 auto;
}
article#contents {
    padding-bottom: 0 !important;
}
/* キーフレーム：縦無限コンテンツスクロール */
@keyframes infinity-scroll-vertical {
    from {
        transform: translateY(0);
    }
        to {
        transform: translateY(-100%);
    }
}
/* キーフレーム：ザブロウアイコンアニメ */
@keyframes decoSwing {
    0% {
      transform: rotate(0deg);
    }
  
    100% {
      transform: rotate(20deg);
    }
}
/* キーフレーム：クローズボタンフェードイン */
@keyframes fadein {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
}
/* キーフレーム：ザブレオンフェードイン */
@keyframes zabu-fadein {
	0% {
		animation-timing-function: ease-in;
		transform: translate(150%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	}  25% {
		animation-timing-function: ease-in-out;
		transform: translate(3%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	} 75% {
		animation-timing-function: ease-in-out;
		transform: translate(0%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	} 100% {
        animation-timing-function: ease-in-out;
		transform: translate(0%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	}
}
/* キーフレーム：ザブレオン背景フェードアウト */
@keyframes anime-background-fadeout {
    from {
      opacity: 0.5;
      display: block;
    }
    to {
      opacity: 0;
      display: none;
    }
}
/* キーフレーム：ザブレオンフェードアウト */
@keyframes zabu-fadeout {
	0% {
        animation-timing-function: ease-in;
		transform: translate(0%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	} 25% {
        animation-timing-function: ease-in-out;
		transform: translate(-150%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	} 100% {
        animation-timing-function: ease-in-out;
		transform: translate(-150%,0px) scale(1,1) rotate(0deg) skew(0deg,0deg);
		opacity: 1.0;
	}
}
/* キーフレーム：横無限テキストスクロール */
@keyframes loop {
    0%{
        transform: translateX(100%);
    }
    100%{
        transform: translateX(-100%);
    }
}
/* キーフレーム：タイトルロゴアニメーション */
@keyframes scale-up-center {
    0% {
      -webkit-transform: scale(0.5);
              transform: scale(0.5);
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
}
/* ナビゲーション ザブロウ */
@keyframes hyoko {
    from {
        transform: translate(100%, 3%);
    } 
    to {
        transform: translate(33%, 3%);
    }
}
/*==============================================
 共通 ここまで
================================================*/

/*==============================================
#newlife2025 共通 ここから
================================================*/

/* フォント */
#newlife2025{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 500;
    font-style: normal;
}
#newlife2025 p{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 500;
    font-style: normal;
    font-size: 1rem;
}
#newlife2025 h1{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 600;
    font-style: normal;
}
#newlife2025 h2{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 600;
    font-style: normal;
}
#newlife2025 h2 span{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 900;
    font-style: normal;
}
#newlife2025 h3{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
}
#newlife2025 h3 span{
    font-family: "Lato";
    font-weight: 700;
    font-style: normal;
    font-size: 1.1em;
}
#newlife2025 h5{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 700;
    font-style: normal;
    font-size: 1.1rem;
}
#newlife2025  span{
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: 700;
    font-style: normal;
}

/* 斜線 */
#newlife2025 p.text-line {
    text-decoration: line-through;
}

/* 背景 */
#newlife2025 .back {
    position: relative;
    z-index: 1;
    background-color: #f0e8dd;
}
#newlife2025 .back-inner {
    width: 100%;
    margin: 0 auto;
    max-width: 750px;
    box-shadow: 0px 0px 7px 3px #e1d2c6;
}

/* セクション共通 */
#newlife2025 .section {
    position: relative;
}
#newlife2025 .section .flag-svg {
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 1;
}

/* 見出し */
#newlife2025 .section-title {
    width: 100%;
    text-align: center;
    margin-bottom: 2%;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
#newlife2025 .section-title .svg {
    width: 11%;
    margin: 0 auto;
}
#newlife2025 .section-title__h2 {
    font-size: 28px;
    color: #222;
    display: inline-block;
}
#newlife2025 .section-title__h2.white {
    color: #FFF;
    font-weight: 700;
}

/* スタンダードセットページ用 */
#newlife2025 .section-title__h2 .num {
    font-size: 1.8em;
    font-family: 'Lato';
    line-height: 1;
}
#newlife2025 .section-title__sub.white {
    color: #FFF;
}
#newlife2025 .section-title__h2.black {
    color: #3b1d05;
    font-weight: 700;
}
#newlife2025 .section-title__sub.black {
    color: #3b1d05;
}


/* 黒リンクボタン */
#newlife2025 .link-btn {
    width: 100%;
    display: flex;
    justify-content: center;
}
#newlife2025 .link-btn .btn {
    position: relative;
    display: inline-block;
    background-color: #222;
    color: #FFF;
    box-sizing: border-box;
    border: 2px solid #222;
    padding: .8em 1em;
    width: 85%;
    max-width: 700px;
    text-align: center;
    border-radius: 5px;
    transition: .3s;
}
#newlife2025 .link-btn .btn.red-btn {
    background-color: #eb0012;
    border: 2px solid #eb0012;
}
#newlife2025 .link-btn .btn.red-btn:hover {
    background-color: #fff;
    border: 2px solid #eb0012;
    color: #eb0012 !important;
}
#newlife2025 .link-btn .btn.red-btn:hover::after {
    border-top: 2px solid #eb0012;
    border-right: 2px solid #eb0012;
}
#newlife2025 .link-btn .btn::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .4em;
    height: .4em;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.3s ease 0s;
}
/* hover */
#newlife2025 .link-btn .btn:hover {
    opacity: 1;
    color: #222 !important;
    background-color: #FFF;
    border: 2px solid #222;
}
#newlife2025 .link-btn .btn:hover::after {
    border-top: 2px solid #222;
    border-right: 2px solid #222;
}

/* ページTOPボタン */
#newlife2025 .link-btn.page-top {
    padding-bottom: 3%;
}
#newlife2025 .link-btn.page-top .btn {
    width: 70%;
}
#newlife2025 .link-btn.page-top .btn::after {
    transform: translateY(24%) rotate(-45deg);
}

/*==============================================
#newlife2025 共通 ここまで
================================================*/

/*==============================================
 看板 ここから
================================================*/
/* 看板：枠 */
#newlife2025 .kanban {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    width: 100%;
}
/* 看板：タイトルロゴ */
#newlife2025 .kanban h1{
    width: 100%;
    margin: 0 auto;
    z-index: 1;
    position: relative;
}
/*==============================================
 看板 ここまで
================================================*/

/*==============================================
コンテンツ ここから
================================================*/

/* コンテンツ：枠 */
#newlife2025 .contents { 
    width: 100%;
    position: relative;
    z-index: 1;
    margin: 0 auto;
}

/* コンテンツ：各種ページ背景色 */
#newlife2025 #standard-page.contents { background-color: #4ec6d5;}
#newlife2025 #plus-page.contents { background-color: #f86358;}
#newlife2025 #space.contents { background-color: #bdbdbd;}

/* コンテンツ：各種ページ背景模様 */
#newlife2025 .contents .back-shape {
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../../IMAGE/newlife2025/cir.svg);
    opacity: 0.1;
    background-position: center;
}

/* ==============================================
サマリー（キャンペーン紹介・絞り込み・アンカー） ここから
================================================*/

/* サマリー */
#newlife2025 #summary {
    position: relative;
    width: 85%;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 2% 0% 3%;
    background-color: #ffe9ca;
    border: 3px solid #3b1d05;
}
/* サマリー：タイトル */
#newlife2025 .summary-title {
    position: relative;
}
#newlife2025 #summary h2 {
    font-size: 1.5rem;
    text-align: center;
    color: #3b1d05;
    margin-bottom: 2%;
}
#newlife2025 #summary h2 span {
    font-size: 1.2em;
}
/* サマリー：TOPキャンペーンの詳細用アンカー */
#newlife2025 #summary .summary-content__aunker {
    position: relative;
    width: 94.5%;
    margin: 0 auto;
    border-radius: 5px;
    background-color: #FFF;
    color: #6c3c14;
    font-size: 1rem;
    border: 1px solid #6c3c14;
    padding: .4em 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
}
#newlife2025 #summary .summary-content__aunker::after {
    position: absolute;
    right: 5%;
    transform: translateY(-25%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #6c3c14;
    border-right: 3px solid #6c3c14;
    content: '';
}
/* ホバー時 */
#newlife2025 #summary .summary-content__aunker:hover {
    color: #FFF !important;
    background-color: #6c3c14;
    opacity: 1;
}
#newlife2025 #summary .summary-content__aunker:hover::after {
    border-bottom: 3px solid #FFF;
    border-right: 3px solid #FFF;
}

/* サマリー：共通装飾 */
#newlife2025 #summary .deco {
    position: absolute;
    top: -10%;
    width: 14%;
}
#newlife2025 #summary .deco_right {
    right: 0;
}
#newlife2025 #summary .deco_left {
    left: 0;
}

/* サマリー：TOPキャンペーン用 */
#newlife2025 .summaryTop-title {
    position: relative;
    z-index: 1;
    display: flex;
    margin-bottom: -3.5%;
    box-sizing: border-box;
}
#newlife2025 .revo-camp .summaryTop-title {
    justify-content: start;
    margin-bottom: -6.5%;
}

#newlife2025 #summary .summaryTop-title h2 {
    color: #3a1e06;
    font-style: italic;
    font-weight: 900;
    line-height: 1;
    margin-top: 1%;
    font-size: 2rem;
    text-align: start;
}

#newlife2025 #summary .summaryTop-title h2 span {
    font-size: 1.2em;
    font-style: italic;
    font-weight: 900;
    line-height: 1;
    vertical-align: text-bottom;
}
#newlife2025  .summaryTop-inner {
    padding: 0 3.5%;
}
#newlife2025 .revo-camp .summaryTop-title .img {
    width: 21%;
    margin-top: -3%;
}

#newlife2025 .summaryTop-camp {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 4%;
    background-color: #004597;
    border-radius: 5px;
    margin-bottom: 1%;  
}

#newlife2025 .summaryTop-camp--item {
    display: flex;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
    gap: 1%;
    transform: rotate(-3deg);
}
#newlife2025 .summaryTop-camp--item .text {
    display: flex;
    flex-direction: column;
}
#newlife2025 .summaryTop-camp--item p {
    color: #FFF;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .03px;
    white-space: nowrap;
}
#newlife2025 .summaryTop-camp--item .min {
    font-size: .8em;
}
#newlife2025 .summaryTop-camp--item .white-back{
    background: #FFF;
    display: inline-flex;
    align-items: baseline;
    line-height: 1;
    color: #c5121d;
    padding: 0 .15em .08em .08em;
    white-space: nowrap;
    font-weight: 800;
    letter-spacing: 1px;
    font-size: 0.9em;
}
#newlife2025 .summaryTop-camp--item .white-back span {
    color: #c5121d;
    line-height: 1;
}
#newlife2025 .summaryTop-camp--item .num {
    font-size: 3rem;
    font-family: 'Lato',"Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
    font-weight: bold;
    letter-spacing: .01px;
    margin-right: .08em;
}
#newlife2025 .summaryTop-camp--item .normal {
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: 0.05px;
}
#newlife2025 .summaryTop-camp .kome {
    margin-top: 2%;
    font-size: .85rem;
    color: #FFF;
    line-height: 1.4;
}

/* TOPキャンペーン用：モーダル */
#newlife2025 .summaryTop-camp--modal.early {
    margin-top: 2%;
}
#newlife2025 .summaryTop-camp--modal input {
    display: none;
}

#newlife2025 .modal__open-label,
#newlife2025 .modal__close-label {
    cursor: pointer;
}
#newlife2025 .modal__open-label {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    padding: .5em 0em;
    border: none;
    border-radius: 5px;
    background-color: #222;
    color: #ffffff;
    box-sizing: border-box;
    border: 1px solid #FFF;
    font-weight: 600;
    font-size: 1.1em;
}
#newlife2025 .modal__open-label i {
    position: absolute;
    right: 5%;
    font-size: 1.5em;
}
#newlife2025 .modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
}
#newlife2025 .modal__open-input:checked + label + input + .modal {
    display: block;
    animation: fadein .6s;
}
#newlife2025 .modal__content-wrap {
    position: absolute;
    left: 50%;
    top: 58%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 550px;
    background-color: #fefefe;
    z-index: 2;
    border-radius: 5px;
}

#newlife2025 .modal__close-label {
    background-color: #777;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 100vw;
    width: 3rem;
    height: 3rem;
    line-height: 0;
    position: fixed;
    top: -4%;
    right: -2%;
    z-index: 99;
    font-size: 1.1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    padding-bottom: 0%;
}

#newlife2025 .modal__content {
    overflow-y: auto;
    padding: 4%;
    max-height: 70vh;
}
#newlife2025 .modal__content--box {
    margin-bottom: 2%;
}
#newlife2025 .modal__content--title {
    text-align: center;
    color: #FFF;
    background-color: #004597;
    margin-bottom: 2%;
}
#newlife2025 .summaryTop-camp--modal.early .modal__content--title {
    background-color: #e11b8d;
}
#newlife2025 .info__contents .text-box__item h5,
#newlife2025 .modal__content h5 {
    font-size: 1.2rem;
}
#newlife2025 .modal__content h5::before {
    content: '■';
    font-size: .8em;
    margin-right: 1%;
}
#newlife2025 .modal__content--title p {
    font-size: 1.2rem;
    font-weight: 600;
}
#newlife2025 .modal__content--flex {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 3%;
    justify-content: center;
    margin-bottom: 1%;
    background: #faf0e3;
    box-sizing: border-box;
    padding: 2%;
}
#newlife2025 .modal__content--flex  .sword-icon {
    width: 8%;
    font-size: 2em;
}
#newlife2025 .modal__content--flex .img {
    position: relative;
    width: 42%;
}
#newlife2025 .modal__content--flex .img i {
    position: absolute;
    right: 3%;
    bottom: 3%;
    color: #FFF;
    background-color: #eb0012;
    font-size: 2em;
    padding: .2em;
    border-radius: 100vw;
}
#newlife2025 .modal__content p {
    letter-spacing: -.2px;
    font-weight: 500;
}
#newlife2025 .modal__content p.kome {
    color: #222;
    margin-top: 1%;
}
#newlife2025 .modal__content p span {
    font-size: 1.1em;
}

#newlife2025 .modal__background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .45);
    z-index: 1;
}

/* 5000円ギフトカード */
#newlife2025 .summaryTop-camp--item.gift5000 .img {
    width: 24%;
}
#newlife2025 .summaryTop-camp--item.gift5000 {
    transform: rotate(-3deg);
    margin-bottom: 2%;
}
/* 取り置き */
#newlife2025 .summaryTop-camp--item.keep .img {
    width: 16%;
    transform: translateY(-16%);
    margin-right: 1%;
}
#newlife2025 .summaryTop-camp--item.keep {
    transform: rotate(-3deg);
    margin-bottom: -3%;
}
#newlife2025 .summaryTop-camp--item.keep .text {
    margin-top: -1%;
}
#newlife2025 .summaryTop-camp--item.keep .p-1{
    font-size: 2.2rem;
}
#newlife2025 .summaryTop-camp--item.keep .p-2{
    font-size: 2.5rem;
    letter-spacing: 2px;
}
/* アイリスバスケット */
#newlife2025 .summaryTop-camp--item.basket .img {
    width: 20%;
    margin-top: -1%;
    margin-left: 1%;
}
#newlife2025 .summaryTop-camp--item.basket {
    transform: rotate(2deg);
    justify-content: end;
}
#newlife2025 .summaryTop-camp--item.basket .text {
    align-items: end;
}
#newlife2025 .summaryTop-camp--item.basket .text p {
    font-size: 2.3rem;
}
/* ギフトカード1000 */
#newlife2025 .summaryTop-camp--item.gift1000 .img {
    width: 26%;
}
#newlife2025 .summaryTop-camp--item.gift1000 {
    transform: rotate(2deg);
    justify-content: end;
}
#newlife2025 .summaryTop-camp--item.gift1000 .text {
    align-items: end;
    margin-right: 1%;
}
#newlife2025 .summaryTop-camp--item.gift1000 .text .p-1 {
    font-size: 2.1rem;
}
#newlife2025 .summaryTop-camp--item.gift1000 .text .p-2 .normal {
    font-size: 2.2rem;
}

/* 5%OFF */
#newlife2025 .summaryTop-camp--item.sale .img {
    width: 21%;
    margin-top: -3%;
}
#newlife2025 .summaryTop-camp--item.sale {
    transform: rotate(-3deg);
    margin-top: -2%;
    margin-bottom: 3%;
}
#newlife2025 .summaryTop-camp--item.sale .text p {
    font-size: 2.4rem;
}

/* 四角形装飾 */
#newlife2025 .summaryTop-square  {
    position: absolute;
    bottom: 19%;
    right: 0rem;
    display: flex;
}
#newlife2025 .summaryTop-square > span  {
    width: 1.3rem;
    height: 1.3rem;
    background-color: #FFF;
    margin-right: 1rem;
}
#newlife2025 .summaryTop-square > span:nth-child(even) {
    background-color: #c5121d;
}
/* 四角形装飾 早割 */
#newlife2025 .early-camp .summaryTop-square  {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-direction: column;
}
#newlife2025 .early-camp .summaryTop-square > span  {
    background-color: #004597;
    margin-top: 1rem;
}
#newlife2025 .early-camp .summaryTop-square > span:nth-child(2n) {
    background-color: #FFF;
}

/* 早期特典 */
#newlife2025 #summary .early-camp .summaryTop-title {
    justify-content: center;
    align-items: center;
    margin-bottom: -1%;
}
#newlife2025 #summary .early-camp .summaryTop-title h2 {
    text-align: end;
    font-size: 2rem;
    line-height: 1.1;
}
#newlife2025 #summary .early-camp .summaryTop-title .img {
    width: 42%;
}
#newlife2025 #summary .early-camp .summaryTop-camp {
    background-color: #e11b8d;
    padding: 4% 4% 2%;
    margin-bottom: 3%;
}

/* サマリー：スタンダードセットページ用 */
#standard-page .flex {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 2%;
    box-sizing: border-box;
}
#standard-page .flex-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #e4c08e;
    border-radius: 5px;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid #8d532a;
    box-shadow: 3px 3px 0px 0px #8d532a;
    padding-top: 1%;
}
#standard-page .flex-item.cal3 {
    width: 32%;
    margin-bottom: 2%;
}
#standard-page .flex-item.cal2 {
    width: 49%;
}
#standard-page .flex-item h3 {
    font-size: 16px;
    color: #5b371d;
}
#standard-page .flex-item .flex-item__num {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 3%;
    color: #FFF;
    background-color: #8d532a;
    font-size: 20px;
    border-radius: 0 0 5px 0;
}
#standard-page .flex-item .flex-item__num .point {
    font-size: 0.8em;
}

/*==============================================
キャンペーン解説 ここまで
================================================*/

/*==============================================
TOPページ用アンカー ここから
================================================*/

#newlife2025 .anchor {
    width: 100%;
    background-color: #c5121d;
    position: relative;
    padding-top: 2%;
}
#newlife2025 .anchor .flex {
    width: 93%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#newlife2025 .anchor .flex li {
    width: 31%;
    text-align: center;
    color: #FFF;
    margin-bottom: 3%;
}
#newlife2025 .anchor .flex li.single {
    width: 100%;
    text-align: center;
}
#newlife2025 .anchor .flex li.single a {
    position: relative;
    display: block;
    padding: 0.5em 0;
    background: #8d0b13;
    color: #FFF;
    border-radius: 5px;
}
#newlife2025 .anchor .flex li.single a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .4em;
    height: .4em;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    bottom: 44%;
    right: 5%;
    margin: auto;
    transform: rotate(135deg);
}
#newlife2025 .anchor .flex li a h3 {
    font-size: 18px;
}
#newlife2025 .anchor .thumb {
    border-radius: 5px;
    overflow: hidden;
}
#newlife2025 .anchor .flex li a:hover {
    color: #FFF !important;
}
/* 子ページフッター用 */
#newlife2025 .anchor.foot {
    padding: 2% 0;
}
#newlife2025 .anchor.foot .flex li {
    width: 48%;
}
#newlife2025 .anchor.foot .flex li.single {
    width: 100%;
}

/* ギガキャンペーン */
#newlife2025 .anchor .giga-present {
    width: 90%;
    margin: 0% auto 1%;
}
#newlife2025 .giga-present img {
    box-sizing: border-box;
    border: 3px solid #FFF;
}

/*==============================================
TOPページ用アンカー ここまで
================================================*/

/*==============================================
商品リスト ここから
================================================*/

/* TOP用商品リスト：スタンダードセット */
#newlife2025 #standard.item-section {
    background-color: #4ec6d5;
}
#newlife2025 #standard.item-section .flag-svg {
    fill: #4ec6d5;
}
/* TOP用商品リスト：家具インテリアセット */
#newlife2025 #space.item-section {
    background-color: #bdbdbd;
}
#newlife2025 #space.item-section .flag-svg {
    fill: #bdbdbd;
}
/* TOP用商品リスト：買い足しセット */
#newlife2025 #plus.item-section {
    background-color: #f86358;
}
#newlife2025 #plus.item-section .flag-svg {
    fill: #f86358;
}
/* TOP用商品リスト：おすすめ革命セット */
#newlife2025 #combo.item-section {
    background-color: #f0e8dd;
}
#newlife2025 #combo.item-section .flag-svg {
    fill: #f0e8dd;
}
#newlife2025 #combo .section-title .svg {
    fill: #3b1d05;
}
/* TOP用商品リスト：その他単品 */
#newlife2025 #single-item.item-section {
    background-color: #FFF;
}
#newlife2025 #single-item.item-section .flag-svg {
    fill: #fff;
}
#newlife2025 #single-item .section-title .svg {
    fill: #222;
}
/* TOP用商品リスト：キャンペーンの詳細 */
#newlife2025 #info.item-section {
    background: #efefef;
}
#newlife2025 #info.item-section .flag-svg {
    fill: #f5f5f5;
}
#newlife2025 #info .section-title .svg {
    fill: #222;
}
#newlife2025 #info .section-title {
    position: relative;
    display: inline-block;
}
#newlife2025 #info .section-title:before,
#newlife2025 #info .section-title:after {
    content: '';
    position: absolute;
    top: 58%;
    display: inline-block;
    width: 15%;
    height: 1px;
    background-color: black;
}
#newlife2025 #info .section-title:before {
    left:0;
}
#newlife2025 #info .section-title:after {
    right: 0;
}

/* TOPページ用：ザブロウアイコン */
#newlife2025 .item-section .section-title .chara-icon {
    animation-name: decoSwing;
    animation-duration: 2400ms;
    animation-timing-function: steps(2, end);
    animation-iteration-count: infinite;
}
/* ザブロウアイコン：TOPスタンダードページ */
#newlife2025 #standard.item-section .section-title .chara-icon {
    width: 15%;
    position: absolute;
    top: -40%;
    left: 11%;
    z-index: 100;
}
/* ザブロウアイコン：TOP家具インテ */
#newlife2025 #space.item-section .section-title .chara-icon {
    width: 18%;
    position: absolute;
    top: -66%;
    right: 10%;
    z-index: 100;
}
/* ザブロウアイコン：TOP買い足し */
#newlife2025 #plus.item-section .section-title .chara-icon {
    width: 20%;
    position: absolute;
    top: -71%;
    left: 7%;
    z-index: 100;
}
/* ザブロウアイコン：TOPおすすめ革命セット */
#newlife2025 .item-section .section-title .chara-icon {
    width: 20%;
    position: absolute;
    top: -56%;
    right: 7%;
    z-index: 100;
}

/* 商品リスト：枠 */
#newlife2025 .item-section {
    width: 100%;
    padding: 8% 0px 2%;
    position: relative;
}
#newlife2025 .item-section .item-list {
    width: 85%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
#newlife2025 .item-section .item-list > li {
    width: 100%;
    box-sizing: border-box;
    padding: 1.5%;
    margin: 0 auto 2%;
    display: flex;
    background-color: #FFF;
    border-radius: 3px;
}
#newlife2025 .item-section .item-list > li .flex-left {
    width: 35%;
    display: flex;
    align-items: center;
}
#newlife2025 .item-section .item-list > li .flex-right {
    width: 65%;
    box-sizing: border-box;
    padding: 1% 2% 1% 3%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
/* 商品リスト：サムネイル */
#newlife2025 .item-section .item-list > li .thumb {
    box-sizing: border-box;
    padding: 1%;
}
/* 商品リスト：タグ */
#newlife2025 .item-section .item-list > li .tug {
    display: flex;
    flex-wrap: wrap;
    gap: 1%;
    color: #FFF;
    margin-bottom: 0;
}
#newlife2025 .item-section .item-list > li .tug span {
    background-color: #303030;
    margin-bottom: 1.5%;
    font-size: 14px;
    padding: .1em .4em;
    white-space: nowrap;
    line-height: 1.6;
}
/* 商品リスト：商品名 */
#newlife2025 .item-section .item-list > li .name {
    display: flex;
    align-items: center;
}
#newlife2025 .item-section .item-list > li h3 {
    font-size: 1.3rem;
}
/* 個別：家具インテリア 商品名 */
#newlife2025 .item-section .item-list.space-item > li .name {
    display: block;
    margin-bottom: 2%;
}
#newlife2025 .item-section .item-list.space-item > li .name h3 {
    padding: 0 0 1% 0;
}
/* 個別：買い足し 商品名 */
#newlife2025 #plus-page .item-section .item-list > li h3 {
    font-size: 1.1rem;
}
/* 商品リスト：色玉 */
#newlife2025 .item-section .item-list > li .name .color {
    display: flex;
    margin-left: .5rem;
}
#newlife2025 .item-section .item-list > li .name .color span {
    display: block;
    width: 1rem;
    height: 1rem;
    border-radius: 100vw;
    box-sizing: border-box;
    margin-right: .2rem;
}
#newlife2025 .item-section .item-list > li .name .color span:nth-last-child(1) {
    margin-right: 0;
}
/* 商品リスト：色玉（黒） */
#newlife2025 .item-section .item-list > li .name .color span.black {
    background-color: #222;
}
/* 商品リスト：色玉（白） */
#newlife2025 .item-section .item-list > li .name .color span.white {
    background-color: #FFF;
    border: 1px solid #808080;
}

/* 個別：スタンダードセットページ */
/* 〇点セット区切り */
#newlife2025 .item-section .item-list > li.item-list__separator {
    border: 1px solid #5b371d;
    background-color: #ffe9ca;
    margin: 5% auto 3%;
    padding: 1% 0;
    color: #5b371d;
    display: flex;
    justify-content: center;
    font-size: .9rem;
    font-family: "Zen Kaku Gothic New",'Noto Sans JP','Yu Gothic black',sans-serif,'メイリオ';
}
#newlife2025 .item-section .item-list > li.item-list__separator:nth-child(1) {
    margin: 1% auto 3%;
}
#newlife2025 .item-section .item-list > li.item-list__separator span {
    font-size: 1.05em;
}


/* 個別：家具インテリア テイスト */
#newlife2025 .item-section .item-list > li .name .taste {
    display: flex;
    margin-top: -.1rem;
}
#newlife2025 .item-section .item-list > li .name .taste span {
    padding: 0.1em .8em 0.1em;
    border-radius: 100vw;
    font-size: .8rem;
    box-sizing: border-box;
    white-space: nowrap;
}
/*icon color*/
#newlife2025 .item-section .item-list > li .name .taste span.nordic {
    background-color: #fff;
    color: #222;
    margin-right: 3%;
    border: 1px solid;
}
#newlife2025 .item-section .item-list > li .name .taste span.industrial {
    background-color: #886149;
    color: #fff;
    border: 1px solid #886149;
}
#newlife2025 .item-section .item-list > li .name .taste span.hirobiro {
    background-color: #e5d4ba;
    color: #222;
    border: 1px solid #e5d4ba;
}

/* 商品リスト：単品合計価格 */
#newlife2025 .item-section .item-list > li .total-price {
    font-size: 1rem;
    white-space: nowrap;
    margin-bottom: 2%;
}
#newlife2025 .item-section .item-list > li .total-price .num {
    color: #eb0012;
    font-size: 1.3rem;
    line-height: 1;
}

/* 商品リスト：価格 */
#newlife2025 .item-section .item-list > li .price-wrap {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 2%;
    margin-top: -1%;
}

/* 商品リスト：お気に入り */
#newlife2025 .item-section .item-list > li .price-wrap .favo {
    position: absolute;
    right: 8%;
}
.action-wish:after, .action-wish:before {
    font-size: 30px;
}

/* 商品リスト：キャンペーンアイコン */
#newlife2025 .item-section .item-list > li .price-wrap .camp {
    display: flex;
    gap: 3%;
    margin-left: 2%;
}
#newlife2025 .item-section .item-list > li .price-wrap .camp .img {
    display: flex;
    align-items: center;
    width: 23%;
    box-sizing: border-box;
    padding: 2.5% 3.5% 2.5% 2.5%;
    border-radius: 2px;
    color: #FFF;
}
#newlife2025 .item-section .item-list > li .price-wrap .camp .img.mission-camp {
    background-image: linear-gradient(135deg, rgba(46, 195, 165, 1), rgba(184, 212, 80, 1));
    font-size: 1rem;
    white-space: nowrap;
    text-align: center;
    padding: 2% 0;
    justify-content: center;
    font-weight: bold;
    width: 4rem;
}
#newlife2025 .item-section .item-list > li .price-wrap .camp .img.revo-camp {
    background: #1b5ce0;
}

/* 商品リスト：カート */
#newlife2025 .item-section .item-list > li .item-link-wrap {
    display: flex;
    justify-content: space-between;
}
#newlife2025 .item-section .item-list > li .item-link{
    width: 49%;
}
#newlife2025 .item-section .item-list > li .item-link a{
    width: 100%;
    background-color: #eb0012;
    color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .3em 0;
    border-radius: 5px;
    gap: 2%;
}
#newlife2025 .item-section .item-list > li .item-link a:hover{
    color: #FFF !important;
}
#newlife2025 .item-section .item-list > li .item-link a i{
    font-size: 25px;
}
#newlife2025 .item-section .item-list > li .cart{
    width: 49%;
}
#newlife2025 .item-section .item-list > li .cart a{
    width: 100%;
    background-color: #eb0012;
    color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .3em 0;
    border-radius: 5px;
    gap: 2%;
}
#newlife2025 .item-section .item-list > li .cart a:hover{
    color: #FFF !important;
}
#newlife2025 .item-section .item-list > li .cart a i{
    font-size: 25px;
}

/* 商品リスト：吹き出し */
#newlife2025 .item-section .item-list .speechBubble{
    position: relative;
    width: 80%;
    margin: 0 auto 6px;
    display: inline-block;
    padding: .2em 0;
    border: 2px solid #3a1e06;
    border-radius: 100vw;
    background-color: #ffe9ca;
    text-align: center;
    font-size: 1rem;
    font-weight: 600;
    color: #3a1e06;
    box-shadow: 2px 2px 0px 0px #3a1e06;
}
.speechBubble::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 15px 16px 0px 15px;   
    border-color: #3a1e06 transparent transparent;
    translate: -46% 100%;
}
.speechBubble::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 10.5px 10.8px 0 10.5px;
    border-color: #ffe9ca transparent transparent;
    translate: -50% 100%;
}

/*==============================================
 おすすめ革命セット ここから
================================================*/

/* おすすめ革命セット レイアウト */
#newlife2025 #combo .combo-list .combo-item {
    margin-bottom: 7%;
}
#newlife2025 #combo .combo-list .combo-item:last-child {
    margin-bottom: 0;
}
#newlife2025 #combo .combo-list .combo-name {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4%;
    margin-bottom: 1%;
    overflow-x: hidden;
}
#newlife2025 #combo .combo-list .combo-name h3 {
    font-size: 25px;
    text-align: center;
    color: #c5121d;
    font-weight: 800;
}

/* 国旗風装飾 */
#newlife2025 #combo .combo-list .combo-name .square {
    display: flex;
    gap: 1%;
    box-sizing: border-box;
}
#newlife2025 #combo .combo-list .combo-name .square span {
    font-size: 20px;
}
#newlife2025 #combo .combo-list .combo-name .square.square-left {
    justify-content: end;
}
#newlife2025 #combo .combo-list .combo-name .square.square-left span {
    margin-left: 2%;
}
#newlife2025 #combo .combo-list .combo-name .square.square-right span {
    margin-right: 2%;
}
#newlife2025 #combo .combo-list .combo-name .square span.red {color: #c5121d;}
#newlife2025 #combo .combo-list .combo-name .square span.white {color: #FFF;}
#newlife2025 #combo .combo-list .combo-name .square span.blue {color: #004597;}

/* おすすめ革命セット用 リスト */
#newlife2025 .item-list.cal2  {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
    width: 80%;
    margin: 0 auto 2%;
}
#newlife2025 .item-list.cal2  .sword-icon {
    font-size: 2rem;
    font-weight: bold;
}
#newlife2025 .item-list.cal2  > li {
    width: 45%;
    display: flex;
    flex-direction: column;
    margin: 0;
    border: 1px solid #004597;
}
#newlife2025 .item-section .item-list.cal2  > li .flex-left,
#newlife2025 .item-section .item-list.cal2  > li .flex-right {
    width: 100%;
}
#newlife2025 .item-section .item-list.cal2  > li .price-wrap {
    justify-content: center;
    box-sizing: border-box;
    padding-right: 4%;
}
#newlife2025 .item-section .item-list.cal2  > li .price-wrap .favo {
    right: 13%;
}
#newlife2025 .item-section .item-list.cal2  > li .flex-right h3 {
    font-size: 20px;
    text-align: center;
}
/* おすすめ革命セット用：価格BOX */
#newlife2025 .item-section .combo-priceBox {
    width: 80%;
    margin: 0 auto;
    border: 2px solid #004597;  
    text-align: center;
    background-color: #FFF;
    box-sizing: border-box;
    padding: 1% 0 1.5%;
}
#newlife2025 .item-section .combo-priceBox .normal-price {
    font-family: Lato;
    font-weight: bold;
    margin-bottom: 1%;
}
#newlife2025 .item-section .combo-priceBox .normal-price .yen {
    font-size: 1.2em;
    margin: 0 .5%;
    font-family: Lato;
}
#newlife2025 .item-section .combo-priceBox .set-price {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 2%;
}
#newlife2025 .item-section .combo-priceBox .set-price .revo {
    font-size: 20px;
    color: #FFF;
    padding: .2em .8em .2em 1em;
    margin-right: 2%;
    background: linear-gradient(135deg, #004597 0%, #004597 50%, #c5121d 50%, #c5121d 100%);
}
#newlife2025 .item-section .combo-priceBox .set-price .sale-price {
    font-size: 40px;
    color: #eb0012;
    font-family: Lato;
    font-weight: bold;
    line-height: 1;
}
#newlife2025 .item-section .combo-priceBox .set-price .sale-price .yen {
    font-size: 0.6em;
}
#newlife2025 .item-section .combo-priceBox .combo-addCart {
    width: 100%;
    text-align: center;
}
#newlife2025 .item-section .combo-priceBox .combo-addCart a {
    position: relative;
    background-color: #222;
    color: #FFF;
    width: 70%;
    padding: .5em;
    display: inline-block;
    border-radius: 5px;
}
#newlife2025 .item-section .combo-priceBox .combo-addCart a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .4em;
    height: .4em;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.3s ease 0s;
}

/* 指定日配送 */
#newlife2025 .item-reserve {
    width: 85%;
    box-sizing: border-box;
    margin: 0 auto 3%;
    padding: .8em 0.5em;
    box-shadow: 0 4px 4px rgb(0 0 0 / 5%), 0 2px 3px -2px rgb(0 0 0 / 1%);
    background-image: linear-gradient(transparent calc(100% - 1px), #e6edf3 50%, #e6edf3), linear-gradient(90deg, transparent calc(100% - 1px), #e6edf3 50%, #e6edf3);
    background-size: 15px 15px;
    background-repeat: repeat;
    background-color: #ffffff;
    color: #333333;
    text-align: center;
}
#newlife2025 .item-reserve h3 {
    font-size: 1.5rem;
    color: #FFF;
    background: #2841cb;
    border-radius: 5px;
    margin-bottom: 1%;
}
#newlife2025 .item-reserve p span {
    font-size: 1rem;
}

/*==============================================
 おすすめ革命セット ここまで
================================================*/

/*==============================================
商品リスト ここまで
================================================*/

/*==============================================
その他単品 ここから
================================================*/

#newlife2025 #single-item .category-list {
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#newlife2025 #single-item .category-listItem {
    width: 19%;
    max-width: 380px;
    margin-bottom: 2%;
    border-radius: 5px;
    overflow: hidden;
}
#newlife2025 #single-item .category-listItem a {
    width: 100%;
    text-align: center;
    padding: .3em 0;
    color: #3b1d05;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#newlife2025 #single-item .category-listItem a img {
    width: 90%;
}
/* ホバー時 */
#newlife2025 #single-item .category-listItem a:hover {
    transform: scale(1.05);
    color: #3b1d05 !important;
    opacity: 1;
}

/*==============================================
その他単品 ここまで
================================================*/

/*==============================================
インフォメーション ここから
================================================*/

/* キャンペーン：アコーディオンメニュー */
#newlife2025 .info {
    width: 100%;
    box-sizing: border-box;
    background: #FFF;
    margin: 0 auto;
}
/* サマリー：アコーディオンメニュー中身 */
#newlife2025 .info__contents {
    width: 93%;
    margin: 3% auto 5%;
    box-sizing: border-box;
    padding: 5% 0 2%;
    border-radius: 5px;
}
#newlife2025 .info .flex{
    display: flex;
    justify-content: center;
    gap: 5%;
    margin-bottom: 3%;
}
#newlife2025 .info__contents--title {
    width: 80%;
    max-width: 370px;
    margin: 0 auto 5%;
    text-align: center;
}
#newlife2025 .info hr{
    margin-bottom: 3%;
}
#newlife2025 .info .flex-item.icon{
    width: 20%;
    border-radius: 5px;
    overflow: hidden;
}
/* 早割用 */
#newlife2025 .info .early-camp .flex-item.icon {
    border: 3px solid #e01b8e;
}
/* 革命用 */
#newlife2025 .info .revo-camp .flex-item.icon {
    border: 3px solid #1b5ce0;
}
#newlife2025 .info .flex-item.cap{
    width: 70%;
    display: flex;
    align-items: center;
    justify-content: center;
}
#newlife2025 .info__contents .text-box {
    width: 90%;
    max-width: 500px;
    margin: 0 auto 3%;
}
#newlife2025 .info__contents .text-box__item {
    width: 100%;
    margin: 0 auto 3%;
}
#newlife2025 .info__contents .text-box__item h5::before {
    content: '■';
    font-size: .8em;
    vertical-align: bottom;
}
#newlife2025 .info__contents .text-box__item .kome {
    font-size: .95em;
}
/* テキストリンク用 */
#newlife2025 .info__contents .text-box__item .text-link {
    font-size: .95em;
    color: #1b5ce0;
    display: flex;
    align-items: center;
    text-decoration: underline;
}
#newlife2025 .info__contents .text-box__item .text-link::after {
    content: '';
    transform: translateY(0.05em) rotate(-45deg);
    margin-left: 2%;
    width: 5px;
    height: 5px;
    border-bottom: 2px solid #1b5ce0;
    border-right: 2px solid #1b5ce0;
}
#newlife2025 .info__contents .text-box__item .example {
    margin-top: 1em;
    font-size: .95em;
}
#newlife2025 .info__contents .text-box__item p span {
    font-size: 1.02em;
}
#newlife2025 .info__contents.early-camp {
    background-color: #ffeced;
}
#newlife2025 .info__contents.revo-camp {
    background-color: #FFF;
}

/* セット革命図解 */
#newlife2025 .info__contents .text-box__item .text-box__item--img {
    position: relative;
    display: flex;
    align-items: center;
    background-color: #f0e8dd;
    box-sizing: border-box;
    padding: 3%;
    border-radius: 5px;
    width: 100%;
    margin: 1% 0;
    gap: 2%;
    justify-content: center;
}
#newlife2025 .info__contents .text-box__item .text-box__item--img .img {
    position: relative;
}
#newlife2025 .info__contents .text-box__item .text-box__item--img .img i {
    position: absolute;
    right: 3%;
    bottom: 3%;
    color: #FFF;
    background-color: #eb0012;
    font-size: 2rem;
    padding: 0.3em;
    border-radius: 100vw;
}
#newlife2025 .info__contents .text-box__item .text-box__item--img .sword-icon {
    width: 10%;
    font-size: 2em;
}

/* インフォメーション：アンカー */
#newlife2025 .info-aunker {
    display: flex;
    width: 88%;
    margin: 0 auto;
    gap: 2%;
}
#newlife2025 .info-aunker__link {
    width: 50%;
}
/* インフォメーション：インナー */
#newlife2025 .info-inner {
    width: 90%;
    background-color: #FFF;
    margin: 0 auto 3%;
    box-sizing: border-box;
    border-radius: 5px;
    overflow: hidden;
}
/* インフォメーション：インナータイトル */
#newlife2025 .info-inner--title {
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 3%;
    color: #FFF;
    padding: .1em;
}
/* インフォメーション：インナータイトル（早期特典） */
#newlife2025 .early-camp .info-inner--title {
    background: #e01b8e;
}
/* インフォメーション：インナータイトル（セット革命） */
#newlife2025 .revo-camp .info-inner--title {
    background: #1b5ce0;
}
#newlife2025 .info-inner--img {
    display: flex;
    gap: 3%;
    width: 96%;
    margin: 0 auto 2%;
    text-align: center;
}
#newlife2025 .info-inner--img img {
    border-radius: 5px;
}

/*==============================================
インフォメーション ここまで
================================================*/

/*==============================================
 看板下 ここまで
================================================*/

/*==============================================
別ページ用CSS ここから
================================================*/

/* 子ページ共通看板 */
#newlife2025 .child-page .child-kanban {
    width: 100%;
    position: relative;
    box-sizing: border-box;
    padding: 8% 0% 3%;
}
#newlife2025 .child-page .child-kanban__logo {
    position: absolute;
    top: 0%;
    left: 3%;
    max-width: 190px;
    margin-top: 2%; 
    width: 19%;
}
#newlife2025 .child-page .child-kanban .child-kanban__svg {
    width: 15%;
    margin: 0 auto;
}
#newlife2025 .child-page .child-kanban__h2 {
    text-align: center;
    color: #FFF;
    font-size: 2.5rem;
}
#newlife2025 .child-page .child-kanban__sub {
    text-align: center;
    color: #FFF;
    font-size: 1rem;
}
#newlife2025 .child-page .item-section {
    padding: 0;
}

/* スタンダードセット */
#newlife2025 #standard-page .child-page .child-kanban__chara {
    position: absolute;
    top: 24%;
    right: 6%;
    width: 17%;
}

/* 買い足しセット */
#newlife2025 #plus-page .child-page .child-kanban__chara {
    position: absolute;
    top: 11%;
    right: 1%;
    width: 23%;
}

/* 家具インテリアセット */
#newlife2025 #space .child-page .child-kanban__chara {
    position: absolute;
    top: 59%;
    right: 0%;
    width: 18%;
}

/* 買い足しセット・家具インテリアセット マトリクス */
#newlife2025 #plus-page .child-page .item-section {
    padding: 2% 0 3%;
}
#newlife2025 .item-section .item-list > li.search-item {
    display: flex;
}
#newlife2025 .item-section .item-list > li.search-item.is-hide {
    display: none;
}
#newlife2025 .search-box__wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5%;
    justify-content: center;
}
/* 家具インテリアセット */
#newlife2025 #space .search-box__wrap {
    width: 90%;
    max-width: 520px;
    margin: 0 auto;
}
#newlife2025 .search-box {
    padding: .2em .8em .22em;
    border: 1px solid #543014;
    background-color: #f1d7b2;
    border-radius: 100vw;
    margin-bottom: 1.5%;
    font-size: 1rem;
    color: #543014;
    transition: .2s;
    box-sizing: border-box;
}
#newlife2025 .search-box:has(:checked) {
    background: #543014;
    color: #fff;
}
#newlife2025 .search-box input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    width: 16px;
    height: 16px;
    background-color: #FFF;
    border-radius: 50%;
    vertical-align: -3px;
    margin-right: 0.3em;
    transition: .3s;
}
#newlife2025 .search-box input[type="radio"]:checked:before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #543014;
    content: '';
}
#newlife2025 .search-box__subtitle {
    width: 100%;
    text-align: center;
    margin-bottom: 2%;
}
#newlife2025 .search-box__subtitle {
    font-size: 1rem;
    color: #3b1d05;
}
#newlife2025 #space .taste {
    max-width: 300px;
}

/* テキスト変更 */
#newlife2025 #search-itemtitle {
    text-align: center;
    margin-bottom: 2%;
    font-size: 1rem;
}
#newlife2025 #search-itemtitle::after {
    content: '▼';
    font-size: .8rem;
    margin-left: 3%;
}
#newlife2025 #search-itemtitle::before {
    content: '▼';
    font-size: .8rem;
    margin-right: 2.5%;
}

/* タブレット */
@media screen and (min-width: 1650px) {
    #newlife2025 .child-page #summary {
        position: fixed;
        top: 50%;
        left: 2vw;
        width: calc((100vw - 787px - 6.5vw) / 2);
        padding: 1% 0%;
        transform: translateY(-40%);
    }
    #newlife2025 .child-page #summary h2 {
        font-size: 1.2rem;
    }
    #newlife2025 .child-page .flex {
        padding: 0 4%;
    }
    #newlife2025 .child-page .flex-item__img {
        height: 7rem;
        display: flex;
        align-items: center;
    }
    #standard-page .child-page .flex-item.cal3,
    #standard-page .child-page .flex-item.cal2 {
        width: 49%;
        margin-bottom: 2%;
        padding: 1%;
    }
    #standard-page .child-page .flex-item.cal2:last-child {
        width: 100%;
        height: auto;
    }
    /* 家具インテリアセット */
    #newlife2025 .search-box {
        position: relative;
        width: 90%;
        max-width: 200px;
        margin: 0 0 3%;
        text-align: center;
    }
    #newlife2025 .search-box input[type="radio"] {
        position: absolute;
        top: 50%;
        left: 5%;
        transform: translateY(-50%);
    }

}

/*==============================================
別ページ ここまで
================================================*/

/*==============================================
ナビゲーション ここから
================================================*/
#newlife2025 #nav {
    position: fixed;
    z-index: 10;
    bottom: 0%;
    right: 0%;
    height: 100vh;
}
#newlife2025 #nav.panelactive{
    width: 100%;
}
#newlife2025 #nav .gray-back{
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: #5656566b;
}
#newlife2025 #nav .gray-back.active{
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
#newlife2025 #nav .g-nav{
    position: absolute;
    z-index: 5;
    top: 0;
    right: 0;
    width: calc((100vw - 780px) / 2);
    height: calc(100vh - 141px);
    display: flex;
    align-items: center;
    transition: .55s;
    border-radius: 0 0 5px 5px;
    z-index: 5;
}
#newlife2025 #nav .nav-title {
    position: relative;
    width: 100%;
}
#newlife2025 #nav .g-nav-list .title{
    width: 80%;
    max-width: 210px;
    margin: 0 auto 2%;
}
#newlife2025 #nav .g-nav-list .g-nav-link{
    color: #FFF;
    text-align: center;
    width: 100%;
    max-width: 300px;
}
#newlife2025 #nav .g-nav-list .g-nav-link a{
    padding: 1em 0;
    color: #3b1d05;
    font-size: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-bottom: 1px dashed #b7a89c;
}
#newlife2025 #nav .g-nav-list .g-nav-link a::after {
    transform: translateY(0.05em) rotate(-45deg);
    margin-left: 2%;
    width: 5px;
    height: 5px;
    border-bottom: 3px solid #3b1d05;
    border-right: 3px solid #3b1d05;
    content: '';
}
#newlife2025 #nav .g-nav-list .nav-img{
    position: absolute;
    bottom: .1px;
    right: .1px;
    width: 32%;
    animation: hyoko 1s .4s both ease-in-out;
    display: block;
}

/*アクティブクラスがついたら位置を0に*/
#newlife2025 #nav .g-nav.panelactive{
    top: 0;
    transform: translateY(0%);
}

/*ナビゲーションの縦スクロール*/
#newlife2025 #nav .g-nav .g-nav-list{
    position: relative;
    margin: 0 auto;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

/*========= ボタンのためのCSS ===============*/
#newlife2025 #nav .openbtn1{
    display: none;
    position:fixed;
    z-index: 10;/*ボタンを最前面に*/
    bottom: 2%;
    right: 2%;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    background: #6b421f;
    box-sizing: border-box;
    border: 1px solid #FFF;
}
#newlife2025 #nav .openbtn1.active {
    background-color: #ffffff;
}
/*×に変化*/  
#newlife2025 #nav .openbtn1 span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 13.5px;
    height: 3px;
    border-radius: 2px;
    background: #FFF;
    width: 45%;
}
#newlife2025 #nav .openbtn1 p{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    text-align: center;
    left: 19.5%;
    bottom: 7%;
    font-size: .7rem;
    color: #FFF;
}
#newlife2025 #nav .openbtn1 span:nth-of-type(1) {
  top:16px; 
}
#newlife2025 #nav .openbtn1 span:nth-of-type(2) {
  top:24px;
}
#newlife2025 #nav .openbtn1 span:nth-of-type(3) {
  top:32px;
}
#newlife2025 #nav .openbtn1.active p{
    color: #FFF;
}
#newlife2025 #nav .openbtn1.active span:nth-of-type(1) {
    top: 18px;
    left: 17px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
    background: #6b421f;
}
#newlife2025 #nav .openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}
#newlife2025 #nav .openbtn1.active span:nth-of-type(3){
    top: 30px;
    left: 17px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
    background-color: #6b421f;
}

/* タブレット用 */
@media screen and (max-width: 1400px) {
    #newlife2025 #nav .g-nav .g-nav-list {
        background-color: #f0e8dd;
        width: 90%;
        height: auto;
        max-width: 400px;
        box-sizing: border-box;
        padding: 4% 3%;
        border-radius: 5px;
        max-height: calc(74vh - 140px);
        overflow-y: scroll;
        padding: 4% 0;
        justify-content: start;
    }
    #newlife2025 #nav .openbtn1 {
        display: block;
    }
    #newlife2025 #nav .g-nav {
        top: 0;
        right: 0;
        transform: translateY(-100%);
        background-image: linear-gradient(135deg, rgba(46, 195, 165, 1), rgba(184, 212, 80, 1));
        width: 100vw;
    }
    #newlife2025 #nav .g-nav-list .g-nav-link {
        width: 100%;
        color: #FFF;
    }
    #newlife2025 #nav .g-nav-list .nav-img{
        animation: none;
    }
    #newlife2025 #nav .g-nav.panelactive .g-nav-list .nav-img{
        animation: hyoko 1s .4s both ease-in-out;
    }
}

/*==============================================
ナビゲーション ここまで
================================================*/


/*==============================================
アニメーション ここから
================================================*/

/* セット革命　ヘッダー */
#newlife2025 .header-revo {
    width: 100%;
    background: linear-gradient(135deg, #004597 0%, #004597 50%, #c5121d 50%, #c5121d 100%);
    color: #FFF;
    z-index: 10;
    overflow: hidden;
    margin-inline: auto;
}
#newlife2025 .header-revo.revo-active {
    display: block;
}
#newlife2025 .header-revo .loop {
    animation: loop 45s linear infinite;
    padding: .2em 0;
    font-size: 1.1rem;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: .5%;
}
#newlife2025 .header-revo .loop .big{
    font-size: 1.2em;
}
#newlife2025 .header-revo .loop2{
    position: absolute;
    top: 0; left: 0;
    animation: loop 45s -22.5s linear infinite;
}
#newlife2025 .header-revo .loop__img {
    display: inline-block;
    width: 60px;
    aspect-ratio: 150 / 111;
    animation-name: decoSwing;
    animation-duration: 2400ms;
    animation-timing-function: steps(2, end);
    animation-iteration-count: infinite;
}

/*==============================================
アニメーション ここまで
================================================*/

/*==============================================
ポップアップ ここから
================================================*/

/* セット革命アニメーション */
#newlife2025 .anime {
    display: none;
}
#newlife2025 .anime.revo-active {
    display: block;
}
#newlife2025 .anime.finish,
#newlife2025 .anime.revo-active.finish {
    display: none;
}
#newlife2025 .anime-revo {
    position: fixed;
    top: 0;
    left:0%;
    width: 100%;
	animation: 2.5s linear 0s both zabu-fadein;
    z-index: 99998;
}
#newlife2025 .anime-revo_inner {
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(100vh - 140.54px);
    top: 140.54px;
    left: 0;
    margin: 0 auto;
}
/* セット革命アニメーション：画像 */
#newlife2025 .anime-revo__img.img1 {
    position: relative;
    height: 55vh;
    width: auto;
    max-width: 510px;
}
#newlife2025 .anime-revo__img.img1 img {
    height: 100%;
    width: auto;
}
#newlife2025 .anime-revo__img.img1::after {
    content: '';
    background: url(../../IMAGE/newlife2025/Merci.svg) center no-repeat;
    position: absolute;
    bottom: 6%;
    right: 2%;
    z-index: 10;
    width: 55%;
    aspect-ratio: 196 / 85;
}
/* セット革命アニメーション：テキスト */
#newlife2025 .anime-revo__text {
    color: #FFF;
    font-size: 1.5rem;
    font-style: italic;
    font-weight: 600;
    margin-bottom: .5%;
}
#newlife2025 .anime-revo__img.img2 {
    width: 50%;
}
/* セット革命アニメーション：特典ボックス */
#newlife2025 .anime-revo__box  {
    background-color: #ffe9ca;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    gap: 0%;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 0 1.5% 0 0;
    width: 85%;
    max-width: 500px;
}
#newlife2025 .anime-revo__box p {
    color: #3b1d05;
    font-size: 3.8vw;
    width: 100%;
    text-align: center;
}
#newlife2025 .anime-revo__box--item {
    width: 20%;
    border-radius: 5px;
    overflow: hidden;
    font-size: 1.5rem;
    text-align: center;
    color: #6c3c14;
    font-weight: 600;
    font-style: italic;
    line-height: 1.4em;
    box-sizing: border-box;
    padding: 2%;
}
/* セット革命アニメーション：背景 */
#newlife2025 .anime-background {
    position: fixed;
    z-index: 99997;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, .7);
    opacity: 1;
}
#newlife2025 .close {
    position: absolute;
    bottom: 103%;
    right: 0%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-items: center;
    align-items: center;
    border-radius: 100vw;
    background-color: #FFF;
    z-index: 1000;
    opacity: 0;
	animation: 1s linear 1s both fadein;
}
#newlife2025 .close > .close-button {
    color: #222;
    position: absolute;
    left: 34%;
}
#newlife2025 .anime.revo-active.fadeout .anime-background {
	animation: 1s linear 0s both anime-background-fadeout;
}
#newlife2025 .anime.revo-active.fadeout .anime-revo {
    pointer-events: none;
    -webkit-animation-name: zabu-fadeout !important;
	animation-name: zabu-fadeout !important;
}
/*==============================================
ポップアップ ここから
================================================*/

/*==============================================
PC限定スライダー ここから
================================================*/
/* スライダー */
#newlife2025 #slider {
    position: fixed;
    left: 0;
    width: calc((100vw - 800px) / 2);
    height: calc(100vh - 191px);
    z-index: -1;
}
#newlife2025 .scroll-infinity {
    width: 100%;
}
#newlife2025 .scroll-infinity__wrap {
    display: flex;
    position: relative;
    z-index: 100;
    width: 300%;
    justify-content: center;
    margin: 0 auto;
}
#newlife2025 .scroll-infinity__wrap.vertical {
    width: 100%;
    flex-direction: column;
}
#newlife2025 .scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0
}
#newlife2025 .scroll-infinity__list--vertical {
    animation: infinity-scroll-vertical 40s infinite linear 0s both
}
#newlife2025 .scroll-infinity__item {
    width: 100%;
}
#newlife2025 .scroll-infinity__item > img {
    width: 100%;
    display: block;
}
/* タブレット用 */
@media screen and (max-width: 1400px) {
    #newlife2025 #slider {
        display: none;
    }
}
/*==============================================
PC限定スライダー ここまで
================================================*/

/*25.01.09*/
/* 個別：家具インテリア テイスト */
#newlife2025 .item-section .item-list > li .name .taste {
    display: flex;
    margin-top: -.1rem;
}
#newlife2025 .item-section .item-list > li .name .taste span {
    padding: 0.1em .8em 0.1em;
    border-radius: 100vw;
    font-size: .8rem;
    box-sizing: border-box;
    white-space: nowrap;
}
/*icon color*/
#newlife2025 .item-section .item-list > li .name .taste span.nordic {
    background-color: #fff;
    color: #222;
    margin-right: 3%;
    border: 1px solid;
}
#newlife2025 .item-section .item-list > li .name .taste span.industrial {
    background-color: #886149;
    color: #fff;
    border: 1px solid #886149;
}
#newlife2025 .item-section .item-list > li .name .taste span.modern {
    background:linear-gradient(135deg, #8a6e5b 50%, #222 50%);
    color: #fff;
    border: 1px solid #8a6e5b;
}
#newlife2025 .item-section .item-list > li .name .taste span.hirobiro {
    background-color: #e5d4ba;
    color: #222;
    border: 1px solid #e5d4ba;
}
#newlife2025 .item-section .item-list > li .name .taste span.hirobiro {
    background-color: #e5d4ba;
    color: #222;
    border: 1px solid #e5d4ba;
}
/*item 3カラム*/
#newlife2025 #combo .col_3 > li{
    width: 32%;
}
#newlife2025 .item-section .col_3 > li .flex-right h3 {
    font-size: 15px;
    text-align: center;
}
#newlife2025 .item-section .col_3 > li .price{
    font-size: 23px;
}
/*カラー改行*/
#newlife2025 #interior .name{
    display: block;
}
/*PC 非表示*/
#newlife2025 .pc_none,#newlife2025 .smp-none{
    display: none;
}
/*キャンペーン詳細*/
#newlife2025 .text-box__item h5.top,
#newlife2025 .modal h5.top{
    margin-top: 4%;
}

/*25.01.14*/

/* 早期特典部分修正 */
#newlife2025 #summary .early-camp > .summaryTop-title {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1%;
}

#newlife2025 #summary .early-camp > .summaryTop-title h2 {
    margin-top: -.5%;
    margin-bottom: 0;
    white-space: nowrap;
}

#newlife2025 #summary .early-camp > .summaryTop-title .img-early {
    width: 38%;
}

#newlife2025 #summary .early-camp > .summaryTop-title .period {
    background: #e11b8d;
    box-sizing: border-box;
    padding: 1.2%;
    border-radius: 2px;
}

#newlife2025 #summary .early-camp > .summaryTop-title p {
    white-space: nowrap;
    line-height: 1;
    font-weight: 800;
    font-family: 'Lato', "Zen Kaku Gothic New", 'Noto Sans JP', 'Yu Gothic black', sans-serif, 'メイリオ';
    color: #FFF;
}

#newlife2025 #summary .early-camp > .summaryTop-title p .min {
    white-space: nowrap;    
    line-height: 1;
    font-weight: 800;
    font-family: 'Lato', "Zen Kaku Gothic New", 'Noto Sans JP', 'Yu Gothic black', sans-serif, 'メイリオ';
    color: #FFF;
}

#newlife2025 #summary .early-camp > .summaryTop-title .p-1 {
    font-size: 1.75rem;
    margin-bottom: .1em;
}

#newlife2025 #summary .early-camp > .summaryTop-title .p-1 .min {
    font-size: .7em;
}

#newlife2025 #summary .early-camp > .summaryTop-title .p-2 {
    font-size: 1.5rem;
}

#newlife2025 #summary .early-camp > .summaryTop-title .p-2 .min {
    font-size: .8em;
    font-weight: 800;
    font-family: 'Lato', "Zen Kaku Gothic New", 'Noto Sans JP', 'Yu Gothic black', sans-serif, 'メイリオ';
}

/* セット革命用 */
#newlife2025 #summary .early-camp .summaryTop-inner.revo-camp {
    margin-top: 3%;
    padding: 0;
}

#newlife2025 #summary .early-camp .summaryTop-inner.revo-camp .summaryTop-title {
    justify-content: start;
    align-items: start;
    margin-bottom: -5.5%;
}

#newlife2025 #summary .early-camp .summaryTop-inner.revo-camp .summaryTop-title .img {
    width: 30%;
    margin-top: -1%;
}

#newlife2025 #summary .early-camp .summaryTop-inner.revo-camp .summaryTop-title h2 {
    color: #FFF;
    white-space: nowrap;
    margin-top: 2%;
    line-height: 1.2;
}

#newlife2025 #summary .early-camp .summaryTop-inner.revo-camp .summaryTop-camp {
    background-color: #004597;
    border: 1px solid #FFF;
}

#newlife2025 .summaryTop-camp--item.basket {
    margin-bottom: 3%;
}
#newlife2025 .summaryTop-camp--item.basket .img {
    margin-top: 1%;
}
#newlife2025 .summaryTop-camp--item.gift5000 {
    margin-bottom: 3%;
} 
#newlife2025 .summaryTop-camp--item.gift5000 .p-1 {
    font-size: 1.9rem;
}
#newlife2025 .summaryTop-camp--item.gift5000 .p-2 {
    font-size: 2.0rem;
}
#newlife2025 .summaryTop-camp--item.gift5000 .img {
    margin-right: 1%;
}

#newlife2025 .summaryTop-camp--item.sale .img {
    margin-top: 0%;
}




/* キャンペーン */
#newlife2025 .campaign {
    width: 100%;
    box-sizing: border-box;
    padding: 0% 0 0;
    position: relative;
    z-index: 1;
}
#newlife2025 .campaign-contents__item {
    position: relative;
    width: 93%;
    margin: 0 auto 4%;
    border-radius: 5px;
    overflow: hidden;
}
/* キャンペーン：見出し */
#newlife2025 .campaign-contents__item--title {
    width: 100%;
    text-align: center;
    margin-bottom: 2%;
}
/* キャンペーン：セット革命条件図解 */
#newlife2025 .campaign-contents__item .condition-img {
    width: 97%;
    margin: 0 auto 3%;
    display: flex;
    justify-content: center;
}
#newlife2025 .campaign-contents__item .condition-img__box {
    width: 48%;
    display: grid;
    grid-template-columns: auto auto auto;
}
#newlife2025 .campaign-contents__item .condition-img__box .img {
    position: relative;
}
#newlife2025 .campaign-contents__item .condition-img__box .img:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid #ffffff;
    box-sizing: border-box;
}
#newlife2025 .campaign-contents__item .condition-img__box.kaden .img-1 {
    grid-column: 1 / 2;
    grid-row   : 1 / 2;
}
#newlife2025 .campaign-contents__item .condition-img__box.kaden .img-2 {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
}
#newlife2025 .campaign-contents__item .condition-img__box.kaden .img-3 {
    grid-column: 2 / 4;
    grid-row: 1 / 4;
}
#newlife2025 .campaign-contents__item .condition-img__box.kagu .img-1 {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
}
#newlife2025 .campaign-contents__item .condition-img__box.kagu .img-2 {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
}
#newlife2025 .campaign-contents__item .condition-img__box.kagu .img-3 {
    grid-column: 3 / 4;
    grid-row: 2 / 3;
}
#newlife2025 .campaign-contents__item .condition-img .closs {
    display: flex;
    align-items: center;
    font-size: 2.5rem;
}
/* キャンペーン：セット革命特典 */
#newlife2025 .campaign-contents__item .campaign-benefit {
    display: flex;
    align-items: center;
    background-color: #FFF;
    width: 90%;
    margin: 0 auto 3%;
    border-radius: 5px;
    padding: 1% 0 1% 2%;
    box-sizing: border-box;
}
#newlife2025 .campaign-contents__item .campaign-benefit .icon {
    width: 25%;
}
#newlife2025 .campaign-contents__item .campaign-benefit .text-box p {
    color: var(--font-color-zabu);
    font-size: 1.2rem;
    font-weight: 600;
}
#newlife2025 .campaign-contents__item .campaign-benefit .text-box .text-box__title {
    font-size: 1.2rem;
    background-color: #d50909;
    color: #FFF;
    width: max-content;
    padding: 0 .6em;
    border-radius: 2px;
}
/* キャンペーン：テキスト */
#newlife2025 .campaign-contents__item--text {
    text-align: center;
    margin-bottom: 1%;
    box-sizing: border-box;
}


/* 詳細ポップアップ */
#newlife2025 .campaign-contents__item--more {
    width: 100%;
    margin-bottom: 3%;
}
#newlife2025 .campaign-contents__item--more .link-btn .btn {
    margin-top: 0;
}
/* キャンペーン：コンテンツ 見出し */
#newlife2025 .campaign-contents__item h2{
    position: relative;
    font-size: 3rem;
    z-index: 2;
    stroke-linejoin: round;
    display: flex;
    align-items: center;
    justify-content: center;
}
#newlife2025 .campaign-contents__item h2 .letter{
    font-size: 1em;
    letter-spacing: -8px;
}
#newlife2025 .campaign-contents__item p{
    line-height: 1.5;
    font-weight: 600;
    font-size: 1.3rem;
}
#newlife2025 .campaign-contents__item p span{
    line-height: 1;
}
#newlife2025 .campaign-contents__item p .yellow{
    color: #fcff00;
    font-size: 1em;
}
#newlife2025 .campaign-contents__item p .big{
    font-size: 1.3em;
}
#newlife2025 .campaign-contents__item p .num{
    font-size: 1.5em;
}
#newlife2025 .campaign-contents__item p .letter{
    font-size: 1em;
    letter-spacing: -1.1vw;
}
#newlife2025 .campaign-contents__item p .dot{
    position: relative;
    font-size: 1em;
}
#newlife2025 .campaign-contents__item p .dot::after{
    position: absolute;
    z-index: 10;
    left: 50%;
    bottom: 88%;
    transform: translateX(-50%);
    content: '●';
    font-size: .7rem;
}


/* キャンペーン：コンテンツ 新生活ミッション */
#newlife2025 .campaign-contents__item.mission {
    color: #FFF;
    border: 1px solid #FFF;
    box-shadow: 0 .8px 0px 3px #2c2c2c;
    background: #2ec3a5;
    position: relative;
    z-index: 2;
    padding: 2% 0 0;
    margin-top: 3%;
}
#newlife2025 .campaign-contents__item.mission:hover {
    color: #FFF !important;
    opacity: .9;
}
#newlife2025 .campaign-contents__item.mission::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--title h2 {
    font-size: 2.5rem;
    margin-bottom: 1%;
    line-height: 1.1;
    color: #FFF;
    text-shadow: #22977f 2px 0px, #22977f -2px 0px, #22977f 0px -2px, #22977f 0px 2px, #22977f 2px 2px, #22977f -2px 2px, #22977f 2px -2px, #22977f -2px -2px, #22977f 1px 2px, #22977f -1px 2px, #22977f 1px -2px, #22977f -1px -2px, #22977f 2px 1px, #22977f -2px 1px, #22977f 2px -1px, #22977f -2px -1px, #22977f 0px 3px, #22977f 1px 3px, #22977f -1px 3px, 2px 3px #22977f, -2px 3px #22977f;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--title .sub-title {
    padding-left: 5%;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--chara {
    position: absolute;
    left: -1%;
    top: 0;
    width: 8.5rem;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--btn {
    text-align: center;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--btn p{
    position: relative;
    background-color: #FFF;
    color: #2ec3a5;
    font-size: 1.2rem;
    padding: .1em 0;
}
#newlife2025 .campaign-contents__item.mission .campaign-contents__item--btn p::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .4em;
    height: .4em;
    border-top: 2px solid #2ec3a5;
    border-right: 2px solid #2ec3a5;
    top: -7%;
    bottom: 0;
    right: 5%;
    margin: auto;
    transform: rotate(135deg);
    transition: all 0.3s ease 0s;
}

/* キャンペーン：コンテンツ セット革命 */
#newlife2025 .campaign-contents__item.revo {
    color: #FFF;
    border: 1px solid #FFF;
    box-shadow: 0 .8px 0px 3px #2c2c2c;
    background-color: #0bc0cb;
    position: relative;
    z-index: 2;
}
#newlife2025 .campaign-contents__item.revo::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 .campaign-contents__item.revo .sub-title {
    font-size: 1.5rem;
}
#newlife2025 .campaign-contents__item.revo .campaign-contents__item--text p{
    font-size: 1.8rem;
}
#newlife2025 .campaign-contents__item.revo .campaign-contents__item--text span.text-box__white {
    position: relative;
    font-size: 2.0rem;
    background: #FFF;
    color: #0bc0cb;
    padding: 0 .2em 0 .3em;
    margin: 0 .1em;
}
#newlife2025 .campaign-contents__item.revo h2 {
    margin-left: -4%;
    margin-bottom: 0;
    text-shadow: 
    #0a9098 2px 0px,  #0a9098 -2px 0px,
    #0a9098 0px -2px, #0a9098 0px 2px,
    #0a9098 2px 2px , #0a9098 -2px 2px,
    #0a9098 2px -2px, #0a9098 -2px -2px,
    #0a9098 1px 2px,  #0a9098 -1px 2px,
    #0a9098 1px -2px, #0a9098 -1px -2px,
    #0a9098 2px 1px,  #0a9098 -2px 1px,
    #0a9098 2px -1px, #0a9098 -2px -1px,
    #0a9098 0px 3px, #0a9098 1px 3px, #0a9098 -1px 3px,  2px 3px #0a9098, -2px 3px #0a9098;
}
#newlife2025 .campaign-contents__item.revo h2::before {
    content: '';
    background: url(../../IMAGE/newlife2025/set-revo--whiteborder.svg) center center / contain no-repeat;
    display: block;
    width: 7rem;
    height: 5rem;
}
/* キャンペーン：コンテンツ アプリ特典 */
#newlife2025 .campaign-contents__item.app {
    background-color: #ff4074;
    color: #FFF;
    border: 1px solid #FFF;
    box-shadow: 0 .8px 0px 3px #2c2c2c;
    position: relative;
    z-index: 2;
}
#newlife2025 .campaign-contents__item.app::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}

#newlife2025 .campaign-contents__item.app h2 {
    text-shadow: 
    #c4335a 2px 0px,  #c4335a -2px 0px,
    #c4335a 0px -2px, #c4335a 0px 2px,
    #c4335a 2px 2px , #c4335a -2px 2px,
    #c4335a 2px -2px, #c4335a -2px -2px,
    #c4335a 1px 2px,  #c4335a -1px 2px,
    #c4335a 1px -2px, #c4335a -1px -2px,
    #c4335a 2px 1px,  #c4335a -2px 1px,
    #c4335a 2px -1px, #c4335a -2px -1px,
    #c4335a 0px 3px, #c4335a 1px 3px, #c4335a -1px 3px,  2px 3px #c4335a, -2px 3px #c4335a;
    margin-top: 3%;
    margin-bottom: -1%;
}
#newlife2025 .campaign-contents__item.app h2::before {
    content: '';
    background: url(../../IMAGE/newlife2025/icon__app.png) center center / contain no-repeat;
    display: block;
    width: 5rem;
    height: 4rem;
}
#newlife2025 .campaign-contents__item.app .main-text{
    color: #ffffff;
    text-align: center;
    font-size: 2.5rem;
    font-weight: 800;
}
#newlife2025 .campaign-contents__item.app .link-btn{
    margin-bottom: 3%;
}
/* アプリ特典用日付 */
#newlife2025 .campaign-contents__item.app .campaign-contents__item--appday {
    display: flex;
    justify-content: center;
    gap: 4%;
    margin-bottom: 2%;
}
#newlife2025 .campaign-contents__item.app .campaign-contents__item--appday p {
    background-color: #FFF;
    color: #ff4074;
    font-weight: 700;
    font-size: 1.5rem;
    padding: 0 .3em;
    border-radius: 2px;
}
#newlife2025 .campaign-contents__item.app .campaign-contents__item--text.gold p {
    font-size: 1.4rem;
}


/* キャンペーン：新生活ミッション*/
#newlife2025 .campaign-contents--main {
    width: 100%;
    background-image: linear-gradient(135deg, rgba(227, 244, 241, 1), rgba(215, 232, 150, 1));
}
/* キャンペーン：新生活ミッション 見出し */
#newlife2025 .campaign-contents--main .title{
    position: relative;
    z-index: 2;
    background: #2ec3a5;
    padding: 1% 0 1%;
    text-align: center;
}
#newlife2025 .campaign-contents--main .title h2{
    font-size: 2rem;
    line-height: 1.1;
    color: #FFF;
    text-shadow: 
    #22977f 2px 0px,  #22977f -2px 0px,
    #22977f 0px -2px, #22977f 0px 2px,
    #22977f 2px 2px , #22977f -2px 2px,
    #22977f 2px -2px, #22977f -2px -2px,
    #22977f 1px 2px,  #22977f -1px 2px,
    #22977f 1px -2px, #22977f -1px -2px,
    #22977f 2px 1px,  #22977f -2px 1px,
    #22977f 2px -1px, #22977f -2px -1px,
    #22977f 0px 3px, #22977f 1px 3px, #22977f -1px 3px,  2px 3px #22977f, -2px 3px #22977f;
}
#newlife2025 .campaign-contents--main .title h2 span{
    font-size: .7em;
}
#newlife2025 .campaign-contents--main .title::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 .campaign-contents--main .title .sub-title{
    color: #FFF;
    font-size: 1.1rem;
    font-weight: 700;
    margin-top: 1%;
}

/* 新生活応援キャンペーン 動画 */
#newlife2025 .campaign-contents--main .video-title {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3%;
    margin-bottom: 1%;
}
#newlife2025 .campaign-contents--main .video-title .img {
    width: 10%;
}
#newlife2025 .campaign-contents--main .video-title p {
    color: var(--font-color-zabu);
}

#newlife2025 .campaign-contents--main .video-youtube {
    width: 90%;
    margin: 0 auto 2%;
}

#newlife2025 .campaign-contents--main .video-youtube iframe {
    aspect-ratio: 560 / 315;
    width: 100%;
    height: 100%;
    border-radius: 5px;
    overflow: hidden;
}

/* 未ログイン */
#newlife2025 .campaign-contents--main .registr-btn {
    width: 95%;
    padding-top: 1%;
    margin: 0 auto;
}
#newlife2025 .campaign-contents--main .registr-btn .btn {
    position: relative;
    z-index: 2;
    width: 95%;
    border-radius: 5px;
    margin: 2% auto 1%;
    background-color: #d30f0f;
    box-sizing: border-box;
    border: 1px solid #FFF;
    box-shadow: 0 .8px 0px 2px #670f0f;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 5%;
}
#newlife2025 .campaign-contents--main .registr-btn .btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 1.8rem;
    opacity: .13;
}
#newlife2025 .campaign-contents--main .registr-btn .btn .img {
    position: absolute;
    z-index: 5;
    width: 30%;
    bottom: -9%;
    left: -2%;
    transform: rotate(-6deg);
}
#newlife2025 .campaign-contents--main .registr-btn .btn .click {
    position: absolute;
    top: 50%;
    right: 2.5%;
    transform: translateY(-50%);
    display: block;
    width: 3rem;
    height: 3rem;
    background-color: #FFF;
    border-radius: 100vw;
    margin-right: 2%;
    margin-left: 1%;
}
#newlife2025 .campaign-contents--main .registr-btn .btn .click::after {
    position: absolute;
    z-index: 3;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .5em;
    height: .5em;
    border-top: 3px solid #d30f0f;
    border-right: 3px solid #d30f0f;
    top: 0;
    bottom: 0;
    right: 45%;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.3s ease 0s;
}
#newlife2025 .campaign-contents--main .registr-btn .btn p {
    color: #FFF;
    padding: .3em 0 .3em;
    box-sizing: border-box;
    text-align: start;
    font-weight: bold;
    line-height: 1.5;
    font-size: 1.4rem;
}
#newlife2025 .campaign-contents--main .registr-btn .btn p .big {
    font-size: 1.06em;
}
#newlife2025 .campaign-contents--main .registr-btn .kome {
    font-size: .9em;
    box-sizing: border-box;
    padding: 0 4%;
    margin-bottom: 3%;
}
/* 社販用 */
#newlife2025 .campaign-contents--main .staff{
    margin-bottom: 1%;
    text-align: center;
}

/* キャンペーン：新生活ミッション 特典山盛りサンプル */
#newlife2025 .campaign-contents.sample {
    width: 100%;
    display: flex;
    flex-direction: column;
    max-width: 650px;
    margin: 0 auto;
}
#newlife2025 .campaign-contents.sample .item-section {
    position: relative;
    z-index: 2;
    padding: 2% 0;
    background-color: #ff7e40;
    border: 1px solid #FFF;
    box-shadow: 0 .8px 0px 3px #2c2c2c;
    box-sizing: border-box;
    border-radius: 5px;
    margin: 0 auto 4%;
    width: 93%;
}
#newlife2025 .campaign-contents.sample .item-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 {
    width: 95%;
    background: #FFF;
    border-radius: 5px;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2.back-none {
    background-color: transparent;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li {
    border: none;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li .flex-right{
    padding: 0;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li.sample-1 {
    width: 59%;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li.sample-2 {
    width: 31%;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li.price-list {
    width: 100%;
    text-align: center;
    padding: 0;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li.price-list p {
    font-size: 1.2rem;
}
#newlife2025 .campaign-contents.sample .item-section .item-list.cal2 > li.price-list .num {
    color: #eb0012;
    font-family: Lato;
    font-weight: 700;
    font-size: 1.5em;
    flex-flow: column;
    display: inline-flex;
    align-items: start;
    margin-left: 1%;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit{
    width: 95%;
    margin: 0 auto;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit__top-item {
    width: 100%;
    margin: 0 auto;
    max-width: 500px;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit__text {
    text-align: center;
    margin: 0 auto 2%;
    font-weight: bold;
    font-size: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit__text.flex-none {
    display: block;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit__text span.text-border{
    font-size: 1.5rem;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #ffffffdb;
    border-radius: 5px;
    width: 95%;
    padding: 2% 0 2% 0;
    margin: 3% auto 2%;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table .camp{
    width: 22%;
    text-align: center;
    display: flex;
    margin-bottom: 2%;
    justify-content: center;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table .camp.revo .img {
    width: 40%;
    margin: 0 auto;
    padding: 5% 10% 4%;
    background-color: #0bc0cb;
    border-radius: 3px;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table .camp.app .plazaicon-irismark {
    font-size: 3rem;
    background: #FFF;
    border-radius: 5px;
    box-sizing: border-box;
    padding: .9% 0 0 1.2%;
    box-shadow: 2px 1px 3px #818181;
    color: #e00000;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table .camp.mission .mission-text {
    background-image: linear-gradient(135deg, rgba(46, 195, 165, 1), rgba(184, 212, 80, 1));
    font-size: 1.2rem;
    white-space: nowrap;
    text-align: center;
    padding: .1em .5em;
    justify-content: center;
    font-weight: bold;
    color: #FFF;
}
#newlife2025 .campaign-contents.sample .item-section .item-benefit .item-benefit__table .text{
    width: 78%;
    font-weight: bold;
    font-size: 1.1rem;
}

/* モーダル用CSS */
#newlife2025 .modal-input {
    opacity: 0;
    display: none;
}

#newlife2025 .modal {
    position: fixed;
    left: 0;
    top: 141px;
    width: 100%;
    height: calc(100dvh - 141px);
    z-index: 9999;
    display: none;
}
#newlife2025 .text-content {
    position: relative;
    display: none;
    max-height: 70dvh;
    overflow-y: scroll;
    box-sizing: border-box;
    padding: 0% 4% 4%;
    margin-top: 4%;
}
#newlife2025 .text-content.block {
    display: block;
    overflow-y: auto;
    max-height: none;
}

/* モーダル表示切替 */
/* セット革命説明用 */
#newlife2025:has(#modal-trigger-revo:checked) .modal, /* モーダル自体を表示 */
#newlife2025:has(#modal-trigger-revo:checked) .text-content.revo { /* 個別のコンテンツを表示 */
    display: block;
    animation: fadein .3s;
}
/* アプリ特典説明用 */
#newlife2025:has(#modal-trigger-app:checked) .modal,
#newlife2025:has(#modal-trigger-app:checked) .text-content.app {
    display: block;
    animation: fadein .3s;
}
/* 新生活ミッション特典説明用 */
#newlife2025:has(#modal-trigger-present_1:checked) .modal,
#newlife2025:has(#modal-trigger-present_1:checked) .text-content.present_1 {
    display: block;
    animation: fadein .3s;
}
#newlife2025:has(#modal-trigger-present_2:checked) .modal,
#newlife2025:has(#modal-trigger-present_2:checked) .text-content.present_2 {
    display: block;
    animation: fadein .3s;
}
#newlife2025:has(#modal-trigger-present_3:checked) .modal,
#newlife2025:has(#modal-trigger-present_3:checked) .text-content.present_3 {
    display: block;
    animation: fadein .3s;
}
#newlife2025:has(#modal-trigger-present_4:checked) .modal,
#newlife2025:has(#modal-trigger-present_4:checked) .text-content.present_4 {
    display: block;
    animation: fadein .3s;
}
#newlife2025:has(#modal-trigger-present_5:checked) .modal,
#newlife2025:has(#modal-trigger-present_5:checked) .text-content.present_5 {
    display: block;
    animation: fadein .3s;
}
/* 特典マップ用 */
#newlife2025:has(#modal-trigger-present_map:checked) .modal,
#newlife2025:has(#modal-trigger-present_map:checked) .text-content.present_map {
    display: block;
    animation: fadein .3s;
}

#newlife2025 .text-content p{
    margin-bottom: .3em;
}
#newlife2025 .text-content p.kome{
    font-size: .9em;
}
#newlife2025 .text-content p .text-link{
    color: #1b5ce0;
    text-decoration: underline;
    display: inline-block;
}

#newlife2025 .modal-inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 500px;
    background-color: #fefefe;
    z-index: 2;
    border-radius: 5px;
}

.modal-background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100vh - 136.97px);
    background-color: rgba(0, 0, 0, .45);
    z-index: 1;
    cursor: pointer;
}

.modal-close {
    background-color: #3b3b3b;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 100vw;
    width: 2em;
    height: 2em;
    line-height: 0;
    position: fixed;
    top: -4%;
    right: -2%;
    z-index: 99;
    font-size: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    padding-bottom: 0%;
    box-sizing: border-box;
    padding-left: .05em;
    cursor: pointer;
}

.text-content--title {
    text-align: center;
    color: #FFF;
    margin-bottom: 4%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .3em 0;
}
.text-content--title .img {
    width: 4rem;
    margin-right: 3%;
}
.text-content--title .plazaicon-irismark {
    margin-right: 2%;
    font-size: 2.5rem;
    background: #FFF;
    border-radius: 5px;
    box-sizing: border-box;
    padding: .6% 0 0 .6%;
    color: #e00000;
}
.text-content--title .text-h2 {
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: -.2px;
}


.text-section {
    width: 100%;
    margin-bottom: 5%;
    text-align: start;
}
#newlife2025 .text-section__title .text-h3 {
    position: relative;
    z-index: 2;
    font-size: 1.5rem;
    text-align: center;
    display: inline-block;
    background: #FFF;
    padding: 0 5%;
}
.text-section__title {
    position: relative;
    margin-bottom: 3%;
    text-align: center;
}
.text-section__title:before, .text-section__title:after {
    content: '';
    position: absolute;
    z-index: 1;
    top: 58%;
    display: inline-block;
    width: 50%;
    height: 1px;
    background-color: black;
}
.text-section__title::before {
    left: 0;
}
.text-section__title::after {
    right: 0;
}

.text-h5 {
    font-size: 4.0vw;
    margin-top: 5%;
}
.text-h5::before {
    content: '■';
    font-size: .8em;
    margin-right: 1%;
}
.text__section--box {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 3%;
    justify-content: center;
    background: #faf0e3;
    box-sizing: border-box;
    padding: 3% 0;
}
.text__section--box .img {
    position: relative;
    width: 42%;
}
.text__section--box .img .plazaicon-cart {
    position: absolute;
    right: 3%;
    bottom: 3%;
    color: #FFF;
    background-color: #eb0012;
    font-size: 1.8rem;
    padding: .4em;
    border-radius: 100vw;
}
.text__section--box .sword-icon {
    width: 8%;
}
.text__section--box .img.icon {
    width: 22%;
    border: 2px solid #1b5ce0;
    box-sizing: border-box;
    border-radius: 5px;
    background-color: #FFF;
}
.text__section--box .plazaicon-irismark {
    font-size: 6rem;
    background: #FFF;
    border-radius: 5px;
    box-sizing: border-box;
    padding: .9% 0 0 1.2%;
    box-shadow: 2px 1px 3px #818181;
    color: #e00000;
}

.text__section--gray {
    margin: 5% 0 0;
    box-sizing: border-box;
    padding: 3% 4%;
    background-color: #ededed;
}
.text__section--gray .modal-h6{
    font-size: 3.3vw;
}

#newlife2025 .text-section .text-link {
    font-size: 1em;
    color: #1b5ce0;
    display: flex;
    align-items: center;
    text-decoration: underline;
}

#newlife2025 .text-section .text-h6 {
    font-size: 1rem;
}

/* セット革命 色替え */
.text-content.revo .text-content--title {
    background-color: #0bc0cb;
}

/* アプリ特典 色替え */
.text-content.app .text-content--title {
    background-color: #ff4074;
}

/* 新生活ミッション特典 変更点 */
#newlife2025 .text-content.present .text-content--title {
    background-color: #17937a;
    font-size: 1.5rem;
}
#newlife2025 .text-content.present .text__section--present {
    width: 70%;
    max-width: 270px;
    margin: 0 auto;
}
#newlife2025 .text-content.present .text__section--presentMap {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}
#newlife2025 .text-content.present .present-itemName {
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 3%;
}
/* #newlife2025 .text-content.present .text-section {
    box-sizing: border-box;
    padding: 0 2%;
} */
#newlife2025 .text-content.present .present-itemWrap {
    width: 95%;
    box-sizing: border-box;
    border: 1px solid #222;
    padding: 1% 3%;
}

/* 続きを読む */
#newlife2025 .text-content.more .text-section {
    position: relative;
    max-height: 15rem;
    overflow: hidden;
}
#newlife2025 .text-content.more .text-section::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 60px;
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .9) 50%, hsla(0, 0%, 100%, .9) 0, #fff);
    content: '';
}
#newlife2025 .text-content.more:has(:checked) .text-section::after {
    content: none;
}
#newlife2025 .text-content.more:has(:checked) .text-section {
    max-height: none;
}
#newlife2025 .read-more {
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 15%;
    left: 50%;
    transform: translateX(-50%);
    padding: .5em 3em;
    border-radius: 1px;
    background-color: #222;
    color: #fff;
    font-size: 1rem;
    border-radius: 5px;
    z-index: 100;
}
#newlife2025 .text-content.more:has(:checked) .read-more {
    display: none;
}
#newlife2025 .read-more input {
    display: none;
}

/* キャンペーン：新生活ミッション アンカー用 */
#newlife2025 .campaign-contents.anchor {
    background-color: #FFF;
}
#newlife2025 .campaign-contents.anchor .flex {
    width: 94%;
}
#newlife2025 .campaign-contents.anchor .flex li {
    width: 48.5%;
}
#newlife2025 .campaign-contents.anchor .flex h3 {
    color: var(--font-color-zabu);
}
#newlife2025 .campaign-contents.anchor .flex p {
    color: var(--font-color-zabu);
}

/* ゲーム部分 */
#newlife2025 #game {
    /* アンカー高さ合わせ */
    width: 100%;
}

#newlife2025 .game-title {
    width: 100%;
    margin-bottom: 2%;
    text-align: center;
}
#newlife2025 .game-title h3 {
    font-size: 1.5rem;
    color: #FFF;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 2%;
    background: #63340feb;
    border-radius: 100vw;
    padding: .1em 2.1em;
}
#newlife2025 .game-title h3 .img{
    width: 8%;
    margin-top: -1%;
}
#newlife2025 .game-title p {
    color: var(--font-color-zabu);
    font-weight: 600;
}

#newlife2025 .game-contents{
    position: relative;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    background: transparent;
    z-index: 2;
    box-sizing: border-box;
    padding: 0;
    background: linear-gradient(135deg, rgb(119 231 168) 0%, rgb(227 253 142) 100%);
}
#newlife2025 .game-contents::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 1rem;
    opacity: .2;
}
/* #newlife2025 .game-contents__0::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-0.jpg) top center no-repeat;
}
#newlife2025 .game-contents__1::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-1.jpg) top center no-repeat;
}
#newlife2025 .game-contents__2::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-2.jpg) top center no-repeat;
}
#newlife2025 .game-contents__3::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-3.jpg) top center no-repeat;
}
#newlife2025 .game-contents__4::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-4.jpg) top center no-repeat;
}
#newlife2025 .game-contents__5::after {
    background: url(../../IMAGE/newlife2025/2nd/slider-back-5.jpg) top center no-repeat;
} */

#newlife2025 .game-contents #game-slider {
    overflow: visible;
    padding-bottom: 1%;
    z-index: 2;
    container-type: inline-size;
}

/* 新生活ミッション：プログレスバー */
#newlife2025 .game-contents .game-mater {
    width: 100%;
    box-sizing: border-box;
    padding: 5.5rem 0 4rem 0;
}
#newlife2025 .game-contents .game-mater__border {
    position: relative;
    width: 86%;
    margin: 0 auto;
    height: .6rem;
    background-color: #ebe2da;
    border-radius: 100vw;
}
#newlife2025 .game-contents .game-mater__border--prm {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background-color: #009688;
    border-radius: 100vw;
}
#newlife2025 .game-contents .game-mater__border--prm .now {
    position: absolute;
    top: 50%;
    left: 100%;
    transform: translate(-50%, -50%);
    z-index: 10;
    display: block;
    width: 3rem;
}
/* 新生活ミッション：プログレスバー ザブロウアイコン */
#newlife2025 .game-contents .game-mater__border--prm .zabu {
    width: 100%;
    animation-name: decoSwing;
    animation-duration: 2400ms;
    animation-timing-function: steps(2, end);
    animation-iteration-count: infinite;
}
/* 新生活ミッション：プログレスバー 吹き出し */
#newlife2025 .game-contents .game-mater__border--prm .speechBubble {
    position: absolute;
    z-index: 1;
    top: 135%;
    right: -17%;
    background-color: #4e180d;
    text-align: center;
    font-size: 4vw;
    font-weight: 600;
    color: #ffffff;
    border-radius: 1px;
}
#newlife2025 .game-contents .game-mater__border--prm .speechBubble::before {
    content: "";
    position: absolute;
    bottom: 99%;
    left: 50%;
    border-style: solid;
    border-width: 0px 10px 7px 10px;
    border-color: transparent transparent #4e180d;
    translate: -46% 0%;
}
#newlife2025 .game-contents .game-mater__border--prm .speechBubble::after {
    content: none;
}
#newlife2025 .game-contents .game-mater__border--prm .speechBubble-text {
    white-space: nowrap;
    padding: .25em .25em .25em;
    line-height: 1;
    letter-spacing: -1px;
    font-size: 1.1rem;
}
#newlife2025 .game-contents .game-mater__border--item {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 5%;
    aspect-ratio: 1 / 1;
    background-color: #222;
    border-radius: 100vw;
    z-index: 1;
    box-sizing: border-box;
}
/* 新生活ミッション：プログレスバー 〇 */
#newlife2025 .game-contents .game-mater__border--item.cir-1 {
    left: 0;
    background-color: #17937a;
    border: 3px solid #17937a;
}
#newlife2025 .game-contents .game-mater__border--item.cir-2 {
    left: 25%;
    background-color: #FFF;
    border: 3px solid #0cc0cb;
}
#newlife2025 .game-contents .game-mater__border--item.cir-3 {
    left: 40%;
    background-color: #FFF;
    border: 3px solid #ff4074;
}
#newlife2025 .game-contents .game-mater__border--item.cir-4 {
    left: 50%;
    background-color: #FFF;
    border: 3px solid #ebb219;
    z-index: 2;
}
#newlife2025 .game-contents .game-mater__border--item.cir-5 {
    left: 75%;
    background-color: #FFF;
    border: 3px solid #ff3249;
}
#newlife2025 .game-contents .game-mater__border--item.cir-6 {
    left: 100%;
    background-color: #FFF;
    border: 3px solid #a6bf03;
}
#newlife2025 .game-contents .game-mater__border--item.clear {
    background-color: #17937a;
    border: 3px solid #17937a;
}
#newlife2025 .game-contents .game-mater__border--item .present {
    position: absolute;
    bottom: 110%;
    left: 50%;
    width: 4.5rem;
    transform: translateX(-50%);
}
/* 新生活ミッション：プログレスバー モーダル呼び出し */
#newlife2025 .game-contents .game-mater__border--item .present label {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
/* 新生活ミッション：プログレスバー チェックマーク */
#newlife2025 .game-contents .game-mater__border--item .check{
    position: absolute;
    width: 70%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#newlife2025 .game-contents .game-mater__border--item .check img{
    display: block;
}
/* 新生活ミッション：プログレスバー 目標金額 */
#newlife2025 .game-contents .game-mater__border--item .buy-price{
    position: absolute;
    left: 50%;
    top: 97%;
    transform: translateX(-50%);
    font-size: .9rem;
    color: #4e180dde;
    white-space: nowrap;
}

/* add 0307 */
/* 新生活ミッションから探す */
#newlife2025 .newlife-search-form {
    width: 100%;
    margin-bottom: 1%;
}
#newlife2025 .newlife-search-form .input-box {
    width: 90%;
    margin: 0 auto 3%;
    position: relative;
    display: flex;
    align-items: center;
}
#newlife2025 .newlife-search-form .input-box input {
    width: 100%;
    padding: .8em .8em .8em 5em;
    margin: 0 auto;
    box-sizing: border-box;
    display: block;
    border-radius: 100vw;
    border: 2px solid #d30f0f;
    font-size: 1rem;
}
#newlife2025 .newlife-search-form .input-box input:focus {
    outline: none;
}
#newlife2025 .newlife-search-form .input-box i {
    position: absolute;
    left: 3vw;
    font-size: 1rem;
    color: #d30f0f;
    font-weight: bold;
}

/* 地図 クリック */
#newlife2025 .game-map {
    position: relative;
    margin-bottom: 3%;
    background: #b3d4c1;
}
#newlife2025 .game-map .game-title{
    background-color: #b3d4c1;
    padding-top: 2%;
    margin-bottom: 0;
}
#newlife2025 .game-map__content {
    position: relative;
    background: #b3d4c1;
    max-width: 500px;
    margin: 0 auto ;
}

#newlife2025 .game-map__content--click {
    position: absolute;
    transform: translate(-50%, -50%);
    z-index: 1;
    /* クリックエリア確認用 */
    /* background-color: #ffffffc2; */
    border-radius: 5vw;
}
#newlife2025 .game-map__content--click label {
    display: block;
    width: 100%;
    height: 100%;
    margin-bottom: 3%;
}
#newlife2025 .game-map__content--click.present-1 {
    top: 83.5%;
    left: 65%;
    width: 22%;
    height: 24%;
}
#newlife2025 .game-map__content--click.present-2 {
    top: 52.5%;
    left: 74.5%;
    width: 23%;
    height: 24%;
}
#newlife2025 .game-map__content--click.present-3 {
    top: 55.5%;
    left: 36.5%;
    width: 25%;
    height: 27%;
}
#newlife2025 .game-map__content--click.present-4 {
    top: 19.5%;
    left: 28%;
    width: 27%;
    height: 29%;
}
#newlife2025 .game-map__content--click.present-5 {
    top: 20%;
    left: 80%;
    width: 31%;
    height: 33%;
}

/* ミッション達成賞状 */
#newlife2025 .game-certificate {
    position: relative;
}
#newlife2025 .game-certificate__user {
    font-size: 1.4rem;
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    font-weight: 700;
    color: #0f0707;
}
#newlife2025 .game-certificate__user .min {
    font-size: .8em;
    font-weight: 700;
    color: #0f0707;
}

/* おすすめアイテム */
#newlife2025 .game-recommend {
    width: 100%;
}
#newlife2025 .game-recommend .game-recommend__title {
    text-align: center;
}
#newlife2025 .game-recommend .game-recommend__slider {
    width: 100%;
    display: flex;
    padding: 1% 0 3%;
    box-sizing: border-box;
    margin: 0 auto;
}
#newlife2025 .game-recommend .game-recommend__slider--item {
    margin-right: 3%;
    background: #FFF;
    border-radius: 5px;
    overflow: hidden;
    border: 2px solid #17937a;
    box-sizing: border-box;
}
#newlife2025 .game-recommend .game-recommend__slider--item:nth-child(1) {
    margin-left: 3%;
}
#newlife2025 .game-recommend .game-recommend__slider--item h5 {
    font-size: 1.2rem;
    text-align: center;
}
#newlife2025 .game-recommend .game-recommend__slider--item .buy_price>ul .price {
    font-size: 1.5rem;
    display: block;
    text-align: center;
}
#newlife2025 .game-recommend .game-recommend__slider--item .buy_price>ul {
    display: block;
}

/* swiper デフォルトCSS調整 */
#newlife2025 .swiper-wrapper {
    align-items: start;
}
#newlife2025.swiper-container {
    padding-bottom: 5%;
}

.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    display: block;
    visibility: hidden;
    justify-content: center;
}

/* swiper-slide */
#newlife2025 .swiper-slide {
    width: 32cqw;
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
}
#newlife2025 .swiper-slide label{
    width: 100%;
}

#newlife2025 .swiper-slide .chara-box {
    position: relative;
    width: 100%;
    height: 27cqw;
    display: flex;
    flex-direction: column;
    justify-content: end;
}
#newlife2025 .swiper-slide .chara-box .present {
    width: 23cqw;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
#newlife2025 .swiper-slide .chara-box .present.clear::after {
    content: '';
    background: url(../../IMAGE/newlife2025/2nd/present-clear.png) no-repeat;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    background-position: 50% 18%;
    background-size: 69%;
}


#newlife2025 .swiper-slide .chara-box .chara {
    display: none;
    position: absolute;
    width: 93%;
    aspect-ratio: 1 / 1;
    top: 5%;
    left: -0.5%;
    z-index: 1;
    animation-name: chara-change;
    animation-duration: 1000ms;
    animation-timing-function: steps(2, jump-none);
    animation-iteration-count: infinite;
    background-size: 84%;
    background-repeat: no-repeat;
    background-position: center center;
}
#newlife2025 .swiper-slide.active .chara-box .chara {
    display: block;
}
#newlife2025 .swiper-slide.active .chara-box .ellipse {
    width: 24cqw;
}
#newlife2025 .game-contents .swiper-slide.active .ellipse::after {
    width: 57%;
    height: 38%;
}

/* STARTの旗 */
#newlife2025 .swiper-slide .chara-box .img.frag{
    position: absolute;
    top: 0;
    left: 49%;
    transform: translateX(-50%);
    width: 67%;
    z-index: 1;
}

/* 目標 */
#newlife2025 .swiper-slide .chara-box .target{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-sizing: border-box;

}
#newlife2025 .swiper-slide .chara-box .target .img{
    width: 18cqw;
    margin-top: -12%;
}
#newlife2025 .swiper-slide .comment{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--font-color-zabu);
    font-weight: 600;
    font-size: 3cqw;
    background: #ffffff8a;
    line-height: 1.5;
    padding: 0 .2em;
    border-radius: 5px;
    width: max-content;
    margin-top: 3%;
}

#newlife2025 .game-contents .swiper-slide .ellipse{
    position: relative;
    display: block;
    width: 18cqw;
    margin: 0 auto;
    height: 16%;
    background-color: #b0b0b0;
    clip-path: ellipse(47% 50% at 50% 50%);
}
#newlife2025 .game-contents .swiper-slide .ellipse::after{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 50%;
    margin: 0 auto;
    height: 33%;
    clip-path: ellipse(47% 50% at 50% 50%);
    background: #4545457a;
}

#newlife2025 .game-contents .swiper-slide:nth-child(odd) .ellipse {
    /* background-color: #e5b472; */
}

#newlife2025 .test-btn {
    display: flex;
    justify-content: center;
    gap: 2cqw;
}
#newlife2025 .test-btn input {
    width: 9cqw;
    height: 9cqw;
    display: block;
    text-align: center;
}

/* 吹き出し */
#newlife2025 .swiper-slide .speechBubble {
    position: relative;
    z-index: 2;
    width: 85%;
    height: 15cqw;
    margin: 0 auto 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .2em 0;
    border: 2px solid #222;
    background-color: #ffffff;
    text-align: center;
    font-size: 4vw;
    font-weight: 600;
    color: #222;
    box-shadow: 2px 2px 0px 0px #222;
    font-size: var(--font-size-base);
}
.speechBubble::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 12px 12px 0px 12px;
    border-color: #222 transparent transparent;
    translate: -46% 100%;
    /* transform: rotate(180deg) translate(50%, 100%); */
}
.speechBubble::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    border-style: solid;
    border-width: 7.5px 7.8px 0 7.8px;
    border-color: #ffe9ca transparent transparent;
    translate: -50% 100%;
    /* transform: rotate(180deg) translate(48%, 100%); */
}

/* 個別スライド調整 */
#newlife2025 #game .swiper-slide__0 .ellipse{
    background-color: #cf9686;
}
#newlife2025 #game .swiper-slide__1 .ellipse{
    background-color: #0cc0cb;
}
#newlife2025 #game .swiper-slide__2 .ellipse{
    background-color: #f0af13;
}
#newlife2025 #game .swiper-slide__3 .ellipse{
    background-color: #ff4074;
}
#newlife2025 #game .swiper-slide__4 .ellipse{
    background-color: #ff3249;
}
#newlife2025 #game .swiper-slide__5 .ellipse{
    background-color: #adc700;
}

/* 新生活ミッションのシステム部分 */
#newlife2025 #game .game-system {
    width: 100%;
    margin: 0 auto 0%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #009688;
    box-sizing: border-box;
    padding: 2% 3% 0;
}
#newlife2025 #game .game-system .game-system__price {
    position: relative;
    width: 49%;
    background-color: #FFF;
    border: 3px solid #097962;
    padding: .8em 0 .5em;
    border-radius: 5px;
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 2%;
    line-height: 1.1;
    font-size: 1.2rem;
}
#newlife2025 #game .game-system .game-system__price .num {
    font-size: 2rem;
    font-family: Lato;
    line-height: 1.2;
}
#newlife2025 #game .game-system .game-system__price.next-price {
    position: relative;
}
#newlife2025 #game .game-system .game-system__price.next-price::before {
    content: '';
    display: inline-block;
    width: 1rem;
    aspect-ratio: 1 / 1;
    background-color: #ffffff;
    border-radius: 100vw;
    box-sizing: border-box;
    vertical-align: baseline;
    margin-bottom: -.03em;
    margin-left: -6%;
    margin-right: 0%;
}
#newlife2025 #game .game-system .game-system__price.next-price .num {
    color: #eb0012;
}
#newlife2025 #game .game-system .game-system__price.next-price.price_FLG__0::before {
    border: 2px solid #0cc0cb;
}
#newlife2025 #game .game-system .game-system__price.next-price.price_FLG__1::before {
    border: 2px solid #ff4074;
}
#newlife2025 #game .game-system .game-system__price.next-price.price_FLG__2::before {
    border: 2px solid #ebb219;
}
#newlife2025 #game .game-system .game-system__price.next-price.price_FLG__3::before {
    border: 2px solid #ff3249;
}
#newlife2025 #game .game-system .game-system__price.next-price.price_FLG__4::before {
    border: 2px solid #a6bf03;
}

/* エントリーボタン */
#newlife2025 #game .game-system .game-system__entry {
    width: 90%;
    background-color: #818181;
    border: 2px solid #818181;
    border-radius: 5px;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1%;
    font-size: 1.1rem;
    white-space: nowrap;
    padding: .6em 0;
    color: #FFF;
    font-weight: 600;
    text-align: start;
    line-height: 1.2;
    pointer-events: none;
}
#newlife2025 #game .game-system .game-system__entry:hover {
    color: #FFF !important;
    opacity: 1;
    transform: scale(1.05);
}
#newlife2025 #game .game-system .game-system__entry::after {
    white-space: pre;
    /* content: '家電セット・家具インテリアセットを\A購入した方のみ参加可能です。'; */
    content: '';
    text-align: center;
    line-height: 1.5;
}
#newlife2025 #game .game-system .game-system__entry.set_buy {
    background-color: #e30e1e;
    border: 2px solid #e30e1e;
    pointer-events: all;
}

#newlife2025 #game .game-system .game-system__entry.disabled {
    width: 90%;
    background-color: #818181;
    border: 2px solid #818181;
    pointer-events: none;
}
#newlife2025 #game .game-system .game-system__entry.set_buy::after {
    /* content: '新生活ミッションにエントリーする！'; */
}
#newlife2025 #game .game-system .game-system__entry.clear::after {
    /* content: '新生活ミッションにエントリー済みです'; */
}
#newlife2025 #game .game-system .kome{
    font-size: .9rem;
    color: #222;
    line-height: 1.3;
}


/* 全体図ポップアップ */
#newlife2025 #game .game-system .game-system__map {
    position: relative;
    width: 29%;
    background-color: #17937a;
    border-radius: 5px;
}
#newlife2025 #game .game-system .game-system__map label {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #FFF;
    box-sizing: border-box;
    padding-right: 8%;
}
#newlife2025 #game .game-system .game-system__map .plazaicon-kakudai{
    position: absolute;
    right: 3%;
    font-size: 2rem;
}

/* エントリーボタン */
#newlife2025 .game-entry {
    width: 100%;
    margin-bottom: 2%;
}
#newlife2025 #game .game-entry__btn {
    position: relative;
    z-index: 2;
    width: 90%;
    margin: 2% auto 0;
    background-color: #e30e1e;
    pointer-events: all;
    border-radius: 5px;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1%;
    font-size: 1.3rem;
    white-space: nowrap;
    padding: .9em 0;
    color: #FFF;
    font-weight: 600;
    text-align: start;
    line-height: 1.2;
    border: 1px solid #FFF;
    box-shadow: 0 .6px 0px 2px #2c2c2c;
    cursor : pointer;
}
#newlife2025 #game .game-entry__btn::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 #game .game-entry__btn .click {
    width: 2.5rem;
    aspect-ratio: 45 / 44;
    transform: rotate(30deg);
    margin-bottom: -1%;
    position: absolute;
    right: 2%;
}
#newlife2025 #game .game-entry__btn.clear,
#newlife2025 #game .game-entry__btn.disabled {
    background-color: #818181;
    border: 2px solid #818181;
    pointer-events: none;
    font-size: 1.1rem;
    padding: .4em 0;
    border: none;
    box-shadow: none;
}
#newlife2025 #game .game-entry__btn.clear::after,
#newlife2025 #game .game-entry__btn.disabled::after {
    content: none;
}
#newlife2025 #game .game-system .kome{
    font-size: 3.3vw;
    color: #222;
    line-height: 1.3;
}
/* 未エントリー動作 */
#newlife2025 .game-contents .game-mater.gray > *:not(.entry-push),
#newlife2025 .game-contents .game-system.gray > *,
#newlife2025 .game-contents .game-title.gray {
    filter: brightness(0.5);
    pointer-events: none;
}
/* エントリー後の進捗確認 */
#newlife2025 .game-contents .entry-push.gray {
    display: block;
}
/* 獲得した特典を未エントリー時は非表示 */
#newlife2025 #game .game-section.get-present.gray {
    display: none;
}

#newlife2025 .game-contents .entry-push {
    display: none;
    position: absolute;
    top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    background-color: #FFF;
    width: 80%;
    padding: 3% 0;
    text-align: center;
    box-sizing: border-box;
    border: 2px solid #e30e1e;
    color: #e30e1e;
}

/* ゲーム：セクション */
#newlife2025 #game .game-section {
    width: 95%;
    margin: 0 auto 3%;
    border-radius: 5px;
    overflow: hidden;
    background: #FFF;
}
#newlife2025 #game .game-section__title {
    width: 100%;
    background-color: #17937a;
    margin-bottom: 3%;
}
#newlife2025 #game .game-section__title h3 {
    font-size: 1.5rem;
    text-align: center;
    color: #FFF;
    padding: 1% 0;
}
#newlife2025 #game .game-section__title h3 span.sub {
    font-size: .9em;
    font-family: "Zen Kaku Gothic New", 'Noto Sans JP', 'Yu Gothic black', sans-serif, 'メイリオ';
    font-weight: 700;
    font-style: normal;
}

#newlife2025 #game .game-section__content .cap {
    width: 100%;
    margin-bottom: 3%;
    text-align: center;
}
#newlife2025 #game .game-section__content .cap .icon{
    display: inline-block;
    color: #FFF;
    font-size: 1.5rem;
    padding: 0 .8em;
    margin-right: 2%;
    background-image: linear-gradient(135deg, rgba(46, 195, 165, 1), rgba(184, 212, 80, 1));
}

/* ゲーム：獲得した特典 */
#newlife2025 #game .game-section.get-present {
    display: block;
}
#newlife2025 #game .game-section__content.present {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 5%;
    box-sizing: border-box;
    padding: 0 5%;
}
#newlife2025 #game .game-section__content.present .game-section__content--present{
    width: 30%;
    margin-bottom: 3%;
}

/* ゲームヘッダー */
#newlife2025 .game-header {
    position: sticky;
    top: 141px;
    z-index: 100;
    background-color: #2ec3a5;
    height: 70px;
    overflow: hidden;
    display: flex;
    justify-content: space-around;
    align-items: center;
    box-sizing: border-box;
    padding: .8% 1% .5%;
    box-shadow: 0 2px 0px 0px #009688;
}
#newlife2025 .game-header:hover {
    opacity: 1;
    color: #222 !important;
}
#newlife2025 .game-header::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: url(../../IMAGE/newlife2025/cir.svg);
    background-position: center;
    background-size: 2.1rem;
    opacity: .15;
}
#newlife2025 .game-header__logo {
    width: 17.5%;
}
#newlife2025 .game-header__content {
    width: 78%;
    height: 100%;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 2;
    background: #ffffff;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 0 0 0 1%;
}
#newlife2025 .game-header__content p {
    line-height: 1.4;
    margin-bottom: -.3%;
    font-size: 1rem;
    letter-spacing: 0.05px;
}
#newlife2025 .game-header__content .next-price {
    line-height: 1;
    font-size: 1.4em;
    color: #eb0012;
    letter-spacing: 1.5px;
}
#newlife2025 .game-header__content .next-present {
    width: 22%;
    margin-top: 5%;
    margin-right: -1%;
}

/* ページの並び替え */
#newlife2025 .contents {
    display: flex;
    flex-direction: column;
}

/* 通常時 */
#newlife2025 .contents #campaign-common {
    background: #f7f4f0;
}

/* 0307 新生活TOP回遊 */
#newlife2025 .newlife-top-excursion {
    width: 85%;
    margin: 0 auto 3%;
}
#newlife2025 .newlife-top-excursion .img {
    border-radius: 5px;
    overflow: hidden;
}
#newlife2025 .newlife-top-excursion__text {
    text-align: center;
    color: #FFF;
    font-size: 1.5rem;
    font-weight: bold;
}

/* 20250312 R.SUGAWARA ADD STA [メルマガ購読必須] */
#newlife2025 .game-entry label{
    display: flex;
    justify-content: center;
    gap: 5px;
    padding-top: 10px;
}
#newlife2025 .game-entry input[type=checkbox]{
    transform: scale(1.5);
}
#newlife2025 .game-entry .entry-attention{
    text-align: center;
}
/* 20250312 R.SUGAWARA ADD END [メルマガ購読必須] */

/* 20250313 単品合計価格削除 */
#newlife2025 .total-price {
    display: none;
}

/* 20250314 新生活ミッション 続きを読む */
#newlife2025 .game-hidden {
    position: relative;
    height: 15rem;
    overflow: hidden;
}
#newlife2025 .game-hidden::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    background: linear-gradient(180deg, rgb(0 0 0 / 0%) 0%, rgb(0 0 0 / 0%) 30%, rgb(255 255 255) 100%);
}
#newlife2025 .game-hidden:has(:checked) {
    height: auto;
}
#newlife2025 .game-hidden:has(:checked) .read-more.game-hidden-more {
    display: none;
}
#newlife2025 .game-hidden:has(:checked)::after {
    content: none;
}

/* 20250314 おすすめセットから選ぶ アイテム追加 */
#anchor .anchor-item {
    width: 90%;
    max-width: 500px;
    margin: 0 auto 2%;
}
#anchor .anchor-item .img:hover {
    opacity: 1;
    transform: scale(1.03);
}
#anchor .anchor-item .link-btn .btn{
    width: 100%;
    background-color: #222;
    color: #FFF;
    border: 2px solid #FFF;
    box-sizing: border-box;
}
#anchor .section-sub-title{
    width: 100%;
    text-align: center;
}
#anchor .section-sub-title h3{
    color: #FFF;
    margin-bottom: 1%;
}

/* 250321追加 */
#newlife2025 .meku {
    box-sizing: border-box;
}
#newlife2025 .meku img{
    width: 90%;
    border-radius: 10px;
    display: block;
    margin: 0 auto;
}

#newlife2025 .anchor .btn {
    border-radius: 10px;
    padding: 1% 0% 3%;
    box-shadow: 0px 4px #73050c;
}
#newlife2025 .anchor .btn.btm {
    background: #4ec6d5;
}
#newlife2025 .anchor .btn.inte {
    background: #bdbdbd;
}
#newlife2025 .anchor .btn.plus {
    background: #f86358;
}

#newlife2025 .anchor .flex .btn {
    position: relative;
}
#newlife2025 .anchor .flex .btn a::after {
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: .4em;
    height: .4em;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    bottom: 12%;
    right: 48%;
    margin: auto;
    transform: rotate(135deg);
}

/* 250418 追加 */
#newlife2025 #plus {

    /* 買い足し単品リスト */
    .single-item-list {
        width: 93%;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        .single-item {
            width: 48%;
            margin-bottom: 4%;
            background-color: #FFF;
            border-radius: 5px;
            overflow: hidden;
            border: 2px solid #FFF;
            box-sizing: border-box;

            .single-item__inner {
                padding: 3% 0;

                & h3 {
                    text-align: center;
                }
                .price-wrap {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    margin: 0 auto 1%;

                    .mission-camp{
                        background-image: linear-gradient(135deg, rgba(46, 195, 165, 1), rgba(184, 212, 80, 1));
                        font-size: 1rem;
                        white-space: nowrap;
                        text-align: center;
                        padding: 2% 2%;
                        justify-content: center;
                        font-weight: bold;
                        color: #FFF;
                        margin-right: 2%;
                        line-height: 1;
                    }
                }
                .single-item__link {
                    width: 95%;
                    margin: 0 auto 3%;
                    background-color: #eb0012;
                    color: #FFF;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    padding: .2em 0;
                    border-radius: 5px;
                    font-size: 1.1rem;
                }
                .cart{
                    width: 95%;
                    margin: 0 auto;
                    background-color: #eb0012;
                    color: #FFF;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    padding: .2em 0;
                    border-radius: 5px;
                    gap: 2%;
                    & p {
                        font-size: 1.1rem;
                    }
                    .plazaicon-cart {
                        font-size: 1.8em;
                    }
                }
            }

        }

    }
    
    /* 買い足しカテゴリ見出し */
    .category-title {
        & h3 {
            color: #FFF;
            text-align: center;
            font-size: 28px;
            margin-bottom: 2%;
        }
    }

    /* 買い足しカテゴリリスト */
    .category-list {
        width: 91%;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;

        .category-listItem {
            width: 20%;
            margin-bottom: 2%;
            border-radius: 5px;
            overflow: hidden;


            & a {
                width: 100%;
                text-align: center;
                padding: .3em 0;
                color: #482c16;
                display: flex;
                flex-direction: column;
                align-items: center;
                color: #FFF;
                font-size: 1rem;

                & img {
                    width: 90%;
                }

                &:hover {
                    opacity: 1;
                    transform: scale(1.05);
                    color: #FFF !important;
                }
            }
        }
        
    }

}

/* 250418 カウントダウンタイマー追加 */
#counter_wrap {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 2.5rem;
    background: #fa1c1b;
    
    #counter {
        width: 100%;
        line-height: 1;
        font-size: 1rem;
        display: flex;
        justify-content: center;
        align-items: baseline;
        color: #fff;

        & span {
            font-size: 1.8em;
            line-height: 1;
            color: #fff700;
            font-family: Lato;
        }
    }
}
#newlife2025 #game .game-system {
    margin-top: 0;
}
