@charset "UTF-8";

*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  line-height: 1.7;
  font-family: 'Noto Serif JP', serif;
  font-style:normal;
  text-decoration: none;
  list-style: none;
}

a{
  color:inherit;
  text-decoration: none;
}

html{
  font-size: 16px;
}

body{
  -webkit-text-size-adjust: 100%;
  background-position: center center;
  margin: 0 auto;
}

main{
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 70px;
  margin-left: auto;
  margin-right: auto;
}

header{
  height: 69px;
  position: fixed;
  max-width: 100%;
  width: 100%;
  background-color: #ffffff;
  z-index: 999;
 }

ul{
  list-style-type: none;
}

img{
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  border: none;
}

footer{
  font-size: 11px;
  text-align: center;
}

/*===================================
 TOPセクション
===================================*/ 
#wrap{
  margin: 0 auto;
  text-align: left;
  border-left: 5px;
  border-right: 5px;
}

#top{
  max-width:1100px;
  margin:0 auto;
  display: flex;
  align-items: flex-start;

}

.home a:hover,
.about a:hover,
.cotton a:hover,
.onlineshop a:hover,
.contact a:hover{
  opacity: 0.5;
}

h1{
  margin-right: auto;
}

h1 img{
  max-width: 69%;
  vertical-align: bottom;
  border: none;
}

.site-header.hide{
    transform: translateY(-100%);
}

/*===================================
 h2タイトル装飾
===================================*/ 
h2 {
   position: relative;
   padding: 0 .5em .5em 2em;
   border-bottom: 1px solid #B61C2C;
}
h2::before,
h2::after {
   position: absolute;
   content: '';
   border-radius: 100%
}
h2::before {
   top: .2em;
   left: .2em;
   z-index: 2;
   width: 18px;
   height: 18px;
   background: rgba(197, 152, 73, .3);
}
h2::after {
   top: .7em;
   left: .7em;
   width: 13px;
   height: 13px;
   background: rgba(252, 100, 113, .3);
}
/*===================================
 ナビメニュー
===================================*/ 
.pc_nav nav ul {
    display: flex;
}
nav ul li{
  font-family: "小塚ゴシック Pr6N", sans-serif;
  font-size: 20px;
  list-style: none;
  margin: auto;
  overflow: hidden;
}

.home a,
.about a,
.cotton a,
.onlineshop a,
.contact a{
  padding: 12px 16px;
}

nav ul li a{
  font-size: 24px;
  display: block;
  padding: 0 20px;
  text-decoration: none;
  list-style: none;
}

.sp_nav{
  display: none;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

/*===================================
 TOP
===================================*/ 
#top_span{
  padding-top: 58px;
}

 /*=== スライドのアニメーション === */
.top_img1{
  background-image: url(../img/top/pc_top1.jpg);
}
.top_img2{
  background-image: url(../img/top/pc_top2.jpg);
}
.top_img3{
  background-image: url(../img/top/pc_top3.jpg);
}
 .slide {
  position   : relative;
  overflow   : hidden;
  height     : 70vh;
  width      : 100%;
  margin     : 0 auto;
  background : #ffff;
  bottom: -40px;
}
 

.slide .top_img{
  display    : block;
  position   : absolute;
  opacity    : 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  animation  : slideAnime 12s ease infinite;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}

 /*=== スライドのアニメーションを段差で開始する === */



.slide .top_img1 { animation-delay: 0s }
.slide .top_img2 { animation-delay: 4s }
.slide .top_img3 { animation-delay: 8s }
 

@keyframes slideAnime{
   0% { opacity: 0 }
   8% { opacity: 1 }
  25% { opacity: 1 }
  33% { opacity: 0 }
 100% { opacity: 0 }
}
 /*=== スライドのアニメーション === */
#box_margin{
  font-size: 18px;
  color: black;
  margin: 20px 0;
}

#hajime{
  padding: 20px 0;
}

#hajime_Explanation{
  padding: 0 20px;
  font-size: 17px;
  text-align: left;
  margin-top: 5px;
}

h2{
  padding: 0.15em;
  font-size: 30px;
  color: #494949;
  border-bottom: dashed 2px #ffaf58;
}

h3{
  padding: 0.5em;
  font-size: 26px;
  color: #494949;
  border-radius: solid 5px #ffaf58;
}


