@charset "UTF-8";

/* /////////////////////////////////////////////////////////////

INDEX

※ブロックスタイルは、mystyle/my-code.php=ブロックエディター関連と連動

=エディタースタイル
=基本見出しスタイル
=ブロックスタイル
/* 引用
/* ボタン
/* テーブル
/* コンテンツ枠
/* 見出し
/* リストマーク
/* 画像
/* スペーサー
/* カラム

=コンテンツ
=カラーパレット関連


///////////////////////////////////////////////////////////// */

html {
  scroll-behavior: smooth; /* これだけでOK */
}


/* トップイメージ
-------------------------------------------------------------- */

/* トップイメージ内英語タイトル */
.top-titleimage{
  position: absolute;
  right: 20px;
  bottom: 0;
  z-index: 10;
  width: 40%;
  max-width: 600px;
  height: auto;
}
@media screen and (max-width: 599px) {
  .top-titleimage{
    width: 50%;
  }
}

/* セクション共通
-------------------------------------------------------------- */

/* スライダー基本 */
ul.slider-minpaku{
  padding: 0!important;
  margin: 1em 0;
}

ul.slider-minpaku li{
  padding: 0 2px;
  box-sizing: border-box;
  text-align: center;
}
ul.slider-minpaku li p{
  line-height: 1.5;
}

.slide-arrow {
  z-index: 10!important;
}


.slide-arrow.prev-arrow {
  left: -20px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../img/icon/pageleft-i01.svg);
  background: #65ae33;
}
.slide-arrow.next-arrow {
  right: -20px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../img/icon/pageright-i01.svg);
  background: #65ae33;
}

@media (max-width: 600px) {
  
  .slide-arrow.prev-arrow {
    left: -15px;
  }
  .slide-arrow.next-arrow {
    right: -15px;
  }
  .slide-arrow{
    width: 20px;
    height: 20px;
  }
}

.minpaku-img{
  box-sizing: border-box;
}
.minpaku-img img{
  object-fit: cover;
  width: 100%;/* 横幅の指定 */
  aspect-ratio: 4 / 3;/* ここにアスペクト比を入れる */
}

.minpaku-float{
  position: relative;
  z-index: 5;
}

.slider-minpaku {
  display: none;
}
.slider-minpaku.slick-initialized {
  display: block;
}

@media screen and (min-width: 992px) {
  
  body:not(.wp-admin) .boxfloat-left-box{
    width: 72%;
    float: right;
  }
  body:not(.wp-admin) .boxfloat-right-box{
    width: 72%;
    float: left;
  }

  body:not(.wp-admin) .boxfloat-right{
    width: 25%;
    margin-left: 3%;
    float: right;
  }
  body:not(.wp-admin) .boxfloat-left{
    width: 25%;
    margin-right: 3%;
    float: left;
  }


}

/* HP・SNSリンクブロック */
ul.mpk-sns-links{
  list-style-type: none;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  margin: 0;
  padding: 0;
  gap:0.5em;
  position: absolute;
  left: 10px;
  bottom: 10px;
}
ul.mpk-sns-links li{
  margin: 0;
  padding: 0;
  width: 20%;
  max-width: 40px;
}

/* HP・SNS等リンクアイコン */
.mpk-sub-links {
  display: block;
  width: 100%; /* 親要素の幅に合わせる */
  aspect-ratio: 1 / 1; /* 縦横比を1:1にする */
  background-image: url("img/icon/sns-url-icon2.png");
  background-size: contain;
  background-repeat: no-repeat;
}
.mpk-sub-links:hover{
  opacity: 0.8;
}
.mpk-facebook-link{
  background-image: url("img/icon/sns-meta-icon2.png");
}
.mpk-instagram-link{
  background-image: url("img/icon/sns-instagram-icon2.png");
}

/* セクション内英語サブタイトル */
.top-eng-subtitle{
  font-family: "Covered By Your Grace", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 3em;
  margin: 0!important;
  color: #998675;
  line-height: 1.2!important;
}

/* セクション内日本語サブタイトル */
.groupe-block h2{
  margin: 0.5em 0;
  color: #7f6956;
  font-size: 1.5em;
  font-weight: normal;
  font-family: 'Noto Sans JP', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-feature-settings: 'palt';
}

/* セクション内日本語前アイコン */
.groupe-block h2.top-jp-subtitle::before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  width: 1.5em;
  height: 1.5em;
  margin: -0.3em 0.3em 0 0; 
  background-image: url("img/icon/section-icon-logptype-k.png");
  background-size: cover;
}
.groupe-block h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-logptype-w.png");
}
.groupe-block.introduction-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-introduction-w.png");
}
.groupe-block.withwho-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-withwho-k.png");
}

.groupe-block.purpose-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-purpose2-k.png");
}
.groupe-block.sightseeing-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-sightseeing-w.png");
}
.groupe-block.facilities-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-facilities-w.png");
}
.groupe-block.eatingdrinking-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-eatingdrinking-w.png");
}
.groupe-block.activity-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-activity-k.png");
}

.groupe-block.listings-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-listings-k.png");
}

.groupe-block.ggmap-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-map-k.png");
}

.groupe-block.contactin-box h2.top-jp-subtitle::before{
  background-image: url("img/icon/section-icon-contactin-w.png");
}

/* ブロック内テキストカラー */
.groupe-block.gcolor-w .top-eng-subtitle,
.groupe-block.gcolor-w h2,
.groupe-block.gcolor-w p{
  color: #ffffff;
}

@media screen and (max-width: 991px) {
  
  /* SP時カラム逆転 */
  .reverse-block{
    flex-direction: row-reverse;
    flex-direction: column-reverse;
  }
  .groupe-block{
    padding: 50px 20px;
  }
  
}

@media screen and (min-width: 992px) {
  
  .target-element::before {
    content: "";
    display: block;
    height: 70px; /* 調整したい高さ（固定ヘッダーの高さ） */
    margin-top: -70px; /* heightと同じ分のネガティブマージン */
    visibility: hidden;
  }

  
  .groupe-block{
    padding: 70px 30px;
  }

}
@media screen and (min-width: 1280px) {
  
  .groupe-block{
    padding: 90px 50px;
  }

}

/* セクションベースカラー */
.introduction-box{
  background-color: #a38a77;
}
.purpose-box{
  background-color: #fff6e9;
}
.activity-box{
  background-color: #ffffff;
}
.eatingdrinking-box{
  background-color: #c7b299;
}
.sightseeing-box{
  background-color: #736357;
}
.withwho-box{
  background-color: #fff6e9;
}
.listings-box{
  background-color: #ffffff;
}



