@charset "UTF-8";
/* CSS Document */
#header {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    position:fixed;
    top: 0;
    left: 0;
    width: 230px;
    height: 100vh;
    z-index: 3;
}
.header_logo img {
    width: 85%;
}
.header_logo {
    margin: 30px auto 20px;
    text-align: center;
}
.header_sns {
    display: flex;
    flex-flow: column;
    text-align: center;
}
.header_sns::before{
    content:"";
    display:block;
    width:28px;
    height:2px;
    background-color:#2e4893;
    margin: 0 auto 26px;
 }
.header_sns_instagram, .header_sns_note {
    margin-top: 10px;
}
/* SPでは左側追従メニュー非表示 */
@media(max-width:1024px) {
  #header {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 3;
  }
  .header_logo {
    margin-top: 10px;
    text-align: left;
}
  .header_logo img {
    width: 10%;
  }
  .header_sns {
    display: none;
  }
}
@media(max-width:425px){
  .header_logo img {
    width: 20%;
  }
}
.fv-container {
    width: 100%;
    padding: 0 0 0 230px;
}
/* SPではfvをフルスクリーンに */
@media(max-width:1024px) {
  .fv-container {
    padding: 0;
  }
}
.main-nav {
    display: flex;
    align-items: center;
    justify-content:flex-end;
    padding: 4.4em 1.1em 0em 0em;
    font-size: 1em;
    color: white;
    z-index: 2;
}
.main-nav ul {
    display: flex;
    margin: 0;
    padding: 0;
}
.main-nav ul li {
    font-size: 1.25em;
    letter-spacing: 0.05em;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
    padding-right: 5rem;
}
.main-nav ul li a{
    text-decoration: none;
    color: white;
    font-size: 0.8em;
}
.main-nav_onlineshop {
    background: url(../images/common/online_shop_icon.png) no-repeat; 
    background-position: 0.5em;
    padding: 0.5em 1em 0.5em 2.5em;
    border: solid 1px #fff;/*線*/
    box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
    border-radius: 50px;/*角の丸み*/
}
.g-nav_logo {
  display: none;
}
.g-nav_sns {
  display: none;
}

/*========= スクロールダウンのためのCSS ===============*/

/*======  縦線が動いてスクロールを促す =======*/

/*スクロールダウン全体の場所*/
.scrolldown{
    /*描画位置※位置は適宜調整してください*/
  position:absolute;
  left:93%;
  bottom:10px;
    /*全体の高さ*/
  height:50px;
  position: absolute;
  z-index: 2;
}

/*Scrollテキストの描写*/
.scrolldown span{
    /*描画位置*/
  position: absolute;
  left:-15px;
  top: -30px;
    /*テキストの形状*/
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  transform: rotate(90deg);

}

/* 線の描写 */
.scrolldown::after{
  content: "";
    /*描画位置*/
  position: absolute;
  top: 0;
    /*線の形状*/
  width: 1px;
  height: 100px;
  background: #fff;
    /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 2.4s ease-in-out infinite;
  opacity:0;
}

/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:30px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}

