@charset "utf-8";
@media screen and (min-width: 768px){  
}

/*全体のスタイル調整*/
*{
  box-sizing:border-box;
}
/*bodyの初期スタイル調整*/
body{
  font-size: 16px;
  line-height:  1.5;
  font-family: Noto Sans Javanese,Lora,Shippori Mincho;
  font-weight: 400;
  color:#6d5350;
  background-color: #ffffff;
}

/*コンテンツを格納するスタイル*/
.inner{
  padding: 0 15px;
  margin: 0 auto;
}

/*pcのスタイル*/
 @media screen and (min-width: 768px){
  .inner{
    max-width: 1920px;
  } 
 }

 /* モバイルでは表示する */
.sp-only {
  display: block;
}

/* PC専用：非表示 */
.pc-only {
  display: none;
}

/* 768px以上のときに切り替える */
@media screen and (min-width: 768px) {
  .sp-only {
    display: none;
  }
  .pc-only {
    display: block;
  }
}

.sp-only{
  font-size: 16px;
  line-height: 1.5;
  font-family: "Noto Sans JP","Lora",Shippori Mincho;
  font-weight:  400;
  background-color: #ffffff;
}

.pc-only{
  font-size: 20px;
  line-height: 1.5;
  font-family: "Noto Sans JP","Lora",Shippori Mincho;
  font-weight:  400;
  background-color: #ffffff;
}

h1{
  img{
    width: 45px;
    height:auto;
  }
}

h2{
  font-family: Shippori Mincho;
  font-size: 20px;
  align-items: center; 
}

h3{
  font-family: Noto Sans JP;
  font-size: 20px;
  color: #6d5350;
  max-width: 100%;
  margin: 0 auto;
  text-align: left;
}

h4{
  font-family: Lora;
  font-size: 48px;
  color: #6d5350;
}

.body{
  max-width: 1200px;
  height: 100px;
}

/*headerのスタイル*/
.header {
 position: relative;
 width: 100%;
 height: 50px;
 padding: 0px;
 background: #ffffff;
 z-index: 200;
}

/* PC用（768px以上）の時は高さ100pxに変更 */
@media screen and (min-width: 768px) {
  .header {
    height: 100px;
  }
}

@media screen and (max-width: 767px) {
  .header-logo-menu {
    height: 50px;
    display: flex;
    align-items: center;
  }
}

/*サイトとロゴとナビゲーションの並び*/
.header-logo-menu{
  display: flex;
  justify-content:space-between;
  align-items: center;
  max-width: 1200px;
  margin: auto;
  padding: 0 16px;
  height: 100%;
  flex-wrap: nowrap;
}

.gnav-wrapper{
 flex-grow: 1;
 display: flex;
 justify-content: flex-start;
 margin: 0 40px;
}

.gnav-menu{
  display: flex;
  gap: 30px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.button-area{
  flex-shrink: 0;
}

/*サイトのロゴ表記*/
.logo-area{
  width: auto;
  height: auto;
  margin: 12px 26px;
  text-align: left;
  display: flex;
  align-items: left;
}

.logo-area img{
  max-width: 100%;
  height: auto;
  display: block;
}

.inner{
  padding: 0 26px;
  margin: 0 auto;
}

/* ここから下がハンバーガーメニューに関するCSS */ 
.drawer_menu{
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height:  100%;
  background-color: #ffffff; 
  z-index: 999;
  transition: right 0.3s ease-in-out;
}

#drawer_input:checked ~ .drawer_menu {
  right: 0;
}

/* チェックボックスを非表示にする */
.drawer_hidden {
  display: none;
}

/* ハンバーガーアイコンの設置スペース */
.drawer_open {
  position: absolute;
  top: 25px;
  right: 50px;
  transform: translateY(-50%);
  z-index: 9999;
}

/* PC表示（非表示にする） */
@media screen and (min-width: 768px) {
  .drawer_open {
    display: none 
    
  }
}

/* ハンバーガーメニューのアイコン */
.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #6d5350;
  transition: 0.5s;
  position: absolute;
}

/* 三本線の一番上の棒の位置調整 */
.drawer_open span:before {
  bottom: 8px;
}