.facilities-box{
  background-color: #998675;
}



.contactin-box{
  background-color: #736357;
}

.sec-culumn{
  position: relative;
  z-index: 5;
}

.secobi-right,
.secobi-left{
  position: relative;
}

@media screen and (min-width: 992px) {
  .secobi-left::after{
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: calc(100% - 60px);
    background-color: rgba(0,0,0,0.1);
    left:0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    z-index: 0;
  }
  .secobi-right::after{
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: calc(100% - 60px);
    background-color: rgba(0,0,0,0.1);
    right:0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    z-index: 0;
  }
  .secobi-right.hid::after,
  .secobi-left.hid::after{
    animation:secobi_pc 1s ease-out forwards;
  }
  #activity .secobi-right::after{
    background-color: rgba(199, 178, 153, 0.5);
  }
}

@keyframes secobi_pc {
  0% {
    width: 0;
  }
  100% {
    width: 65%;
  }
}

/* Introduction
-------------------------------------------------------------- */


.site-title-block{
  text-align: center;
}
.site-title-block h1{
  color: #ffffff;
  margin: 0!important;
}
.site-title-block p{
  text-align: center;
  font-size: 1.1em;
  margin-bottom: 2em!important;
}

.intro-midashi{
  text-align: center;
  margin-bottom: 1.5em!important;
}

ul.intro-list{
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap:10px 0;
}
ul.intro-list li{
  margin: 0;
  padding: 0;
  width: 50%;
  box-sizing: border-box;
  border-right: solid 1px #ffffff;
}

ul.intro-list li div.intro-box{
  box-sizing: border-box;
  padding: 0 20px;
}
ul.intro-list li.intro-line1{
  border-left: solid 1px #ffffff;
}

ul.intro-list li h3.intro-title{
  margin: 0!important;
  color: #ffffff;
  font-weight: normal;
  text-align: center;
  font-family: 'Noto Serif JP', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
  font-feature-settings: 'palt';
}
ul.intro-list li div.intro-img{
  text-align: center;
  margin: 0.5em 0 1em 0;
}
ul.intro-list li strong{
  display: block;
  color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 1429px) {
  ul.intro-list li.intro-line3{
    border-left: solid 1px #ffffff;
  }
}
@media screen and (min-width: 1430px) {
  ul.intro-list li{
    margin: 0;
    padding: 0;
    width: 25%
  }
  
  ul.intro-list li div.intro-box{
    padding: 0 30px;
  }
  
  ul.intro-list li h3.intro-title{
    font-size: 1.5em;
  }
}


/* 旅の目的
-------------------------------------------------------------- */

/* タブ偏移時のスライダーバグ対応 */
.slider-minpaku:not(.slick-initialized) {
    visibility: hidden;
    height: 0;
    overflow: hidden;
}
.slider-minpaku:not(.slick-initialized) .slide-item:not(:first-of-type) {
    display: none;
}
/* 初期化前の縦並びを非表示にする */
.slider-minpaku:not(.slick-initialized) {
    opacity: 0!important;
}
/* 初期化が完了したらフェードインさせる */
.slider-minpaku.slick-initialized {
    opacity: 1!important;
    transition: opacity 0.3s ease!important;
}
/* 2秒後にアニメーション開始 */
.minpaku-animated.animate__animated {
  animation-delay: 0.2s;
}

/* タブ見出しブロック */
.wp-block-ub-tabbed-content-tabs-title .wp-block-ub-tabbed-content-tab-title-wrap{
  border-radius: 0;
}
.wp-block-ub-tabbed-content-tabs-title .wp-block-ub-tabbed-content-tab-title-wrap:nth-child(1){
  background-color: #22b573;
  margin-right: 1px;
}
.wp-block-ub-tabbed-content-tabs-title .wp-block-ub-tabbed-content-tab-title-wrap:nth-child(2){
  background-color: #42210b;
  margin-right: 1px;
}
.wp-block-ub-tabbed-content-tabs-title .wp-block-ub-tabbed-content-tab-title-wrap:nth-child(3){
  background-color: #d4145a;
  margin-right: 0;
}
.wp-block-ub-tabbed-content-tab-title{
  color:#ffffff;
}

/* タブメインブロック：外 */
.wp-block-ub-tabbed-content-tabs-content{
  padding: 0;
}
/* タブメインブロック：内 */
.wp-block-ub-tabbed-content-tabs-content .wp-block-ub-tabbed-content-tab-content-wrap{
  padding: 25px;
  margin: 0 0 0.5em 0;
  color:#ffffff;
  min-height: 600px;
}
.wp-block-ub-tabbed-content-tabs-content .wp-block-ub-tabbed-content-tab-content-wrap:nth-child(1){
  background-color: #22b573;
}
.wp-block-ub-tabbed-content-tabs-content .wp-block-ub-tabbed-content-tab-content-wrap:nth-child(2){
  background-color: #42210b;
}
.wp-block-ub-tabbed-content-tabs-content .wp-block-ub-tabbed-content-tab-content-wrap:nth-child(3){
  background-color: #d4145a;
}

/* タブ内見出し */
.wp-block-ub-tabbed-content-tabs-content .wp-block-ub-tabbed-content-tab-content-wrap h3{
  margin: 0!important;
  color:#ffffff!important;
  font-family: 'Noto Serif JP', 'ＭＳ Ｐ明朝', 'MS PMincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', serif;
  font-feature-settings: 'palt';
  text-align: center;
}


/* スライド要素に左右の余白を設定 */
.slider-mokuteki .slick-slide {
    margin: 0 10px;
}
/* 左右に余白分だけネガティブマージンを設定し、全体を相殺 */
.slider-mokuteki .slick-list {
    margin: 0 -10px;
}

/* スライダー上余白 */
.slider-mokuteki .slick-list{
  padding-top: 10px;
}

/* スライダー全体括り */
.mokuteki-box{
  position: relative;
}

/* 画像 */
.mokuteki-img{
  box-sizing: border-box;
}
.mokuteki-img img{
  object-fit: cover;
  width: 100%;/* 横幅の指定 */
  aspect-ratio: 3 / 5;/* ここにアスペクト比を入れる */
  box-shadow: 0 0 5px #999999;
  border-radius: 10px;
  border: solid 3px #ffffff;
  box-sizing: border-box;
}
.mokuteki-sub-links .mokuteki-img img{
  transition: all .3s ease-in-out;
}
.mokuteki-sub-links .mokuteki-img img:hover{
  filter: grayscale(1);
}

