@charset "UTF-8";

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

main.main-area.lp {
    position: relative;
}

#contentsMain {
    color: #1c1c1c;

}

/* フェードイン */
#contentsMain .loadFade {
    opacity: 0;
    transform: translateY(10px);
    transition: all 1s;
}

#contentsMain .loadFade.done {
    opacity: 1;
    transform: translate(0, 0);
}

#contentsMain .scrollFade .fade1 {
    opacity: 0;
    transform: translateY(10px);
    transition: all 1s;
}

#contentsMain .scrollFade .fade2 {
    opacity: 0;
    transform: translateY(10px);
    transition: all 1s;
    transition-delay: 0.5s;
}

#contentsMain .scrollFade.done .fade1 {
    opacity: 1;
    transform: translate(0, 0);
}

#contentsMain .scrollFade.done .fade2 {
    opacity: 1;
    transform: translate(0, 0);
}

/*==========================
パンくず
==========================*/
.breadcrumbBlock {
    background-color: #fff;
}

#breadcrumb {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 auto;
}

#breadcrumb li {
    font-family: 'Helvetica', sans-serif !important;
    color: #1C1C1C;
    letter-spacing: .05em;
}

#breadcrumb li.currentPage {
    color: #1C1C1C;
}

/*==========================
LP
==========================*/


#contentsMain .lp_gradation {
    background: #d5f0f8;
}
    

#contentsMain .mvBlock {
    position: relative;
}

/* MV */
#contentsMain .pageTitle h2 {
    color: #fff;
    font-family: 'Helvetica', sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
}

#contentsMain .pageTitle h3 {
    color: #000000;
    font-family: 'Helvetica', sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
}

/* 特集アクセサリー */
#contentsMain .lp_main .logo {
    width: 150px;
    margin: auto;
}

#contentsMain .mainTxt {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    line-height: 1.75;
    letter-spacing: .05em;
    text-align: center;
    margin-bottom: 10%;
}

#contentsMain .lpInner h2 {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    line-height: 1.2;
    letter-spacing: .05em;
}

#contentsMain .lpInner h3 {
    position: relative;
    color: #707070;
    font-family: minion-pro, serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: .05em;
}

#contentsMain .lpInner .lpTxt {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    line-height: 1.75;
    letter-spacing: .05em;
}

#contentsMain .lpInner .lp_itemCredit {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    line-height: 2.1;
    letter-spacing: .05em;
}

#contentsMain .lpInner .lp_itemCredit a {
    display: inline-block;
    
}

#contentsMain .lpInner .lp_itemCredit a span {
    text-decoration: underline;
}

/* rapuimg仮差し込み */
.rapuspan {
    text-align: center;
    display: block;
    width: 100%;
    margin-top: 40px;
}

/* case */
.container {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* .box {
    background-color: #FFF;
    border-radius: 15px;
    padding: 20px;
    text-align: center;
    height: auto;
} */

.casetitle {
    font-size: calc(26*(100vw/1200));
    font-family: 'Helvetica';
}

.casetitle2 {
    font-size: calc(26*(100vw/1200));
    font-family: 'Helvetica';
}



/* 2025.08.26 */
.infoSpecial {
    background-color: #005ea6;
}

.pageBackBtn {
    text-align: center; 
    padding: 30px 0 80px;
}

.pageBackBtn {
    color: #fff;
    text-decoration: underline;
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    font-size: 16px;
}


/* ケースPC向けのスタイル */
@media (min-width: 768px) {
    .casetitle {
        color: #FFF;
        font-size: 1px;
    }

    .box {
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        padding: 5px;
        width: 60%;
    }

    #contentsMain .mainTxt {
        padding: calc(80*(100vw/750)) calc(20*(100vw/750)) 0;
        font-size: calc(22*(100vw/750));
    }

    #contentsMain .mainTxt .mainTxtLink {
        text-decoration: underline;
        text-decoration-thickness: 2px;
        text-underline-offset: 8px;
    }

    .image {
        max-width: 45%;
        border-radius: 10px;
    }

    /* 画像を重ねるPC向け */
    .image-container {
        position: relative;
        width: auto;
        /* コンテナの幅 */
    }

    .image-container img {
        width: 42%;
        margin: 6% 0px 0px 14%;
        height: auto;
    }

    .image-container img:nth-child(2) {
        width: 19%;
        margin: -14% 0px 0% 50%;
    }

    .image-container img:nth-child(3) {
        width: 21%;
        margin: -46% 18% 43% auto;
    }

    /* カテゴリー画像PC向け */
    .rapuimg {
        width: 14%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }

    .flowerimg {
        width: 14%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }

    .lightsimg {
        width: 18%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }
    /* ケースブロックとモデル画像の余白調整用PC向け */
        .container {
        margin-top: -6%;
    }
    .spcase {
        display: none;
    }
    .pccase {
        display: block;
        margin: 10%;
    }
    .tuikaBGI {
        margin: 4% 0% 0 0%;
    }
    .BGI2 {
        margin: 1% 26% 0 26%;
    }

    .infoSpecial_case {
        width: 65%;
        margin: 0 auto;
        padding: 30px 0 0;
    }

    .infoSpecial_dealer {
        width: 65%;
        margin: 0 auto;
        padding: 0 0 30px;
    }

    .pageBackBtn {
        padding: 20px 0 60px;
    }

}

