@charset "utf-8";

.first-view {
  height: calc(100vh - 110px)
}

/* カルーセル全体 */
.carousel {
  /* 水平方向中央寄せ */
  display: flex;
  justify-content: center;
}

/* カルーセル内容 */
.contains {
  /* サイズは自由に変更してください。*/
  /* 下の.slideも同じサイズにしてください。 */
  display: flex; /* フレックスボックスを使用 */
  justify-content: center; /* 水平方向中央寄せ */
  align-items: center; /* 垂直方向中央寄せ */
  width: 100%;
  height: 700px;
  max-width: 100%; /* 最大限度を設定 */
  overflow: hidden;
  position: relative;
  padding: 0;
  list-style: none;
}

/* スライド切り換え用ラジオボタンは常に非表示 */
.slide_select {
  display: none;
}

/* 各スライド */
.slide {
  /* サイズは自由に変更してください。*/
  /* 上の.containsも同じサイズにしてください。 */
  display: flex; /* フレックスボックスを使用 */
  justify-content: center; /* 水平方向中央寄せ */
  align-items: center; /* 垂直方向中央寄せ */
  width: 100%;
  height: 700px;
  position: absolute;
  /* スライドの初期値は選択されていないので透明にしておく */
  opacity: 0;
}

/*追加要素*/
.slide img {
  width: 100%;       /* 画像の幅をスライドの幅に合わせる */
  height: 100%;      /* 画像の高さをスライドの高さに合わせる */
  object-fit: cover; /* 画像がスライド全体にフィットするように拡大・トリミングする */
}

/* 前へ次へボタン */
.scroll_button {
  position: absolute;
  display: block;
  height: 30px;
  width: 30px;
  /* 縦中央から20px上の位置 */
  top: 50%;
  margin-top: -20px;
  /* 上辺と右辺のみ幅5pxの枠線 */
  margin-left: 30px;  /*追加　左右の幅調整*/
  margin-right: 30px; /*追加　左右の幅調整*/
  border-width: 5px 5px 0 0;
  border-style: solid;
  border-color: #B5B5B6;
  cursor: pointer;
  /* 普段はボタンはやや薄くする */
  opacity: 0.5;
  /* スライドよりも前面にする */
  z-index: 3;
}

/* ホバー時にボタンを強調 */
.scroll_button:hover {
  opacity: 1;
}

/* 前へボタン */
.scroll_prev {
  left: 15px;
  /* 上辺と右辺の枠線を回転して"＜"にする */
  transform: rotate(-135deg);
}

/* 次へボタン */
.scroll_next {
  right: 15px;
  /* 上辺と右辺の枠線を回転して"＞"にする */
  transform: rotate(45deg);
}

/* スライド移動ボタンエリア */
.move_controler {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
}

/* スライド移動の各ボタン */
.button_move {
  display: inline-block;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  border-radius: 100%;
  cursor: pointer;
  /* 普段はやや薄くする */
  opacity: 0.5;
  /* スライドより前面にする */
  z-index: 2;
}

/* ホバー時はやや明るくする */
.button_move:hover {
  opacity: 0.75;
}

/* スライド移動ボタンの色 */
.button_move {
  background-color: #fdfdfd;
}

/* 1番目のスライド選択時 */
/* 1番目のスライドの透明度を0にして表示する */
.slide_select:nth-of-type(1):checked ~ .slide:nth-of-type(1) {
  opacity: 1;
}

/* スライド移動ボタンの1個目を明るくする */
/* （今選択されていることが分かるように） */
.slide_select:nth-of-type(1):checked ~ .move_controler .button_move:nth-of-type(1) {
  opacity: 1;
}

.slide_select:nth-of-type(2):checked ~ .slide:nth-of-type(2) {
  opacity: 1;
}

/* 2番目のスライド選択時（1番目のスライドと同じことをする） */
.slide_select:nth-of-type(2):checked ~ .move_controler .button_move:nth-of-type(2) {
  opacity: 1;
}

/* 3番目のスライド選択時 */
.slide_select:nth-of-type(3):checked ~ .slide:nth-of-type(3) {
  opacity: 1;
}