/* タイトル */
.mokuteki-title{
  position: absolute;
  left: 0;
  bottom: 10px;
  display: block;
  width: 100%;
  text-align: center;
  color: #ffffff;
  box-sizing: border-box;
  padding: 10px;
  text-shadow: 0 0 10px #000000;
}

/* 外部リンク */
a.mokuteki-sub-links{
  display: block;
  position: relative;
}
a.mokuteki-sub-links::before{
  content: '';
  position: absolute;
  right: 15px;
  top:15px;
  width: 1.5em;
  height: 1.5em;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("../img/icon/pageupdown-i18.svg");
  background: #ffffff;
  z-index: 1;
}




/* 体験・飲食・観光
-------------------------------------------------------------- */

/* 一覧枠 */
ul.flex-tik{
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap:1em 2%;
  list-style-type: none;
}

ul.flex-tik>li{
  box-sizing: border-box;
  width: 100%;
  background-color: #999999;
  padding: 10px 10px 70px 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  ul.flex-tik li{
    width: 49%;
  }
}
@media screen and (min-width: 992px) {
  ul.flex-tik li{
    width: 32%;
  }
}
@media screen and (min-width: 1280px) {
  ul.flex-tik li{
    width: 23.5%;
  }
}


/* スライダー余白調整 */
.slider-tik li{
  box-sizing: border-box;
}

/* スライダー枠 */
.slider-tik .slick-slide{
  position: relative;
  box-sizing: border-box!important;
  background-color: #999999;
  padding: 10px 10px 70px 10px!important;
  margin: 0 10px!important;
  background-image: url("img/konkuri-w.jpg");
  background-size: cover;
  border-radius: 5px;
  box-shadow: 0 0 5px #999999;
}

/* スライダー上余白 */
.slider-tik .slick-list{
  padding-top: 10px;
  padding-bottom: 10px;
}

/* スライド要素に左右の余白を設定 */
.slider-tik .slick-slide {
    margin: 0 10px;
}
/* 左右に余白分だけネガティブマージンを設定し、全体を相殺 */
.slider-tik .slick-list {
    margin: 0 -10px;
}

/* スライダーの高さを同じにする */
.slider-tik .slick-track {
  display: flex!important;
}
.slider-tik .slick-slide {
  height: auto !important;
}

/* タイトル */
.ptit-tik{
  display: block;
  color: #222222!important;
  text-align: center;
  line-height: 1.5!important;
  margin: 0.5em 0!important;
}

/* スペック */
.mtk-list{
  text-align: left!important;
  font-size: 0.8em;
  color: #222222;
}
.mtk-list div{
  border-bottom: dotted 1px #000000;
  padding: 0.5em 0;
}
.mtk-list div:first-child{
  border-top: dotted 1px #000000;
}

/* スペックアイコン */
.mtk-miniicon{
  padding-left: 1.5em!important;
  position: relative;
  line-height: 1.5em;
}
.mtk-miniicon::before{
  content: '';
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 1.1em;
  height: 1.1em;
  mask-image: url("../img/icon/mi-home.svg");
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  background: #000000;
  
}
.mtk-miniicon.mtk-kategori::before{
  mask-image: url("../img/icon/mi-folder.svg");
}
.mtk-miniicon.mtk-add::before{
  mask-image: url("../img/icon/mi-home.svg");
}
.mtk-miniicon.mtk-renraku::before{
  mask-image: url("../img/icon/mi-note2.svg");
}
.mtk-miniicon.mtk-tel::before{
  mask-image: url("../img/icon/mi-tel.svg");
}
.mtk-miniicon.mtk-eigyou::before{
  mask-image: url("../img/icon/mi-tokei.svg");
}
.mtk-miniicon.mtk-kyujitsu::before{
  mask-image: url("../img/icon/mi-calendar.svg");
}


/* 誰と行く？
-------------------------------------------------------------- */

/* スライダー上余白 */
.slider-withwho .slick-list{
  padding-top: 10px;
}

/* スライダー全体括り */
.withwho-box{
  position: relative;
}

/* 画像 */
.withwho-img{
  box-sizing: border-box;
}
.withwho-img img{
  object-fit: cover;
  width: 100%;/* 横幅の指定 */
  aspect-ratio: 3 / 5;/* ここにアスペクト比を入れる */
  box-shadow: 0 0 5px #999999;
  border-radius: 10px;
  border: solid 3px #ffffff;
  box-sizing: border-box;
}
.withwho-sub-links .withwho-img img{
  transition: all .3s ease-in-out;
}
.withwho-sub-links .withwho-img img:hover{
  filter: grayscale(1);
}

/* タイトル */
.withwho-title{
  position: absolute;
  left: 0;
  bottom: 10px;
  display: block;
  width: 100%;
  text-align: center;
  color: #ffffff;
  box-sizing: border-box;
  padding: 10px;
  text-shadow: 0 0 10px #000000;
}

/* 外部リンク */
a.withwho-sub-links{
  display: block;
  position: relative;
}
a.withwho-sub-links::before{
  content: '';
  position: absolute;
  right: 15px;
  top:15px;
  width: 1.5em;
  height: 1.5em;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("../img/icon/pageupdown-i18.svg");
  background: #ffffff;
  z-index: 1;
}

/* キャッチコピー */
span.dre-come-all{
  display: inline-block;
  position: absolute;
  top:15%;
  left: 0;
  text-align: left;
}
span.dre-come2,
span.dre-come1{
  display: inline-block;
  background-color: #ffffff;
  color: #222222;
  padding: 0.5em;
  text-align: left;
}
div.dre-come-sub{
  margin-top: -0.5em;
}

/* スライド要素に左右の余白を設定 */
.slider-withwho .slick-slide {
    margin: 0 10px;
}
/* 左右に余白分だけネガティブマージンを設定し、全体を相殺 */
.slider-withwho .slick-list {
    margin: 0 -10px;
}



/* 民泊のご紹介
-------------------------------------------------------------- */

/* 一覧枠 */
ul.flex-minpaku{
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap:1em 2%;
  list-style-type: none;
}

ul.flex-minpaku>li{
  box-sizing: border-box;
  width: 100%;
  background-color: #999999;
  padding: 10px 10px 60px 10px;
  position: relative;
  background-image: url("img/mokume.jpg");
  background-size: cover;
  border-radius: 5px;
}

