@charset "UTF-8";
/*reset css -->*/
*,
*::before,
*::after {
    box-sizing: border-box;
}
*  {
    min-height: 0;
    min-width : 0;
}
html,body,div,span,
h1,h2,h3,h4,h5,h6,dl,dt,dd,ol,ul,li,
table,tbody,tfoot,thead,tr,th,td,
article,aside,footer,header,nav,main,section,
manu,figure,figblock-event--day-name {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font-weight: normal;
    vertical-align: baseline;
}
body {
    line-height: 1;
}
article,aside,footer,header,menu,nav,section {
    display: block;
}
ol,ul {
    list-style: none;
    list-style-type: none;
}
.media_pc {
    display: inline-block;
}
.media_sp {
    display: none !important;
}
/*<-----resetcss*/
html{
    font-size: 62.5%;
}
body{
    font-family: "source-han-sans-japanese", sans-serif , "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Meiryo", sans-serif;
    color: #333;
    font-size: 1.6em;
    background-color: #fff;
    overflow-x: hidden;
    letter-spacing: 0.05em;
    line-height: 1.6;
}
img {
    max-width: 100%;
    height: auto;
    vertical-align:middle;
}
a {
    cursor: pointer;
    color: #000;
}
.area-wrapper{
    overflow: hidden;
}
.bodyWrap{
    background: #d3d0cf;
}
/*<-----resetcss*/

/*fadein
.fade_in {
    opacity: 0;
}*/
.effect-fade {
    opacity: 0;
    transform: translate(0, 50px); /*fadein_height*/
    transition: all 1600ms; /*fadein_time*/
}
.effect-fade2 {
    opacity: 0;
    transform: translate(0, 0); /*fadein_height*/
    transition: all 2600ms; /*fadein_time*/
}
.effect-scroll {
    opacity: 1;
    transform: translate(0, 0px);
}

.area-body{
    max-width: 1088px;
    margin: 0 auto;
    padding-bottom: 100px;
}


.main_lead{
    max-width: 880px;
    margin: 100px auto 150px;
}
.main_lead_ttl{
    text-align: center;
    display: block;
    width: 536px;
    background:#fff;
    margin: 0 auto;
    padding: 40px 0;
    font-size: 16px;
    font-family: futura-pt, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.area-title{
    text-align: center;
    margin: 0 auto;
}
.main_lead_ttl img{
    display: block;
    margin: 0 auto 30px;
    width: 154px;
}
.main_lead h1{
    text-align: center;
    margin: 60px auto 20px;
    line-height: 2;
    font-size:21px;
    letter-spacing: 4px;
}
.main_lead p {
    text-align: center;
    margin: 60px auto 20px;
    line-height: 2;
}


/* --- メニューボタン共通デザイン --- */
.view_more_text {
  background: #eee;
  color: #313131;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 24px;
  font-weight: 500;
  letter-spacing: 0.5rem;
  text-decoration: none;
  transition: 0.3s ease-in-out;
}

.view_more_text::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #333333;
  transition: 0.2s;
}

.view_more_text::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(135deg); /* ↓ 下向きの矢印に変更 */
  margin-left: 40px;
}

.view_more_text:hover::before {
  top: 0;
  left: 0;
}

.view_more_text:hover {
  text-decoration: none;
  background-color: #cecece;
}

/* --- メニューボタンレイアウト（PC: 3列 × 2行） --- */
.button-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  max-width: 1000px;
  margin: 60px auto 0;
  padding: 0 20px;
}

/* --- セクション部分 --- */
section{
    max-width: 1080px;
    margin: 0 auto 72px;
}

section.sec01 {
    margin-top: 172px;
}