/* 三本線の一番下の棒の位置調整 */
.drawer_open span:after {
  top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer_input:checked ~ .drawer_open span {
  background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer_input:checked ~ .drawer_open span::before {
  bottom: 0;
  transform: rotate(45deg);
}

#drawer_input:checked ~ .drawer_open span::after {
  top: 0;
  transform: rotate(-45deg);
}
 /* メニューのデザイン*/
 .nav_content {
  p{
    font-family: "Lora";
}
body {
  background-color: #fff;
  color: #6d5350;
  }
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0%;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: rgb(255, 255, 255);
  transition: .5s;
  text-align: center;
  padding-top: 20px;
}

/* メニュー黒ポチを消す */
.nav_list {
  list-style: none;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input:checked ~ .nav_content {
  left: 0;/* メニューを画面に入れる */
}

.text-box{
  position:relative; /* 要素の配置方法をと子要素の起点を指定 */
}

/*pc用ロゴの表示*/
@media screen and (min-width: 768px) {
  .logo-area{
    width: 100%;
    max-width: 96px;
    height: auto;
    margin-left: -1%;
    padding-left: 0;
    object-fit: contain;
    display: block;
    flex-shrink: 0;/* ロゴが無理に縮まないようにする */
}   
    }
    /* ヘッダーロゴ sp */
@media screen and (max-width: 768px) {
  .logo-area{
    max-width: 45px;
    height: auto;
    margin-left: 0;  
    }   
  }

@media screen and (min-width: 768px){
  .nav-menu{
    flex-direction: row;
    padding-top: 15px;
    margin: 0;
  }
}

.nav-item{
 border-bottom:none;
 margin: 0;
 padding-bottom: 0;
}

.nav-item a{
  color: #333;
  width: 120px;
}

.nav-item a:hover{
color: 85a7cc;
}

.gnav-toggle {
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  z-index: 999;
}

.gnav-hidden{
  display: none;
}

#gnav-open span,
#gnav-open span::before,
#gnav-open span::after {
  content: "";
  position: absolute;
  height: 2px;
  width: 25px;
  border-radius: 3px;
  background: #6d5350;
  display: block;
  cursor: pointer;
}

#gnav-open span::before {
  bottom: -8px;
}

#gnav-open span::after {
  bottom: -16px;
}

#gnav-close{
  display: none;
  position: fixed;
  z-index: 90;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #3a3a3a;
  opacity: 0;
  transition: 0.3s ease-in-out;
}

#gnav-input:checked~#gnav-close{
  display: block;
  opacity: 0.5;
}

#gnav-input:checked ~#gnav-content{
  transform: translateX(0%);
  box-shadow: 6px 0 25px #6d6350;
}

#gnav-content{
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  width: 70%;
  max-width: 300px;
  height: 100%;
  background: #ffffff;
  transition: 0.3s ease-in-out;
  transform: translatex(-105%);
  
}

.gnav-item{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-left: 20px;
}

@media screen and (min-width: 768px) {
  .gnav-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0; /* 項目の間隔 */
    margin: 0;
    padding: 0;
    list-style: none;
  }
}

.gnav-item{
  border-bottom: 2px dotted #6d5350;
  margin: 0;
  padding-bottom: 0;
}

.gnav-item a{
  font-family: Lora;
  color: #6d5350;
  font-size: 20px;
  display: block;
  width: auto;
  text-align: center;
}
  .br{
    font-family:  Sans Javanese;
  }  

.gnav-item a::first-line{
  font-size: 16px;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .gnav-toggle,
  #gnav-open,
  #gnav-close,
  #gnav-content {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .logo-area img{
    width: 96px;
    height: 76px;
    object-fit: contain;
  }
    
    .gnav-item{
      border-bottom: none;
      margin: 0;
      padding-bottom: 0;
    }

    .gnav-item a {
      padding: 5px 5px;
      text-align: left;
      white-space: nowrap; /* 改行しない */
      color: #6d5350;
      padding: 5px 5px;
      display: inline-block; 
      white-space: nowrap;
      justify-content: center; 
    }

    .gnav-item a:hover{
      color: #3a3a3a;
    }
    }
    
    @media screen and (max-width: 767px) {
      .drawer_open {
        display: flex;
      }
    }
      