/* section story */
.section-story {
  margin: 0;
  background: url("../images/home/bg_wind_pc.png") no-repeat top center;
  background-size: cover;
}
.section-story-wrapper {
  width: 100%;
  padding: 0 0 0 230px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section-story__lead1 {
  padding: clamp(90px, 11vw, 160px) 0; 
  min-height: 0vw;
}
.section-story__lead1-wrapper {
  display: flex;
  align-items: center;
  gap:clamp(90px, 16vw, 240px);
  min-height: 0vw;
}
.section-story__lead1-text {
  width: 100%;
  min-width: 456px;
}

.section-story__lead1-text h2{
  font-size: 24px;
  min-height: 0vw;
  line-height: 1.8;
  font-weight: 700;
  margin-bottom: 1em;
} 

.section-story__lead1-text p {
  line-height: 2.5;
}

.section-story__lead1-wrapper figure {
  width: 100%;
}
.section-story__lead1-wrapper figure img {
  width: calc(300vw / 14.4);
  height: calc(420vw / 14.4);
  background-color: #fff;
  border: 10px solid #fff;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-story__img2 {
  width: 100%;
  padding-left: 2.5em;
}
.section-story__img2 img {
  width: 380px;
  height: 270px;
  width: calc(380vw / 14.4);
  height: calc(270vw / 14.4);
  background-color: #fff;
  border: 10px solid #fff;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-story__lead2 {
display: flex;
flex-direction: column;
align-items: center;
margin-top: 90px;
}

.section-story__lead2-text {
  margin-bottom: 30px;
  line-height: 2.5;
}
.section-story__lead2-link {
	position: relative;
	border: none;
	border-bottom: 1px solid #64514b;
	width: fit-content;
  font-size: 1.4rem;
	}
.section-story__lead2-link a::after {
	content: ">";
	margin-left: 20px;
}
.section-story__lead2-link a {
  text-decoration: none;
  color: #64514b;
}



@media(max-width:1024px) {
  .section-story-wrapper {
    padding: 0 1em 0 1em;
  }
  .section-story__lead1-wrapper {
    display: flex;
    flex-direction: column;
  }
  .section-story__lead1-text {
    width: 100%;
    min-width: 345px;
  }
  .section-story__lead1-text-break::after {
    content: "\A";
    white-space: pre;
  }
 .section-story__img1 {
  padding-right: 1rem;
  text-align: right;
  }
  .section-story__lead1-text p {
    letter-spacing: -0.05rem;
  }
  .section-story__lead1-wrapper figure img {
    width: 180px;
    height: 252px;
    background-color: #fff;
    border: 6px solid #fff;
    box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
  }
  .section-story__img2 {
    width: 100%;
    padding-left: 0;
  }
  .section-story__img2 img {
    width: 228px;
    height: 162px;
    background-color: #fff;
    border: 6px solid #fff;
    box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
  }
  .section-story__lead2-text-break::after {
    content: "\A";
    white-space: pre;
  }
}


/* section item */
.section-item {
  width: 100%;
  padding: 0 0 0 230px;
  margin-top: 160px;
}
.section-item h2 {
  font-size: 24px;
  min-height: 0vw;
  font-weight: 700;
  margin-bottom: 0.5em;
}

.section-item__group1 {
  display: flex;
  flex-direction: column;
  margin-bottom:90px;
}
.section-item__lead-text {
  margin-bottom: 30px;
  line-height: 2.5;
}

.section-item__lead-link {
  position: relative;
	border: none;
	border-bottom: 1px solid #64514b;
	width: fit-content;
  font-size: 1.4rem;
	}
  .section-item__lead-link a::after {
	content: ">";
	margin-left: 20px;
}
.section-item__lead-link a {
  text-decoration: none;
  color: #64514b;
}

.section-item__img1 {
  margin-top:90px;
  width: 100%;
 
}
.section-item__img1 img {
  width: calc(650vw / 14.4);
  height: calc(430vw / 14.4);
  background-color: #fff;
  border: 10px solid #fff;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-item__group2 {
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 11vw, 160px);
}
.section-item__img2, .section-item__img3{
  width: 100%;
}

.section-item__img2 img {
  object-fit: cover;
  object-position: 45% 0;
  width: calc(300vw / 14.4);
  height: calc(420vw / 14.4);
  background-color: #fff;
  border: 10px solid #fff;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-item__img3 img {
  object-fit: cover;
  width: calc(380vw / 14.4);
  height: calc(270vw / 14.4);
  background-color: #fff;
  border: 10px solid #fff;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-item-group-wrapper {
  display: flex;
  justify-content: center;
  gap: clamp(40px, 6vw, 90px);
}

@media(max-width:1024px) {
  .section-item {
    margin-top: 120px;
    padding: 0 1em 0 1em;
  }
  .section-item h2 {
   text-align: center;
  }
  .section-item__group1 {
    display: flex;
    flex-direction: column;
    margin-bottom: 0px;
    align-items: center;
  }
  .section-item-title {
    order: 1;
  }
  .section-item__lead-wrapper {
    order: 3;
  }
  .section-item__img1 {
    margin-top:30px;
    order: 2;
    text-align: center;
  }
  .section-item__img1 img {
    width: 320px;
    height: 240px;
    border: 6px solid #fff;
    box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
    margin-bottom: 40px;
  }
  .section-item__group2 {
    display: flex;
    flex-direction: column-reverse;
  }
  .section-item__img2 img {
    width: 165px;
    height: 215px;
    background-color: #fff;
    border: 6px solid #fff;
    box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
  }
  .section-item__img3 {
    text-align: right;
  }
  .section-item__img3 img {
    object-fit: cover;
    width: 182px;
    height: 136px;
    border: 6px solid #fff;
    box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
  }
  .section-item-group-wrapper {
    display: flex;
    flex-direction: column;
  }
}

