@charset "utf-8";

/*リセットCSS（sanitize.css）の読み込み
---------------------------------------------------------------------------*/
@import url('https://unpkg.com/sanitize.css');

/*lightbox.cssの読み込み
---------------------------------------------------------------------------*/
@import url(https://cdnjs.cloudflare.com/ajax/libs/lightbox2/2.10.0/css/lightbox.css);

/*Font Awesomeの読み込み
---------------------------------------------------------------------------*/
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css');

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Qwitcher+Grypen&display=swap');

/*テンプレート専用cssファイルの読み込み
---------------------------------------------------------------------------*/
@import url('animation.css');

/*全体の設定
---------------------------------------------------------------------------*/
html,
body {
  margin: 0;
  padding: 0;
  height: 100vh;
  font-size: 14px; /*基準となるフォントサイズ。下の方にある「画面幅900px以上」で基準を大きなサイズに再設定しています。*/
}

body {
  font-family: 'ヒラギノ丸ゴ Pro', 'Hiragino Maru Gothic Pro', 'メイリオ',
    Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; /*フォント種類*/
  -webkit-text-size-adjust: none;
  background: #fff url(../images/bg.jpg) repeat center center/200px;
  color: #57524b; /*全体の文字色*/
  line-height: 2; /*行間*/
}

/*リセット*/
figure {
  margin: 0;
}
dd {
  margin: 0;
}
nav {
  margin: 0;
  padding: 0;
}

/*table全般の設定*/
table {
  border-collapse: collapse;
}

/*画像全般の設定*/
img {
  border: none;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

/*videoタグ*/
video {
  max-width: 100%;
}

/*iframeタグ*/
iframe {
  width: 100%;
}

/*ul,olタグ*/
ul,
ol {
  margin-bottom: 30px;
}

/*リンクテキスト全般の設定
---------------------------------------------------------------------------*/
a {
  color: #57524b; /*文字色*/
  transition: 0.3s;
}

a:hover {
  opacity: 0.8; /*マウスオン時に60%の透明度にする*/
}

/*メインイメージ（bg_sub.pngとbg_main.jpgを読み込んでいます）
---------------------------------------------------------------------------*/
#mainimg {
  text-indent: -9999px;
  position: fixed;
  top: 0px;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/bg_sub.png) no-repeat left top / 100%;
}

/*ヘッダー
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
  position: fixed;
  width: 100%;
  z-index: 999;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.6);
  padding: 10px;
}

/*　上に上がる動き　*/
header.UpMove {
  animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}

/*　下に下がる動き　*/
header.DownMove {
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*ロゴ画像*/
header #logo img {
  width: 120px; /*幅*/
  position: fixed; /*画面に対して固定表示*/
  left: -10px; /*ウィンドウに対して左からの配置場所*/
  top: -5px; /*ウィンドウに対して上からの配置場所*/
  background: rgba(
    148,
    152,
    82,
    0.5
  ); /*RGBで指定した背景色。最後の0.5は色が50%出た状態のこと。*/
  border-radius: 50%; /*角丸のサイズ。中の画像が正方形であれば円形になります。*/
}

/*メインメニュー
---------------------------------------------------------------------------*/
/*メニュー１個あたりの設定*/
#menubar li {
  display: inline-block;
  transition: 0.5s;
  border-radius: 50%; /*円形にする*/
  animation: opa1 1.5s both; /*animation.cssの、opa1を実行する。1.5sは1.5秒の事。*/
  text-align: center;
  font-size: 1.5em; /*文字サイズ*/
  position: fixed; /*画面に対して固定表示*/
}
#menubar li a {
  display: block;
  text-decoration: none;
  color: #fff; /*文字色*/
}

/*４つ目(Instagram)を除き、以下のGoogle Fontsを使う。*/
#menubar li:not(:nth-of-type(4)) {
  font-family: 'Qwitcher Grypen', cursive;
}

/*マウスオン時*/
#menubar li:hover {
  transform: scale(1.05); /*105%に拡大*/
  filter: brightness(1.1); /*少しだけ明るくする*/
}