@media screen and (min-width: 768px) {
  ul.flex-minpaku li{
    width: 49%;
  }
}
@media screen and (min-width: 992px) {
  ul.flex-minpaku li{
    width: 32%;
  }
}
@media screen and (min-width: 1280px) {
  ul.flex-minpaku li{
    width: 23.5%;
  }
}

/* タイトル */
.minpaku-title{
  text-align: center;
  color: #ffffff;
}

/* テキスト */
.mpk-content{
  font-size: 0.8em;
  color: #ffffff;
}


/* 宿場町おおあさマップ
-------------------------------------------------------------- */

.ggmap-box{
  background-color: #f7f3dc;
}

.ggmap-box .top-eng-subtitle{
  text-align: center;
}
.ggmap-box .top-jp-subtitle{
  text-align: center;
  margin-bottom: 2em;
}

/* お問い合わせ
-------------------------------------------------------------- */

.contactin-box .top-jp-subtitle,
.contactin-box .top-eng-subtitle{
  color: #ffffff;
}

.contactin-box{
  text-align: center;
}

.contactin-culumn{
  margin-top: 2em;
  justify-content:center;
}
.contactin-culumn-sub{
  box-sizing: border-box;
  background-color: #e2d7cc;
  border-radius: 10px;
  padding: 30px;
  width: 80%;
  max-width: 800px;
  
}

.contact-subtitle{
  color: #534741;
  margin: 0 0 0 0!important;
}

.contact-telinfo{
  color: #534741;
  font-size: 1.8em;
  margin: 0 0 0 0!important;
  line-height: 1;
}
.contact-telinfo::before{
  content: '';
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.2em;
  width: 1.2em;
  height: 1.2em;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("../img/icon/mi-mobile.svg");
  background: #534741;
}

.contact-mailinfo{
  margin: 0.5em 0 0.5em 0!important;
  line-height: 1;
}
.contact-mailinfo a{
  display: block;
  font-size: 1.2em;
  padding: 0.5em;
  background-color: #534741;
  color: #ffffff;
}

.contact-miniinfo{
  color: #534741;
  font-size: 0.8em;
  margin: 0 0 0.5em 0!important;
}


.fm-btm .wp-block-button__link, .fm-btm a, .fm-btm input{
  background-color: #2a753f!important;
}

/* ==============================================================

=エディタースタイル

============================================================== */

/* エディター幅 */
html :where(.wp-block){
  max-width: 1100px;
}
.is-root-container{
  padding-left: 20px;
  padding-right: 20px;
  max-width: 1100px;
}
.editor-styles-wrapper .is-root-container {
  margin-top: 50px!important;
  margin-left: auto!important;
  margin-right: auto!important;
  margin-bottom: 50px!important;
}

/* タイトル */
.edit-post-visual-editor__post-title-wrapper{
  border: solid 1px #eee;
  padding: 10px;
  margin-bottom: 50px;
}

/* エディタータイトル */
.editor-post-title__input {
  font-size: 1.8em;
  word-break: break-word;
  margin-bottom: 30px;
}

/* エディターツールバー */
.block-editor-block-contextual-toolbar{
  background-color:#eee;
}

/* ==============================================================

=基本見出しスタイル

============================================================== */

/* 見出しフォントサイズ */
h1{
  font-size:1.6em;
}
h2{
  font-size:1.5em;
}
h3{
  font-size:1.3em;
}
h4{
  font-size:1.2em;
}
h5{
  font-size:1.1em;
}
h6{
  font-size:1em;
}

/* 見出しスタイル */
h1, h2, h3, h4, h5, h6 {
  color: #222;
  margin: 1.2em 0;
  line-height:1.3;
}

/* コンテンツタイトル */
h1.entry-title-contents{
  font-size:1.6em;
  margin: 0 0 0 0;
}
@media screen and (min-width: 768px) {
  h1.entry-title-contents{
    font-size:1.8em;
  }
}
@media screen and (min-width: 992px) {
  h1.entry-title-contents{
    font-size:2em;
  }
}
@media screen and (min-width: 1280px) {
  h1.entry-title-contents{
    font-size:2.2em;
  }
}

/* ==============================================================

=ブロックスタイル

============================================================== */

/* コード
-------------------------------------------------------------- */

.wp-block-code code{
  padding: 10px;
}
.block-editor-block-list__block.wp-block-code code{
  border: 1px solid lightgray;
}

/* 引用
-------------------------------------------------------------- */

/* 引用：blue-quote */
.wp-block-quote.is-style-blue-quote { 
  color: blue; 
}

/* ボタン
-------------------------------------------------------------- */

.block-editor-block-list__block.wp-block-buttons,
.wp-block-buttons{
  margin-top: 2em;
  margin-bottom: 2em;
}

.wp-block-buttons.is-content-justification-left{
  display: flex;
  justify-content: flex-start!important;
}
.wp-block-buttons.is-content-justification-center{
  display: flex;
  justify-content: center!important;
}
.wp-block-buttons.is-content-justification-right{
  display: flex;
  justify-content: flex-end!important;
}

.wp-block-button.is-style-fill a{
  background-color: #000000;
  color: #ffffff;
}

.is-style-btm-type1 a{
  color: #fff!important;
  font-size: 1.3em;
  min-width: 200px;
  text-align: center;
  background: rgb(16, 53, 103);
  background: radial-gradient(circle, rgba(0, 140, 190,1) 0%, rgba(16, 53, 103,1) 100%);
}


.is-style-btm-type2 a{
  color: #fff!important;
  font-size: 1.1em;
  min-width: 200px;
  text-align: center;
  background: rgb(0,140,190);
  background: linear-gradient(180deg, rgba(0,140,190,1) 0%, rgba(16,53,103,1) 100%);
}

.is-style-btm-type2 a:hover{
  opacity: 0.8;
}


/* 基本・追加クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* コンタクトフォーム共通調整 */
.fm-btm {
  padding-top: 30px ;
  text-align: center;
  position: relative;
}
.fm-btm .wp-block-button__link,
.fm-btm a,
.fm-btm input {
  background-image: none;
  background-color: #104280;
  color: #fff!important ;
  border: 0;
  margin: 0 5px;
  padding: 15px 20px;
  cursor: pointer;
  transition: .3s;
  font-size: 1em;
}
.fm-btm a:hover,
.fm-btm input:hover {
  background-image: none;
  opacity: 0.7;
}

/* テーブル
-------------------------------------------------------------- */