/* section instagram */
.section-instagram {
  width: 100%;
  padding: 0 0 0 230px;
  margin-top: 160px;
}
.section-instagram h2 {
  margin: 0 0 80px 0;
  text-align: center;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
.section-instagram__list {
  position: relative;
  max-width: 1080px;
  height: 330px;
  overflow: hidden;
  margin: 0 auto;
}
.section-instagram__list div {
  margin: 0;
}
.section-instagram__list img {
  vertical-align: bottom;
}
.section-instagram__list div:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
  width: 330px;
}
.section-instagram__list div:nth-child(1) img, .section-instagram__list div:nth-child(2) img {
  width: 100%;
  height: auto;
  box-shadow: 6px 6px 10px rgba(51, 51, 51, 0.2);
}
.section-instagram__list div:nth-child(2) {
  position: absolute;
  top: 0;
  right: 0;
  width: 330px;
}
.section-instagram__list div:nth-child(3) {
  position: absolute;
  top: 0;
  left: 371px;
  width: 150px;
}
.section-instagram__list div:nth-child(3) img, .section-instagram__list div:nth-child(4) img, .section-instagram__list div:nth-child(5) img, .section-instagram__list div:nth-child(6) img {
  width: 100%;
  height: auto;
  box-shadow: 4px 4px 6px rgba(51, 51, 51, 0.2);
}
.section-instagram__list div:nth-child(4) {
  position: absolute;
  top: 0;
  right: 371px;
  width: 150px;
}
.section-instagram__list div:nth-child(5) {
  position: absolute;
  bottom: 0px;
  left: 371px;
  width: 150px;
}
.section-instagram__list div:nth-child(6) {
  position: absolute;
  bottom: 0px;
  right: 371px;
  width: 150px;
}

.sectioon-instagram__link {
  margin: 40px auto 0;
  text-align: center;
  font-size: 1.4rem;
  position: relative;
	border: none;
	border-bottom: 1px solid #64514b;
	width: fit-content;
	}
.sectioon-instagram__link a::after {
	content: ">";
	margin-left: 20px;
}
.sectioon-instagram__link a {
  text-decoration: none;
  color: #64514b;
}
@media(max-width:1280px) {
  .section-instagram{
    margin-top: 120px;
    padding: 0 1em 0 1em;
  }
  .section-instagram h2 {
    margin: 0 0 40px 0;
  }
  .section-instagram-wrapper {
    max-width: 60%;
    margin: 0 10em 0 26em;
  }
  .section-instagram__list {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    margin: 0 auto;
  }
  .section-instagram__list div {
    float: left;
  }
  .section-instagram__list img {
    max-width: 100%;
    height: auto;
  }
  .section-instagram__list div:nth-child(1) {
    position: static;
    width: 48%;
    margin-bottom: 3.73vw;
}
.section-instagram__list div:nth-child(2) {
  position: static;
  float: right;
  width: 48%;
  margin-bottom: 3.73vw;
}
.section-instagram__list div:nth-child(3), .section-instagram__list div:nth-child(4), .section-instagram__list div:nth-child(5) {
  position: static;
  width: 22%;
  margin-right: 4%;
}
.section-instagram__list div:nth-child(6) {
  position: static;
  float: right;
  width: 22%;
}
}
@media(max-width:1024px){
  .section-instagram-wrapper {
    margin: 0 auto;
  }
}
@media(max-width:425px) {
  .section-instagram-wrapper {
    max-width: 100%;
    margin: 0 auto;
}
}
/* section blog */
.section-blog {
  width: 100%;
  padding: 0 0 0 230px;
  margin-top: 160px;
}
.section-blog h2 {
  margin: 0 0 80px 0;
  text-align: center;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
}
.section-blog-wrapper {
  display: flex;
  justify-content: center;
  gap: 60px;
}
.section-blog__text {
  border:none;
  position:relative;
  padding: 2em;
}
.section-blog h3 {
  font-size: 2.4rem;
  line-height: 1.8;

}
.section-blog__text::before {
  content: "";
  width:30px;
  height: 1px;
  background:#64514b;
  display:block;
  position:absolute;
  top:0;
  left:-5px;
  }
  .section-blog__text h3::before {
  content: "";
  width:1px;
  height: 30px;
  background:#64514b;
  display:block;
  position:absolute;
  top:-5px;
  left:0;
  }
  .section-blog__text::after {
  content: "";
  width:30px;
  height: 1px;
  background:#64514b;
  display:block;
  position:absolute;
  bottom:0;
  right:-5px;
  top:auto;
  }
  .section-blog__text h3::after {
  content: "";
  width:1px;
  height: 30px;
  background:#64514b;
  display:block;
  position:absolute;
  bottom:-5px;
  right:0;
  top:auto;
  }
  .sectioon-blog__link {
  font-size: 1.4rem;
  position: relative;
	border: none;
	border-bottom: 1px solid #64514b;
	width: fit-content;
  }
  .sectioon-blog__link a::after {
    content: ">";
    margin-left: 20px;
  }
  .sectioon-blog__link a {
    text-decoration: none;
    color: #64514b;
  }

  @media(max-width:1024px) {
    .section-blog{
      margin-top: 120px;
      padding: 0 1em 0 1em;
    }
    .section-blog h2 {
      margin: 0 0 40px 0;
    }
    .section-blog h3 {
      font-size: 2rem;
      line-height: 1.6;
    }
    .section-blog-wrapper {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 60px;
    }
    .section-blog__text {
      padding: 1em 1em 1em 1em;
      max-width: 375px;
    }
  }

  /* section shop */