.shadow{
    box-shadow: 0 0 0 10px #fff;
}
.grid{
    display: grid;
    grid-template-columns: repeat(12,1fr);
    grid-template-rows:  repeat(6,1fr);
    grid-template-areas:"num"
        "image1"
        "image2";
    max-height: 810px;
}
num{
    grid-area: num;
}
.num {
    color:#333;
    font-family: neue-kabel, sans-serif;
    font-weight: 400;
    font-style: italic;
    font-size:48px;
    letter-spacing: 4px;
}
image1{
    grid-area: image1;
}
image2{
    grid-area: image2;
}
.sec01 .num, .num ,.sec05 .num ,.sec04 .num{
    grid-row:1/2;
    grid-column:1/2;
}
.sec01 .image1, .image1,.sec05 .image1,.sec04 .image1{
    grid-row: 1/7;
    grid-column: 7/13;
}
.shadow{
    box-shadow: 0 0 0 10px #fff;
}
.sec01 .image2, .image2,.sec05 .image2,.sec04 .image2{
    grid-row: 2/7;
    grid-column: 1/6;
}
.sec02 .num,  .num, .sec08 .num{
    grid-row:1/2;
    grid-column: 8/9;
}
.sec02 .image1, .image1,.sec08 .image1{
    grid-row: 2/7;
    grid-column: 8/13;
}
.sec02 .image2, .image2,.sec08 .image2{
    grid-row: 1/7;
    grid-column: 1/7;
}
.sec03 .grid{
    display: grid;
    grid-template-columns: 50% 23% 6% 23%;
    grid-template-rows: 120px 290px 70px 290px;
    grid-template-areas:"num"
        "image1"
        "image2"
        "image3";
    max-height: 810px;
    height: 810px;
}
.sec03 .num {
    grid-row:1/2;
    grid-column:2/2;
    margin-left: 67px;
}
.sec03 .image1{
    grid-row:1/2;
    grid-column:1/2;
}
.sec03 .image2{
    grid-row: 2/4;
    grid-column: 2/3;
    width: 265px;
    margin-left: 67px;
}
.sec03 .image3{
    grid-row: 3/4;
    grid-column: 3/4;
    width: 265px;
}

.sec04{
    margin: 0 auto 80px;
}

.credit{
    display: grid;
    grid-template-columns: 1fr 5fr 1fr 5fr;
    width: 90%;
    margin: 34px auto;
    align-items: center;
    column-gap: 15px;
    row-gap: 10px;
    transition: .4s;
}
.credit img{
    transition: .4s;
}
.credit img:hover{
    opacity: .6;
}
.credit ul{
font-family: futura-pt, sans-serif;
font-weight: 400;
font-size: 13px;
    letter-spacing: .6px;
}
.credit_detail li:first-child{
    font-weight: 600;
}
.credit_detail li:last-child{
    font-weight: 500;
    color: #8e8b8b;
    font-size: 13px;
    margin-top: 5px
}
.credit_detail li:last-child a{
    padding: 0 12px;
    margin-left: 10px;
    font-size: 12px;
    text-decoration: none;
}

/* ネイビーバージョンのラベル色 */
.credit_detail li:last-child a.navy {
  background: #151e49; /* ネイビー背景 */
  color: #fff; /* テキスト白のまま */
}
/* ゴールドバージョンのラベル色 */
.credit_detail li:last-child a.gold {
  background: #bfa24d; /* ゴールド背景 */
  color: #fff; /* テキスト白のまま */
}

.credit_detail li:last-child a{
    transition: .4s;
}
.credit_detail li:last-child a{
    transition: .4s;
}
.credit_detail li:last-child a:hover{
    opacity: .6;
}

/* 3つ目の画像リンクを右側に */
.credit.right-align-last a:nth-of-type(3) {
  grid-column: 3 / 4;
}

/* 3つ目のリストを右側に */
.credit.right-align-last ul:nth-of-type(3) {
  grid-column: 4 / 5;
}


/* 12商品アイテム枠 */
.item12-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  max-width: 1088px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.item12-list li {
  font-family: futura-pt, sans-serif;
  background: #fff;
  text-align: center;
  letter-spacing: .6px;
  font-size: 12px;
}

