@charset "UTF-8";

body {
    background:#EAE7E5;
}

.top-container a {
    text-decoration: none;
}

.top-container .img-sp{
    display: none;
}
.top-container .br-sp{
    padding: 0;
}
.top-container hr {
  padding: 0 0;
  border: none;
}

.top-container .hr1 {
  border-top: 1px solid #d4cfcc;
  width: 30%;
  margin: 0 auto;
}

.top-container h2 {
    text-align: center;
    font-family: 'Cormorant Garamond', serif;
    letter-spacing: 5.6px;
    color: #6C5037;
    opacity: 1;
    margin: 0 0 50px;
    font-size: 28px;
    font-weight: lighter;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.top-container h2 span {
  padding: 0 15px;
}

.top-container h2:before, h2:after {
    border-top: 1px solid #6C5037;
    content: "";
    width: 30px;
}

.top-container h2, h3 {
    font-weight: lighter;
}

.top-container h3, h4 {
  margin-bottom:40px;
  font-size: 20px;
  text-align: center;
  font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  letter-spacing: 4px;
  color: #353328;
}
.top-container p {
  color:#353328;
  font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}
.top-container p.text-center {
    text-align:center;
}

/* デスクトップorモバイル表示出し分け */
@media screen and (min-width: 1020px) {
    .u-hide--desktop {
        display: none;
    }
}
@media not screen and (min-width: 1020px) {
    .u-hide--not-desktop {
        display: none;
    }
}

/* ふわっと表示させるjqueryのための記述 */
.fadeIn {
    opacity: 0;
    transition: 2s;
}
.fadeIn.is-show {
    opacity: 1;
}
.fadeIn_left {
    opacity: 0;
    transform: translate(-50%, 0);
    transition: 2s;
}
.fadeIn_left.is-show {
    transform: translate(0, 0);
    opacity: 1;
}
.fadeIn_right {
    opacity: 0;
    transform: translate(50%, 0);
    transition: 2s;
}
.fadeIn_right.is-show {
    transform: translate(0, 0);
    opacity: 1;
}


/* フェードイン */
  .fadein-image {
    opacity: 0; 
    transform: translateY(40px); 
    transition: opacity .8s, transform .8s; 
}
.fadein-image.is-inview {
    opacity: 1; 
    transform: translateY(0);
    transition-delay: .1s;
}


/* ボタンの装飾 */
.link-btn {
    margin-top:28px;
}
.link-btn a {
    margin: 0 auto !important;
    text-align: center;
    background: #AAA39C;
    color: #ffffff;
    text-decoration: none;
    width: 260px;
    line-height: 60px;
    letter-spacing: 0.1em;
    font-size: 15px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}
.no-link-btn {
    margin: 0 auto !important;
    text-align: center;
    border: #d4cfcc 1px solid;
    color: #AAA39C;
    text-decoration: none;
    width: 260px;
    line-height: 60px;
    letter-spacing: 0.1em;
    font-size: 15px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}
.link-btn a:hover {
    background-color: #87817a;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: 0.8s;
}
.onlineshop-link a {
    background-color:#353328;
    border:1px solid #AAA39C;
}
.onlineshop-link a:hover {
    background-color: #1c1c1c;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
    transition: 0.8s;
}
.arrow-r:after{
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right:  20px;
    width: 12px;
    height: 12px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg); 
}

/* テキストの幅指定解除 */
#section-container-contents .section-products-text, .novelty-container .section-products-text {
    width: auto;
}

/* 各セクションの余白 */
#section-container-message, #section-container-history, #section-container-movie, #section-container-contents, #section-container-thanks-anniversary, #section-container-story {
  padding: 120px 0 120px 0;
}

/* ヘッダーメニュー */
.p-global-header__logo {
    margin: 0 15px 0 20px;
}

/* メインビジュアル - スライダー */
#slider {
    position: relative;
}

