@charset "utf-8";

/* =========================
common
==========================*/
html {
    font-size: 62.5%;
    scroll-behavior: smooth;

}

body {
    font-family:
        'Noto Sans JP',
        Arial,
        sans-serif;
    font-style: normal;
    color: #716A67;
    background-color: #F1E4E2;
    line-height: 1.5;
    text-align: center;
}

img {
    max-width: 100%;
    height: auto;
}




.img_top {
    position: absolute;
    right: 25px;
    bottom: 15px;
}

.section__topic {
    font-family: ABeeZee;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 20px;
    text-align: center;
}





a:hover {
    opacity: 0.6;
}
/* 擬似クラスのホバーを使う */


/* スクロールアニメーション */
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration:1s; /* スピード */
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeUpAnime{
from {
    opacity: 0;
    transform: translateY(100px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}





/* =========================
header
==========================*/

.header__list__pc {
    display: none;
}


.header {
    padding-top: 10px;
    padding-bottom: 5px;
    background: #BBA5A4;
}


.header__topic,
.nav__topic {
    color: #FFF;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    /* -webkit-text-stroke-width: 1; */
    -webkit-text-stroke-color: #9A9494;
    font-family: "Noto Serif JP";
    font-size: 2rem;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    background: #BBA5A4;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .header__topic img { width: 60%;   
    }
}







/* ハンバーガーメニュー */
.header__btn {
    display: block;
    width: 22px;
    height: 18px;
    cursor: pointer;
    position: absolute;
    top: 20px;
    right: 6.4%;
}

.nav__btn {
    display: block;
    height: 20px;
    cursor: pointer;
    position: absolute;
    top: 20px;
    right: 6.4%;
}

.nav__topic {
    padding: 30px 0 90px;
}


.nav__item {
    display: flex;
    justify-content: center
}


/* .nav初期表示 */

/* .nav__header {
    display: flex;
    justify-content: space-between;
    align-items:center;
} */

.nav__item {
    font-weight: 500;
    font-size: 2rem;
    line-height: 1;
    color: #FFF;
    margin-bottom: 52px;
}

/* .nav__item img {
    display: inline-block;
    vertical-align: -3px;
    margin-right: 24px;
} */


.nav {
    background: #BBA5A4;
    width: 100%;
    height: 100vh;
    padding: 24px 6.4%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    transform: translateX(-100%);
    transition: transform 0.4s;
}

.nav.active {
    transform: translateX(0);
}

    /* -100%に位置をずらしていたのを戻す */



/* =========================
main　▼
==========================*/

/* 桜 */
html,body{
	height: 100%;/*高さを100%にして描画エリアをとる*/
}

#particles-js{ 
	position:fixed;/*描画固定*/
	z-index:-1;/*描画を一番下に*/
	width: 100%;
	height: 100%;
}

#wrapper2{
	position: relative;/*描画を#particles-jsよりも上にするためposition:relative;を指定*/
	z-index: 1;/*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
	width:100%;
	height: 100%;
    z-index: -2;
    position: relative;
}






/* article header */
.mainImg .mainImg__pc {
    display: none;
}


.mainTopics br {
    display: block;
}

/* pcにnone付ける忘れずに */

.mainTopics {
    background-image: url(../images/bg_style_pc.png);

    background-repeat: no-repeat;
    padding: 93px 0;
    text-align: center;
    margin: 150px 0;
    background-size: cover;

}


.mainTopics__name_sp {
    width: 100%;
}

.mainTopics__name {
    font-family: ABeeZee;
    font-size: 2.5rem;
    font-weight: 300;
    letter-spacing: 0.5em;
    color: #716A67;
    text-align: center;
   
}

.mainTopics__name span {
    display: block;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    color: #847c7a;
}

.mainTopics__txt {
    font-size: 1.6rem;
    padding-top: 10px;
    color: #716A67;
    line-height: 1.7;
    text-align: center;
}

.Message__img_pc {
    display: none;
}


.section--STYLE {
    padding: 93px 0 0;
    text-align: center;
    margin: 150px 15px 0;
}



.STYLE__title {
    font-size: 1.6rem;
    padding-top: 100px;
    color: #716A67;
    line-height: 1.7;
    text-align: center;
}