.item12-list a {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* 画像 */

span.img-wrap {
    padding-top: 16px;
}

.item12-list .img-wrap img {
  height: auto;
}



.item12-list img {
    width: 50%;
}

/* ラベル（共通） */
.item12-list .buy {
  margin-bottom: 16px;
  padding: 0 12px;
  color: #fff;
  text-decoration: none;
}

/* ラベル カラーバリエーション */
.item12-list .buy.navy {
  background: #151e49;
}

.item12-list .buy.gold {
  background: #bfa24d;
}

/* ブランド名 */
.item12-list .brand {
  font-weight: 600;
  color: #151e49;
  margin-top: 6px;
}

/* item12商品名 */
.item12-list .name {
  font-weight: 400;
  color: #333;
  padding: 0 8px;
}

/* item12価格 */
.item12-list .price {
  font-weight: 500;
  color: #8e8b8b;
  margin-bottom: 5px;
}

/* VIEW MORE ボタン */

.button1 {
    margin-top: 60px;
}
.button1 a {
    background: #eee;
    color: #313131;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    max-width: 45%;
    padding: 24px;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    letter-spacing: 0.5rem;
    text-decoration: none;
}
.button1 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #333333;
  transition: 0.2s;
}

.button1 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
  margin-left: 40px;
}

.button1 a:hover::before {
  top: 0;
  left: 0;
}

.button1 a:hover {
  text-decoration: none;
  background-color: #cecece;
}


@media screen and  (min-width:896px){
}
@media screen and (min-width:769px){
}
/*<<<--max896px------*/
@media screen and (max-width: 896px){
    .media_pc {
        display: none !important;
    }
    .media_sp {
        display: block !important;
    }
    .bodyWrap{
        width:100%;
        margin: auto;
    }
    .area-body{
        margin: 0 auto;
        box-sizing: border-box;
        text-align: left;
        width: 100%;
        max-width: 100%;
    }


    /* --- メニューボタンレイアウトスマホ用（2列 × 3行） --- */

  .view_more_text {
    padding: 16px;
    letter-spacing: 0.2rem;
    background: #fff;
  }

  .view_more_text::before {
    border: 1px solid #333333;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .view_more_text::after {
    margin-left: 16px;
  }


 .button-grid {
    grid-template-columns: repeat(2, 1fr); /* ← スマホは2列 */
    gap: 16px;
    margin-top: 40px;
  }

#ring {
    scroll-margin-top: 140px;
}