/* PCメニューを横並びに */
@media screen and (min-width: 768px) {
  .gnav-menu.pc-only {
    display: flex;
    gap: 20px;
    flex-direction: row;
  }

  .gnav-item {
    border-bottom: none;
  }

  .gnav-item a {
    display: flex;
    flex-direction: column;
    text-align: center;
    font-family: 'Lora', serif;
    font-size: clamp(12px, 1.5vw, 16px);
    line-height: 1.2;
    color: #6d5350;
  }

  .gnav-item a .sub-text {
    font-family: 'Noto Sans Javanese', sans-serif;
    font-size: clamp(10px, 1vw, 13px);
    margin-top: 4px; /* 少し余白をつける */
  }
  .gnav-item a:hover {
    color: #3a3a3a;
  }
}

/* ヘッダーボタン pc用 */
/* モバイルでは非表示にする */

.button_01 {
  display: none;
}

.button_01 {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 0 10px;
  margin-right: 0;
  margin-left: 0;
  width: 90%;
box-sizing: border-box;
}


.button_01 span {
  position: relative;
  z-index: 1000;
  display: flex;
  justify-content: center; /* 中央揃え */
  align-items: center;
  width: 309px; /* 幅を固定 */
  height: auto;
  font-size: 1rem;
  padding: 10px 20px;
  color: #3a3a3a;
  font-family: "Lora";
  text-decoration: none;
  line-height: 1;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  border: 1px solid #3a3a3a;
  background: #d9d9d9;
  border-radius: 35px;
  border-bottom: solid 5px #3a3a3a;
}

/* ホバー時のアニメーション */
.button_01 span:hover {
  border-bottom: solid 2px #d9d9d9;
  transform: translateY(3px);
}

.button_01 img {
  margin-left: 10px; /* 余白調整 */
  width: 30px;
  height: 30px;
}


.nav-menu{
  width: 100px;
  flex-direction: row;
  padding-top: 15px;
  margin: 0;
  }


nav a {
  font-size: clamp(12px, 1.5vw, 16px); /* 最小12px〜最大16pxまで可変 */
}
nav a .sub-text {
  font-size: clamp(10px, 1vw, 13px); /* 小見出しにも */
}
a {
  font-family: 'Lora', serif; /* Feature用のフォント */
  font-size: clamp(12px, 1.5vw, 16px); /* 最小12px〜最大16pxまで可変 */
}
a .sub-text {
  font-family: 'Noto Sans Javanese', sans-serif; /* こだわり用のフォント */
  font-size: clamp(10px, 1vw, 13px);
}

/* アイコンの位置調整 */
.button_01 img {
  margin-left: 10px; /* 余白調整 */
  width: 21px;
  height: 20px;
}

/* 最初に非表示にする */
.img-pc,
.img-sp {
  display: none;
}

/* PC（768px以上）のときにPC画像を表示 */
@media screen and (min-width: 768px) {
  .img-pc {
    display: block;
    width: 100vw;       /* ビューポートの幅100% */
    height: auto;        /* 高さは自動で比率を保つ */
    display: block;      /* ブロック要素にして余白なくす */
    object-fit: cover;   /* 必要なら、画像がエリアいっぱいになるようトリミング */
    }
  }


/* スマホ（768px未満）のときにSP画像を表示 */
@media screen and (max-width: 767px) {
  .img-sp {
    display: block;
    max-width: 375px;
  }
}