/*１つ目のメニュー(About)*/
#menubar li:nth-of-type(1) {
  left: 1%; /*ウィンドウに対して左からの配置場所*/
  top: 25%; /*ウィンドウに対して上からの配置場所*/
  animation-delay: 0.2s; /*0.2秒だけ遅れてアニメーションをスタートさせる設定*/
  background: rgba(
    184,
    122,
    56,
    0.5
  ); /*RGBでの背景色指定。最後の0.5は色が50%出た状態のこと。*/
  width: 100px; /*幅*/
  line-height: 100px; /*高さ*/
}

/*２つ目のメニュー(Gallery)*/
#menubar li:nth-of-type(2) {
  left: 5%; /*ウィンドウに対して左からの配置場所*/
  top: 45%; /*ウィンドウに対して上からの配置場所*/
  animation-delay: 0.4s; /*0.4秒だけ遅れてアニメーションをスタートさせる設定*/
  background: rgba(
    205,
    96,
    82,
    0.5
  ); /*RGBでの背景色指定。最後の0.5は色が50%出た状態のこと。*/
  width: 110px; /*幅*/
  line-height: 110px; /*高さ*/
}

/*３つ目のメニュー(Link)*/
#menubar li:nth-of-type(3) {
  left: 1%; /*ウィンドウに対して左からの配置場所*/
  top: 65%; /*ウィンドウに対して上からの配置場所*/
  animation-delay: 0.6s; /*0.6秒だけ遅れてアニメーションをスタートさせる設定*/
  background: rgba(
    125,
    101,
    87,
    0.5
  ); /*RGBでの背景色指定。最後の0.5は色が50%出た状態のこと。*/
  width: 80px; /*幅*/
  line-height: 80px; /*高さ*/
}

/*４つ目のメニュー(Instagram)*/
#menubar li:nth-of-type(4) {
  left: 8%; /*ウィンドウに対して左からの配置場所*/
  top: 85%; /*ウィンドウに対して上からの配置場所*/
  animation-delay: 0.8s; /*0.8秒だけ遅れてアニメーションをスタートさせる設定*/
  background: rgba(
    138,
    158,
    156,
    0.5
  ); /*RGBでの背景色指定。最後の0.5は色が50%出た状態のこと。*/
  width: 70px; /*幅*/
  line-height: 70px; /*高さ*/
}

/*コンテンツ
---------------------------------------------------------------------------*/
/*コンテンツ共通*/
.contents {
  overflow: hidden;
  /* padding: 0px 4% 50px; */
  /* padding: 0 4% 50px 90px;	/*ボックス内の余白。上、右、下、左。*/
}

/*main
---------------------------------------------------------------------------*/
/*h2見出し*/
main h2 {
  font-size: 2em; /*文字サイズ*/
  margin-bottom: 20px; /*下に空ける余白*/
  text-align: center; /*文字をセンタリング*/
  letter-spacing: 0.2em; /*文字間隔を広くとる設定*/
}

/*h2見出しの上の装飾*/
main h2::before {
  content: '＊'; /*好きな装飾文字に変えてもらって構いませんが機種依存文字は化けるので使わない*/
  display: block;
  text-shadow: 20px 10px 0px rgba(255, 255, 255, 0.5); /*影。右に、下に、ぼかし幅。255,255,255は白の事で0.5は色が50%出た状態の事。*/
}

/*h2見出し内のspanタグ*/
main h2 span {
  display: block;
  font-size: 0.7em; /*文字サイズ*/
}

/*h3見出し*/
main h3 {
  margin-bottom: 20px; /*下に空ける余白*/
  letter-spacing: 0.1em; /*文字間隔を広くとる設定*/
  background: #fff; /*背景色（古いブラウザ用）*/
  background: rgba(
    255,
    255,
    255,
    0.3
  ); /*255,255,255は白の事で0.3は色が30%出た状態の事。*/
  text-align: center; /*文字を中央に*/
  border-radius: 30px; /*角丸のサイズ。大きめに設定しておけばOK。*/
  padding: 0px 20px; /*上下、左右への余白*/
}

/*bg1スタイルのついたコンテンツ*/
.bg1 {
  background: url(../images/bg1.jpg) repeat center top/ 200px; /*背景画像*/
}

/*bg2スタイルのついたコンテンツ*/
.bg2 {
  background: url(../images/bg2.jpg) repeat center top/ 200px; /*背景画像*/
}