.STYLE__txt {
    font-size: 1.1rem;
    padding-bottom: 100px;
    padding-top: 30px;
}

.STYLE__img_pc {
    display: none;
}


.section--ITEM {
    padding-top: 55px;
}

.ITEM__content {    
    padding: 0 15px;
}

.ITEM_comment {
    font-size: 1.5rem;
    color: #716A67;
    line-height: 1.7;
    text-align: center;
    padding-top: 33px;
    padding-bottom: 60px;
}

.ITEM__name {
    font-size: 3rem;
    padding: 25px 0;
    letter-spacing: 0.2em;

}

.ITEM__txt {
    font-size: 1.5rem;
    padding-bottom: 60px;
}

.ITEM {
    display: flex;
    flex-direction: column;
}




.section--infomation {
    background-image: url(../images/bg_style_pc.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    padding: 93px 0 4px;
    text-align: center;
    margin: 60px 0;
}






/* .mainTopics__infomation__name_sp{
    width: 100%;
} */

.mainTopics__infomation__name {
    font-family: ABeeZee;
    font-size: 2.5rem;
    font-weight: 300;
    letter-spacing: 0.5em;
    color: #716A67;
    text-align: center;
    padding-bottom: 55px;
    letter-spacing: 0.15em;
}


.mainTopics__infomation__name span {
    display: block;
    font-size: 2rem;
    letter-spacing: 0.1em;
    color: #847c7a;
}


.STYLE__item {
    display: flex;
    flex-direction: column;
}


.infomation__topic {
    display: flex;
    margin-bottom: 56px;
    margin-left: 30px;
    color: #716A67;
    font-size: 1.5rem;
}

.infomation__topic dt {
    font-weight: 700;
    width: 30%;
    text-align: left;
}

.infomation__topic dd {
    width: 70%;
    text-align: left;
}


.footer {
    padding: 22px 30px 22px;
    background: #BBA5A4;
}

.footer__group {
    background: #BBA5A4;

}

.menu__list {
    display: flex;
    padding: 22px 30px;
    font-size: 1.1rem;
    color: #FFF;
}

.menu__item {
    width: 30%;
    padding: 12px 15px 12px
}




.footer_list {
    display: inline-block;
}

.footer_inner {
    display: inline-block;
}

/* .footer__item {
    padding: 12px 15px 12px;
} */

.footer__list__pc {
    font-size: 1.5rem;
    color: #FFF;
    display: flex;
    gap: 10px
}


.footer__topic {
    display: none;
}


/* btn 追従 */
.wrapper {
  position: fixed;
  bottom: 70px;
  right: 10px;
}

.fix-btn_pc {
    display: none;
}




/* pc用 css*/
@media screen and (min-width: 769px) {

    .header {
        padding-top: 0;
        display: flex;
        justify-content: space-around;
        align-items: end;
    }

    .header_list {
        display: inline-block;
    }

    .header_inner {
        display: inline-block;
    }

    .header__item {
        padding: 65px 15px 12px;
    }

    .header__list__pc {
        max-width: 1040px;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
        font-size: 1.5rem;
        color: #FFF;


    }

    .header__topic {
        margin: 0px 0px 0px 80px;
        width: 433px;
    }

    .header__topic span {
        font-size: 1.5rem;
        margin-bottom: 15px;
    }
    



    /* line-height:  normal; */



    /* .nav__item{
       margin-top: 0;
       font-weight: 400;
       font-size: 2.0rem;
       line-height: 1.3;
       color: #ffff;
       margin-left: 32px;
    } */


    .header__btn {
        display: none;
    }


    .mainImg .mainImg__sp {
        display: none;
    }


    .mainTopics__name {
        font-size: 4rem;
        font-family: Arial;
        margin: auto;
        display: block;
        padding-bottom: 65px;
    }

    .mainTopics__name span {
        color: #847c7a;
        font-size: 1.5rem;
    }

    .mainImg .mainImg__pc {
        object-fit: cover;
        width: 100%;
        height: 680%;
        display: block;
    }

    .mainTopics {
        margin: 75px 50px 80px;
        padding: 80px 0;
    }

    .mainTopics__txt {
        font-size: 2rem;
    }

    .STYLE__img {
        display: none;
    }






    .Message__img_pc {
        display: block;
    }

    .Message__img {
        display: none;
    }

    .STYLE__img_pc {
        display: block;
        width: 50%;

    }

    .STYLE__img_pc img {
        width: 100%;
        height: auto;

    }

    .STYLE__item {
        flex-direction: row;
        align-items:center;

    }

    .STYLE__item:nth-child(even) {
        flex-direction: row-reverse;

    }

    .STYLE__txtbox {
        width: 50%;
    }


    .STYLE__title {
        font-size: 2.5rem;
        color: #716A67;
    }

    .STYLE__txt {
        font-size: 1.8rem;
        color: #716A67;

    }

    .section--ITEM {
        padding-top: 0;
    }


    .ITEM__img img {
        /* trim on */
        object-fit: fill;
        width: 100%;
        height: auto;
    }

    .ITEM {
        flex-direction: row;
        font-size: 2rem;
        flex-wrap: wrap;
        width: calc(240px * 3 + 60px);
        gap: 30px;
        margin: auto;
    }

    .ITEM_comment {
        font-size: 2.5rem;
        padding-bottom: 90px;
    }

    .ITEM_comment br {
        display: none;
    }

    .ITEM__item {
        width: 240px;
    }

    .ITEM__name{
        font-size: 2.5rem;
    }

    .mainTopics__infomation__name {
        padding-bottom: 100px;
    }

    .mainTopics__infomation__name {
        font-size: 4rem;
    }

    .mainTopics__infomation__name span {
        font-size: 2rem;
    }

    .infomation__topic {
        font-size: 2rem;
    }

    .infomation__list {
        padding-left: 105px;
    }




    .section--infomation {
        margin: 150px 50px;
    }



  

    .footer {
        padding-top: 12px;
        background: #BBA5A4;
    }


    .footer__topic,
    .nav__topic {
        color: #FFF;
        text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
        /* -webkit-text-stroke-width: 1; */
        -webkit-text-stroke-color: #9A9494;
        font-family: "Noto Serif JP";
        font-size: 2rem;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
        background: #BBA5A4;
        text-align: center;
    }

    /* .footer__topic span {
        display: block;
        font-size: 10px;
    } */  

    .footer__topic{
        width: 443px;
    }

    .footer {
        padding-top: 0;
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
    }



    .footer_list {
        display: inline-block;
    }

    .footer_inner {
        display: inline-block;
    }

    .footer__item {
        padding: 85px 15px 12px;
    }

    .footer__list__pc {
        max-width: 1040px;
        margin-right: auto;
        display: flex;
        justify-content: space-between;
        font-size: 1.5rem;
        color: #FFF;
    }



    .footer__topic {
        margin-top: 35px;
        font-size: 3.2rem;
        padding-right: 60px;

    }


    



    .footer__topic span {
        font-size: 1.5rem;
        margin-bottom: 15px;

    }

    .footer__topic {
        display: block;
    }



/* btn 追従 */
    .fix-btn_pc {
        display:block;
    }

    .fix-btn {
        display: none;
    }

}
/*  pc 769px ▲*/




/* ローディング */
/* Loading背景画面設定　*/
#splash {
    /*fixedで全面に固定*/
      position: fixed;
      width: 100%;
      height: 100%;
      z-index: 999;
      background:#BBA5A4;
      text-align:center;
      color:#ffffff;
  }
  
  /* Loading画像中央配置　*/
  #splash_logo {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
  }
  
/* Loading アイコンの大きさ設定　*/
#splash_logo svg{
    width:350px;
}


  @media screen and (min-width: 769px) {
  /* Loading アイコンの大きさ設定　*/
  #splash_logo svg{
      width:900px;
  }
}




  /*=============== SVGアニメーション内の指定 =================*/
  
  /*アニメーション前の指定*/
  #mask path {
          fill-opacity: 0;/*最初は透過0で見えない状態*/
          transition: fill-opacity .5s;/*カラーがつく際のアニメーション0.5秒で変化*/
          fill: none;/*塗りがない状態*/
          stroke: #716A67;/*線の色*/
      }
  
  /*アニメーション後に.doneというクラス名がで付与された時の指定*/
  #mask.done path{
        fill: #fff;/*塗りの色*/
        fill-opacity: 1;/*透過1で見える状態*/
        stroke: none;/*線の色なし*/
      }