/* --- テーブル（既存）：デフォルト --- */
.is-style-regular table thead th,
.is-style-regular table th,
.block-editor-block-list__block.wp-block-table.is-style-regular table th,
.block-editor-block-list__block.wp-block-table.is-style-regular table thead th{
  border: solid 1px #cccccc;
}
.is-style-regular table td,
.block-editor-block-list__block.wp-block-table.is-style-regular table td{
  border: solid 1px #cccccc;
}
.is-style-regular table tfoot td,
.block-editor-block-list__block.wp-block-table.is-style-regular table tfoot td{
  border: solid 1px #cccccc;
}

.th-basecolor table th{
  background-color: #eeeeee;
}

/* テーブル：基本 */
.wp-block-table.is-style-normal-table table {
  border-spacing: 0;
  border-collapse: collapse;
}
.wp-block-table.is-style-normal-table th {
  box-sizing: border-box;
}
.wp-block-table.is-style-normal-table td:first-child {
  background: #eeeeee;
  border: solid 1px #ccc;
  color: #222222;
  /*padding: 10px;*/
  box-sizing: border-box;
}
.wp-block-table.is-style-normal-table td:not(:first-child) {
  border: solid 1px #ccc;
  border-left: dotted 1px #ccc;
  border-right: dotted 1px #ccc;
  /*padding: 10px;*/
  background: #ffffff;
  box-sizing: border-box;
}

/* テーブル：可変 */
.wp-block-table.is-style-rsp-table table {
  border-spacing: 0;
  border-collapse: collapse;
}
.wp-block-table.is-style-rsp-table th {
  box-sizing: border-box;
}
.wp-block-table.is-style-rsp-table td:first-child {
  background: #eeeeee;
  border: solid 1px #ccc;
  color: #222222;
  /*padding: 10px;*/
  box-sizing: border-box;
}
.wp-block-table.is-style-rsp-table td:not(:first-child) {
  border: solid 1px #ccc;
  border-left: dotted 1px #ccc;
  border-right: dotted 1px #ccc;
  /*padding: 10px;*/
  background: #ffffff;
  box-sizing: border-box;
}
.wp-block-table.is-style-rsp-table td:last-child {
  border-right: solid 1px #ccc;
}
@media screen and (max-width: 640px) {
  .wp-block-table.is-style-rsp-table table tr:not(:first-child) td:first-child {
    border-top: 0;
  }
  .wp-block-table.is-style-rsp-table th {
    display: block;
    width: 100%;
  }
  .wp-block-table.is-style-rsp-table td:first-child {
    border-bottom: solid 1px #ccc;
    display: block;
    width: 100%;
  }
  .wp-block-table.is-style-rsp-table td:not(:first-child) {
    border-top: 0;
    border-left: solid 1px #ccc;
    border-right: solid 1px #ccc;
    border-bottom: dotted 1px #ccc;
    display: block;
    width: 100%;
  }
  .wp-block-table.is-style-rsp-table td:last-child {
    border-bottom: solid 1px #ccc;
  } 
}

.wp-block-table.hd-w3 td:first-child {
  min-width: 3em;
}
.wp-block-table.hd-w5 td:first-child {
  min-width: 5em;
}
.wp-block-table.hd-w10 td:first-child {
  min-width: 10em;
}

/* テーブル余白 */
.wp-block-table.is-style-stripes td,
.wp-block-table.is-style-stripes th,
.wp-block-table.is-style-normal-table td,
.wp-block-table.is-style-normal-table th,
.wp-block-table.is-style-rsp-table td,
.wp-block-table.is-style-rsp-table th{
  padding:5px;
}
@media screen and (min-width: 768px) {
  .wp-block-table.is-style-stripes td,
  .wp-block-table.is-style-stripes th,
  .wp-block-table.is-style-normal-table td,
  .wp-block-table.is-style-normal-table th,
  .wp-block-table.is-style-rsp-table td,
  .wp-block-table.is-style-rsp-table th{
    padding:7px;
  }
}
@media screen and (min-width: 992px) {
  .wp-block-table.is-style-stripes td,
  .wp-block-table.is-style-stripes th,
  .wp-block-table.is-style-normal-table td,
  .wp-block-table.is-style-normal-table th,
  .wp-block-table.is-style-rsp-table td,
  .wp-block-table.is-style-rsp-table th{
    padding:10px;
  }
}

/* 基本・追加クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* --- テーブル基本ベース --- */
.edit-post-visual-editor table td,
.site-content table td,
.edit-post-visual-editor table th,
.site-content table th{
  word-break: break-all;
}

/* コンテンツ枠
-------------------------------------------------------------- */

/* 全画面背景用 */
.wp-admin .is-style-fullarea{
  background-color: rgba(0, 0, 0, 0.1);
}

/* グループベース */
.wp-admin .wp-block-group{
  border:dotted 1px #ccc;
  padding:5px;
}

/* グループ：全幅背景（余白有り） */
.is-style-fullarea{
  padding-left: 0;
  padding-right: 0;
  padding-top: 20px;
  padding-bottom: 20px;
  margin: 20px 0;
  background-color: #eee;
}
@media screen and (max-width: 767px) {
  .is-style-fullarea{
    padding-top: 40px;
    padding-bottom: 40px;
    margin: 40px 0;
  }
}
@media screen and (min-width: 768px) {
  .is-style-fullarea{
    padding-top: 50px;
    padding-bottom: 50px;
    margin: 50px 0;
  }
}

/* グループ：基本枠幅 */
.is-style-fullbox1{
  max-width:1280px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: inherit;
}
.all-full1 .is-style-fullbox1{
  max-width:90%;
  padding: 0 20px;
}
.all-full2 .is-style-fullbox1{
  max-width:100%;
  padding: 0 20px;
  box-sizing: border-box;
}
@media screen and (max-width: 1279px) {
  .is-style-fullbox1{
    box-sizing: border-box;
  }
  .all-full1 .is-style-fullbox1{
    max-width:100%;
  }
}

/* グループ：全幅背景（余白無し） */
.is-style-fullarea2{
  padding: 0 0 0 0;
  margin: 0 0 0 0;
  background-color: #eee;
}

.is-style-fullbox2::after{
  content: '';
  position: absolute;
  top:0;
  left: 0;
  height: 100%;
  width:100%;
  background-color: #eee;
  z-index: -1;
}