/*bg3スタイルのついたコンテンツ*/
.bg3 {
  background: url(../images/bg3.jpg) repeat center top/ 200px; /*背景画像*/
}

/*bg4スタイルのついたコンテンツ*/
.bg4 {
  background: url(../images/bg4.jpg) repeat center top/ 200px; /*背景画像*/
}

.bg-black {
  background: url(../images/bg-black.jpg) repeat center top/ 200px; /*背景画像*/
}

/*Galleryブロック
---------------------------------------------------------------------------*/
/*listボックスを囲むボックス*/
.list-container {
  display: flex; /*flexボックスを使う指定*/
  flex-wrap: wrap; /*折り返す指定*/
  justify-content: space-between; /*並びかたの種類の指定*/
}

/*listボックス。１個あたりのボックスの指定です。*/
.list-container .list {
  display: flex; /*flexボックスを使う指定*/
  flex-direction: column; /*子要素を縦並びにする*/
  justify-content: space-between; /*並びかたの種類の指定*/
  margin-bottom: 30px; /*ボックス同士の上下間の余白*/
  border-radius: 10px; /*角丸のサイズ。中の画像が正方形であれば、10pxを50%にすることで円形にすることもできます。*/
  overflow: hidden;
  width: 22%; /*幅。１行に何個配置したいか、ここの数値を変更してお好みで調整して下さい。*/
}

/*「お知らせ」ブロック
---------------------------------------------------------------------------*/
/*お知らせブロック*/
#new {
  padding: 0 20px; /*上下、左右へのボックス内の余白*/
}
/*日付の横のマーク（共通設定）*/
#new dt span {
  display: none; /*小さな端末では非表示にしておく。*/
}

/*フッター設定
---------------------------------------------------------------------------*/
footer small {
  font-size: 100%;
}

footer {
  font-size: 0.6em; /*文字サイズ*/
  text-align: center; /*内容をセンタリング*/
  padding: 20px; /*ボックス内の余白*/
}

/*リンクテキスト*/
footer a {
  text-decoration: none;
}

/*著作部分*/
footer .pr {
  display: block;
}

.footer-link span {
  font-size: 0.7rem !important;
  padding: 10px 1%;
}

.footer-copyright {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
  font-weight: bold; /*太字に*/
  padding: 10px 5px; /*上下、左右へのボックス内の余白。基本的に数行下の「.ta1 th, .ta1 td」のpaddingと揃えておけばOKです。*/
  background: rgba(255, 255, 255, 0.2);
  margin-bottom: 15px;
  border-radius: 5px;
}

/*ta1テーブルブロック設定*/
.ta1 {
  border-top: 1px solid rgba(255, 255, 255, 0.5); /*テーブルの一番上の線。幅、線種、色*/
  width: 100%;
  margin: 0 auto 30px; /*最後の「30px」がテーブルの下に空けるスペースです*/
}

/*tr（１行分）タグ設定*/
.ta1 tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5); /*テーブルの下線。幅、線種、色*/
}

/*th（左側）、td（右側）の共通設定*/
.ta1 th,
.ta1 td {
  padding: 10px 5px; /*上下、左右へのボックス内の余白*。基本的に数行上の「.ta1 caption」のpaddingと揃えておけばOKです。*/
  word-break: break-all; /*英語などのテキストを改行で自動的に折り返す設定。これがないと、テーブルを突き抜けて表示される場合があります。*/
}