.slide_select:nth-of-type(3):checked ~ .move_controler
  .button_move:nth-of-type(3) {
  opacity: 1;
}

/* 4番目のスライド選択時 */
.slide_select:nth-of-type(4):checked ~ .slide:nth-of-type(4) {
  opacity: 1;
}

.slide_select:nth-of-type(4):checked
  ~ .move_controler
  .button_move:nth-of-type(4) {
  opacity: 1;
}

/* 追加要素　1個目のスライドが表示されているときは.move_controlerを非表示にする */
.slide_select:nth-of-type(1):checked ~ .move_controler {
  display: none;
}

hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

hr {
  padding: 20px 0;
  overflow: visible;
}

.hr1 {
  border-top: 3px solid #c3aa5b;
  text-align: center;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  margin-top: 60px;
}

.hr1::after {
  content: 'CONSEPT';
  display: inline-block;
  position: relative;
  top: -43px;
  padding: 0 3px;
  background: #fff;
  color: #000000;
  font-size: 30px;
}

.consept {
  display: flex;
  justify-content: center; /* 水平方向中央寄せ */
  max-width: 100%; /* 1200pxだと中央からズレるので100%に */
  margin-top: 40px;
  /*margin-left: 56px; 不要*/
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal; 
}

.consept p {
  line-height: 2;
  text-align: center;
}

.tel{
  display: flex;
  justify-content: center;
  line-height: 80px;
  font-size: 40px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
}

.logoinsta {
  margin: 10px;
  text-align: center;
}

.area {
  text-align: center;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  margin-bottom: 30px;
  font-size: 30px;
}

.hr2 {
  border-top: 3px solid #c3aa5b;
  text-align: center;
}

.hr2::after {
  display: inline-block;
  position: relative;
  top: -43px;
  padding: 0 3px;
  background: #fff;
  color: #000000;
  font-size: 30px;
}

.link-button-area {
  text-align: center;
  margin-top: 48px;
}

.link-button {
  background-color: #c3aa5b;
  display: inline-block;
  min-width: 180px;
  line-height: 48px;
  border-radius: 24px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
}

.link-button:hover {
  background-color: #d8b500;
}

.link-button-area2 {
  text-align: center;
  margin-top: 48px;
  margin-bottom: 30px;
}

.link-button2 {
  background-color:#c3aa5b;
  display: inline-block;
  min-width: 180px;
  line-height: 48px;
  border-radius: 24px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
}

.link-button2:hover {
  background-color: #d8b500;
}

.hr4{
  border-top: 3px solid #c3aa5b;
  text-align: center;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
}

.hr4::after{
  content: 'NEWS';
  display: inline-block;
  position: relative;
  top: -43px;
  background: #fff;
  color: #000000;
  font-size: 30px;
}