#necklace {
    scroll-margin-top: 140px;
}
#pierced {
    scroll-margin-top: 140px;
}
#earrings {
    scroll-margin-top: 140px;
}
#bangle {
    scroll-margin-top: 140px;
}
#anklet {
    scroll-margin-top: 140px;
}

  /* --- セクション用 --- */
    section{
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
    }

    section.sec01 {
    margin-top: 20%;
}

    .br-sp {display: none; }

    .main_lead {
        max-width: 880px;
        margin: 10% auto;
    }
    .main_lead h1{
    text-align: center;
    margin: 30px auto 13px;
    line-height: 2;
    font-size: 16px;
    letter-spacing: 2px;
    }

    .main_lead p{
    text-align: left;
    margin: 30px 8% 13px;
    line-height: 2;
    font-size: 14px;
    }
    .main_lead_ttl{
        font-size: 13px;
        width: 80%;
        margin: 0 auto;
        font-weight: 600;
        text-align: center;
        padding: 30px 0;
        line-height: 1.3;
    }
    .main_lead_ttl img{
        width: 92px;
        margin: 0 auto 20px;
    }

    .credit{
        grid-template-columns: 1fr 3fr;
        margin: 30px auto;
        width: 80%;
        column-gap: 20px;
    }
    .credit img{
        grid-column: 1/2;
    }
    .credit ul{
        grid-column: 2/2;
        font-size: 12px;
    }
    .credit_detail li:last-child{
        font-size: 12px;
    }

    .grid{
        grid-template-columns: 1fr 2fr 1fr 12fr 1fr 2fr 1fr;
        grid-template-rows: minmax(30px, auto);
        row-gap: 22px;
        max-height: initial;
    }
    .grid img{
        object-fit: cover;
    }
    .sec01 .image1, .sec04 .image1{
        width: 100%;
        grid-row: 3/3;
        grid-column: 2/5;
        height: auto;
    }
    .sec05 .image1{
        width: 100%;
        grid-row: 2/2;
        grid-column: 2/6;
        height: auto;
    }

    .sec01 .num,.sec02 .num ,  .num , .sec03 .num , .sec05 .num , .num ,  .num, .sec08 .num , .sec04 .num{
        grid-row: 1/1;
    grid-column: 2/5;
        font-size: 30px;
        margin-left: 20px;
    }
    .sec01 .image2, .sec05 .image2, .sec04 .image2{
        grid-row: 2/3;
        grid-column: 4/7;
        grid-template-areas:
            "num"
            "image1"
            "image2";
    }
    .sec02 .image1,  .image1, .sec08 .image1{
        grid-row: 3/3;
        grid-column: 4/7;

    }
    .sec02 .image2,  .image2, .sec08 .image2 {
        grid-row: 1/3;
        grid-column: 2/5;
        width: 100%;
        margin-left: 0px;
    }
    .sec03 .grid{
        grid-template-columns: 5% 5% 38% 4% 38% 5% 5%;
        grid-template-rows: minmax(30px, auto);
        height: initial;
        max-height: initial
    }
    .sec03 .num {
        grid-row: 1/1;
        grid-column: 2/5;
        font-size: 30px;
        margin-left: 0
    }
    .sec03 .image1 {
        grid-row: 2/2;
    grid-column: 3/6;
    }
    .sec03 .image2 {
        grid-row: 3/3;
        grid-column: 2/4;
        margin-left: 0px;
        width: 100%;
    }
    .sec03 .image3 {
        grid-row: 3/3;
        grid-column: 5/7;
        width: 100%;
    }
    .product-lists li {
        width: 46%;
        margin: 0 2% 4%;
        }
    .product-lists li a {
        display: block;
        font-size: 10px;
        text-align: left;
        line-height: 1.5;
    }
    .product-lists li a .lists-name {
    display: block;
    margin: 10px 0 0;
     }
    .product-lists li a .lists-name.media_pc {
    display: none;
    }
    .product-lists li a .lists-name.media_sp {
    display: block;
    }

    /* VIEW MORE ボタン */

.button1 {
    margin-top: 40px;
}

.button1 a {
    background: #ffffff;
    color: #313131;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    max-width: 80%;
    padding: 16px;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    letter-spacing: 0.2rem;
    text-decoration: none;
}


.button1 a::before {
    content: '';
    position: absolute;
    width: calc(100%);
    height: calc(100%);
    border: 1px solid #333333;
    transition: 0.2s;
}

.button1 a::after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #333333;
    border-right: 3px solid #333333;
    transform: rotate(45deg);
    margin-left: 16px;
}



    /* スマホ時に .right-align-last の3番目の位置指定を無効化 */
.credit.right-align-last a:nth-of-type(3),
.credit.right-align-last ul:nth-of-type(3) {
  grid-column: auto !important;
}
    .item12-list {
    grid-template-columns: repeat(2, 1fr);
    margin: 0 20px;
    }
    
    .other_look{
        width: 90%;
        font-size: 11px; 
    }
    .view_btn{
    margin: 5% auto 20%;
    }
}
@media screen and (min-width:360px) and (max-width: 896px){}
@media screen and (min-width:360px) and (max-width: 767px){}
/*iphone5.6.7*/
@media screen and (max-width:359px){}