body {
    color: #333333;
    background: #ffffff;
    font-family: 'Noto Serif JP', "Yu Mincho", "游明朝体", serif;
    ;
}
p {
    margin-top: 0;
    margin-bottom: 0rem;
}
img {
    max-width: 100%;
      /* PCの右クリック禁止 */
      pointer-events: none;
}

.brand_logo {
    position: absolute;
    width: 11vw;
    top: 2vw;
    left: 4.9vw;
    z-index: 999;
}

.brand_logo img {
    width: 100%;
}

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

a,
button {
    transition: .3s all;
}

a {
    text-decoration: none;
}


/* スライダー　start */
.fv-slide {
    width: 100vw;
    height: 58vw;
    overflow: hidden;
    position: relative;
}

.top-bg div.slide {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
    visibility: hidden;
}

.top-bg div.slide.active {
    opacity: 1;
    visibility: visible;
}

.loaded .top-bg div.slide:before {
    -webkit-filter: blur(0px);
    filter: blur(0);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.top-bg .slide-image {
    height: 100%;
}

.top-bg div.slide {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-filter: blur(0.6666667rem);
    filter: blur(0.6666667rem);
    transition-property: opacity, visibility, -webkit-transform, transform,
        -webkit-filter, filter;
    transition-duration: 1.2s;
    transition-timing-function: ease-in-out;
}

.top-bg div.slide.active {
    opacity: 1;
    visibility: visible;
    -webkit-filter: blur(0px);
    filter: blur(0px);
    -webkit-transform: scale(1);
    transform: scale(1);
}

.slide-image {
    background-position: center bottom;
    background-size: cover;
    background-repeat: no-repeat;
}

.fv-nav {
    width: 100%;
    height: 4vw;
    display: flex;
    justify-content: center;
    padding-top: 30px;
    position: absolute;
    bottom: 3vw;
}

.fv-nav span {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #8A8A8A;
    transition: all 0.5s;
    cursor: pointer;
    margin-right: 30px;
}

.fv-nav span:last-child {
    margin-right: 0;
}

.fv-nav span.active,
.fv-nav span:hover {
    background-color: #D8D8D8;
}

/* スライダー　end */


/*story start  */
.yokosen {
    display: block;
    content: "";
    border-bottom: solid 1px #D5D5D5;
}



#story {
    margin: 0 auto;
    text-align: center;
    width: min(62.5vw, 1200px);
    border-left: solid 1px #D5D5D5;
    border-right: solid 1px #D5D5D5;
    padding-bottom: 6vw;
}

#story h1 {
    font-family: 'Noto Serif JP', serif;
    text-align: center;
    padding-top: 6vw;
    font-weight: 600;
    font-size: max(22px, 1.3020833vw);

}

.japan_ttl {
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size: max(12px,0.625vw );
    margin-bottom: 1vw;

}

.story_pic img {
    margin-bottom: 3vw;
    width: 22.5vw;
}

.produced_logo img {
    margin-bottom: 4vw;
    width: 10.729166666666666vw;
}

h2 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    font-size: max(26px, 1.5625vw);
    
    display: inline;
    border-bottom: 1px solid #707070;
}

h2::after {
    display: block;
    content: "";
    height:3vw;

}

h3 {
    font-size: clamp(18px, calc(24 / 1920 * 100vw), 24px);
    letter-spacing: .5px;
    font-weight: normal;
    margin-bottom: 1.835417vw;
    font-family: 'Noto Serif JP', serif;
   
}

.story_txt {
    text-align: center;
    font-size: clamp(14px, calc(16 / 1920 * 100vw), 16px);
    ;
}

/* product start */
#product {
   
    display: block;
    margin: 0 auto;
    margin-top: 6vw;
    text-align: center;
}
ul{
    padding-left: 0rem;
}

.product_pic img {
    width: 20.520833333333332vw;
    margin-bottom: 2vw;
}
.japan_ttl2 {
    color: #9C9C9C;
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size: max(12px, 0.7291666666666666vw);
    margin-bottom:10px;
}
h4{
   
    font-size: max(22px, 1.3020833vw);
    margin-bottom: 1.5rem;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
}
.p_number{
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size: max(11px, 0.625vw);
    margin-bottom: 0rem;

}
.price{
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size: max(13px, 0.78125vw);
    margin-bottom: 2rem;
    
}
.flex_wrap {
    display: flex;
 flex-wrap: wrap;
    justify-content: center;
    gap: 2vw;
}

.flex_wrap img {
    width:10.416666666666668vw;
}