/* メインビジュアル - 更新情報 */
.update-container {
    position: absolute;
    bottom: 50px;
    right: 50px;
    padding: 20px;
    background-color: #00000038;
    border: 1px solid #e0e0e0b0;
    z-index: 2;
}
.update-container p {
    line-height: 32px;
    font-size: 15px;
    text-align: justify;
    letter-spacing: 0.1em;
}
.update-container a {
    color:#ffffff;
    text-decoration: none;
    background-image: linear-gradient( #ffffff, #ffffff );
    background-size: 0 1px;
    background-position: left bottom;
    background-repeat: no-repeat;
    transition: all .3s;
}
.update-container a:hover {
    background-size: 100% 1px;
}
.update-tip {
    animation: floating-y 1.2s ease-in-out infinite alternate-reverse;
    display: inline-block;
    color: #fff;
    padding-right: 12px;
}
@keyframes floating-y {
  0% {
    transform: translateY(-10%);
  }
  100% {
    transform: translateY(10%);
  }
}

/* イントロダクション - キャッチコピーの縦リード線 */
.section-lead h2::before {
  content: '';
  position: absolute;
  top: -170px;
  left: 0;
  right: 0;
  width: 1px;
  height: 100px;
  margin: auto;
  background-color: #6C5037;
  z-index: 2;
}

/* イントロダクション - 120thロゴ */
.section-lead-120th-logo {
    margin-top:40px;
    width:240px;
}


/* メッセージ - レイアウト */
#section-container-message .section-products-text {
    width:50%;
}


/* ヒストリー - 画像レイアウト */
#section-container-history .section-products-wrapper {
    align-items: flex-start;
}
.history-photo-hakoguruma {
    width: 75%;
    position: absolute;
    left: 100px;
    top: 0;
}
.history-photo-shop {
    width: 75%;
    position: absolute;
    left: -140px;
    top: 160px;
}

.section-lead-wrapper{
    width:  1000px;
    text-align: center;
    margin: 0 auto;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}


.section-lead{
    width:  1000px;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-position: bottom;
    background-color:rgba(255,255,255,0.5);
    background-blend-mode:lighten;
    background-size:contain;
    padding: 120px 0 120px 0;
}

.section-lead h2{
    font-size: 24px;
    letter-spacing: 2px;  
    display: inline-block;
    position: relative;
    font-family:"Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.section-lead-wrapper p{
    margin: 20px 0 0;
    line-height: 44px;
    font-size: 15px;
    letter-spacing: 0.1em;
}

.section-lead .title-sub{
       margin-top: 20px;
       position: absolute;
       left: 120px;
       width: 100%;
}

.section-lead-images-flex{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 100px;
}

.flex-text{
    margin: 0 20px;
    width: 30%;
    line-height: 24px;
    font-size: 13px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
    padding-bottom: 30px;
}

.flex-text p {
    line-height: 40px;
    font-size: 16px;
}

.arrow-r{
    width: 100%;
    position: relative;
    display: block;
}

/* スライダーjqueryのための記述 */
.slides{
   width:100%;
}
.flexslider {
    max-width: 540px;
}
.flexslider .slides li {
    margin-right:5px;
}
.flex-control-nav {
    display: none;
}


/* 商品紹介 */
.section-products{
    margin: 0 auto;
    border-top:none;
}

.section-products-wrapper{
    display: flex;
    flex-wrap: wrap;
    justify-content:space-between;
    width: 1000px;
    margin: 0 auto;
    align-items: center;
}

.section-products h2{
    font-size: 18px;
    margin: 20px 0 46px 0;
    padding: 4px 0  0 10px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.section-products-img {
    transform: translateY(0px); /* 下に30pxの位置から */
  }


.section-products-text{
    width:  40%;
}

.section-products-text p{
    line-height: 32px;
    font-size: 15px;
    text-align: justify;
    letter-spacing: 0.1em;
}

.section-products-img p{
    line-height: 32px;
    font-size: 15px;   
    text-align: justify;
}

.section-products h3{
    text-align: center;
    display: flex;
    align-items: center;
    padding: 80px 0 40px 0;
    font-size: 14px;
    font-family: 'Cormorant Garamond', serif;
}

.section-products h3::before,
.section-products h3::after {
  content: '';
  flex-grow: 1;
  height: 1px;
  background: #3f3a39;
}

.section-products h3::before{
    margin-right: 30px;
}

.section-products h3::after{
    margin-left: 30px;
}

.section-products .item{
    width: 30%;
    box-sizing: border-box;
    margin-bottom: 30px;
    vertical-align: top;
    line-height: 1.4;
    box-sizing: border-box;
    font-family:sans-serif;
}

.section-products .arrow-r:after{
    content: "";
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right:  20px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg); 
}