/* ケーススマホ向けのスタイル */
@media (max-width: 767px) {
    .casetitle2 {
        color: #FFF;
        font-size: 1px;
    }

    .container {
        padding-bottom: 50px;
    }

    #contentsMain .mainTxt {
        padding: calc(70*(100vw/750)) calc(20*(100vw/750));
        font-size: calc(21*(100vw/750));
        background-color: #005ea6;
        color: white;
        margin-bottom: 0;
    }

    #contentsMain .mainTxt .mainTxtLink {
        text-decoration: underline;
        text-decoration-thickness: 1px;
        text-underline-offset: 8px;
    }

    .casetitle {
        font-size: calc(63*(100vw/1200))
    }

    .box {
        padding: 25px;
        width: 80%;
    }

    .image {
        max-width: 100%;
        border-radius: 10px;
    }
    
    /* 画像を重ねるスマホ向け */
    .image-container {
        position: relative;
        width: auto;
        margin-top: 50px;
    }

    .image-container img {
        width: 59%;
        height: auto;
        margin: 0px 0px 0px 15px;
    }

    .image-container img:nth-child(2) {
        width: 43%;
        margin: -25% 15px 0 auto;
    }

    .image-container img:nth-child(3) {
        width: 34%;
        margin: -30px 0px 55px 15%;
    }

    /* カテゴリー画像スマホ向け */
    .rapuimg {
        width: 35%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }

    .flowerimg {
        width: 35%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }

    .lightsimg {
        width: 42%;
        height: auto;
        vertical-align: bottom;
        display: initial;
    }

    #contentsMain .box .mainTxt {
        padding: 0;
    }

    .space {
        padding-left: 4px;
    }

    .pccase {
        display: none;
    }
    .spcase {
        display: block;
    }

    .infoSpecial {
        padding-top: 25px;
    }

    .pageBackBtn {
        padding: 20px 0 40px;
    }

}

/* 特集まとめ */
#contentsMain .lp_ItemAll h2 {
    font-family: 'Helvetica', sans-serif;
    letter-spacing: .05em;
    text-align: center;
}

#contentsMain .lp_ItemAll p {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    line-height: 1.75;
    letter-spacing: .05em;
    text-align: center;
}

#contentsMain .lp_ItemAll .lp_itemList h3 {
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    letter-spacing: .05em;
}

#contentsMain .lp_ItemAll .lp_itemList h4 {
    color: #0e0e0e;
    font-family: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important;
    letter-spacing: .05em;
}

/* コレクション一覧はこちら */
#contentsMain .moreItemBtn a {
    display: block;
    margin: 0 auto;
    color: #fff;
    font-family: 'ヒラギノ明朝 ProN W3', 'HiraMinProN-W3', 'HG明朝E', 'ＭＳ Ｐ明朝', 'MS PMincho', 'MS 明朝', serif;
    letter-spacing: .05em;
    text-align: center;
    background-color: #00235F;
    border: 1px solid #00235F;
    transition: all 0.6s;
}