/* ページ全幅背景カラー */
.block-editor-block-list__block.is-style-fullbox2.fb2-colset1,
.is-style-fullbox2.fb2-colset1::after{
  background-color:#F5D2ED;
}
.block-editor-block-list__block.is-style-fullbox2.fb2-colset2,
.is-style-fullbox2.fb2-colset2::after{
  background-color:#CCFFE6;
}
.block-editor-block-list__block.is-style-fullbox2.fb2-colset3,
.is-style-fullbox2.fb2-colset3::after{
  background-color:#AEC7FB;
}
.block-editor-block-list__block.is-style-fullbox2.fb2-colset4,
.is-style-fullbox2.fb2-colset4::after{
  background-color:#DEB8FF;
}
.block-editor-block-list__block.is-style-fullbox2.fb2-colset5,
.is-style-fullbox2.fb2-colset5::after{
  background-color:#FFE4B1;
}

.full-width .is-style-fullbox2::after,
.sideclm2 .is-style-fullbox2::after{
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}

/* 基本・追加クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* グループ（カラムタイプ）
-------------------------------------------------------------- */

.clmbox-4>.wp-block-group__inner-container,
.clmbox-3>.wp-block-group__inner-container,
.clmbox-2l>.wp-block-group__inner-container,
.clmbox-2r>.wp-block-group__inner-container,
.clmbox-2>.wp-block-group__inner-container{
  display: flex;
  flex-wrap: wrap;
  gap: 20px 4%;
  margin-bottom: 20px;
}
.clmbox-4>.wp-block-group__inner-container>div,
.clmbox-3>.wp-block-group__inner-container>div,
.clmbox-2l>.wp-block-group__inner-container>div,
.clmbox-2r>.wp-block-group__inner-container>div,
.clmbox-2>.wp-block-group__inner-container>div{
  width: 100%;
}

@media screen and (max-width: 599px) {
  .clmbox-4.clmsp2>.wp-block-group__inner-container>div,
  .clmbox-3.clmsp2>.wp-block-group__inner-container>div,
  .clmbox-2.clmsp2>.wp-block-group__inner-container>div{
    width: 48%;
  }
  .clmbox-2l.clmsp2>.wp-block-group__inner-container>div:nth-child(odd){
    width: 38%;
  }
  .clmbox-2l.clmsp2>.wp-block-group__inner-container>div:nth-child(even){
    width: 58%;
  }
  .clmbox-2r.clmsp2>.wp-block-group__inner-container{
    flex-direction: row-reverse;
  }
  .clmbox-2r.clmsp2>.wp-block-group__inner-container>div:nth-child(odd){
    width: 38%;
  }
  .clmbox-2r.clmsp2>.wp-block-group__inner-container>div:nth-child(even){
    width: 58%;
  }
}

@media screen and (min-width: 600px) {
  
  .clmbox-2>.wp-block-group__inner-container>div{
    width: 48%;
  }
  .clmbox-2l>.wp-block-group__inner-container>div:nth-child(odd){
    width: 38%;
  }
  .clmbox-2l>.wp-block-group__inner-container>div:nth-child(even){
    width: 58%;
  }
  .clmbox-2r>.wp-block-group__inner-container{
    flex-direction: row-reverse;
  }
  .clmbox-2r>.wp-block-group__inner-container>div:nth-child(odd){
    width: 38%;
  }
  .clmbox-2r>.wp-block-group__inner-container>div:nth-child(even){
    width: 58%;
  }
  .clmbox-3>.wp-block-group__inner-container>div{
    width: 48%;
  }
  .clmbox-4>.wp-block-group__inner-container>div{
    width: 48%;
  }
}

@media screen and (min-width: 992px) {
  .clmbox-3>.wp-block-group__inner-container>div{
    width: 30.66%;
  }
  .clmbox-4>.wp-block-group__inner-container>div{
    width: 22%;
  }
}


/* 見出し
-------------------------------------------------------------- */


/* タイトル上書き */


/* アーカイブタイトル */
.major-heading,
.is-style-orgtitle{
  display: block;
  text-decoration: none;
  color: #222222;
  line-height: 1.2em;
  padding: 0 0 0.5em 0;
  margin: 0 0 1.5em 0;
  border-bottom: solid 2px #aaaaaa;
}

/* 見出し01 */
.is-style-midashi01 {
  position: relative;
  padding-bottom: 0.5em;
  border-bottom: 4px solid #104280;
  margin: 30px 0 30px 0;
  color: #122e5a;
  line-height: 1.3em;
}
.is-style-midashi01:first-child {
  margin-top: 0;
}
.is-style-midashi01 a{
  color: #122e5a!important;
  text-decoration: none;
}

.is-style-midashi01::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #3498db;
}

/* 見出し02 */
.is-style-midashi02 {
  position: relative;
  padding-left: 5px;
  line-height: 1.3em;
  border-left: 5px solid #30b1e0;
  /*
  font-family: 'NewRodinPro-DB', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif!important;
  font-feature-settings: 'palt';
  font-weight: 200;
  */
}

/* 見出し03 */
.is-style-midashi03 {
  line-height: 1.3em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #2380c2;
  /*
  font-family: 'NewRodinPro-DB', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif!important;
  */
}

/* 見出し04 */
.is-style-midashi04 {
  line-height: 1.3em;
  padding-bottom: 0.5em;
  border-bottom: dotted 1px #2380c2;
  /*
  font-family: 'NewRodinPro-DB', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif!important;
  */
}

/* 見出し05 */
.is-style-midashi05 {
  line-height: 2.4em;
  padding: 0 1em;
  border-radius: 1.2em 0 0 1.2em;
  position: relative;
  box-sizing: border-box;
  color: #ffffff!important;
  background: rgb(0,140,190);
  background: linear-gradient(90deg, rgba(0,140,190,1) 0%, rgba(0,140,190,0) 100%);
}

/* リストマーク
-------------------------------------------------------------- */

/* リストマーク：三角マーク */
.is-style-mdlist01 {
  padding: 0px;
  padding-left: 0px!important;
  margin: 0px;
  list-style: none;
}
.is-style-mdlist01 > li {
  position: relative;
  padding: 0px 0px 0px 1em;
  list-style: none;
}
.is-style-mdlist01 > li::before{
  position: absolute;
  top: 0.5em;
  left: 0px;
  width: 0px;
  height: 0px;
  border: 0.3em solid transparent;
  border-left: 0.4em solid #777777;
  content: "";
}

/* リストマーク：※印マーク */
ul.is-style-mdlist02 {
  padding: 0px;
  padding-left: 0px!important;
  margin: 0 0 10px 0;
  list-style: none;
}
ul.is-style-mdlist02 > li {
  position: relative;
  margin:0 0 0 0;
  list-style-type: none;
  text-indent: 0;
  padding-left: 1.2em;
}
ul.is-style-mdlist02 > li::before{
  position: absolute;
  display: inline;
  content: "※";
  top: 0;
  left: 0;
}