#news{
  padding-bottom: 20px;
}

#news ul {
  list-style-type: none;
}

#news ul li {
  padding: 20px 20px 0 175px;
  border-bottom: 1px dotted #6c5f45;
  color: #342300;
  border-right: none;
  text-indent: -175px;
}

#news ul li time {
  display: inline-block;
  width: 175px;
  padding-left: 8px;
  color: #6c5f45;
  font-weight: bold;
  text-indent: 0;
}

#news a{
  color: #FF3300;
  font-weight: bolder;
}

#news a:hover{
  color: orange;
  font-weight: 900;
  opacity: 0.8;
}

#new{
  padding: 0 10px;
  font-size: 12px;
  font-weight: bold;
  color: #f36;
}

#new2{
  padding: 0 10px;
  font-size: 18px;
  font-weight: bold;
  color: #f36;
}

/*===================================
 オーガニックコットンについて
===================================*/ 
.cotton_img img{
  margin-left: auto;
  margin-right: auto;
  padding-top: 25px;
  display: block;
  max-width: 100%;
  height: auto;
  width: 75%;
}

#cotton_text{
  line-height: 2.2em;
  padding-bottom: 25px;
  margin: 0 20px;
}

#cotton_number{
  line-height: 2.0em;
  padding: 40px 0;
}

.bold{
  font-weight: 800;
  font: 1.5rem YuGothic,sans-serif;
}

/*===================================
 オンラインショップ
===================================*/ 
.menu_page{
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  margin-top: 10px;
}

@media screen and (min-width: 767px) {
  /*汎用2カラム,3カラム指定*/
    .pc-grid-col3 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

  }

  .pc-grid-col3 .col {
    width: 49%;
  }
}

.heading{
  border-left-style: none;
}

.pc-grid-col3 img{
    width: 622px;
    height: 420px;
    overflow: hidden;
    text-align: center;
    object-fit: cover;
}

.menu-list {
  text-align: center;
}
.menu-list li {
  margin-bottom: 20px;
  border: 2px solid #c4b695;
  box-sizing: border-box;
}
.menu-text {
  margin: 15px;
  font-size: 20px;
}

.menu-Explanation{
  margin: 15px;
  font-size: 17px;
}

/*===================================
 コンタクト
===================================*/ 
.holiday{
  font-size: 15px;
  line-height: 1.5;
}
.domain{
  padding: 5px 0;
}
.Form {
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  max-width: 650px;
}

.Form-Item {
  border-top: 1px solid #ddd;
  padding-top: 24px;
  padding-bottom: 24px;
  width: 100%;
  display: flex;
  align-items: center;
}

.Form-Item:nth-child(5) {
  border-bottom: 1px solid #ddd;
}

.Form-Item-Label {
  width: 100%;
  max-width: 248px;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-size: 18px;
}

.Form-Item-Label.isMsg {
  margin-top: 8px;
  margin-bottom: auto;
 }

.Form-Item-Label-Required {
  border-radius: 6px;
  margin-right: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 48px;
  display: inline-block;
  text-align: center;
  background: #c26b;
  color: #fff;
  font-size: 14px;
}

.Form-Item-Label-free{
  border-radius: 6px;
  margin-right: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  width: 48px;
  display: inline-block;
  text-align: center;
  background: #ffd500;
  color: rgb(83, 65, 65);
  font-size: 14px;
}

.Form-Item-Input {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 48px;
  flex: 1;
  width: 100%;
  max-width: 410px;
  background: #eaedf2;
  font-size: 16px;
}

.Form-Item-Textarea {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 216px;
  flex: 1;
  width: 100%;
  max-width: 410px;
  background: #eaedf2;
  font-size: 18px;
}

.Form-Btn {
  border-radius: 6px;
  margin-top: 32px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 16px;
  padding-bottom: 16px;
  width: 200px;
  display: block;
  letter-spacing: 0.05em;
  background: #5bc8ac;
  color: #fff;
  font-weight: bold;
  font-size: 21px;
}

select#date{
  border: 1px solid #ddd;
  /*margin-top: 18px;*/
  border-radius: 6px;
  margin-left: 5px;
  padding-left: 1em;
  padding-right: 1em;
  height: 48px;
  flex: 1;
  width: 1000%;
  max-width: 380px;
  font-size: 16px;
  background: #eaedf2;
  font-family: "小塚ゴシック Pr6N",sans-serif;
}