/* 固定の背景画像の装飾 */
.image-visual-container {
    width: 100%;
    height: 450px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 0 bottom;
    position: relative;
}
.image-visual-first {
    background-image: url(https://hanamo.itembox.design/item/images/feature/120th/bouquet-image-visual-1.jpg);
}
.image-visual-second {
    background-image: url(https://hanamo.itembox.design/item/images/feature/120th/bouquet-image-visual-2.jpg);
}


/* スペシャルコンテンツ - カルーセル */
.special-contetns-carousel-container {
    width: 1000px;
    margin: 0 auto;
}
.special-contetns-carousel-margin {
    margin:80px 0 120px;
}
.special-contetns-carousel:last-child {
    margin-bottom:0;
}
.p-120th-carousel {
    margin-top:40px;
}
.p-120th-carousel .fs-pt-carousel__slide img {
    width:240px;
    margin-bottom:15px;
}
.p-120th-carousel .fs-pt-carousel__slide__caption {
    font-size:15px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
    width: 94%;
}
.p-120th-carousel .slick-prev:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 10px;
    margin: 0 4px;
    width: 20px;
    height: 20px;
    -webkit-transform: translateY(-50%) rotate(-135deg);
    transform: translateY(-50%) rotate(-135deg);
    border-top: 1px solid #6C5037;
    border-right: 1px solid #6C5037;
}
.p-120th-carousel .slick-next:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    margin: 0 4px;
    width: 20px;
    height: 20px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    border-top: 1px solid #6C5037;
    border-right: 1px solid #6C5037;
}
.p-120th-carousel .slick-prev {
    background:none;
    left: -55px;
}
.p-120th-carousel .slick-next {
    background:none;
    right: -55px;
}
.p-120th-carousel .slick-dots {
    padding-top:30px;
}

/* スペシャルコンテンツ - 画像レイアウトとテキスト配置 */
.flower-gift-visual-container-01 {
    padding-top: 200px;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
}
.flower-gift-visual-container-02 {
    width: 56%;
}
.flower-gift-visual-right {
    width: 25%;
}
.flower-gift-visual-text {
    margin-top: 105px;
    margin-left: -44%;
    margin-right: 15%;
    margin-bottom: 105px;
}
.flower-gift-visual-item-03 {
    margin-top: 200px;
    margin-right: 8%;
    margin-left: 15%;
}


/* サンクスアニバーサリー - レイアウト */
.box-right {
    background: #E9E7E5D8 0% 0% no-repeat padding-box;
    border: 1px solid #AAA39C;
    padding: 40px 50px;
    position: relative;
    margin: 0px 0px 0 -80px;
    top: 0;
    right: 30px;
}
.box-left {
    background: #E9E7E5D8 0% 0% no-repeat padding-box;
    border: 1px solid #AAA39C;
    padding: 50px;
    position: relative;
    z-index: 1;
    width: 450px;
}
.box-center {
    padding: 50px 50px;
}

/* サンクスアニバーサリー - デザイナーズアレンジメントの装飾 */
.anniversary-arrangement-image {
    position:relative;
    margin-top: 80px;
    left:20px;
}    
.anniversary-arrangement-attention {
    position: absolute;
    color: #fff !important;
    top: 50%;
    left: 50%;
    margin: 0;
    transform: translate(-50%, -50%);
}
/*
.anniversary-arrangement-image::before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    mix-blend-mode: multiply;
    position: absolute;
    top: 0;
    left: 0;
}
*/

/* サンクスアニバーサリー - 水差しプレゼント枠の装飾 */
.anniversary-present-container {
    width:727px;
    margin: 0 auto;
}
.anniversary-present-container h4 {
    margin-bottom:0;
}
.anniversary-present-campaign {
    display: inline-block;
    max-width: 100%;
    border: 1px solid #AAA39C;
    border-radius: 0px;
    position: relative;
}
.anniversary-present-campaign p {
    line-height: 32px;
    font-size: 15px;
    text-align: justify;
    letter-spacing: 0.1em;
}
.anniversary-present-campaign-title {
    padding: .4em 1em;
    position: absolute;
    top: -2em;
    left: 50%;
    transform: translateX(-50%);
    background: #eae7e5;
    white-space: nowrap;
}
.anniversary-present-campaign-subtitle {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 420px;
    margin: 0 auto 40px;
    align-items: center;
}
.object-cricle {
    text-align: center;
    font-size: 16px;
    font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
    color: #CCCCCC;
    line-height: 75px;
    letter-spacing: 4px;
    background: #353328;
    border-radius: 68px;
    width: 75px;
    height: 75px;
    display: inline-block;
}