#contentsMain .moreItemBtn a:hover {
    background-color: transparent;
    color: #00235F;
    opacity: 1;
}

/*----------------------------------------
    p-summer-container (背景画像)
----------------------------------------*/
/* .p-summer-container {
  position: relative;
  background: url(../img/bg-product01.webp) center/cover;
  padding: 8rem 7rem;
} */
.p-summer-container:before {
  /* content: ""; */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #D0D6DE;
  background: linear-gradient(-45deg, rgb(208, 214, 222) 0%, rgb(208, 214, 222) 100%);
  opacity: 0.3;
}


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

    /*==========================
    パンくず
    ==========================*/
    #breadcrumb {
        padding: calc(28*(100vw/750)) calc(20*(100vw/750));
    }

    #breadcrumb li {
        font-size: calc(22*(100vw/750));
    }

    #breadcrumb li span {
        margin: 0 calc(12*(100vw/750));
    }

    /*==========================
    LP
    ==========================*/
    /* MV */
    #contentsMain .mvBlock {
        padding: calc(320*(115vw/750)) 0;
    }

    #contentsMain .mvBlock::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-repeat: no-repeat;
        background-position: 0 113px;
        background-image: url('../img/mvSp_2.jpg');
        background-size: 100%;
    }

    #contentsMain .pageTitle {
        position: absolute;
        top: 42%;
        left: 0;
        right: 0;
        margin: auto;
        text-align: center;
    }

    #contentsMain .pageTitle h2 {
        font-size: calc(28*(100vw/750));
    }

    #contentsMain .pageTitle h3 {
        margin-top: calc(16*(100vw/750));
        font-size: calc(56*(100vw/750));
    }

    #contentsMain .lp_main {
        padding-bottom: calc(200*(1vw/750));
    }

    .onlyPC {
        display: none !important;
    }

    /* 特集アクセサリー */
    #contentsMain .lpInner {
        margin-top: calc(200*(70vw/750));
    }

    #contentsMain .lpInner .lpContents {
        display: flex;
        flex-direction: column-reverse;
        width: calc(670*(100vw/750));
    }

    #contentsMain .lpInner .lpContents:nth-of-type(n+2) {
        margin-top: calc(160*(100vw/750));
    }

    #contentsMain .lpInner .lpContents.flexNormal {
        margin-left: auto;
    }

    #contentsMain .lpInner .lpContents.flexReverse .lpLeft {
        padding-left: calc(20*(100vw/750));
    }

    #contentsMain .lpInner .lpContents .lpLeft {
        width: calc(640*(100vw/750));
    }

    #contentsMain .lpInner h2 {
        margin-top: calc(80*(100vw/750));
        font-size: calc(40*(100vw/750));
    }

    #contentsMain .lpInner h3 {
        margin-top: calc(28*(100vw/750));
        padding-left: calc(80*(100vw/750));
        font-size: calc(26*(100vw/750));
    }

    #contentsMain .lpInner h3::before {
        content: '';
        display: block;
        position: absolute;
        top: calc(14*(100vw/750));
        left: 0;
        width: calc(60*(100vw/750));
        height: calc(2*(100vw/750));
        background-color: #707070;
    }

    #contentsMain .lpInner .lpTxt {
        margin-top: calc(48*(100vw/750));
        font-size: calc(26*(100vw/750));
    }

    #contentsMain .lpInner .lp_itemCredit {
        margin-top: calc(40*(100vw/750));
        font-size: calc(20*(100vw/750));
    }

    #contentsMain .lpInner .lp_logo {
        width: 50% !important;
    }

    /* 特集まとめ */
    #contentsMain .lp_ItemAll {
        padding: calc(160*(1vw/750)) calc(20*(100vw/750)) calc(82*(60vw/750));
        padding-top: 20px;
        margin: 15px 0 0 0;
    }

    #contentsMain .lp_ItemAll h2 {
        font-size: calc(40*(100vw/750));
    }

    #contentsMain .lp_ItemAll p {
        margin-top: calc(60*(100vw/750));
        font-size: calc(22*(100vw/750));
    }

    #contentsMain .lp_ItemAll .lp_itemList {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        max-width: calc(710*(100vw/750));
        width: 100%;
    }

    #contentsMain .lp_ItemAll .lp_itemList li {
        width: calc(344*(100vw/750));
    }

    #contentsMain .lp_ItemAll .lp_itemList li:nth-of-type(n+3) {
        margin-top: calc(60*(100vw/750));
    }

    #contentsMain .lp_ItemAll .lp_itemList h3 {
        margin-top: calc(35*(100vw/750));
        font-size: calc(26*(100vw/750));
    }

    #contentsMain .lp_ItemAll .lp_itemList h4 {
        margin-top: calc(24*(100vw/750));
        font-size: calc(24*(100vw/750));
    }
    
    .p-summer-container {
      padding: 1rem 0;
    }

    /* コレクション一覧はこちら */
    #contentsMain .lp_ItemAll .moreItemBtn a {
        width: calc(640*(100vw/750));
        height: calc(100*(100vw/750));
        margin: calc(70*(100vw/750)) auto 0;
        font-size: calc(26*(100vw/750));
        line-height: calc(100*(100vw/750));
    }

}