/* リストスタイル ：※番号 */
ol.is-style-mdlist02{
  padding:0;
  padding-left: 0px!important;
  counter-reset: number;
  list-style: none;
}
ol.is-style-mdlist02 li{
  position: relative;
  margin:0 0 0 0;
  padding:0;
  padding-left: 2em;
  text-indent: 0;
}
ol.is-style-mdlist02 li:before {
  position: absolute;
  display: inline;
  counter-increment: number;
  content: "※"counter(number)" ";
  top: 0;
  left: 0;
}

/* リストマーク：帯リスト */
.is-style-mdlist03 {
  padding: 0px;
  padding-left: 0px!important;
  margin: 0px;
  list-style: none;
}
.is-style-mdlist03 > li {
  margin:0 0 0.5em 0;
  list-style-type: none;
  padding: 0.5em;
  background: #eeeeee;
}
/* リストマーク：説明リストタイプ */
.is-style-mdlist04 {
  padding: 0px;
  padding-left: 0px!important;
  margin: 0px;
  list-style: none;
  display:flex;
  flex-wrap: wrap;
  border-collapse: collapse;
  width: 100%;
}
.is-style-mdlist04 > li{
  margin:0;
  padding: 0.5em;
  list-style-type: none;
  box-sizing: border-box;
  border:solid 1px #ffffff;
}
.is-style-mdlist04 > li:nth-child(odd) {
  background: #eeeeee;
  width: 30%;
}
.is-style-mdlist04 > li:nth-child(even) {
  background: #f5f5f5;
  width: 70%;
}
@media only screen and (max-width:991px){
  .is-style-mdlist04 > li:nth-child(odd) {
    width: 100%;
  }
  .is-style-mdlist04 > li:nth-child(even) {
    width: 100%;
  }
}

/* 画像
-------------------------------------------------------------- */

/* 画像下マージンクリア */
figure{
  margin-bottom: 0;
}