/* サンクスアニバーサリー - ノベルティコンテナ */
.novelty-container {
    width: 1000px;
    margin: 120px auto 0;
}
.novelty-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto 40px;
    align-items: center;
}
.novelty-list-item {
    width:300px;
    text-align:center;
}
.novelty-item-thumbnail {
    margin-bottom:15px;
}
.novelty-item-name {
    font-size:15px;
}
.novelty-notice {
    border: 1px solid #AAA39C;
    padding: 15px 20px;
}


/* 未来への企業理念表明 */
#section-container-story .backphoto {
    background-position: center center;
    background-size: cover;
}
#section-container-story .midphoto {
    aspect-ratio: 5 / 3;
    width: 100%;
}
#section-container-story {
    background-image: url("https://hanamo.itembox.design/item/images/feature/120th/pink-rose-bouquet.jpg");
    background-size: cover;
    position: relative;
}
#section-container-story::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.2);
}
#section-container-story h2 {
    text-align: left;
    color: #fff;
}
#section-container-story h2:before {
    border-top: 1px solid #ffffff;
    content: "";
    width: 190px;
}
#section-container-story h2:after {
    content: none;
}
#section-container-story .section-container-story-left {
    width: 35%;
}
#section-container-story .section-container-story-right {
    width: 50%;
    margin-left: 30px;
    z-index:1;
}
#section-container-story .section-products-text {
    width: auto;
}
#section-container-story .section-products-text p {
    color:#fff;
}