.flex_wrap p {
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size: max(12px, 0.6770833333333334vw);
}
.flex_inner{
    width: 30vw;
    text-align: center;
    display: block;
    margin: 0 auto;
    
}
.btn{
    margin-top: 2.890625vw;
    margin-bottom: 5.625vw
}
.btn2{
    margin-top: 2.890625vw;
    margin-bottom: 5.625vw
}
.btn a{
padding: .9vw 4vw;
background: #BBBBBB;
border-radius:50px;
font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
font-size:max(14px, 0.78125vw); 
color: #ffffff;
}
.btn2 a{
    padding: .9vw 4vw;
    background: #BBBBBB;
    border-radius:50px;
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size:max(14px, 0.78125vw); 
    color: #ffffff;
    }
.btn a:hover{
    background: #ffffff;
    border: solid #BBBBBB 1px;
    color:#BBBBBB;
}
.btn2 a:hover{
    background: #ffffff;
    border: solid #BBBBBB 1px;
    color:#BBBBBB;
}
/* product end */

/* last_txt start */
.last_txt{

    text-align: center;
}
.last_txt ul li:first-child{
    margin-top: 4.6875vw;
    font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
    font-size:max(11px, 0.625vw); 
    color: #000000;
    margin-top: 3.5vw;
}
.last_txt ul li:last-child{
    margin-top: 3.6875vw;
    margin-bottom:1.521875vw ;
    font-family: "Source Han Serif JP", "Noto Serif CJK JP", "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size:max(17px,1.0416666666666665vw); 
    color: #000000;
    font-weight: bold;

}


/*  */
/*セクション追加時使用の線  */
.sen{
    display: block;
    content: "";
    height: 6vw;
    border-bottom: solid 1px #D5D5D5;
    margin-bottom: 10vw;
}
/*  */

.item1 ul li:nth-child(2){
    margin-bottom:2rem;
}



.dispSp,
.sp {
    display: none;
}


@media (max-width: 1100px) {
    .flex_wrap {
  
        justify-content: center;
        gap: 5vw;
    }

    .flex_inner{
        width: 80vw;
        text-align: center;
        display: block;
        margin: 0 auto;
        margin-top: 5vw;
    }

  
    h2::after {
        display: block;
        content: "";
        height: 4.635417vw;
    }
    .product_pic img {
        width: 37.520833vw;
        margin-bottom: 2vw;
    }
    .story_txt {
        font-size: max(15px, 0.9375vw);
    }
    .flex_wrap img {
        width: 18.416667vw;
    }
    .price {
     font-size: max(13px, 0.78125vw);
        margin-bottom: 2.5rem;
    }
    .p_number {
        font-size: max(12px, 0.625vw);
      
}
.btn {
    margin-top: 2.890625vw;
    margin-bottom: 13.625vw;
}
.btn2 {
    margin-top: 2.890625vw;
    margin-bottom: 13.625vw;
}
.btn a {
    padding: 1.5vw 10vw;
    border-radius: 50px;
    font-size: max(14px, 0.78125vw);

}

.btn2 a {
    padding: 1.5vw 10vw;
    border-radius: 50px;
    font-size: max(14px, 0.78125vw);

}



}