.mv-area {
  width: 100vw; /* 画面幅いっぱい */
  min-width: 375px;
  max-width: 1920px; /* 画面幅に合わせる */
  height: auto;
  background-image: url(assets/images/bg_header_kohi_sp_1.png);
  background-size: contain; /* 画像の比率を維持 */
  background-position: center ;
  background-repeat: no-repeat;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.mv-area img {
  
  height: auto;
  margin: 0 auto;
}

/*h2のスタイル*/
.mv-title {
  color: #333333;
  font-family: 'Shippori Mincho', serif;
  font-size: 20px; /* ビューポート幅に応じて可変 */
  font-size: clamp(18px, 3vw, 48px);
  text-align: center; /* 中央揃え */
  white-space: nowrap; /* 改行を防ぐ */
  top: 15%;
  left: 6%;
}

@media screen and (min-width: 768px) {
  .mv-area {
    width: 80%;
    max-width: 1920px; /* PC向け */
    height: auto;
  }
}

/* 最小フォントサイズを375px時に固定 */
@media screen and (max-width: 375px) {
  .mv-title {
    font-size: 18px; /* 画面が小さいときの最小サイズ */
  }
}

/* 768px での最大フォントサイズを指定 */
@media screen and (min-width: 768px) {
.mv-title {
font-family: Shippori Mincho;
font-size: 3.1vw;
}
}

/* 白ボックス初期状態は非表示（モバイル用） */
.white-box {
  position: absolute;
  top: 46%;
  left: 60%;
  width: 260px;
  font-size: 20px;
  opacity: 0.7;
  transform: translateX(-50%);
  background-color: #f3f3f3;
  font-family: Shippori Mincho;
  color: #333;
  border-radius: 0;
  box-sizing: border-box;
}

/* PCのみ表示＋デザイン設定 */
@media screen and (min-width: 768px) {
  .white-box {
  display: flex;
  flex-direction: column; /* 内容が縦並びなら */
  height: 30%;           /* 高さは中身に合わせる */
  aspect-ratio: 400 / 200;
  background-color: rgb(255, 255, 255,0.8);
  text-align: center;
  padding: 30px;
  }

  @media screen and (max-width: 767px) {
    .white-box {
      display: block;
      position: static; /* absolute → staticで自然な流れに */
      width: 70vw;
      min-width: 260px;
      max-width: 90%;
      min-height: 65px;
      margin: 20px auto;
      font-size: 16px;
      background-color: rgba(255, 255, 255, 0.9);
      box-shadow: none;
      padding: 15px;
    }
    
    @media screen and (max-width: 767px) {
      .mv-title {
        font-size: 18px;
      }
    }
  }
  
.main-title{
  font-size: 24px;
  line-height: 1.6;
}
}


@media (max-width: 767px) {
  .section01{
    display: flex;
    justify-content: center;
  }

  .section-inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    max-width: 1280px;
    margin: 130px 0 0;
    gap: 24px;
  }

  .section-text{
    flex: 1;
    max-width: 592px;
    text-align: left;
  }

  .section-image{
    width: 50%;
    height: 398px;
    flex-shrink: 0;
    display: flex;
    justify-content: flex-start;
  }

  .section-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* ▼ タブレット：だんだん中央に近づける */
@media (max-width: 767px) {
  h3, .text_2 {
    text-align: left;
    width: 100%;
    transition: all 0.5s ease-in-out;
  }
}

/* ▼ タブレット以下のデザイン（少し中央に寄せる） */
@media (max-width: 767px) {
  h3, .text_2 {
    text-align: left;
    width: 100%; /* 少し中央寄せ */
    margin: 0 26px; /* 中央に寄せる */
    transition: all 0.5s ease-in-out;
    color: #6d5350;
    font-family: "Noto Sans JP", sans-serif;
    font-size: clamp(14px, 0.94vw, 18px);
    line-height: 28px;
    text-align: left;
    width: 90%;
    margin: 20px 26px 20px 26px ; /* 中央寄せをスムーズに */
    transition: all 0.5s ease-in-out;
  }
  h3{
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .section-image {
    display: none;
  }
}

/* 780px以上で横並びにして画像右に */
@media (min-width: 768px) {
  .section01 {
    display: flex;
    justify-content: center;
  }

  @media (min-width: 768px) {
    h3 {
      font-size: clamp(18px, 2.5vw, 32px);
    }
  }
 
  .section-inner {
    display: flex;
    align-items: center;
    max-width: 1280px; /* 最大幅は好みで調整 */
    margin: 130px 0 0px 0; /* 上下マージン＆中央寄せ */
    gap: 0;
  }

  .section-text {
    flex: 1; /* 残りスペースを均等に分ける */
    max-width: 592px;
   }

   @media (min-width: 768px) {
  .section-image {
    width: 50%;
    height: 398px;
    flex-shrink: 0;
    display: flex;
    justify-content: flex-end;
  }
}

  .section-image img{
  height: 100%;
  object-fit: cover;
  }
}

.br-sp {
  display: none;
}

@media screen and (max-width: 1200px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: inline-block;
  }
}

/* 共通スタイル */
.section-image-row {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.section-image-row img {
  width: 100%;
  max-width: 200px; /* お好みで調整 */
  height: auto;
}

/* 768px以上のときのレイアウト */
@media (min-width: 768px) {
  .section-inner {
    display: flex;
    align-items: center;
    gap: 24px;
  }

  .section-text {
    text-align: center;
    max-width: 600px;
  }
}




h4{
  font-family: Lora;
  color: #6d5350;
  font-size: 24px;
  margin-top: 20px ;
  padding-top: 10px;
  text-align:center;
}

  .text_3{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 16px;
  margin: 0 0 20px 0;
  text-align: center;
}

.container {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: flex-start;
}

.feature-item {
  display: flex;
  align-items: center;
  gap: 16px;
}

.feature-item img {
  width: 161px;
  height: 120px;
  object-fit: cover;
  display: block;
}

.feature-item p {
  margin: 0;
  text-align: left;
  font-size: 16px;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .feature-item {
    text-align: flex-start;
  }

  .feature-item img {
    width: 100%;
    max-width: 300px;
    height: auto;
  }

  .feature-item p {
    text-align: left;
  }
}

  .flex-item{
    flex-direction: column;
    align-items: flex-start;
  }

  .container img {
      width: 161px;
      height: 120px;
      margin-bottom: 8;
  }



/* **768px以上で横並び（タブレット向け）** */
@media (min-width: 768px) {
  .flex {
    flex-direction: row; /* 横並び */
    justify-content: center; /* 中央配置 */
  }

  .flex .image {
    margin-right: 20px; /* 画像とテキストの間に余白 */
  }

  .flex p {
    text-align: left; /* テキストを左寄せ */
  }
}







.button_02 {
  margin-right: 30px;
  margin: 10px 0px 0px 0px;
  display: flex;
  justify-content: center ;
  align-items: center;
  width: 100%; /* 親要素いっぱいに広げる */
}

.button_02 span {
  position: relative;
  z-index: 1000;
  display: flex;
  justify-content: space-between; 
  align-items: center;
  width: 305px; /* 幅を固定 */
  height: 50px; /* 高さを固定 */
  padding: 0 55px;
  color: #3a3a3a;
  font-family: "Lora";
  text-decoration: none;
  line-height: 1;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  border: 1px solid #3a3a3a;
  background: #d9d9d9;
  border-radius: 35px;
  border-bottom: solid 5px #3a3a3a;
  box-sizing: border-box;
}

/* ホバー時のアニメーション */
.button_02 span:hover {
  border-bottom: solid 2px #d9d9d9;
  transform: translateY(3px);
}

.button_02 img {
  margin-left: 10px; /* 余白調整 */
  width: 20px;
  height: 20px;
  object-fit: contain;
}









.text_7{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 14px;
  padding: 2px;         
  text-align:  center;  
}

/* **リストアイテムを左寄せで固定** */
.slide__item {
  display: flex;
  flex-direction: column; /* 縦並び */
  align-items: flex-start; /* 左寄せ */
  text-align: left;
  width: 100%; /* コンテンツを最大幅に */
}

/* **画像を左寄せ** */
.slide__item img{
  height: 157px;
}

.slideritem__title{
  font-family: Noto Sans jp;
  font-size: 20px;
  color: #6d5350;
  margin: 10px 26px 5px 0;
}

.slide__item p{
  font-family: Noto Sans JP;
  font-size: 14px;
  color: #6d5350;
  margin: 5px 0px 0px 0;
  line-height: 1.7;
}

/* **テキストの位置も画像に揃える** */
.slideritem__title,
div.Pickup p{
font-family: Noto Sans jp;
  font-size: 14px;
  color: #6d5350;
  margin: 5px 0 ;
  line-height: 1.7;
}

/* button */
/* ボタンの親要素を中央配置 */
.button {
  margin: 10px 0px 10px 0px;
  display: flex;
  justify-content: center; /* 水平方向に中央寄せ */
  align-items: center; /* 垂直方向に中央寄せ（必要なら） */
  width: 100%; /* 親要素いっぱいに広げる */
}

.button span {
  position: relative;
  display: flex;
  justify-content: center; /* 中央揃え */
  align-items: center;
  width: 272px; /* 幅を固定 */
  height: 43px; /* 高さを固定 */
  padding: 10px 20px;
  color: #3a3a3a;
  font-family: "Lora";
  text-decoration: none;
  line-height: 1;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  border: 1px solid #3a3a3a;
  background: #d9d9d9;
  border-radius: 35px;
  border-bottom: solid 5px #3a3a3a;
}

/* ホバー時のアニメーション */
.button span:hover {
  border-bottom: solid 2px #d9d9d9;
  transform: translateY(3px);
}

/* アイコンの位置調整 */
.button img {
  margin-left: 10px; /* 余白調整 */
  width: 21px;
  height: 20px;
}

@media screen and (min-width: 768px) {
.main-nav 
 





.btn-01 { 
  width: 100%;
  max-width: 233px; 
  padding: 1em 3em;  
  margin: 15px; 
  font-size: 16px;
  display: inline-block;
}

.btn-01:before {
  margin: -3px 0 0 10px;
}
}

.text_7{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 14px;
  padding: 2px 95px 0px;         /* 余白指定 */
  text-align:  center;  /* 中央寄せ */
}

.image-wrapper{
  margin: 20px 70px 10px 70px;
}

/* コンテンツ全体を中央揃え */
.container {
  display: flex;
  flex-direction: column;
  text-align: center;
  max-width: 375px; /* 小さい画面では375pxの幅を維持 */
  margin: 0 auto; /* 中央配置 */
}

.text_8{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 20px;         
  margin: 10px 0 0 45px ;  /* 画像左寄せ */
  text-align: left;
}

div.cookiekan p{
  font-family: Noto Sans jp;
  font-size: 14px;
  color: #6d5350;
  margin: 10px 0 0 45px;
  line-height: 1.7;
  max-width: 300px;
  }

.text_9 {
  font-family: Noto Sans jp;
  font-size: 20px;
  color: #6d5350;
  margin: 10px 70px 10px 70px;
  line-height: 1.7;
  text-align: left;
}

div.tizucake p{
  font-family: Noto Sans jp;
  font-size: 14px;
  color: #6d5350;
  line-height: 1.7;
  text-align: center;
}

.text_10 {
  font-family: Noto Sans jp;
  font-size: 20px;
  color: #6d5350;
  margin: 10px 70px 10px 70px;
  line-height: 1.7;
  text-align: left;
} 

div.orizinarburend p{
  font-family: Noto Sans jp;
  font-size: 14px;
  color: #6d5350;
  margin: 10px 0 10px 70px;
  line-height: 1.6;
}

/* button_03 */
.bg_button_03 span {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 10px 0 20px 70px;
  max-width: 233px;
  height: 37px;
  color: #3a3a3a;
  font-size: 16px;
  font-family: "Lora";
  text-decoration: none;
  color: #3a3a3a;
  line-height: 1;
  transition: 0.3s ease-in-out;
  font-weight: 400;
  background: #d9d9d9;
  border-radius: 35px;
  border-bottom: solid 5px #3a3a3a;
}

.bg_button_03 a:hover {
  border-bottom: solid 2px #d9d9d9;
  transform: translateY(3px);
}

.bg_button_03 img{
  font-family: Lora;
  font-size: 16px;
  width: 17px;
  height: 16px;
  margin-left: -80px;
}  

div.bg_text2{
  background: #d9d9d9;
  padding: 20px;                 
}

.bg_test {
  padding:  0px;                
  font-size: 20px;                
  background: #d9d9d9;  
}
.text_11{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 14px;
  margin: 2px 124px 10px;        
  text-align:  center; 
}

.flex {
  display: flex;
  align-items: flex-start;
  margin-left: 26px;
  margin: 10px 0 10px 0;
}

.circle_Q{
  justify-content: center;
  align-items: center;
  display: flex;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: #00536d;
  color: #f3f3f3;
  text-align:center;
  line-height: 23px;
  margin: 10px 0px 10px 26px;
  font-family:Lora ;
  vertical-align: middle
  }

  .div.Q p{
  font-family: Noto Sans jp;
  font-size: 14px;
  color: #6D5350;
  line-height: 1.6;
  margin: 10px
  }

.circle_A{
  justify-content: center;
  display: flex;
  width: 23px;
  height: 23px;
  border-radius: 50%;
  background: #ffffff;
  color: #FB0952;
  text-align:center;
  line-height: 23px;
  margin: 0px 0px 10px 26px;
  font-family:Lora ;
}

  .div.A p{
  font-family: Noto Sans jp;
  font-size: 14px;
  color: #6D5350;
  line-height: 1.6;
  margin: 0px 10px 10px;
}

hr{
  border: none;
  border-bottom: 1px solid #6d5350;
  margin: 0px 26px;
  width: 323px;
  position: center ;
}

.text_12{
  font-family:Noto Sans JP ;
  color: #6d5350;
  font-size: 14px;
  margin: 2px 124px 20px;         
  text-align:  center;  
}

table {
  font-family: 'Noto Sans JP', Lora;
  font-size: 14px;
  margin:auto;
}

th,td {
  margin: 10px 26px 5px 26px;
  padding: 5px;
  font-weight: normal;
  text-align: left;
  border-bottom: 1px solid #6d5350;
  color: #6d5350;
}

table th{/*thに対して*/
  font-family: Noto Sans JP;
  }

table td{/*tdに対して*/
  font-family: Lora;
  }
  
td p {
  text-indent: 1rem;
}

.map-wrap {
  width: 90%;
  max-width: 524px;
  margin: 10px auto 20px auto; /* 左右のmarginをautoで中央寄せ */
  height: auto;
}

.map {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9; /* 16:9比率を維持（モダンブラウザ対応） */
  background: #eee;
  overflow: hidden;
}

.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.access-wrap {
  display: block; /* ← 初期は縦並び（スマホ） */
}

@media screen and (min-width: 768px) {
  .access-wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end; 
  }

  .inner,
   .map-wrap {
    width: 50%; /* 各カラムの幅 */
    max-width: 524px;
  }
}


.footer {
  margin-top: 20px;
  font-family:Lora ;
  font-size: 14px;
  color: #d8d8d8;
  background: #00536d;
  text-align: center;
 }

.image-container {
  display: flex;
  justify-content: center
  
}

.image-container img {
  width: 26px;
  height: 26px;
  margin: 20px;
  margin-left: 10px;
  margin-right: 10px;
 }

 .footer a {
  color: #d8d8d8;
  text-decoration: none;
 }

 .footer a:hover {
  text-decoration: underline;
 }

 .footer .menu {
  margin: 0;
  padding: 20px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
 }

 .footer .menu li {
  margin: 0;
  padding: 0px 5px 10px 5px;
 }

 /* デフォルトではボタンを表示 */
 .button_04 {
  margin-right: 30px;
  margin: 10px 0px 0px 0px;
  display: flex;
  justify-content: right ;
  align-items: center;
  width: 100%; /* 親要素いっぱいに広げる */
}

.button_04 span {
  position: relative;
  z-index: 1000;
  display: flex;
  justify-content: center; /* 中央揃え */
  align-items: center;
  width: 305px; /* 幅を固定 */
  height: 50px; /* 高さを固定 */
  padding: 10px 20px;
  color: #3a3a3a;
  font-family: "Lora";
  text-decoration: none;
  line-height: 1;
  transition: 0.3s ease-in-out;
  font-weight: 500;
  border: 1px solid #3a3a3a;
  background: #d9d9d9;
  border-radius: 35px;
  border-bottom: solid 5px #3a3a3a;
}

/* ホバー時のアニメーション */
.button_04 span:hover {
  border-bottom: solid 2px #d9d9d9;
  transform: translateY(3px);
}

.button_04 img {
  margin-left: 10px; /* 余白調整 */
  width: 30px;
  height: 30px;
}

 .footer .copyright {
  margin: 0;
 }

 .sp-only {
   background: transparent !important;
   border: none;
   max-width: 305px;
   height: auto;
 }