/*************************************PC****************************************/
@media screen and (max-width: 1400px) and (min-width: 768px) {
    html {
        font-size: calc(10* (100vw / 1400)) !important;
    }
}

@media only screen and (min-width: 768px) {

    /*==========================
    パンくず
    ==========================*/
    #breadcrumb {
        max-width: 120rem;
        padding: 1.15rem 0;
    }

    #breadcrumb li {
        font-size: 1.1rem;
    }

    #breadcrumb li span {
        margin: 0 .5rem;
    }

    /*==========================
    LP
    ==========================*/
    /* MV */
    #contentsMain .mvBlock {
        padding: 20.9%;
    }

    #contentsMain .mvBlock::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100vh;
        background-repeat: no-repeat;
        background-position: 0 10rem;
        background-image: url('../img/mvPc_2.jpg');
        background-size: 100%;
    }

    #contentsMain .pageTitle {
        position: absolute;
        top: 43%;
        left: 0;
        right: 0;
        margin: auto;
        text-align: center;
    }

    #contentsMain .pageTitle h2 {
        font-size: calc(22*(100vw/1200));
    }

    #contentsMain .pageTitle h3 {
        margin-top: 1.5rem;
        font-size: calc(44*(100vw/1200));
    }

    #contentsMain .lp_main {
        padding-bottom: 0;
    }

    #contentsMain .mainTxt {
        margin: 0 auto;
        padding: 4vw 0;
        font-size: calc(14*(100vw/1200));
        background-color: #005ea6;
        color: #FFF;
    }

    .onlySmall {
        display: none !important;
    }

    /* 特集アクセサリー */
    #contentsMain .lpInner .lpContents {
        width: calc(1200*(100vw/1400));
        margin: 10rem auto 0;
    }

    #contentsMain .lpInner .lpContents.flexNormal {
        display: flex;
        justify-content: center;
    }

    #contentsMain .lpInner .lpContents.flexReverse {
        display: flex;
        flex-direction: row-reverse;
        justify-content: center;
    }

    #contentsMain .lpInner .lpContents.flexNormal .lpLeft {
        margin-right: calc(40*(100vw/1400));
        padding-left: calc(100*(100vw/1400));
    }

    #contentsMain .lpInner .lpContents.flexReverse .lpLeft {
        margin-left: calc(40*(100vw/1400));
        padding-right: calc(100*(100vw/1400));
    }

    #contentsMain .lpInner h2 {
        margin-top: 4rem;
        font-size: calc(24*(100vw/1200));
    }

    #contentsMain .lpInner h3 {
        margin-top: 1.4rem;
        padding-left: 4rem;
        font-size: calc(14*(100vw/1200));
    }

    #contentsMain .lpInner h3::before {
        content: '';
        display: block;
        position: absolute;
        top: .7rem;
        left: 0;
        width: 3rem;
        height: .1rem;
        background-color: #707070;
    }

    #contentsMain .lpInner .lpTxt {
        margin-top: 3rem;
        font-size: calc(14*(100vw/1200));
    }

    #contentsMain .lpInner .lp_itemCredit {
        margin-top: 3rem;
        font-size: calc(6*(100vw/1200));
    }

    #contentsMain .lpInner .lp_Img {
        width: calc(600*(100vw/1400));
    }

    #contentsMain .lpInner .lp_logo {
        width: 100%;
    }

    /* 特集まとめ */
    #contentsMain .lp_ItemAll {
        padding: 0.5rem 0;
    }

    #contentsMain .lp_ItemAll h2 {
        font-size: calc(26*(100vw/1200));
    }

    #contentsMain .lp_ItemAll p {
        margin-top: 2rem;
        font-size: calc(14*(100vw/1200));
    }

    #contentsMain .lp_ItemAll .lp_itemList {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        max-width: calc(1200*(100vw/1400));
        width: 100%;
        margin: 5rem auto 0;
    }

    #contentsMain .lp_ItemAll .lp_itemList li {
        width: calc(270*(100vw/1400));
        margin-left: 3.8rem;
        margin-bottom: 5rem;
    }

    #contentsMain .lp_ItemAll .lp_itemList li:nth-of-type(1),
    #contentsMain .lp_ItemAll .lp_itemList li:nth-of-type(5),
    #contentsMain .lp_ItemAll .lp_itemList li:nth-of-type(9) {
        margin-left: 0;
    }

    #contentsMain .lp_ItemAll .lp_itemList h3 {
        margin-top: 1rem;
        font-size: calc(12*(100vw/1200));
    }

    #contentsMain .lp_ItemAll .lp_itemList h4 {
        margin-top: 1rem;
        font-size: calc(12*(100vw/1200));
    }

    /* コレクション一覧はこちら */
    #contentsMain .moreItemBtn a {
        width: calc(318*(100vw/1400));
        height: calc(48*(100vw/1400));
        margin: calc(70*(100vw/1400)) auto 0;
        font-size: calc(15*(100vw/1200));
        line-height: calc(48*(100vw/1400));
        transition: all 0.6s;
    }

    #contentsMain .moreItemBtn a:hover {
        background-color: transparent;
        color: #00235F;
        opacity: 1;
    }
}