@media (max-width: 1000px) {
    /* カルーセル全体 */
  .carousel {
    /* 水平方向中央寄せ */
    display: flex;
    justify-content: center;
  }

  /* カルーセル内容 */
  .contains {
    /* サイズは自由に変更してください。*/
    /* 下の.slideも同じサイズにしてください。 */
    display: flex; /* フレックスボックスを使用 */
    justify-content: center; /* 水平方向中央寄せ */
    align-items: center; /* 垂直方向中央寄せ */
    width: 100%;
    height: 300px;
    max-width: 1000px; /* 最大限度を設定 */
    overflow: hidden;
    position: relative;
    padding: 0;
    list-style: none;
  }

  /* スライド切り換え用ラジオボタンは常に非表示 */
  .slide_select {
    display: none;
  }

  /* 各スライド */
  .slide {
    /* サイズは自由に変更してください。*/
    /* 上の.containsも同じサイズにしてください。 */
    display: flex; /* フレックスボックスを使用 */
    justify-content: center; /* 水平方向中央寄せ */
    align-items: center; /* 垂直方向中央寄せ */
    width: 100%;
    height: 300px;
    position: absolute;
    /* スライドの初期値は選択されていないので透明にしておく */
    opacity: 0;
  }

  /*追加要素*/
  .slide img {
    width: 100%;       /* 画像の幅をスライドの幅に合わせる */
    height: 100%;      /* 画像の高さをスライドの高さに合わせる */
    margin-top: 100px;
    object-fit: cover; /* 画像がスライド全体にフィットするように拡大・トリミングする */
  }

  /* 前へ次へボタン */
  .scroll_button {
    position: absolute;
    display: block;
    height: 30px;
    width: 30px;
    /* 縦中央から20px上の位置 */
    top: 50%;
    margin-top: 25px;
    /* 上辺と右辺のみ幅5pxの枠線 */
    margin-left: 10px;  /*追加　左右の幅調整*/
    margin-right: 10px; /*追加　左右の幅調整*/
    border-width: 5px 5px 0 0;
    border-style: solid;
    border-color: #B5B5B6;
    cursor: pointer;
    /* 普段はボタンはやや薄くする */
    opacity: 0.5;
    /* スライドよりも前面にする */
    z-index: 3;
  }

  /* ホバー時にボタンを強調 */
  .scroll_button:hover {
    opacity: 1;
  }

  /* 前へボタン */
  .scroll_prev {
    left: 15px;
    /* 上辺と右辺の枠線を回転して"＜"にする */
    transform: rotate(-135deg);
  }

  /* 次へボタン */
  .scroll_next {
    right: 15px;
    /* 上辺と右辺の枠線を回転して"＞"にする */
    transform: rotate(45deg);
  }

  /* スライド移動ボタンエリア */
  .move_controler {
    position: absolute;
    bottom: 20px;
    width: 100%;
    text-align: center;
  }

  /* スライド移動の各ボタン */
  .button_move {
    display: inline-block;
    height: 15px;
    width: 15px;
    margin: 0 2px;
    border-radius: 100%;
    cursor: pointer;
    /* 普段はやや薄くする */
    opacity: 0.5;
    /* スライドより前面にする */
    z-index: 2;
  }

  .mainvisual{
    margin: 0; /* 追加要素 */ 
  }

  .hr1 {
    margin: 0;/* 追加要素 */ 
    border-top: 3px solid #c3aa5b;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: bold;
    font-style: normal;

  }
  
  .hr1::after {
    content: 'CONSEPT';
    display: inline-block;
    position: relative;
    top: -30px;
    padding: 0 3px;
    background: #fff;
    color: #000000;
    font-size: 30px;
  }
  
  .tel{
    text-align: center;
    line-height: 80px;
    font-size: 30px;
  }

  .area {
    text-align: center;
    line-height: 40px; /*高さを少し変更*/
    font-size: 30px;
  }

  /* font-size: 20px;で調整できてるので不要
  h5 {
    font-size: 35px;
  
  }
  */

  .hr2 {
    border-top: 3px solid #c3aa5b;
    text-align: center;
  }
  
  .hr2::after {
    display: inline-block;
    position: relative;
    top: -43px;
    padding: 0 3px;
    background: #fff;
    color: #000000;
    font-size: 30px;
  }
  
  .link-button-area {
    text-align: center;
    margin-top: 20px;
  }
  
  .link-button {
  background-color: #c3aa5b;
  min-width: 285px;
  line-height: 70px;
  border-radius: 24px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-size: 30px;
  margin-bottom: 30px;
  }
  
  .link-button-area2 {
    text-align: center;
    margin-top: 10px;
  }
  
  .link-button2 {
  background-color: #c3aa5b;
  
  min-width: 285px;
  line-height: 70px;
  border-radius: 24px;
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: bold;
  font-style: normal;
  font-size: 30px;
  margin-bottom: 30px;
  }
  
  .hr4 {
    border-top: 3px solid #c3aa5b;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: bold;
    font-style: normal;
  }
  
  .hr4::after {
    content: 'NEWS';
    display: inline-block;
    position: relative;
    top: -60px;
    padding: 0 3px;
    background: #fff;
    color: #000000;
    font-size: 30px;
  }

  .news-list p {
    font-size: 20px; /*追加要素*/
  }
}