.elementor-17099 .elementor-element.elementor-element-a031a90{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--overlay-opacity:0.8;--overlay-mix-blend-mode:luminosity;}.elementor-17099 .elementor-element.elementor-element-a031a90:not(.elementor-motion-effects-element-type-background), .elementor-17099 .elementor-element.elementor-element-a031a90 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ishigaki-navi.okinawa/wp-content/uploads/2025/12/観光スポット23.webp");background-position:center left;background-repeat:no-repeat;background-size:cover;}.elementor-17099 .elementor-element.elementor-element-a031a90::before, .elementor-17099 .elementor-element.elementor-element-a031a90 > .elementor-background-video-container::before, .elementor-17099 .elementor-element.elementor-element-a031a90 > .e-con-inner > .elementor-background-video-container::before, .elementor-17099 .elementor-element.elementor-element-a031a90 > .elementor-background-slideshow::before, .elementor-17099 .elementor-element.elementor-element-a031a90 > .e-con-inner > .elementor-background-slideshow::before, .elementor-17099 .elementor-element.elementor-element-a031a90 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000E6;--background-overlay:'';}.elementor-17099 .elementor-element.elementor-element-679f119{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-17099 .elementor-element.elementor-element-679f119:not(.elementor-motion-effects-element-type-background), .elementor-17099 .elementor-element.elementor-element-679f119 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-17099 .elementor-element.elementor-element-5d10704{--display:flex;}.elementor-17099 .elementor-element.elementor-element-519223a{--display:flex;}.elementor-17099 .elementor-element.elementor-element-7a37cc6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--flex-wrap:wrap;--padding-top:80px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-17099 .elementor-element.elementor-element-7a37cc6:not(.elementor-motion-effects-element-type-background), .elementor-17099 .elementor-element.elementor-element-7a37cc6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7;}.elementor-17099 .elementor-element.elementor-element-898d416{--display:flex;}.elementor-17099 .elementor-element.elementor-element-838a5ae{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}.elementor-17099 .elementor-element.elementor-element-838a5ae .elementor-share-btn{height:6em;border-width:1px;}.elementor-17099 .elementor-element.elementor-element-0821ac0{--display:flex;}.elementor-17099 .elementor-element.elementor-element-f10316f > .elementor-widget-container{padding:80px 0px 0px 0px;}.elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__prev--label{color:#A9B3C1;}.elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__next--label{color:#A9B3C1;}.elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__prev--label, .elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__next--label{font-size:10px;}.elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__prev--title, .elementor-17099 .elementor-element.elementor-element-f10316f span.post-navigation__next--title{color:#1C3557;font-size:14px;}.elementor-17099 .elementor-element.elementor-element-f10316f .post-navigation__arrow-wrapper{color:#A9B3C1;}.elementor-17099 .elementor-element.elementor-element-f10316f .elementor-post-navigation__separator{background-color:#A9B3C1;}.elementor-17099 .elementor-element.elementor-element-f10316f .elementor-post-navigation{color:#A9B3C1;}@media(max-width:1024px){ .elementor-17099 .elementor-element.elementor-element-838a5ae{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}}@media(max-width:767px){.elementor-17099 .elementor-element.elementor-element-7a37cc6{--padding-top:30px;--padding-bottom:30px;--padding-left:10px;--padding-right:10px;} .elementor-17099 .elementor-element.elementor-element-838a5ae{--grid-side-margin:10px;--grid-column-gap:10px;--grid-row-gap:10px;--grid-bottom-margin:10px;}.elementor-17099 .elementor-element.elementor-element-838a5ae .elementor-share-btn{height:5em;}.elementor-17099 .elementor-element.elementor-element-838a5ae .elementor-share-btn__title{font-size:12px;}}/* Start custom CSS for text-editor, class: .elementor-element-1618441 */@media screen and (min-width: 768px){
.br-sp {display: none; }
}
.post_div{
    text-align: center;
    color: #f7f7f7;
    padding: 60px 0;
}
.post_div p{
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 1em;
    line-height: 2;
    letter-spacing: 3px;
    margin: 0 0 30px;
}
.post_div h1{
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 2.5em;
    letter-spacing: 1px;
    line-height: 2;
}
@media (max-width: 768px) {
    .post_div{
    text-align: center;
    color: #f7f7f7;
    padding: 40px 10px;
}
.post_div p{
    font-family: 'Noto Serif JP', sans-serif;
    font-size: .9em;
    line-height: 1.5;
    letter-spacing: 3px;
    margin: 0 0 30px;
}
.post_div h1{
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 1.75em;
    letter-spacing: 1px;
    line-height: 1.8;
}
.spfont{
    font-size: .8em;
}
}
.spfont{
    font-size: .8em;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-12327a5 */.page_read{
    text-align: center;
    padding: 20px 10%;
}
.page_read p{
    font-size: 1.2em;
    line-height: 1.7;
    color: #1C3557;
}
@media (max-width: 768px) {
  .page_read{
    text-align: center;
    padding: 20px 10px;
}
.page_read p{
    text-align: left;
    font-size: 1em;
    line-height: 1.7;
    color: #1C3557;
}}  
    
    
/* INDEX ボックス全体 */
.feature-index {
  max-width: 860px;
  margin: 40px auto 56px;
  padding: 25px 40px 26px;
  border-radius: 18px;
  border: 1px solid rgba(38, 70, 109, 0.16);
  background: #f9fafb;
  box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  color: #26466D;
}

/* INDEX 見出し */
.feature-index-title {
  text-align: center;
  font-size: 1.2em;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  margin: 0 0 10px;
  color: #26466D;
  font-weight: 600;
}

/* INDEX リスト（メイン） */
.feature-index-list {
  list-style: none;
  margin: 0;
  padding: 6px 4px 0;
  text-align: left;
}

.feature-index-list > li {
  margin-bottom: 10px;
}

/* メイン番号 ＆ 行 */
.feature-index-list > li > a {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  text-align: left;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  font-weight: 600;
  font-size: 1rem;
  transition: .3s;
}

/* ▼▼ ここから：サブリスト（4-1 / 4-2 / 4-3） ▼▼ */

.feature-index-sub {
  list-style: none;
  margin: 6px 0 6px 10px;  /* → メインとズレず自然なインデント */
  padding: 0;
}

.feature-index-sub li {
  margin-bottom: 4px;
}

.feature-index-sub a {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: inherit;
  font-size: 0.92rem;
  font-weight: 500;         /* → メインより少し軽く */
  transition: .3s;
}

.feature-index-sub a:hover {
  opacity: 0.7;
}

/* サブ番号 */
.index-sub-num {
  width: 3em;               /* → 4-1 がズレない固定幅 */
  text-align: right;
  font-weight: 500;
  font-size: 0.95rem;
  color: #26466D;
}

/* ▲▲ サブリスト END ▲▲ */


/* --- スマホ調整 --- */
@media screen and (max-width: 768px) {
/* サブリスト（1-1 / 1-2 / 2-1 ...） */
.feature-index-sub {
  list-style: none;
  margin: 6px 0 4px 0px;   /* インデントは a 側でつける */
  padding: 0;
}

.feature-index-sub li {
  margin-bottom: 4px;
}

/* サブ項目の行全体 */
.feature-index-sub a {
  position: relative;
  display: block;
  padding-left: 3.2em;       /* ← 番号ぶんの余白をつくる */
  text-decoration: none;
  color: inherit;
  font-size: 0.95rem;
  font-weight: 500;          /* 親より少し軽め */
  line-height: 1.7;
}

/* 左側の番号（1-1 / 1-2） */
.index-sub-num {
  position: absolute;
  left: -10px;
  top: 0;
  width: 3.2em;              /* ← 番号カラムを固定幅に */
  text-align: right;
}

/* テキスト部分 */
.index-sub-label {
  display: inline;           /* 普通の文章として折り返し */
}

/* スマホ調整（お好みで） */
@media screen and (max-width: 768px) {
.feature-index {
  max-width: 860px;
  margin: 40px auto 56px;
  padding: 25px 20px 26px;
  border-radius: 18px;
  border: 1px solid rgba(38, 70, 109, 0.16);
  background: #f9fafb;
  box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  color: #26466D;
}
  .feature-index-sub a {
    font-size: 0.9rem;
    padding-left: 3.5em;
  }
}
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5bdd8f6 *//* INDEX 折りたたみ */
.feature-index-wrap{
  max-width: 900px;
  margin: 32px auto 48px;
}

.feature-index-toggle{
  list-style: none;
  cursor: pointer;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  letter-spacing: .18em;
  font-size: .9rem;
  color: #1C3557;
  padding: 14px 0;
  border-bottom: 1px solid rgba(28,53,87,.18);
}

/* デフォルトの三角を消す */
.feature-index-toggle::-webkit-details-marker{
  display: none;
}

/* 開閉状態の文言切り替え */
.feature-index-wrap[open] .feature-index-toggle::after{
  content: " ▲";
  font-size: .75rem;
}
.feature-index-wrap:not([open]) .feature-index-toggle::after{
  content: " ▼";
  font-size: .75rem;
}

/* SPでは最初は閉じる */
@media (max-width: 560px){
  .feature-index-wrap{
    margin-top: 16px;
  }
  .feature-index-wrap[open]{
    /* open を無効化したい場合は HTML から open を外す */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-dabb4d6 *//* 文字が見えるように下側だけ暗くする */
.in7-mini-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(
    to top,
    rgba(0,0,0,.35) 0%,
    rgba(0,0,0,.18) 35%,
    rgba(0,0,0,0) 70%
  );
}

/* 文字色を白に（読みやすさ最優先） */
.in7-mini-en,
.in7-mini-jp{
  color:#fff !important;
  text-shadow:0 2px 10px rgba(0,0,0,.28);
}

/* 念のため文字を上に */
.in7-mini-label{
  z-index:2;
}
.in7-mini-card.no-image{
  background:#f7f7f7;
}

.in7-mini-card.no-image::after{
  display:none; /* グラデーション不要 */
}

.in7-mini-card.no-image .in7-mini-label{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
}

.in7-mini-card.no-image .in7-mini-en{
  color:rgba(28,53,87,.55) !important;
}
/* ===== 中央カラム化：見出し/本文/INFO/関連を同じ幅で中央に ===== */
.in7-spot-head,
.in7-spot-text,
.in7-info,
.in7-related{
  width:min(820px, 100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* リード文も同じ幅で */
.in7-spot-lead{
  width:100% !important;
  max-width:820px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  text-align:center !important; /* ここは好みで left でもOK */
}

/* 画像は「中央」に固定（幅は維持） */
.in7-spot-figure{
  width:min(1100px, 100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* figureの余白が変な時の保険 */
.in7-spot-figure{
  padding-left:0 !important;
  padding-right:0 !important;
}
/* ===== No-image hero for spot detail ===== */
.in7-spot-hero.no-image{
  width:min(1100px, 100%);
  margin:24px auto 18px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(28,53,87,.16);
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(28,53,87,.18), transparent 60%),
    linear-gradient(135deg, rgba(28,53,87,.08), rgba(28,53,87,.02));
  aspect-ratio:16 / 9;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.in7-spot-hero-inner{
  padding:34px 18px;
}

.in7-spot-hero-en{
  display:block;
  font-size:.78rem;
  letter-spacing:.22em;
  color:rgba(28,53,87,.60);
  margin-bottom:10px;
}

.in7-spot-hero-jp{
  display:block;
  font-family:"Noto Serif JP", serif;
  font-size:1.45rem;
  letter-spacing:.06em;
  color:#1C3557;
}

.in7-spot-hero-note{
  display:block;
  margin-top:10px;
  font-size:.85rem;
  color:rgba(16,36,63,.55);
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8482014 */.pagetop-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 48px;
  height: 48px;
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 22px;
  color: #26466D; /* ネイビー */
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  z-index: 999;
}

.pagetop-btn:hover {
  background: #f5f5f5;
}/* End custom CSS */