@charset "UTF-8";

html {
  font-size: 100%;
}
body {
  background-color: #E6E2D7;
  color: #000;
  font-family: 'Noto Serif JP', serif;
}
img {
  max-width: 100%;
}
ul {
  list-style: none;
  writing-mode: vertical-rl;
  text-align: right;
}
a {
  color: #ffffff;
  text-decoration: none;
}
.site-title{
    line-height: 1px;
    margin-left:60px;
}
.site-title a{
    display: block;
}
.wrapper{
    width: 100%;
    max-width: 1024px;
    margin: 0px auto;
    padding:0 20px;
}

/* ヘッダー */

#header {
    width: 100%;
    /* 背景を画面下まで設定 */
    height: 100vh;
    background-image: url("COFFEE.jpg");
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    padding: 60px 80px;
    margin-bottom: 180px;
    /* 「オンラインストアを見る」ボタンを配置するためのposition */
    position: relative;
    /* 縦書きの指定（各ブラウザに対応するためのベンダープレフィックスを設定） */
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;  /* Chrome、Safari用 */
    -moz-writing-mode: vertical-rl;     /* Firefox用 */
    -ms-writing-mode: tb-rl;            /* IE用 */
  }
  
  /*
  「オンラインストアを見る」ボタン
  positionで左下に配置
  backgroundのrgbaで透過設定
  */

  /* ナビゲーション */
  #nav li {
    margin-left: 25px;
    text-align: left;
    color: #ffffff;
  }
  #nav li a:hover{
    opacity: 1;
  }

  /* オンラインストア */
  .btn{
    background: rgba(255,255,255,0.2);
    position: absolute;
    left:40px;
    bottom:30px;
  }
  .btn a{
    display: block;
    border: solid 1px #ffffff;
    padding:30px 18px ;
  }
  .btn a:hover {
    opacity: 0.7;
  }
  #nav{
    position: absolute;
    top:70px;
  }

  main{
    background-color: #E6E2D7;
  }
  /* news */
/* 縦書きの指定（各ブラウザに対応するためのベンダープレフィックスを設定） */
#news{
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;  /* Chrome、Safari用 */
  -moz-writing-mode: vertical-rl;     /* Firefox用 */
  -ms-writing-mode: tb-rl;            /* IE用 */
  flex-direction: row-reverse;
  margin:0 auto;
  margin-bottom: 180px;
}
.section-title{
  flex-direction: row-reverse;
}
.en{
  font-size: 0.875rem;
}
.ja{
  font-size: 2.25rem;
  margin-left: 15px;
}
.list{
  margin-right: 30px;
  margin-top: 50px;
}
dt{
  border-right: solid 1px #000;
  padding: 15px 30px 15px 5px;
}
dd {
  padding: 15px 0 15px 30px;
}
.list dd :last-child{
  border-left: solid 1px #000;
}

/*-------------------------------------------
Products（共通）
-------------------------------------------*/
.products {
  display: flex;
  margin-bottom: 180px;
}
.products .section-title {
  font-weight: normal;
  line-height: 1;
}
.products .section-title .ja {
  font-size: 2rem;
  letter-spacing: 0.1em;
  margin-bottom: 18px;
}
.products .section-title .en {
  font-size: 0.875rem;
}
/*
画像の上にテキストを重ねるためのpositionを設定
*/
.products .img {
  width: 65%;
  margin-top: 100px;
  position: relative;
}
/*
「position: absolute;」でテキストを画像の上に配置
左右の配置位置は「#products1」と「#products2」で個別に指定
*/
.products .text {
  width: 56%;
  color: #fff;
  padding: 50px 0;
  text-align: center;
  position: absolute;
  bottom: -20px;
}

.products .section-title{
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;  /* Chrome、Safari用 */
  -moz-writing-mode: vertical-rl;     /* Firefox用 */
  -ms-writing-mode: tb-rl;            /* IE用 */
}

#products1{
  flex-direction: row-reverse;
}
#products1 .text{
  background-color: goldenrod;
  position: absolute;
  left:-20px;
  opacity: 0.8;
}
#products2 .text{
  background-color: darkred;
  position: absolute;
  right:-20px;
  opacity: 0.8;
}

#shop iframe{
  width: 100%;
  vertical-align: bottom;
}

/* footer */
#footer {
  background-color: #000;
  color: #fff;
  padding: 80px 80px 30px 30px;
}
#footer .inner{
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}
#footer .inner .left,
#footer .inner .right{
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;  /* Chrome、Safari用 */
  -moz-writing-mode: vertical-rl;     /* Firefox用 */
  -ms-writing-mode: tb-rl;            /* IE用 */
}
.logo{
  margin-left:30px;
}
p .info{
  margin-left: 50px;
}
#footer li{
  text-align: left;
  margin-right:20px;
}
.copyright{
  text-align: center;
  font-size: small;
}

/*-------------------------------------------
SP
-------------------------------------------*/
@media screen and (max-width: 768px) {
  .wrapper {
    max-width: 100%;
  }
  #header{
    background-image: url("COFFEE.jpg");
    margin-bottom: 20px;
    padding:30px;
  }
  #nav li{
    margin-left:10px;
  }
  #header .site-title{
    margin-left:20px;
  }
  #news .section-title{
    margin-top: 20px;
  }
  #news .ja{
    font-size: 1.2rem;
  }
  .list{
    margin-right: 20px;
  }
  dt{
    border-right: solid 1px #000;
    padding: 15px 20px 10px 5px;
  }
  dd {
    padding: 15px 0 15px 30px;
  }
  .list dd :last-child{
    border-left: solid 1px #000;
  }
  /*
  スマホの場合は4つ目以降を非表示にする
  */
  #news .list dt:nth-of-type(n + 4) {
    display: none;
  }
  #news .list dd {
    padding: 15px 0 15px 12px;
  }
  /*
  3つ目の左側に罫線を引く
  */
  #news .list dd:nth-of-type(3) {
    border-left: solid 1px #000;
  }
  /*
  スマホの場合は4つ目以降を非表示にする
  */
  #news .list dd:nth-of-type(n + 4) {
    display: none;
  }
  
  /* products */
  .products .ja{
    font-size:0.5rem;
  }
  .products .section-title .en {
    display: none;
  }
  .products .img {
    width: 90%;
    margin-top: 70px;
  }
  .products .text{
    width: 64%;
    font-size: 0.875rem;
    padding: 30px 0;
  }

  #footer li{
    text-align: left;
    margin-right:10px;
  }
  #footer .right{
    margin-left:40px;
  }
}