/* 画像：正方形 */
.is-style-mdimg01{
  /*width: 100%;*/
  position: relative;
}
.is-style-mdimg01::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.is-style-mdimg01 img{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.conlsitimg.is-style-mdimg01 img{
  object-fit: contain;
  font-family: 'object-fit: contain;';
}
/* 画像：正方形（エディター） */
.is-style-mdimg01 .components-resizable-box__container{
  display: block;
  position: relative;
}
.is-style-mdimg01 .components-resizable-box__container::before {
  content: "";
  width: auto;
  display: block;
  padding-top: 100%;
  margin-top: -100%;
}
.is-style-mdimg01 .components-resizable-box__container img{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.conlsitimg .is-style-mdimg01 .components-resizable-box__container img{
  object-fit: contain;
  font-family: 'object-fit: contain;';
}
.wp-block-image.is-style-mdimg01>figcaption.block-editor-rich-text__editable{
  display: block;
  width: 100%;
}

/* 画像：固定横長70 */
.is-style-mdimg02 {
  width: 100%;
  position: relative;
}
.is-style-mdimg02::before {
  content: "";
  display: block;
  padding-top: 70%;
}
.is-style-mdimg02 img{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

/* 画像：固定横長70（エディター） */
.is-style-mdimg02,
.is-style-mdimg02 .components-resizable-box__container {
  display: block;
  position: relative;
}
.is-style-mdimg02 .components-resizable-box__container::before {
  content: "";
  width: auto;
  display: block;
  padding-top: 70%;
  margin-top: -70%;
}
.is-style-mdimg02 .components-resizable-box__container img{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.wp-block-image.is-style-mdimg02>figcaption.block-editor-rich-text__editable{
  display: block;
  width: 100%;
}

/* 画像：固定横長50 */
.is-style-mdimg03 {
  width: 100%;
  position: relative;
}
.is-style-mdimg03::before {
  content: "";
  display: block;
  padding-top: 50%;
}
.is-style-mdimg03 img{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}
/* 画像：固定横長35（エディター） */
.is-style-mdimg03,
.is-style-mdimg03 .components-resizable-box__container {
  display: block;
  position: relative;
}
.is-style-mdimg03 .components-resizable-box__container::before {
  content: "";
  width: auto;
  display: block;
  padding-top: 50%;
  margin-top: -50%;
}
.is-style-mdimg03 .components-resizable-box__container img{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}
.wp-block-image.is-style-mdimg03>figcaption.block-editor-rich-text__editable{
  display: block;
  width: 100%;
}

/* 画像：固定横長35 */
.is-style-mdimg04 {
  width: 100%;
  position: relative;
}
.is-style-mdimg04::before {
  content: "";
  display: block;
  padding-top: 35%;
}
.is-style-mdimg04 img{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

/* 画像：固定横長35（エディター） */
.is-style-mdimg04,
.is-style-mdimg04 .components-resizable-box__container {
  display: block;
  position: relative;
}
.is-style-mdimg04 .components-resizable-box__container::before {
  content: "";
  width: auto;
  display: block;
  padding-top: 35%;
  margin-top: -35%;
}
.is-style-mdimg04 .components-resizable-box__container img{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}
.wp-block-image.is-style-mdimg04>figcaption.block-editor-rich-text__editable{
  display: block;
  width: 100%;
}

/* 画像：固定横長35-60 */
.is-style-mdimg05 {
  width: 100%;
  position: relative;
}
.is-style-mdimg05::before {
  content: "";
  display: block;
  padding-top: 35%;
}
@media only screen and (max-width:767px){
  .is-style-mdimg05::before {
    padding-top: 60%;
  }
}
.is-style-mdimg05 img{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}

/* 画像：固定横長35-60（エディター） */
.is-style-mdimg05,
.is-style-mdimg05 .components-resizable-box__container {
  display: block;
  position: relative;
}
.is-style-mdimg05 .components-resizable-box__container::before {
  content: "";
  width: auto;
  display: block;
  padding-top: 35%;
  margin-top: -35%;
}
@media only screen and (max-width:767px){
  .is-style-mdimg05 .components-resizable-box__container::before {
    padding-top: 60%;
    margin-top: -60%;
  }
}
.is-style-mdimg05 .components-resizable-box__container img{
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left:0;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
}
.wp-block-image.is-style-mdimg05>figcaption.block-editor-rich-text__editable{
  display: block;
  width: 100%;
}

/* 基本・追加クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/* 画像基本設定 */
img{
  margin:0;
  padding:0;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

/* 画像キャプション */
figcaption{
  text-align: center;
  position: relative;
  z-index: 2;
  padding: 10px;
}

/* ノーイメージスタイル */
.noimg-text{
  position: relative;
}
/*
.noimg-text::after{
  content: 'No Image';
  position: absolute;
  display: block;
  color: #fff;
  font-size: 1.3em;
  top: 50%;
  left:50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  z-index: 2;
}
*/
/* ノーイメージスタイル（エディター） */
.block-editor-block-list__block.noimg-text{
  content: none;
  position: relative;
}
/*
.block-editor-block-list__block.noimg-text div::after{
  content: 'No Image';
  position: absolute;
  display: block;
  color: #fff;
  font-size: 1.3em;
  top: 50%;
  left:50%;
  transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  z-index: 2;
}
*/
/* 画像サイズ（サイズ指定） */
.myimgsize-30,
.wp-block-image.myimgsize-30 figure,
figure.wp-block-image.myimgsize-30{
  max-width: 30%;
}
.myimgsize-50,
.wp-block-image.myimgsize-50 figure,
figure.wp-block-image.myimgsize-50 {
  max-width: 50%;
}
.myimgsize-70,
.wp-block-image.myimgsize-70 figure,
figure.wp-block-image.myimgsize-70 {
  max-width: 70%;
}
.myimgsize-s,
.wp-block-image.myimgsize-s figure,
figure.wp-block-image.myimgsize-s {
  max-width: 200px;
}
.myimgsize-m,
.wp-block-image.myimgsize-m figure,
figure.wp-block-image.myimgsize-m{
  max-width: 400px;
}
.myimgsize-l,
.wp-block-image.myimgsize-l figure,
figure.wp-block-image.myimgsize-l{
  max-width: 600px;
}
@media only screen and (max-width:767px){
  .myimgsize-s,
  .wp-block-image.myimgsize-s figure,
  figure.wp-block-image.myimgsize-s{
    max-width: 50%;
  }
  .myimgsize-m,
  .wp-block-image.myimgsize-m figure,
  figure.wp-block-image.myimgsize-m{
    max-width: 70%;
  }
  .myimgsize-l,
  .wp-block-image.myimgsize-l figure,
  figure.wp-block-image.myimgsize-l{
    max-width: 90%;
  }
}

/* スペーサー
-------------------------------------------------------------- */

/* スペース：余白30-50 */
.is-style-mdspacer01{
  height: 30px!important;
}
/* スペース：余白15-25 */
.is-style-mdspacer02{
  height: 15px!important;
}
.is-style-mdspacer01 .components-resizable-box__container{
  height: auto!important;
  min-height: 30px!important;
}
.is-style-mdspacer02 .components-resizable-box__container{
  height: auto!important;
  min-height: 15px!important;
}
@media only screen and (min-width:768px){
  .is-style-mdspacer01{
    height: 40px!important;
  }
  .is-style-mdspacer02{
    height: 20px!important;
  }
  .is-style-mdspacer01 .components-resizable-box__container{
    min-height: 40px!important;
  }
  .is-style-mdspacer02 .components-resizable-box__container{
    min-height: 20px!important;
  }
}
@media only screen and (min-width:992px){  
  .is-style-mdspacer01{
    height: 50px!important;
  }
  .is-style-mdspacer02{
    height: 25px!important;
  }
  .is-style-mdspacer01 .components-resizable-box__container{
    min-height: 50px!important;
  }
  .is-style-mdspacer02 .components-resizable-box__container{
    min-height: 25px!important;
  }
}

/* カラム
-------------------------------------------------------------- */

/* 基本・追加クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

.wp-block-columns {
  gap:2em 2em;
}
.wp-block-columns.wrap-gap1 {
  gap:1em 2em;
}
.wp-block-columns.wrap-gap0 {
  gap:0 2em;
}

/* 逆読み：基本カラムにクラス付与 */
@media screen and (max-width: 781px) {
  .reverse-set{
    flex-wrap:wrap-reverse!important;
  }
}

/* カラム間隔調整：基本カラムにクラス付与 */
.wp-block-columns.culumn-space{
  margin-bottom: 0;
}
.wp-block-columns.culumn-space .wp-block-column{
  margin-bottom: 20px;
}


/* ==============================================================

=コンテンツ

============================================================== */


/* ==============================================================

=カラーパレット関連（mystyle/my-code.phpと連動）

============================================================== */

/* 基本カラー設定（mystyle/my-code.phpの「カラーパレット関連（基本カラー設定 ）」と合わせる） */
.has-black-color{color:#000;}
.has-black-background-color{background-color:#000;}
.has-dark-gray-color{color:#333;}
.has-dark-gray-background-color{background-color:#333;}
.has-medium-gray-color{color:#999;}
.has-medium-gray-background-color{background-color:#999;}
.has-light-gray-color{color:#d3d3d3;}
.has-light-gray-background-color{background-color:#d3d3d3;}
.has-ghost-white-color{color:#f8f8ff;}
.has-ghost-white-background-color{background-color:#f8f8ff;}
.has-white-color{color:#FFF;}
.has-white-background-color{background-color:#FFF;}
.has-mycola-color{color:#0a76b9;}
.has-mycola-background-color{background-color:#0a76b9;}
.has-mycolb-color{color:#ff0000;}
.has-mycolb-background-color{background-color:#ff0000;}
.has-mycolc-color{color:#0000ff;}
.has-mycolc-background-color{background-color:#0000ff;}
.has-mycold-color{color:#0693e3;}
.has-mycold-background-color{background-color:#0693e3;}
.has-mycole-color{color:#008000;}
.has-mycole-background-color{background-color:#008000;}
.has-mycolf-color{color:#00d084;}
.has-mycolf-background-color{background-color:#00d084;}

/* サイトカラー設定（mystyle/my-code.phpの「カラーパレット関連（サイトカラー設定 ）」と合わせる） */
.has-sitecola-color{color:#bbaaa4;}
.has-sitecola-background-color{background-color:#bbaaa4;}
.has-sitecolb-color{color:#a08980;}
.has-sitecolb-background-color{background-color:#a08980;}
.has-sitecolc-color{color:#85685b;}
.has-sitecolc-background-color{background-color:#85685b;}
.has-sitecold-color{color:#6d4f43;}
.has-sitecold-background-color{background-color:#6d4f43;}
.has-sitecole-color{color:#4f352c;}
.has-sitecole-background-color{background-color:#4f352c;}
.has-sitecolf-color{color:#32221c;}
.has-sitecolf-background-color{background-color:#32221c;}