/* ------------ sp用 ------------ */

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

    .top-container .br-pc{
        display: none;
    }
    .top-container .br-sp{
        display: block;
        padding: 0;
    }
    .top-container .img-sp{
        display: block;
    }
    .top-container .img-pc{
        display: none;
    }
    .top-container p.text-center {
        text-align: justify;
    }
    .top-container h2 {
    font-size: 6.4vw;
    }
    .top-container h3, h4 {
      font-size: 4.3vw;
    }


    /* メインビジュアル - スライダー */
    #slider2 {
        position: relative;
    }


    /* メインビジュアル - 更新情報 */
    .update-container {
        position: absolute;
        bottom: 60px;
        right: -1px;
        padding: 8px 10px;
        background-color: #00000038;
        border: 1px solid #e0e0e0b0;
        z-index: 2;
    }
    .update-container p {
        line-height:18px;
        font-size: 12px;
        text-align: justify;
        letter-spacing: 0.01em;
    }
    .update-container a {
        color:#fff;
        text-decoration: underline;
    }
    .update-tip {
        animation: floating-y 1.2s ease-in-out infinite alternate-reverse;
        display: inline-block;
        color: #fff;
        padding-right: 12px;
    }
    @keyframes floating-y {
    0% {
        transform: translateY(-10%);
        }
    100% {
        transform: translateY(10%);
        }
    }


    /* リードコンテンツ */
    .section-lead-wrapper{
        width:  90%;
        margin: 60px auto;
    }
    .section-lead{
        width:auto;
        margin: 0 auto;
        background-color:rgba(255,255,255,0.5);
        background-blend-mode:lighten;
        background-size:contain;
        padding: 60px 0 60px 0;
    }
    .section-lead h2{
        font-size: 5.4vw;
        margin-bottom: 50px;
    }
    .section-lead p{
        margin: 0 auto;
        line-height: 40px;
        font-size: 3.4vw;
    }


    /* カテゴリトップのスライダー */
    .slides{
        width: 100%;
    }    
    .flex-control-nav {
        position: relative !important;
    }    
    .main-visual-rotation-rotation {
        width: 100%;
    }

     /* 商品品紹介エリア */
    .section-products-wrapper{
        display: block;
        width: 100%;
    }
    .section-products-text{
        width:  85%;
        margin: 0 auto;
        text-align: center;
    }
    .section-products-img{
        width:  80%;
        margin: 0 auto;
        text-align: center;
    }
    .section-products-text p{
        padding: 40px 0;
        font-size: 14px;
    }
    .section-products-text p + p{
        padding-top: 0;        
    }
    .section-products-text h3 + p {
        padding-top:0;
    }
    .section-products-img p{
        padding: 40px 0;
        font-size: 14px;
    }
    .section-products img{
        width:  100%;
    }


    /* 各セクションの余白 */
    #section-container-message, #section-container-history, #section-container-movie, #section-container-contents, #section-container-thanks-anniversary, #section-container-story {
        padding: 80px 0 80px 0;
    }


    /* イントロダクション - キャッチコピーの縦リード線 */
    .section-lead h2::before {
        content: '';
        position: absolute;
        top: -170px;
        left: 0;
        right: 0;
        width: 1px;
        height: 100px;
        margin: auto;
        background-color: #6C5037;
        z-index: 2;
    }
    /* イントロダクション - 120thロゴ */
    .section-lead-120th-logo {
        margin-top:40px;
        width: 42vw;
    }


    /* メッセージ - レイアウト */
    #section-container-message .section-products-text {
        width:85%;
    }
    #section-container-message .ceo-image {
        width:60vw;
    }


    /* ヒストリー - 画像レイアウト */
    .history-photo-hakoguruma {
        width: 180px;
        position: relative;
        left: 70px;
        top: 0;
    }
    .history-photo-shop {
        width: 180px;
        position: relative;
        left: -70px;
        top: -50px;
        margin-bottom: -50px;
    }


    /* 固定の背景画像の装飾 */
    .image-visual-container {
        width: 100%;
        height: 70vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
        color: #fff;
        background-position: center center;
        background-attachment: initial;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative;
    }
    .image-visual-first {
        background-image: url(https://hanamo.itembox.design/item/images/feature/120th/bouquet-image-visual-1-sp.jpg);
    }
    .image-visual-second {
        background-image: url(https://hanamo.itembox.design/item/images/feature/120th/bouquet-image-visual-2-sp.jpg);
    }


    /* サンクスアニバーサリー - レイアウト */
    .box-right, .box-left {
        background: #E9E7E5D8 0% 0% no-repeat padding-box;
        border: 1px solid #AAA39C;
        padding: 30px 20px;
        position: relative;
        margin: -20px 0px 0 0px;
        top: 0;
        right: 0;
        width:auto;
    }
    .box-center {
        padding: 20px 20px;
    }
    
    /* サンクスアニバーサリー - デザイナーズアレンジメントの装飾 */
    .anniversary-arrangement-image {
        position:relative;
        margin:0;
        left:0;
    }
    .anniversary-arrangement-attention {
        font-size:3vw !important;
    }

    /* サンクスアニバーサリー - 水差しプレゼント枠の装飾 */
    .anniversary-present-container {
        width:85%;
        margin: 0 auto;
    }
    .anniversary-present-container h4 {
        margin-bottom:0;
    }
    .anniversary-present-campaign-subtitle {
        width: 100%;
        justify-content: center;
        margin-top: 40px;
    }
    .anniversary-present-campaign p {
        font-size: 14px;
    }
    .object-cricle {
        text-align: center;
        font-size: 13px;
        font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
        color: #CCCCCC;
        line-height: 60px;
        letter-spacing: 2px;
        background: #353328;
        border-radius: 68px;
        width: 60px;
        height: 60px;
        display: inline-block;
        margin-right:20px;
    }

    /* サンクスアニバーサリー - ノベルティコンテナ */
    .novelty-container {
        width: 85%;
        margin: 120px auto 0;
    }
    .novelty-list {
        display:none;
    }
    .novelty-notice {
        padding: 0 20px;
    }


    /* スペシャルコンテンツ - カルーセル */
    .special-contetns-carousel-container {
        width: 85%;
    }
    .p-120th-carousel--desktop {
        display:none;
    }
    .p-120th-carousel {
        margin-top: 0;
    }
    .p-120th-carousel .fs-pt-carousel__slide img {
        width: 100%;
        margin-bottom: 15px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .p-120th-carousel .fs-pt-carousel__slide__caption {
        width: 100%;
        font-size:15px;
        font-family: "Agmena Pro", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
        text-align:center;
    }
    .p-120th-carousel .slick-prev {
        left: -5%;
        top:45%;
    }
    .p-120th-carousel .slick-next {
        right: -5%;
        top:45%;
    }

    /* スペシャルコンテンツ - 画像レイアウトとテキスト配置 */
    .flower-gift-visual-container-01 {
        padding-top: 10px;
        display: flex;
        flex-direction: column;
    }
    #section-container-contents .section-products-text {
        width:85%;
        margin:0 auto;
    }
    .flower-gift-visual-container-02 {
        width: auto;
    }
    .flower-gift-visual-right {
        width: auto;
    }
    .flower-gift-visual-item-01 {
        margin-top: 70px;
        margin-left: 20%;
    }
    .flower-gift-visual-item-02 {
        margin-top: 70px;
        margin-right: 20%;
    }
    .flower-gift-visual-item-03 {
        margin-top: 110px;
        margin-right: 8%;
        margin-left: 15%;
    }
    
    
    /* 未来への企業理念表明 */
    #section-container-story {
        background-image: url("https://hanamo.itembox.design/item/images/feature/120th/pink-rose-bouquet-sp.jpg");
        background-size: cover;
        position: relative;
        padding:80px 20px;
    }
    #section-container-story::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0,0,0,0.2);
    }
    #section-container-story h2:before {
        border-top: 1px solid #ffffff;
        content: "";
        width: 120px;
    }
    #section-container-story h2 {
        color: #ffffff;
        text-align:left;
    }
    #section-container-story h2:after {
        content: none;
    }
    #section-container-story .section-container-story-left {
        width: auto;
    }
    #section-container-story .section-container-story-right {
        width: auto;
        margin-left:0;
        z-index:1;
        position:relative;
    }
    #section-container-story .section-products-text {
        width: auto;
    }
    #section-container-story .section-products-text p {
        color:#fff;
        padding-top:0;
    }
    #section-container-story .backphoto {
        background-position: center center;
        background-size: cover;
    }
    #section-container-story .midphoto {
        aspect-ratio: 5 / 3;
        width: 100%;
    }
}