/*=================================
PC width1200px以上 フォントサイズ固定
=================================*/
@media only screen and (min-width: 1200px) {

    /*==========================
    LP
    ==========================*/
    /* MV */
    #contentsMain .pageTitle h2 {
        font-size: 22px;
    }

    #contentsMain .pageTitle h3 {
        font-size: 42px;
    }

    #contentsMain .mainTxt {
        font-size: 14px;
        background-color: #005ea6;
        color: white;
        padding: 50px;
    }

    /* 特集アクセサリー */
    #contentsMain .lpInner h2 {
        font-size: 24px;
    }

    #contentsMain .lpInner h3 {
        font-size: 14px;
    }

    #contentsMain .lpInner .lpTxt {
        font-size: 14px;
    }

    #contentsMain .lpInner .lp_itemCredit {
        font-size: 12px;
    }

    .onlySmall {
        display: none !important;
    }

    /* 特集まとめ */
    #contentsMain .lp_ItemAll h2 {
        font-size: 26px;
    }

    #contentsMain .lp_ItemAll p {
        font-size: 14px;
    }

    #contentsMain .lp_ItemAll .lp_itemList h3 {
        font-size: 12px;
        color: #141414;
        text-align: center;
        
    }

    #contentsMain .lp_ItemAll .lp_itemList h4 {
        font-size: 12px;
        text-align: center;
    }

    #contentsMain .case {
        width: 700px;
        margin-top: 30px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    /* コレクション一覧はこちら */
    #contentsMain .lp_ItemAll .moreItemBtn a {
        font-size: 15px;
    }
}