/*th（左側）のみの設定*/
.ta1 th {
  width: 30%; /*幅*/
  text-align: left; /*左よせにする*/
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {
  display: block;
}

/*ボタンの設定*/
.pagetop a {
  display: block;
  text-decoration: none;
  text-align: center;
  position: fixed; /*スクロールに追従しない(固定で表示)為の設定*/
  z-index: 99;
  right: 20px; /*右からの配置場所指定*/
  bottom: 20px; /*下からの配置場所指定*/
  color: #fff; /*文字色*/
  font-size: 1.5em; /*文字サイズ*/
  background: rgba(
    0,
    0,
    0,
    0.2
  ); /*背景色。0,0,0は黒の事で0.2は色が20%出た状態。*/
  width: 60px; /*幅*/
  line-height: 60px; /*高さ*/
  border-radius: 50%; /*円形にする*/
}

/*その他
---------------------------------------------------------------------------*/
.clearfix::after {
  content: '';
  display: block;
  clear: both;
}
.color-theme,
.color-theme a {
  color: #74791b !important;
}
.color-check,
.color-check a {
  color: #f00 !important;
}
.c {
  text-align: center !important;
}
.ws {
  width: 95%;
  display: block;
}
.wl {
  width: 95%;
  display: block;
}
.mb30 {
  margin-bottom: 30px !important;
}
.look {
  display: inline-block;
  padding: 0px 10px;
  background: #666;
  color: #fff;
  border-radius: 3px;
  margin: 5px 0;
}
.look .color-check {
  color: #ffcc00 !important;
}
.small {
  font-size: 0.6em;
}

.flex {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2% 7%;
}

.flex-left {
}

.flex-right {
}

.flex-text {
  padding: 5% 0%;
}

.flex-text-left {
  text-align: right;
}

.flex-img {
  width: 40%;
  max-width: 400px;
}

.weight-3 {
  font-size: 2em;
  margin: 5px;
}

.weight-2 {
  font-size: 1.5rem;
  margin: 5px;
  line-height: 1.6;
}

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

.add-button {
  color: #fff !important;
  background-color: #02c36b;
  padding: 20px 10%;
  font-size: 1.5rem;
  text-decoration: none;
  border-radius: 30px;
}

.price {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.12);
  text-align: center;
  padding: 2.5% 7%;
  margin: 1% 1%;
  border-radius: 20px;
  width: 350px;
}

.price-sub {
  colod: #eee;
}

.price-body {
  color: #fff;
}

.price-val {
  font-size: 2.3rem;
}

/*---------------------------------------------------------------------------
ここから下は画面が「縦長」の場合の追加指定
---------------------------------------------------------------------------*/
@media screen and (orientation: portrait) {
  /*メインイメージを縦長向き端末用に準備した画像（bg_main_portrait.jpg）に入れ替える。
---------------------------------------------------------------------------*/
  #mainimg {
    background: url(../images/bg_sub.png) no-repeat left top / 100%;
  }

  /*　※注意！　下の閉じカッコ　}　はこのブロックに必要なので、削除しないで下さい。　*/
}

/*---------------------------------------------------------------------------
ここから下は画面
---------------------------------------------------------------*/
@media screen and (max-width: 500px) {
  /*「お知らせ」ブロック
---------------------------------------------------------------------------*/
  /*お知らせブロック*/
  #new {
    margin: 0;
    display: flex; /*flexボックスを使う指定*/
    flex-wrap: wrap; /*折り返す指定*/
  }

  /*日付(dt)、記事(dd)共通設定*/
  #new dt,
  #new dd {
    padding: 5px 0; /*上下、左右へのボックス内の余白*/
  }

  /*日付(dt)設定*/
  #new dt {
    width: 8em; /*幅。8文字(em)分。※下の「900px以上」の端末用の設定に再設定があります。*/
  }

  /*記事(dd)設定*/
  #new dd {
    width: calc(
      100% - 8em
    ); /*「8em」は上の「#new dt」のwidthの値です。※下の「900px以上」の端末用の設定に再設定があります。*/
  }

  .weight-3 {
    font-size: 1.3em;
    font-weight: bold;
    margin: 5px;
    line-height: 1.4;
  }

  .weight-2 {
    font-size: 1rem;
    margin: 5px;
    line-height: 1.6;
  }

  .flex {
    padding: 5% 3%;
  }

  .add-button {
    font-size: 1.3rem;
    text-decoration: none;
    border-radius: 30px;
  }

  .price-val {
    font-size: 1.6rem;
  }

  .logo1 {
    width: 70%;
    height: 70%;
    padding: 15px 0px;
  }

  .logo-mini {
    padding: 0px 0px 0px 5px;
  }

  header {
    display: none;
  }
}

/*---------------------------------------------------------------------------
ここから下は画面幅900px以下、かつ画面が「横長」の場合の追加指定
---------------------------------------------------------------------------*/
@media screen and (max-width: 900px) and (orientation: landscape) {
  /*コンテンツ
---------------------------------------------------------------------------*/
  /*コンテンツ共通*/
  .contents {
    /* padding-left: 130px; /*ボックス内の左側にとる余白*/
  }

  /*　※注意！　下の閉じカッコ　}　はこのブロックに必要なので、削除しないで下さい。　*/
}