@media not screen and (min-width: 1020px) {
    /* ヘッダーメニュー */
    .l-global-header.p-global-header {
        display:none;
    }
}
@media screen and (min-width:768px) and ( max-width:1020px) { /*　画面サイズが768pxから1020pxまではここを読み込む　*/

    /* フォントサイズの調整 */
    .top-container h2 {
        font-size: 26px;
    }
    .top-container h3, h4 {
        font-size: 22px;
    }
    .section-lead p {
        font-size: 14px;
    }
    .anniversary-arrangement-attention {
        font-size: 14px !important;
    }
    .p-120th-carousel .slick-prev {
        left:0;
    }
    .p-120th-carousel .slick-next {
        right:0;
    }
    .top-container p.text-center {
        text-align: center;
    }

    /* 画像サイズの調整 */
    .section-lead-120th-logo {
        margin-top: 40px;
        width: 240px;
    }
    #section-container-message .ceo-image {
        width: 40vw;
    }

    /* ヒストリー - 画像レイアウト */
    .history-photo-hakoguruma {
        left: 10px;
    }
    .history-photo-shop {
        left: 0;
    }

    /* サンクスアニバーサリー - ノベルティコンテナ */
    .novelty-list {
        display:flex;
        width:100%;
    }
    .novelty-list-item {
        width: 200px;
        text-align: center;
    }
    .p-120th-carousel-novelty--mobile {
        display: none;
    }
    

    /* 固定の背景画像の装飾 */
    .image-visual-container {
        width: 100%;
        height: 50vw;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-line-pack: center;
        align-content: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
        color: #fff;
        background-position: center center;
        background-attachment: initial;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative;
    }
}

@media screen and (min-width:1020px) and ( max-width:1024px) { /*　画面サイズが1020pxから1024pxまではここを読み込む　*/

    /*　カルーセルの細かい調整　*/
    .special-contetns-carousel-container {
        width: 85%;
    }
    
    .p-120th-carousel .fs-pt-carousel__slide img {
        width: 200px;
    }
}

@media screen and (max-width:767px) { /*　画面サイズが767pxまではここを読み込む　*/

    .p-120th-carousel-novelty--mobile {
        display: block;
    }
}