#datepicker{
  /*margin-top: 18px;*/
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 38px;
  padding-left: 1em;
  padding-right: 1em;
  height: 48px;
  flex: 1;
  width: 50%;
  max-width: 380px;
  font-size: 16px;
  background: #eaedf2;
  font-family: "小塚ゴシック Pr6N",sans-serif;
}

/*===================================
 SNSアイコン
===================================*/ 
.sns{
  margin: 3px;
  text-align: center;
}
.sns li{
  display: inline-block;
}
.sns a{
  display: block;
  padding: 10px 10px;
  background: #fff;
  color: #dc3858;
  border-radius: 5px;
  text-decoration: none;
  font-size: 20px; 
}
.sns a:hover{
  opacity: 0.5;
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?q7igpd');
  src:  url('fonts/icomoon.eot?q7igpd#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?q7igpd') format('truetype'),
    url('fonts/icomoon.woff?q7igpd') format('woff'),
    url('fonts/icomoon.svg?q7igpd#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  /*speak-as: none;*/
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-instagram:before {
  content: "\ea92";
}

#sdgs_back a{
  background: none;
  padding-top: 10;
  padding-bottom: 0;
}

.sdgs img{
  width: 65px;
}

/*===================================
  タブレット用
===================================*/ 
@media screen and (max-width: 839px){
nav ul {
  flex: none;
}
nav ul li a{
  font-size: 18px;
  padding: 0 14px;
  color:black; 
}
.sp_nav{
  display: block;
}
.pc_nav{
  display: none;
}
/*ハンバーガーメニュー*/
header {
  height: 69px;
  position: fixed;
  width: 100%;
  background-color: #fffbe9;
  z-index: 999;
}

#nav-drawer{
  position: relative;
  margin-right:30px;
  margin-top:12px;
  width: 40px;
  height: 44px;
}

#nav-open:hover{
  cursor: pointer;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 60px;
  height: 16px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 2px;/*線の太さ*/
  width: 50px;/*長さ*/
  border-radius: 3px;
  background: #555;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -13px;
}
#nav-open span:after {
  bottom: -26px;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;/*最前面に*/
  width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 200px;/*最大幅（調整してください）*/
  height: 100%;
  background: #fff;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(120%);
  transform: translateX(120%);/*左に隠しておく*/
}
}

/*===================================
  スマフォ用
===================================*/ 
@media screen and (max-width: 479px) {
  .Form-Item-Textarea {
    margin-top: 18px;
    margin-left: 0;
    height: 200px;
    flex: inherit;
    font-size: 15px;
  }

  .Form-Item-Input {
    margin-left: 0;
    margin-top: 18px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
  }

  .Form-Btn {
    margin-top: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 160px;
    font-size: 15px;
  }

 .Form-Item-Label-Required .Form-Item-Label-free{
    border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;
  }

 .Form-Item-Label {
    max-width: inherit;
    display: flex;
    align-items: center;
    font-size: 15px;
  }

 .Form-Item-Label.isMsg {
    margin-top: 0;
  }

 .Form {
    margin-top: 10px;
  }

 .Form-Item {
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 16px;
    padding-bottom: 16px;
    flex-wrap: wrap;
    max-width: 410px;
}

#datepicker{
  margin-left: 0;
  margin-top: 18px;
  font-size: 16px;
}

select#date{
  margin-top: 18px;
}
#news{
  margin: 0 5px;
}


/*インフォメーション*/
#news ul li {
  padding: 20px 5px 0 145px;
  border-bottom: 1px dotted #6c5f45;
  color: #342300;
  border-right: none;
  text-indent: -145px; 
  font-size: 16px;
}

#news ul li time {
  display: inline-block;
  width: 145px;
  padding-left: 8px;
  color: #6c5f45;
  font-weight: bold;
  text-indent: 0;
}

#box_margin{
  font-size: 13px;
}

h3.heading{
  font-size: 22px;
}
.menu-Explanation {
  font-size: 12px;
  margin: 10px;
}
.menu-text {
  margin: 5px;
  font-size: 18px;
}