.section-shop {
  width: 100%;
  padding: 0 0 0 230px;
  margin-top: 160px;
}
.section-shop-wrapper {
  display: flex;
  justify-content:center;
  gap: 60px;
  align-items: center;
}
.section-shop__group1, .section-shop__group2 {
  position: relative;
}
.section-shop__group1 img, .section-shop__group2 img {
  width: 100%; /* divの幅に対する割合 */
}
.section-shop__group1 p, .section-shop__group2 p {
  color: #fff;
  font-size: 2.4rem;
  line-height: 1.6;
  text-align: center;
  text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
}
@media(max-width:1024px) {
  .section-shop{
    /* margin-top: 120px; */
    padding: 0 1em 0 1em;
  }
  .section-shop-wrapper {
    display: flex;
    flex-direction: column;
  }
  .section-shop__group1 p, .section-shop__group2 p {
    font-size: 2rem;
  }
  /* .section-shop__grop2-text-break::after {
    content: "\A";
    white-space: pre;
  } */
  /* footer */
}
.footer {
  margin-top: 160px;
  padding: 1.5rem 1rem 1rem;
  background:#64514b;
}
.footer-container {
  display: flex;
  justify-content: space-between;
  max-width: 960px;
  margin: 0 auto 3rem;
}

.footer-logo {
  width: 120px;
  height: 112px;
  
}

.footer-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer-nav {
  display: flex;
  align-items: center;
  justify-content:flex-end;
  padding: 0;
  font-size: 1em;
  color: white;
  z-index: 2;
}
.footer-nav ul {
  display: flex;
  margin: 0;
  padding: 0;
}
.footer-nav ul li {
  font-size: 1.25em;
  letter-spacing: 0.05em;
  text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
  padding-right: 5rem;
}
.footer-nav ul li a{
  text-decoration: none;
  color: white;
  font-size: 0.8em;
}
.footer-nav_onlineshop {
  background: url(../images/common/online_shop_icon.png) no-repeat; 
  background-position: 0.5em;
  padding: 0.5em 1em 0.5em 2.5em;
  border: solid 1px #fff;/*線*/
  box-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
  border-radius: 50px;/*角の丸み*/
}

.copyright {
  margin: 0 auto;
  font-size: 1.2rem;
  text-align: center;
  color: #fff;
}
.footer-nav_sns {
  display: none;
}
@media(max-width:1024px) {
  .footer-container {
    flex-wrap: wrap;
    justify-content: center;
    max-width: 327px;
    margin-bottom: 2rem;
  }
  .footer-logo {
    width: 90px;
    margin: 0 auto;
  }
  .footer-nav {
    display: block;
    width: 100%;
    margin-bottom: 1.2rem;
  }
  .footer-nav ul {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .footer-nav ul li {
    letter-spacing: 0.05em;
    text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.2);
    padding: 0;
  }
  .footer-nav_sns {
    margin-top: 32px;
    display: flex;
    justify-content:center;
    gap: 24px;
  }
  .footer-nav_sns_instagram img {
    width: 90%;
  }

  }