@media (max-width: 575px) {
    img{
		/* SPの長押し禁止 */
		-webkit-touch-callout:none;
		-webkit-user-select:none;
		-moz-touch-callout:none;
		-moz-user-select:none;
		user-select:none;
	}
    body{
        padding-top: 5rem;
        
    }
        .dispSp,
    .sp {
        display: block;
    }

    .dispPc,
    .pc {
        display: none;
    }
    p {
        margin-top: 0;
        margin-bottom: 0rem;
    }
   
    .fv-slide2 {
        margin-top: calc(65 / 375 * 100vw);
        height:calc(602 / 375 * 100vw);
        overflow: hidden;
        position: relative;
    }
    .fv-nav2 {
        width: 100%;
        display: flex;
        justify-content: center;
        position: absolute;
        bottom: 6vw;
        gap: 2vw;
    }

    .fv-nav2 span {
        width: 8px;
        height: 8px;
        background-color: #8A8A8A;
        border-radius: 50%;
        z-index: 9999;
    }

    #product {
        display: block;
        margin: 0 auto;
        margin-top: 10vw;
        text-align: center;
    }

    
    header .logo {
        height: 154px;
        background-color: #f6f6f5;
    }

    .menu-icon {
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background-color: #ffffff;
        position: fixed;
        top: 17px;
        left: 20px;
        z-index: 999;
        cursor: pointer;
        display: flex;
        justify-content: center;
        align-items: center;
    }

   

    .menu-sidebar.menu-sidebar-open {
        transform: translateX(0);
        opacity: 1;
    }

    .menu-icon-open {
        display: block;
        width: 31px;
        height: 14px;
    }

    .menu-icon-close {
        display: none;
        width: 18px;
        height: 18px;
    }

    .menu-sidebar-list {
        list-style: none;
        margin: 0;
        padding: 0;
        text-align: left;
        margin-top: 94px;
        color: #ffffff;

    }

    .menu-sidebar-item {
        font-size: 23px;
        font-weight: bolder;
        line-height: 26px;
        display: flex;
        align-items: flex-start;
        color: #333333;
        flex-direction: column;
        justify-content: center;
        padding: 20px 0;

    }

 
    .menu-sidebar-item span {
        width: 100%;
        font-size: 10px;
        line-height: 17px;
        letter-spacing: 0.001rem;
        margin-top: 3px;
    }

    .brand_logo {
        width: 19vw;
        top: 3vw;
        left: 6vw;
    }

    #story {
        width: min(86.5vw,1200px);
        padding-bottom:calc(50/ 375 * 100vw);
    }
    #story h1 {
        padding-top:calc(50/ 375 * 100vw);
        font-weight: bold;
        font-size: max(21px, 1.3020833vw);
        margin-bottom: 0;
    }


    .story_pic img {
        margin-bottom: 6vw;
        width: 76.5vw;
    }

    .produced_logo img {
        margin-bottom: 14vw;
        width: 35.729167vw;
    }
    .japan_ttl {
        font-size: max(12px,0.625vw );
        margin-bottom: calc(11 / 375 * 100vw);
    }
    h2 {
        font-weight: 600;
        font-size: clamp(18px, calc(20 / 375 * 100vw), 20px);
        padding-bottom: .5rem;
    }
    h2::after {
  
        height: 6vw;
        margin-bottom: 5vw;
    }
    h3 {
        font-size: clamp(16px, calc(18 / 375 * 100vw), 18px);
        letter-spacing: 1px;
        margin-bottom:5vw;
    }
    .story_txt {
        font-size: max(12px, 0.9375vw);
        line-height: 2.3rem;
    }
  
    .japan_ttl {
        font-size: max(10px, 0.7291666666666666vw);
        margin-bottom:1.5vw;
    }
    h4 {
        font-weight: 600;
        font-size: calc(18 / 375 * 100vw);
        line-height:2.5rem;
        margin-bottom: calc(11 / 375 * 100vw);
    }
    .p_number {        
        font-size: max(12px, 0.625vw);
        margin-bottom: 0rem;
    }
    .price {
        font-size: max(14px, 0.78125vw);
        margin-bottom: 0.5rem;
    }
    .product_pic img {
        width: 56.520833vw;
        margin-bottom: 0vw;
    }
    .price {
        font-size: max(14px, 0.78125vw);
        margin-bottom: 2.5rem;
    }

    .flex_wrap img {
        width: 37.416667vw;
        margin-bottom: 2vw;
    }
    .flex_wrap p {
     font-size: max(14px, 0.6770833333333334vw);

    }
.flex_wrap ul li{
    width:calc(110 / 375 * 100vw);
}
    .btn {
        margin-top: 10.890625vw;
        margin-bottom: 25.625vw;
    }
    .btn2 {
        margin-top: 7.890625vw;
        margin-bottom: 15.625vw;
    }
    
    
    .btn a {
        padding: 3.5vw 19vw;
        border-radius: 50px;
        font-size: max(14px, 0.78125vw);
        }
        .last_txt ul li:last-child {
            margin-top: 2.6875vw;
            margin-bottom: 1.521875vw;
            font-size: max(17px,1.0416666666666665vw);
            font-weight: bold;
        }
        .btn2 a {
            padding: 3.5vw 19vw;
            border-radius: 50px;
            font-size: max(14px, 0.78125vw);
            }
            .last_txt ul li:last-child {
                margin-top: 2.6875vw;
                margin-bottom: 1.521875vw;
                font-size: max(17px,1.0416666666666665vw);
                font-weight: bold;
            }
        .btn2 a {
            padding: 3.5vw 19vw;
            border-radius: 50px;
            font-size: max(14px, 0.78125vw);
            }
            .last_txt ul li:last-child {
                margin-top: 2.6875vw;
                margin-bottom: 1.521875vw;
                font-size: max(17px,1.0416666666666665vw);
                font-weight: bold;
            }
}