/*---------------------------------------------------------------------------
ここから下は画面幅900px以上の追加指定
---------------------------------------------------------------------------*/
@media screen and (min-width: 900px) {
  /*全体の設定
---------------------------------------------------------------------------*/
  html,
  body {
    font-size: 16px; /*基準となるフォントサイズの上書き*/
  }

  /*ヘッダー
---------------------------------------------------------------------------*/

  /*メインメニュー
---------------------------------------------------------------------------*/
  /*メニュー１個あたりの設定*/
  #menubar li {
    font-size: 2em; /*文字サイズ*/
  }

  /*１つ目のメニュー(About)*/
  #menubar li:nth-of-type(1) {
    left: 20%; /*ウィンドウに対して左からの配置場所*/
    top: 27%; /*ウィンドウに対して上からの配置場所*/
    width: 150px; /*幅*/
    line-height: 150px; /*高さ*/
  }

  /*２つ目のメニュー(Gallery)*/
  #menubar li:nth-of-type(2) {
    left: 4%; /*ウィンドウに対して左からの配置場所*/
    top: 45%; /*ウィンドウに対して上からの配置場所*/
    width: 190px; /*幅*/
    line-height: 190px; /*高さ*/
  }

  /*３つ目のメニュー(Link)*/
  #menubar li:nth-of-type(3) {
    left: 18%; /*ウィンドウに対して左からの配置場所*/
    top: 65%; /*ウィンドウに対して上からの配置場所*/
    width: 130px; /*幅*/
    line-height: 130px; /*高さ*/
  }

  /*４つ目のメニュー(Instagram)*/
  #menubar li:nth-of-type(4) {
    left: 7%; /*ウィンドウに対して左からの配置場所*/
    top: 80%; /*ウィンドウに対して上からの配置場所*/
  }

  /*コンテンツ
---------------------------------------------------------------------------*/
  /*コンテンツ共通*/
  .contents {
    /* padding: 0px 4% 50px; */
    /* padding: 0 4% 50px 35%; /*ボックス内の余白。上、右、下、左。*/
  }

  /*「お知らせ」ブロック
---------------------------------------------------------------------------*/
  /*日付(dt)設定*/
  #new dt {
    width: 14em; /*幅。14文字(em)分。*/
    display: flex; /*flexボックスを使う指定*/
    justify-content: space-between; /*日付とアイコンをそれぞれ端に寄せる*/
  }

  /*日付の横のマーク（共通設定）*/
  #new dt span {
    display: inline-block; /*表示させる*/
    width: 6em; /*幅。6文字(em)分。*/
    background: #999; /*背景色*/
    color: #fff; /*文字色*/
    font-size: 0.9em; /*文字サイズを90%に。*/
    text-align: center; /*文字をセンタリング*/
    border-radius: 3px; /*角を少しだけ丸くする*/
    margin-right: 1.2em; /*アイコンの右側に空けるスペース*/
    align-self: flex-start; /*高さを間延びさせない指定*/
    line-height: 1.8; /*行間を少し狭く*/
    position: relative;
    top: 0.4em; /*上下の配置バランスの微調整*/
  }

  /*bg1設定。サンプルテンプレートでは「Gallery」と書いてあるマーク*/
  #new dt span.icon-bg1 {
    background: #74791b; /*背景色*/
  }

  /*記事(dd)設定*/
  #new dd {
    width: calc(100% - 14em); /*「14em」は上の「#new dt」のwidthの値です。*/
  }

  /*テーブル
---------------------------------------------------------------------------*/
  /*テーブル１行目に入った見出し部分（※caption）*/
  .ta1 caption {
    padding: 5px 15px; /*上下、左右へのボックス内の余白*/
  }

  /*th（左側）、td（右側）の共通設定*/
  .ta1 th,
  .ta1 td {
    padding: 20px 15px; /*上下、左右へのボックス内の余白*/
  }

  /*th（左側）のみの設定*/
  .ta1 th {
    width: 20%; /*幅*/
  }

  /*その他
---------------------------------------------------------------------------*/
  .ws {
    width: 48%;
    display: inline;
  }

  /*　※注意！　下の閉じカッコ　}　はこのブロックに必要なので、削除しないで下さい。　*/
}
