@charset "UTF-8";

/* headerより移行 */

.lineh_10{line-height:1}
.lineh_10::before{display:block;width:0;height:0;margin-top:calc((1 - 1)*.5em);content:""}
.lineh_10::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1)*.5em);content:""}
.lineh_12{line-height:1.25}
.lineh_12::before{display:block;width:0;height:0;margin-top:calc((1 - 1.25)*.5em);content:""}
.lineh_12::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.25)*.5em);content:""}
.lineh_14{line-height:1.414}
.lineh_14::before{display:block;width:0;height:0;margin-top:calc((1 - 1.414)*.5em);content:""}
.lineh_14::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.414)*.5em);content:""}
.lineh_16{line-height:1.618}
.lineh_16::before{display:block;width:0;height:0;margin-top:calc((1 - 1.618)*.5em);content:""}
.lineh_16::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.618)*.5em);content:""}
.lineh_18{line-height:1.8}
.lineh_18::before{display:block;width:0;height:0;margin-top:calc((1 - 1.8)*.5em);content:""}
.lineh_18::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.8)*.5em);content:""}
.lineh_22{line-height:2.236}
.lineh_22::before{display:block;width:0;height:0;margin-top:calc((1 - 2.236)*.5em);content:""}
.lineh_22::after{display:block;width:0;height:0;margin-bottom:calc((1 - 2.236)*.5em);content:""}

html{font-family: 'Montserrat', 'Noto Sans JP', sans-serif}
@media screen and (min-width: 920px){
  html{font-size:16px}}
  body{height:100%;font-style:normal;line-height:1.414;color:#151515;background:#fff;overflow-x:hidden;-ms-word-wrap:break-word;word-wrap:break-word;-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:unset;font-variant-ligatures:no-common-ligatures}body main,body aside,body footer,body .breadcrumb,body .mailmagazine,body .the_post,body .footer_brcmb{transition:filter .48s cubic-bezier(0.79, 0.21, 0.06, 0.81)}body.smooth::after{content:"";display:block;background:url(https://shinko-jp.com/column/wp-content/themes/br-labo/images/logo.svg) 50% 50% no-repeat;width:64vw;max-width:400px;aspect-ratio:5.87/1;position:fixed;top:50%;left:50%;z-index:100;transform:translate(-50%, -50%) scale(0);animation:smoothBlink 2s ease-in-out forwards;filter:blur(1px) opacity(0)}
  body.smooth main,body.smooth aside,body.smooth footer,body.smooth .breadcrumb,body.smooth .mailmagazine,body.smooth .the_post,body.smooth .footer_brcmb{position:relative;z-index:1;filter:blur(3px) opacity(0.03);transition:filter 160ms}
  
  @keyframes smoothBlink{0%{transform:translate(-50%, -50%) scale(0);filter:blur(1px) opacity(0)}25%{transform:translate(-50%, -50%) scale(1);filter:blur(0px) opacity(1)}100%{transform:translate(-50%, -50%) scale(0);filter:blur(1px) opacity(0)}}
  @media only screen and (-webkit-min-device-pixel-ratio: 2),(-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}h1,h2,h3,h4,h5,h6{font-weight:700;font-feature-settings:"palt"}h1.post_title{font-size:clamp(22px,1.278rem + .757vw,24px);line-height:1.414}h1.post_title::before{display:block;width:0;height:0;margin-top:calc((1 - 1.414)*.5em);content:""}
  h1.post_title::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.414)*.5em);content:""}.post_main_content h2{font-size:clamp(19px,1.172rem + .378vw,22px);line-height:1.414;color:#004021}.post_main_content h3{font-size:clamp(18px,1.075rem + .25vw,20px);line-height:1.414;color:#004021}.post_main_content h4{font-size:clamp(16px,1.035rem + .126vw,17px);line-height:1.414;color:#004021}.post_main_content h5,.post_main_content h6{line-height:1.414}.post_main_content h5::before,.post_main_content h6::before{display:block;width:0;height:0;margin-top:calc((1 - 1.414)*.5em);content:""}.post_main_content h5::after,.post_main_content h6::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.414)*.5em);content:""}a,#copy_url{color:inherit;transition:filter .24s cubic-bezier(0.25, 0.46, 0.45, 0.94),color .24s cubic-bezier(0.25, 0.46, 0.45, 0.94);cursor:pointer}a:hover,#copy_url:hover{text-decoration:none;opacity: 0.7;transition: 0.5s;}.post_main_content a{color: #00A867;text-underline-offset: 3px;text-decoration: underline;word-break:break-all}
  .post_main_content a:hover{opacity: 1;
    filter: brightness(0.7);text-decoration:none}
  .noHovUdl:hover{text-decoration:none}.inner{width:100%;padding-left:8px;padding-right:8px;margin:auto}
  @media screen and (min-width: 768px){.inner{max-width:800px;padding-left:16px;padding-right:16px}}
  @media screen and (min-width: 920px){.inner{max-width:1120px;padding-left:24px;padding-right:24px}}
  @media screen and (min-width: 1200px){.inner{max-width:1168px;padding-left:0px;padding-right:0px}}.s_box{background:rgba(255,255,255,0);height:100%;padding-left:0px;box-shadow:0px 0px 0px 0px rgba(0,0,0,0);transition:.24s cubic-bezier(0.25, 0.46, 0.45, 0.94)}
  .s_box::before{content:"";display:block;width:16px;height:20px;position:absolute;z-index:2;background: url(https://shinko-jp.com/column/wp-content/themes/br-labo/images/icon_search.svg) 50% 50% no-repeat;background-size:contain;left:8px;transition:.48s cubic-bezier(0.79, 0.21, 0.06, 0.81)}
  .s_box .s_form{-webkit-appearance:none;
    -moz-appearance:none;appearance:none;
    position:relative;
    z-index:1;
    font-size:14px;
    padding:4px 16px 4px 32px;
    border-radius:24px;
    /* border:1px solid #1c1c1c; */
    border:none;
    background-color: #fff;
    color: #222;
    width:96px;
    height:34px;transition:width .48s cubic-bezier(0.79, 0.21, 0.06, 0.81),
    padding .48s cubic-bezier(0.79, 0.21, 0.06, 0.81)}
    .s_box .s_form:focus {
    background-color: #d0ebcd;
}

  .s_box .s_form::-moz-placeholder{color:#aaa;opacity:0}
  .s_box .s_form::placeholder{color:#aaa;opacity:0}
  .s_box .s_btn{position:absolute;right:0px;z-index:2;width:0px;height:32px;margin-top:-3px;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg, #41C92D, #45B035);border-radius:0 24px 24px 0;box-shadow:0px 2px 0px 0px #1b880a;opacity:0}
  .s_box .s_btn:hover{filter:brightness(0.7)}
  .s_box .s_btn:active{margin-top:2px;box-shadow:0px -2px 0px 0px #1b880a}
  .s_box .s_btn .icon_search{width:20px;height:20px;background:url(https://shinko-jp.com/column/wp-content/themes/br-labo/images/icon_search_w.svg) 50% 50% no-repeat;background-size:contain}
  .shinko_header{background:#45b035}
  .shinko_header .inner{height:32px}header{background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);position:sticky;width:100%;top:0px;z-index:1000;height:auto}header .percent_bar{background:#ffb400;height:2px;position:absolute;bottom:0px;z-index:2}header .upper{height:100%;position:relative;z-index:2;box-shadow:0px 1px 4px -2px rgba(0,0,0,.24)}header .upper::after{content:"";position:absolute;width:100%;height:2px;left:0;bottom:0;background-color:#45b035}header .upper .inner{height:100%;overflow:hidden;position:relative}header .upper .inner .home_icon{position:relative;opacity:1;transition:.24s cubic-bezier(0.25, 0.46, 0.45, 0.94)}header .upper .inner .home_icon::before{content:none}header .upper .inner .home_icon::after{content:none}header .upper .inner .indicator{position:absolute;width:calc(100% - 120px);overflow:hidden;font-size:14px;top:100%;transform:translateY(0%);opacity:0;transition:.24s cubic-bezier(0.25, 0.46, 0.45, 0.94)}header .upper .inner .indicator span{display:block;word-break:keep-all;width:-moz-max-content;width:max-content;position:relative}header .upper .inner .header_s_box{position:absolute;right:8px}header .lower{background-color:#45b035;box-shadow:0px 0px 0px 0px rgba(0,0,0,.1) inset;padding:0 0;position:relative;z-index:1;overflow:hidden;height:0;transition:.48s cubic-bezier(0.79, 0.21, 0.06, 0.81)}header .lower .recom_tags{width:-moz-fit-content;width:fit-content;margin:0 auto}header .lower .recom_tags li{display:inline-block;font-size:13px}header .lower .recom_tags li:not(:last-child){margin-right:1em;margin-bottom:1em}header .lower .recom_tags li a{color:#45b035}
  @media screen and (max-width: 374px){header .upper .inner .home_icon img{width:184px}header .upper .inner .header_s_box .header_s_form{width:40px}}
  @media screen and (min-width: 768px){header{height:80px}header .upper{height:100%}header .upper .inner .home_icon img{width:min(32vw,312px)}header .upper .inner .home_icon::before{content:"";display:block;position:absolute;background:url(https://shinko-jp.com/column/wp-content/themes/br-labo/images/director_ikuta.svg) 50% 50% no-repeat;width:40px;height:40px;top:50%;right:-7px;transform:translate(100%, -50%)}header .upper .inner .home_icon::after{content:"";display:block;position:absolute;background:url(https://shinko-jp.com/column/wp-content/themes/br-labo/images/staff_george.svg) 50% 50% no-repeat;width:40px;height:40px;top:50%;right:0;transform:translate(210%, -50%)}header .upper .inner .indicator{width:calc(100% - 248px);font-size:18px}header .upper .inner .header_s_box{position:relative;right:0px}header .upper .inner .header_s_box .header_s_form{width:200px}header .upper .inner .header_s_box .header_s_form::-moz-placeholder{opacity:1}header .upper .inner .header_s_box .header_s_form::placeholder{opacity:1}header .lower .recom_tags li{font-size:14px}}
  @media screen and (min-width: 920px){header .upper .inner .header_s_box::before{left:10px}header .upper .inner .header_s_box .header_s_form{height:40px;padding:10px 16px 10px 32px}header .upper .inner .header_s_box .header_s_btn{height:38px}header .lower .recom_tags li{font-size:14px}}header.ts_active{background:#fff}header.ts_active .upper .header_s_box{background:#fff;padding-left:8px;box-shadow:-3px 0px 4px -3px rgba(0,0,0,.4)}header.ts_active .upper .header_s_box::before{opacity:0}header.ts_active .upper .header_s_box .header_s_form{width:calc(64vw - 48px);padding:4px 16px 4px 16px;margin-right:48px;border-radius:24px 0px 0px 24px;transition:width .48s cubic-bezier(0.79, 0.21, 0.06, 0.81),padding .48s cubic-bezier(0.79, 0.21, 0.06, 0.81),margin-right .48s cubic-bezier(0.79, 0.21, 0.06, 0.81),border-radius .48s cubic-bezier(0.79, 0.21, 0.06, 0.81)}header.ts_active .upper .header_s_box .header_s_btn{width:48px;opacity:1}
  @media screen and (min-width: 768px){header.ts_active .upper .header_s_box{box-shadow:none;padding-left:16px;background:none;background-image:linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 16px)}header.ts_active .upper .header_s_box .header_s_form{width:min(50vw - 80px,424px);margin-right:64px}header.ts_active .upper .header_s_box .header_s_btn{width:64px}}header.ts_active .lower{background-color:#f5f5f5;box-shadow:0px -2px 3px -2px rgba(0,0,0,.1) inset;padding:16px 0;height:-moz-fit-content;height:fit-content}header.post_header.alternative .upper .inner .home_icon{opacity:0;z-index:-1}header.post_header.alternative .upper .inner .home_icon::before{content:none}header.post_header.alternative .upper .inner .home_icon::after{content:none}header.post_header.alternative .upper .inner .indicator{top:50%;transform:translateY(-50%);opacity:1}
  @media screen and (min-width: 768px){header.post_header.alternative .upper .inner .home_icon{opacity:1;transform:translateY(-75%)}header.post_header.alternative .upper .inner .home_icon img{width:96px}header.post_header.alternative .upper .inner .indicator{top:50%;transform:translateY(-25%);opacity:1}}.breadcrumb{position:relative}.breadcrumb::after{content:"";display:block;width:2em;height:100%;position:absolute;top:0;right:0;background-image:linear-gradient(to left, #fff, transparent);z-index:1}.breadcrumb .inner{overflow-x:auto}
  .breadcrumb .inner ul{padding:16px 0 16px 0;width:-moz-max-content;width:max-content}.breadcrumb .inner ul li{margin-right:1em;font-size:.8rem;position:relative;display:flex;align-items:center}.breadcrumb .inner ul li a{color:#00A867}
  .breadcrumb .inner ul li:not(:first-child):before{content:"";display:block;font-size:.8rem;border-left:.87em solid #ffb400;border-top:.5em solid rgba(0,0,0,0);border-bottom:.5em solid rgba(0,0,0,0);height:0;width:0;margin-right:1em}
  @media screen and (min-width: 920px){.breadcrumb .inner{overflow-x:hidden}}.banner_box.top_banner{width:min(100%,1168px);margin:8px auto 24px}.banner_box.top_banner a{padding:8px;border:1px solid;width:calc(100% - 16px);max-width:-moz-max-content;max-width:max-content;margin:auto}
  @media screen and (min-width: 920px){.banner_box.top_banner{margin:24px auto 40px}}.the_page_content{margin-bottom:40px}.the_post{background-color:#fff;margin-top: 40px;}.the_post .post_wrap{display:grid;gap:80px}@media screen and (min-width: 768px){.the_post .post_wrap{margin-left:auto;margin-right:auto;max-width:768px}}@media screen and (min-width: 920px){.the_post .post_wrap{width:100%;max-width:1168px;padding:0;grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,48px)}}@media screen and (min-width: 1200px){.the_post .post_wrap{gap:48px}}

  .the_post .post_wrap:not(.layout-two-column) > .post_body{order:1;width:350px;min-height:100dvh;margin: 0 auto}
  @media screen and (min-width: 768px){.the_post .post_wrap:not(.layout-two-column) > .post_body{width:700px;}}

  @media screen and (min-width: 920px){.the_post .post_wrap:not(.layout-two-column) > .post_body{width:clamp(580px,60vw,800px);padding-left: 20px;}}.post_body .post_title{font-weight:700;margin:0 auto 1em;}

  @media screen and (min-width: 920px){.post_body .post_title{margin-right:0;width:100%}}
  @media screen and (min-width: 1200px){.post_body .post_title{width:100%}}.post_body .post_thumb{margin-bottom:16px}
  .post_body .post_thumb img
  {    width: 100%
    700px;
    -o-object-fit: scale-down;
    object-fit: scale-down;
    height: 233px;}
  @media screen and (min-width: 920px){.post_body .post_thumb{margin-bottom:32px}}.post_body .post_data{margin:0 auto 1em;width:calc(100% - 32px)}.post_body .post_data .data_l{flex:auto;border-bottom:1px solid #151515;padding-right:1em;margin-bottom:1em;font-size:12px;line-height:24px}.post_body .post_data .data_l .writer{margin-left:1em}.post_body .post_data .data_r{margin-bottom:1em;margin-left:auto;font-size:11px;line-height:28px;width:100%}.post_body .post_data .data_r .tags{width:-moz-max-content;width:max-content;display:flex}.post_body .post_data .data_r .tags .hashtag:not(:last-child){margin-right:.5em}.post_body .post_data .data_r .tags .hashtag a{padding:6px 10px 6px 6px;border-radius:20px;color:#757575;border:1px solid #757575;font-size:12px;font-weight:700}
  @media screen and (min-width: 768px){.post_body .post_data{margin-bottom:24px}.post_body .post_data .data_l{font-size:13px}.post_body .post_data .data_r{font-size:13px;width:auto}}
  @media screen and (min-width: 920px){
  .post_body .post_data{margin-right:0;width:100%;margin-bottom:40px}
  .post_body .post_data .data_l{font-size:15px}
  .post_body .post_data .data_r{font-size:15px}
  .post_body .post_data .data_r .tags .hashtag a{
    padding:8px 12px 8px 8px;
  }
  .post_body .post_data .data_r .tags .hashtag a:hover{
    background-color: #e8f5e6;
  }

}
@media screen and (min-width: 1200px){
  .post_body .post_data{width:100%}}.post_body .inner{padding-left:16px;padding-right:16px}.post_body .inner .excerpt_box{margin-bottom:32px;position:relative}.post_body .inner .excerpt_box::before{content:"";display:block;position:absolute;width:3px;height:calc(100% - 2em);background-color:#ffb400;top:2.4em;left:.5em}.post_body .inner .excerpt_box .ex_head{font-size:clamp(18px,1.834vw,22px);font-weight:700;font-feature-settings:"palt"}.post_body .inner .excerpt_box .excerpt{font-size:clamp(15px,1.416vw,17px);padding:1.414em 0 0 1.8em;line-height:1.8}.post_body .inner .post_flex{flex-direction:column;align-items:center;justify-content:center;margin-bottom:40px}.post_body .inner .post_flex .post_main_content{margin-bottom:40px}.post_body .inner .post_flex .post_bottom_box{margin-bottom:32px;width:100%}.post_body .inner .post_flex .sns_box{background:#f5f5f5;border-radius:8px}.post_body .inner .post_flex .sns_box .share_btns{background:#fff;border-radius:8px;filter:drop-shadow(0px 0px 1px rgba(0, 0, 0, 0.16))}@media screen and (min-width: 768px){.post_body .inner .excerpt_box{margin-bottom:40px}.post_body .inner .excerpt_box::before{left:32px;width:4px;top:3em}.post_body .inner .excerpt_box .excerpt{padding:32px 0 0 56px}.post_body .inner .post_flex{flex-direction:row;align-items:stretch;justify-content:space-between}.post_body .inner .post_flex .post_main_content{margin-bottom:40px;order:2;width:calc(100% - 104px)}.post_body .inner .post_flex .post_bottom_box{margin-bottom:0px;order:3}.post_body .inner .post_flex .sns_box{order:1;width:64px;background:#fafafa;position:relative;margin-bottom:40px}.post_body .inner .post_flex .sns_box .share_btns{position:sticky;top:calc(50vh - 160px)}}@media screen and (min-width: 920px){.post_body .inner{padding-right:0}.post_body .inner .excerpt_box{padding-right:24px;margin-bottom:64px}}.post_main_content a{color:#00A867;}.breadcrumb .inner ul li a{color:#00A867}.breadcrumb .inner ul li a:hover{filter: brightness(0.7);opacity: 1;}.post_body .inner .excerpt_box .excerpt a{color:#00A867;text-underline-offset:3px;text-decoration:underline}.post_body .inner .excerpt_box .excerpt a:hover{filter: brightness(0.7);opacity: 1;text-decoration:none}/*# sourceMappingURL=firstview.min.css.map */


/*変数で管理*/
.lineh_10 {
  line-height: 1;
}
.lineh_10::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1) * 0.5em);
  content: "";
}
.lineh_10::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1) * 0.5em);
  content: "";
}

.lineh_12 {
  line-height: 1.25;
}
.lineh_12::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.25) * 0.5em);
  content: "";
}
.lineh_12::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.25) * 0.5em);
  content: "";
}

.lineh_14 {
  line-height: 1.414;
}
.lineh_14::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.414) * 0.5em);
  content: "";
}
.lineh_14::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.414) * 0.5em);
  content: "";
}

.lineh_16 {
  line-height: 1.618;
}
.lineh_16::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.618) * 0.5em);
  content: "";
}
.lineh_16::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.618) * 0.5em);
  content: "";
}

.lineh_18 {
  line-height: 1.8;
}
.lineh_18::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.8) * 0.5em);
  content: "";
}
.lineh_18::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.8) * 0.5em);
  content: "";
}

.lineh_22 {
  line-height: 2.236;
}
.lineh_22::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2.236) * 0.5em);
  content: "";
}
.lineh_22::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 2.236) * 0.5em);
  content: "";
}

/*ブレイクポイントの設定*/
/*
headerを含むファーストビュー領域用のスタイルを
firstview.scss→firstview.min.cssでheadに直書き
*/
.btn__d {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #FFFFFF;
  text-align: center;
  letter-spacing: 0.3px;
  background-color: #44af35;
  width: 200px;
  border-radius: 8px;
  position: relative;
  margin: 40px auto 0;
  transition: 0.7s;
  line-height: 49px;
  height: 49px;
}

.btn__d:hover {
  color: #FFFFFF;
  opacity: 1;
  filter: brightness(0.7);
}

.btn__d div {
  display: flex;
  justify-content: center;
  gap: 10px;
}

.btn__d img {
  width: 16px;
}

@media (min-width: 920px) {
  .btn__d {
    max-width: 320px;
    margin: 24px auto 0;
  }
}
/*目次のスタイル*/
#toc {
  background: #FAFAFA;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16) inset;
  border-radius: 8px;
  padding: 24px 20px;
}
#toc .toc_heading {
  display: flex;
  align-items: center;
  font-size: 15px;
}
#toc .toc_heading i {
  display: block;
  width: 4px;
  height: 1.5em;
  background-color: #ffb400;
  margin-right: 0.5em;
}
#toc ol {
  margin: 0;
  padding: 1.618em 0 0em 1em;
  counter-reset: number 0;
}
#toc ol li {
  counter-increment: number 1;
  font-size: 14px;
  margin-left: 0;
  line-height: 1;
  display: inline;
  background-image: linear-gradient(180deg, transparent 50%, #fff 50%);
}
#toc ol li::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1) * 0.5em);
  content: "";
}
#toc ol li::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1) * 0.5em);
  content: "";
}
#toc ol li:not(:last-child) {
  margin-bottom: 0.5em;
}
#toc ol li::after {
  margin-bottom: 0.618em;
}
#toc ol li:hover {
  text-decoration: none;
}
/* #toc ol li a {
  color: #151515;
  text-decoration: none;
  padding-right: 1em;
} */
#toc ol li a::before {
  content: counter(number) ". ";
  color: #00A867;
  font-weight: 700;
}
#toc ol li a:hover {
  color: #00A867;
  filter: brightness(0.7);
  opacity: 1;
}
@media screen and (min-width: 768px) {
  #toc {
    padding: 32px 48px 24px;
  }
  #toc ol li {
    font-size: 15px;
  }
}
@media screen and (min-width: 920px) {
  #toc {
    padding: 32px 32px 24px;
    border-radius: 16px;
  }
  #toc .toc_heading {
    font-size: 16px;
  }
  #toc ol li {
    font-size: 15px;
  }
}

/*SNSシェアボタン*/
.sns_box .share_btns ul li {
  position: relative;
  width: 20%;
  padding: 8px 4px;
  margin: 0 4px;
}
.sns_box .share_btns ul li a, .sns_box .share_btns ul li span {
  display: block;
  padding: 8px;
  position: relative;
}
.sns_box .share_btns ul li a::before, .sns_box .share_btns ul li span::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-image: radial-gradient(#ededed 50%, #ffffff);
  top: 0;
  left: 0;
  border-radius: 100%;
}
.sns_box .share_btns ul li a img, .sns_box .share_btns ul li span img {
  position: relative;
  z-index: 2;
  width: 7vw;
  max-width: 40px;
  aspect-ratio: 1/1;
}
.sns_box .share_btns ul li a:hover::before, .sns_box .share_btns ul li span:hover::before {
  box-shadow: 0px 0px 6px -4px rgba(0, 0, 0, 0.5) inset;
}
.sns_box .share_btns .success_msg {
  display: none;
  position: absolute;
  width: -moz-max-content;
  width: max-content;
  top: -2em;
  right: 8px;
  background: #fff;
  padding: 4px;
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  .sns_box .share_btns ul {
    flex-direction: column;
  }
  .sns_box .share_btns ul li {
    width: 100%;
    margin: 0;
  }
  .sns_box .share_btns ul li a, .sns_box .share_btns ul li span {
    padding: 8px;
  }
  .sns_box .share_btns ul li a::before, .sns_box .share_btns ul li span::before {
    background-image: radial-gradient(#ededed 50%, #ffffff);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    width: 48px;
    height: 48px;
  }
  .sns_box .share_btns ul li a img, .sns_box .share_btns ul li span img {
    max-width: 32px;
    margin: auto;
  }
  .sns_box .share_btns .success_msg {
    top: 50%;
    right: 0;
    padding: 4px;
    font-size: 12px;
    z-index: 1;
    transform: translate(100%, -50%);
  }
}

/*記事の本文*/
#the_article h2 {
  margin-bottom: 1.618em;
  margin-top: 3em;
}
#the_article h2::before {
  content: "";
  display: block;
  height: 0 !important;
}
#the_article h2::after {
  content: "";
  width: calc(100% + 16px);
  height: 2px;
  background: #45B035;
  position: relative;
  z-index: 1;
  display: block;
  top: 0px;
}
#the_article h2 span {
  display: inline;
  background-color: #FFFFFF;
  position: relative;
  z-index: 2;
  padding-right: 0.3em;
}
#the_article h3 {
  margin-top: 3.5em;
  margin-bottom: 1.618em;
}
#the_article h3 span {
  display: inline-block;
  padding: 0.2em 0 0.1em 0;
  position: relative;
  z-index: 1;
}
#the_article h3 span::before {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 0.5em);
  height: 100%;
  border-right: 1px solid #45b035;
  border-bottom: 1px solid #45b035;
  right: -0.5em;
  bottom: -0.1em;
  z-index: -1;
}
#the_article h4 {
  margin-top: 3em;
  margin-bottom: 1em;
}
#the_article h4 span {
  display: inline;
  background: linear-gradient(180deg, transparent 0.618em, rgba(230, 237, 27, 0.4) 0.618em);
  padding: 0 0.4em 0 0.3em;
  padding-bottom: 2px;
  text-shadow: 1px 1px 0px #fff;
}
#the_article p {
  line-height: 1.8;
  margin-bottom: 1.618em;
  letter-spacing: 0.024em;
}
#the_article p::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.8) * 0.5em);
  content: "";
}
#the_article p::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.8) * 0.5em);
  content: "";
}
#the_article p.has-background {
  padding: 1.618em;
}
#the_article figure {
  margin-bottom: 2em;
}
#the_article figure img {
  border-radius: 16px;
}
#the_article figure .wp-element-caption {
  margin: 0.3em 0 0;
  text-align: right;
  font-size: 11px;
  opacity: 0.64;
}
#the_article .wp-block-gallery figure:first-of-type img {
  border-radius: 16px 0 0 16px;
}
#the_article .wp-block-gallery figure:first-of-type .wp-element-caption {
  border-radius: 0 0 0 16px;
}
#the_article .wp-block-gallery figure:last-of-type img {
  border-radius: 0 16px 16px 0;
}
#the_article .wp-block-gallery figure:last-of-type .wp-element-caption {
  border-radius: 0 0 16px 0;
}
#the_article ul {
  padding-left: 1.618em;
  margin-bottom: 2em;
}
#the_article ul li {
  list-style: square;
  margin-bottom: 0.414em;
}
#the_article ul li ul, #the_article ul li ol {
  padding-top: 0.414em;
  padding-left: 1.618em;
}
#the_article ol {
  padding-left: 1.618em;
  margin-bottom: 2em;
}
#the_article ol li {
  list-style: decimal;
  margin-bottom: 0.618em;
  letter-spacing: 0.024em;
}
#the_article ol li ol, #the_article ol li ul {
  padding-top: 0.414em;
  padding-left: 1.618em;
}
#the_article .wp-block-quote {
  background-image: linear-gradient(180deg, #FFFFFF 50%, #F5F5F5);
  box-shadow: 0px 0px 7px -3px rgba(0, 0, 0, 0.4) inset;
  padding: 24px 16px 8px;
  border-top: 1px solid #F5F5F5;
  margin-top: 3em;
  margin-bottom: 3em;
}
#the_article .wp-block-quote cite {
  display: flex;
  justify-content: flex-end;
  font-size: 12px;
  opacity: 0.64;
}
#the_article .wp-block-embed iframe {
  width: 100%;
}
@media screen and (min-width: 920px) {
  #the_article > *:not(h2) {
    max-width: calc(100% - 32px);
    margin-left: auto;
  }
}
#the_article .wp-block-media-text.talk_ikuta {
  gap: 16px;
  grid-template-columns: 64px 1fr !important;
  margin-top: 2em;
}
#the_article .wp-block-media-text.talk_ikuta figure {
  margin-bottom: 0;
  align-self: flex-start;
  grid-column: auto;
  grid-row: auto;
}
#the_article .wp-block-media-text.talk_ikuta figure img {
  width: 64px;
  height: auto;
  border-radius: 0;
}
#the_article .wp-block-media-text.talk_ikuta .wp-block-media-text__content {
  align-self: center;
  grid-column: auto;
  grid-row: auto;
  padding: 0;
  width: -moz-fit-content;
  width: fit-content;
}
#the_article .wp-block-media-text.talk_ikuta .wp-block-media-text__content p {
  margin: 0px auto;
  padding: 12px 12px 6px;
  position: relative;
  filter: drop-shadow(0px 0px 1px #c0c07f);
  background: #FFFFEC;
}
#the_article .wp-block-media-text.talk_ikuta .wp-block-media-text__content p::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  top: 50%;
  left: 0px;
  transform: translate(-100%, -50%);
  border: 8px solid transparent;
  border-right-color: #FFFFEC;
}
#the_article .wp-block-media-text.talk_ikuta .wp-block-media-text__content p + p {
  margin-top: 1em;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george {
  gap: 16px;
  grid-template-columns: 1fr 64px !important;
  margin-top: 2em;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george figure {
  margin-bottom: 0;
  align-self: flex-start;
  grid-column: auto;
  grid-row: auto;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george figure img {
  width: 64px;
  height: auto;
  border-radius: 0;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george .wp-block-media-text__content {
  align-self: center;
  justify-self: flex-end;
  grid-column: auto;
  grid-row: 1;
  padding: 0;
  width: -moz-fit-content;
  width: fit-content;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george .wp-block-media-text__content p {
  margin: 0px auto;
  padding: 12px 12px 6px;
  background: #ECF7EA;
  position: relative;
  filter: drop-shadow(0px 0px 1px #8bb684);
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george .wp-block-media-text__content p::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  top: 50%;
  right: 0px;
  transform: translate(100%, -50%);
  border: 8px solid transparent;
  border-left-color: #ECF7EA;
}
#the_article .wp-block-media-text.has-media-on-the-right.talk_george .wp-block-media-text__content p + p {
  margin-top: 1em;
}
/*文末のLPリンクBOXのスタイル .post_bottom_box*/
.post_bottom_box {
  padding: 0 4px 4px;
  border-radius: 8px;
}
.post_bottom_box h2 {
  letter-spacing: -0.02em;
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
  margin-inline: auto;
  padding: 0.8em;
  font-size: clamp(18px, 0.933rem + 0.8vw, 22px);
  color: #FFFFFF;
}
.post_bottom_box .lp_link_body {
  min-height: 200px;
  background: #FFFFFF;
  padding: 24px;
  border-radius: 0 0 6px 6px;
  container: lplb/inline-size;
}
.post_bottom_box .lp_link_body .flex_wrap img {
  width: 100%;
  max-width: 300px;
  height: auto;
  margin-bottom: 32px;
  box-shadow: 0px 0px 1px 0px #555;
}
.post_bottom_box .lp_link_body .flex_wrap div {
  width: 100%;
  max-width: 300px;
}
.post_bottom_box .lp_link_body .flex_wrap div p {
  margin-bottom: 2em;
}
.post_bottom_box .lp_link_body .flex_wrap div .to_lp_cta {
  display: block;
  margin: 0 auto;
  padding: 1.5em 2em;
  font-size: clamp(14px, 0.4rem + 1.6vw, 18px);
  border-radius: 8px;
  background-color: #45B035;
  color: #FFFFFF;
}
.post_bottom_box .lp_link_body .flex_wrap div .to_lp_cta span {
  position: relative;
}
.post_bottom_box .lp_link_body .flex_wrap div .to_lp_cta span::after {
  position: absolute;
  content: "";
  width: 1em;
  height: 1em;
  margin-left: 0.5em;
  margin-top: 2px;
  display: inline-block;
  vertical-align: middle;
  background: url(../images/icon_link.svg) 50% 50% no-repeat;
}
@container lplb (min-width:540px) {
  .post_bottom_box .lp_link_body .flex_wrap {
    justify-content: space-between;
  }
  .post_bottom_box .lp_link_body .flex_wrap img {
    width: 36%;
    max-width: none;
    margin-bottom: 0;
  }
  .post_bottom_box .lp_link_body .flex_wrap div {
    width: 58%;
    max-width: none;
  }
  .post_bottom_box .lp_link_body .flex_wrap div .to_lp_cta {
    padding: 0.8em 1em;
  }
}
@media screen and (min-width: 920px) {
.post_bottom_box .lp_link_body .flex_wrap div .to_lp_cta:hover {
  filter: brightness(0.7);
    opacity: 1;
}
}

/*選択なし*/
.pbb_none {
  display: none;
}

/*オフめしEAT&STOCK*/
.pbb_eat {
  background-image: linear-gradient(128deg, #ff9900, #ff9900);
}
.pbb_eat h2 {
  color: #FFFFFF;
}
.pbb_eat .lp_link_body {
  background: #FDF0E5;
}


/*オフめし*/
.pbb_ofm {
  background-image: linear-gradient(128deg, #ED7710, #E86E04);
}
.pbb_ofm h2 {
  color: #FFFFFF;
}
.pbb_ofm .lp_link_body {
  background: #FDF0E5;
}

/*ごちショウ*/
.pbb_gcs {
  background-image: linear-gradient(128deg, #a75050, #993333);
}
.pbb_gcs h2 {
  color: #FFFFFF;
}
.pbb_gcs .lp_link_body {
  background: #FDF0E5;
}
.pbb_gcs .lp_link_body .to_lp_cta {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
  box-shadow: 0px 3px 0px #10332F;
}

/*心幸サービス*/
.pbb_ssv {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
}
.pbb_ssv h2 {
  color: #FFFFFF;
}
.pbb_ssv .lp_link_body {
  background: #FFFFFF;
}
.pbb_ssv .lp_link_body .to_lp_cta {
  background-image: linear-gradient(135deg, #FFBE2B, #F6AB00);
  box-shadow: 0px 3px 0px #c28700;
}

/*心幸クリエイト*/
.pbb_scr {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
}
.pbb_scr h2 {
  color: #FFFFFF;
}
.pbb_scr .lp_link_body {
  background: #FFFFFF;
}
.pbb_scr .lp_link_body .to_lp_cta {
  background-image: linear-gradient(135deg, #FFBE2B, #F6AB00);
  box-shadow: 0px 3px 0px #c28700;
}

/*心幸ウェルネス*/
.pbb_swn {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
}
.pbb_swn h2 {
  color: #FFFFFF;
}
.pbb_swn .lp_link_body {
  background: #FFFFFF;
}

/*心幸ウェルネス*/
.pbb_sgr {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
}
.pbb_sgr h2 {
  color: #FFFFFF;
}
.pbb_sgr .lp_link_body {
  background: #FFFFFF;
}

/*ライター、関連、前後の記事*/
.post_footer .writer_info {
  margin-bottom: 40px;
  padding-top: 48px;
}
.post_footer .writer_info > div {
  position: relative;
  border-radius: 0 16px 16px 0;
  border: 2px solid #45B035;
  border-left: none;
  padding: 48px 24px 32px 32px;
}
.post_footer .writer_info > div h2 {
  position: absolute;
  font-size: clamp(12px, 0.674rem + 0.504vw, 16px);
  font-weight: 400;
  left: 0;
  top: 0;
  transform: translateY(-50%);
  width: -moz-max-content;
  width: max-content;
  background: #FFFFFF;
  padding: 0 16px 0 80px;
}
.post_footer .writer_info > div h2 div {
  position: absolute;
  top: -1.5em;
  width: -moz-max-content;
  width: max-content;
}
.post_footer .writer_info > div p {
  font-size: clamp(13px, 0.772rem + 0.378vw, 16px);
}
.post_footer .writer_info > div img {
  position: absolute;
  width: 64px;
  height: 64px;
  border-radius: 100%;
  border: 1px solid #45B035;
  top: 0;
  left: 0;
  transform: translateY(-50%);
}
.post_footer .related_posts {
  margin-bottom: 40px;
}
.post_footer .related_posts h2 {
  margin-bottom: 8px;
  font-size: clamp(14px, 0.807rem + 0.504vw, 18px);
}
.post_footer .related_posts ul .rp_post {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #D9D9D9;
  container: rp_post/inline-size;
}
.post_footer .related_posts ul .rp_post:not(:last-child) {
  margin-bottom: 24px;
}
.post_footer .related_posts ul .rp_post:hover {
  box-shadow: 0px 0px 4px -2px rgba(0, 0, 0, 0.64);
}
.post_footer .related_posts ul .rp_post a {
  color: #151515;
}
.post_footer .related_posts ul .rp_post a > div {
  width: 100%;
  order: 2;
  padding: 24px 10px;
}
.post_footer .related_posts ul .rp_post a > div .rp_date {
  font-size: 14px;
  margin-bottom: 8px;
  display: block;
  color: #757575;
  font-weight: normal;
}
.post_footer .related_posts ul .rp_post a > div .rp_title {
  font-size: clamp(16px, 1.004rem + 0.252vw, 18px);
  margin-bottom: 1em;
  padding: 0 1rem 0 0;
}
/* .post_footer .related_posts ul .rp_post a > div .rp_tags {
  text-align: right;
} */
.post_footer .related_posts ul .rp_post a > div .rp_tags .rp_tag {
  display: inline-block;
  padding: 4px 12px 4px 6px;
  border-radius: 16px;
  margin-top: 0.618em;
  margin-right: 0.618em;
  color: #757575;
  font-size: 12px;
  font-weight: 400;
  border: 1px solid #757575;
}
.post_footer .related_posts ul .rp_post a .rp_thumb {
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.post_footer .related_posts ul .rp_post a:hover {
  text-decoration: none;
}
/* .post_footer .related_posts ul .rp_post a:hover .rp_title {
  color: #45B035;
} */
@container rp_post (min-width: 448px) {
  .post_footer .related_posts ul .rp_post a > div {
    width: 67%;
    flex: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 16px 0 16px 16px;
  }
  .post_footer .related_posts ul .rp_post a > div .rp_date {
    margin-bottom: 0.5em;
  }
  .post_footer .related_posts ul .rp_post a > div .rp_tags {
    justify-self: self-end;
    display: inline;
  }
  .post_footer .related_posts ul .rp_post a .rp_thumb {
    width: 33%;
    max-width: 200px;
  }
}
.post_footer .prev_next_posts ul {
  width: 100%;
}
.post_footer .prev_next_posts ul li {
  width: min(360px, 50% - 16px);
}
.post_footer .prev_next_posts ul li a .pn_drn {
  font-size: clamp(12px, 0.737rem + 0.252vw, 14px);
}
.post_footer .prev_next_posts ul li a img {
  margin-bottom: 8px;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.post_footer .prev_next_posts ul li a p {
  font-size: clamp(12px, 0.705rem + 0.378vw, 15px);
  margin-bottom: 1em;
}
.post_footer .prev_next_posts ul li a .pn_tags {
  text-align: right;
}
.post_footer .prev_next_posts ul li a .pn_tags .pn_tag {
  display: inline-block;
  background: #45B035;
  padding: 4px 8px;
  border-radius: 16px;
  margin-top: 0.618em;
  margin-left: 1em;
  color: #FFFFFF;
  font-size: 11px;
}
.post_footer .prev_next_posts ul li.no_prevNext_text {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 13px;
  filter: contrast(0) opacity(0.24);
}
@media screen and (min-width: 920px) {
  .post_footer .writer_info {
    margin-bottom: 80px;
  }
  .post_footer .writer_info > div {
    padding: 48px 24px 48px 136px;
  }
  .post_footer .writer_info > div h2 {
    padding-left: 136px;
  }
  .post_footer .writer_info > div img {
    width: 120px;
    height: 120px;
  }
  .post_footer .related_posts {
    margin-bottom: 80px;
  }
  .post_footer .related_posts ul .rp_post:hover {
    box-shadow: 0 4px 13px 0px rgba(0, 0, 0, 0.1);
  }
}

/*サイドバー*/
.post_sidebar {
  order: 3;
  width: 100%;
  position: relative;
  display: grid;
  padding-right: 16px;
  padding-left: 16px;
  background: #FFFFFF;
  min-height: 100vh;
  margin: 0 auto;
}

.post_sidebar .side_menu_box h3 {
  font-size: 18px;
  margin-bottom: 24px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.post_sidebar .side_menu_box h3 img {
  margin-right: 0.5em;
}
.post_sidebar .side_menu_box .search {
  padding: 64px 0px;
}
.post_sidebar .side_menu_box .search .side_s_box {
  container: side_s_box/inline-size;
  max-width: 480px;
  margin: auto;
}
.post_sidebar .side_menu_box .search .side_s_box::before {
  content: none;
}
.post_sidebar .side_menu_box .search .side_s_box .side_s_form {
  width: 100%;
  height: 48px;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 24px;
  background: #FFFFFF;
}
.post_sidebar .side_menu_box .search .side_s_box .side_s_form::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.post_sidebar .side_menu_box .search .side_s_box .side_s_form::placeholder {
  color: #aaa;
  opacity: 1;
}
.post_sidebar .side_menu_box .search .side_s_box .side_s_btn {
  width: 64px;
  height: 46px;
  margin-top: -2px;
  opacity: 1;
}
.post_sidebar .side_menu_box .search .side_s_box .side_s_btn:active {
  margin-top: 2px;
}
.post_sidebar .side_menu_box .search .s_box::before {
  width: 24px;
  height: 24px;
  left: 12px;
}
/* .post_sidebar .side_menu_box .tag_search .tag_pool {
  padding: 8px 0 24px;
} */


.tag_search{
      padding-top: 40px;
    border-top: 1px #C9C9C9 solid;
}
.post_sidebar .side_menu_box .tag_search .tag_pool .ts_tags {
  text-align: left;
  margin-bottom: 24px;
}
.post_sidebar .side_menu_box .tag_search .tag_pool .ts_tags .ts_tag {
  display: inline-block;
  margin-bottom: 20px;
  margin-right: 0.5em;
}
.post_sidebar .side_menu_box .tag_search .tag_pool .ts_tags .ts_tag a {
  padding: 8px 16px 8px 13px;
  border-radius: 20px;
  color: #757575;
  font-size: 13px;
  border: 1px solid #757575;
}
.tag_pool {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .post_sidebar {
    width: 500px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 920px) {
  .post_sidebar .side_menu_box .tag_search .tag_pool .ts_tags .ts_tag a {
    font-weight: 400;
  }
  .post_sidebar .side_menu_box .tag_search .tag_pool .ts_tags .ts_tag a:hover {
    background-color: #e8f5e6;
    opacity: 1;
  }

}
/* .post_sidebar .side_menu_box .mailmagazine {
  display: none;
} */
.post_sidebar .side_menu_box .mailmagazine .on_sidebar {
  display: block;
}
.post_sidebar .side_menu_box .mailmagazine .on_main {
  display: none;
}
.post_sidebar .side_menu_box .dlc_banner {
  margin-bottom: 40px;
  container: dlc_banner/inline-size;
}
.post_sidebar .side_menu_box .dlc_banner .heading {
  margin-bottom: 1em;
}
.post_sidebar .side_menu_box .dlc_banner .flex_wrap {
  gap: 16px;
}
.post_sidebar .side_menu_box .dlc_banner .flex_wrap .to_archive {
  display: block;
}
.post_sidebar .side_menu_box .dlc_banner .flex_wrap .to_dlc {
  display: none;
}
@container dlc_banner (min-width: 321px) {
  .post_sidebar .side_menu_box .dlc_banner .flex_wrap .to_archive {
    display: none;
  }
  .post_sidebar .side_menu_box .dlc_banner .flex_wrap .to_dlc {
    width: calc(50% - 4px);
    display: block;
    box-shadow: 0px 2px 6px -3px rgba(0, 0, 0, 0.5);
  }
}
@container dlc_banner (min-width: 540px) {
  .post_sidebar .side_menu_box .dlc_banner .flex_wrap .to_dlc {
    width: calc(33% - 4px);
  }
}
@media screen and (min-width: 920px) {
  .post_sidebar {
    order: 2;
    width: 300px;
    padding-left: 0px;
  }

  /*サイドバー内のメルマガ*/
  .post_sidebar .side_menu_box .mailmagazine { 
    display: block;
    padding: 40px 0 0;
  }
  .post_sidebar .side_menu_box .mailmagazine h3 {
    color: #1c1c1c;
    margin: 0;
  }
  .post_sidebar .side_menu_box .mailmagazine .mm_box {
    width: 100%;
  }
  .post_sidebar .side_menu_box .mailmagazine .mm_box .mm_descr {
    display: none;
  }
  .post_sidebar .side_menu_box .mailmagazine .mm_box .form_box h4 {
    font-size: 16px;
  }
  .post_sidebar .side_menu_box .mailmagazine .mm_box .form_box .agreement {
    font-size: 13px;
  }
  .post_sidebar .side_menu_box .mailmagazine .mm_box .form_box .submit_btn input[type=submit] {
    font-size: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .post_sidebar {
    width: 300px;
    padding-right: 0px;
  }
}

/*人気の記事*/


.popular_posts {
  container: popular_posts/inline-size;
  min-height: -moz-fit-content;
  min-height: fit-content;
  padding-top: 40px;
  border-top: 1px #C9C9C9 solid;
}
.popular_posts ul {
  display: grid;
}
.popular_posts ul li {
  display: flex;
}
.popular_posts ul li:last-child {
  margin-bottom: 0;
}
.popular_posts ul li img {
  width: 120px;
  aspect-ratio: 3 / 2;
  -o-object-fit: cover;
     object-fit: cover;
}
.popular_posts ul li a {
  display: flex;
  margin-bottom: 20px;
}
.popular_posts ul li a .date{
  font-size: 12px;
  color: #757575;
}
.popular_posts ul li .pp_contents {
  margin-left: 10px;
}
.popular_posts ul li .pp_title {
  font-size: 13px;
  display: block;
  margin-top: 4px;
  letter-spacing: 0.5px;
}
.popular_posts ul li .pp_tags {
  text-align: right;
  height: clamp(34px, 5vw, 40px);
  overflow: hidden;
}
.popular_posts ul li .pp_tags .pp_tag {
  display: inline-block;
  background: #45b035;
  padding: 4px 10px 4px 6px;
  border-radius: 16px;
  margin-top: 0.618em;
  margin-left: 1em;
  color: #fff;
  font-size: clamp(12px, 0.737rem + 0.252vw, 14px);
}
@container popular_posts (min-width: 520px) {
  .popular_posts ul {
    gap: 3em 24px;
    grid-template-columns: 1fr 1fr;
  }
}
@container popular_posts (min-width: 888px) {
  .popular_posts ul {
    gap: 3em 24px;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media screen and (min-width: 920px) {
  @container popular_posts (max-width: 320px) {
    .popular_posts ul {
      min-height: -moz-fit-content;
      min-height: fit-content;
    }
  }
}


/*メルマガ登録BOX*/
.mailmagazine {
  order: 2;
  padding-top: 40px;
  border-top: 1px #C9C9C9 solid;
}
.mailmagazine .on_sidebar {
  display: block;
  color: white;
}
.mailmagazine .mm_box {
  container: mmbox/inline-size;
}
.mailmagazine .mm_box .flex_wrap {
  justify-content: center;
}
.mailmagazine .mm_box .flex_wrap p{
  font-size: 14px;
}
.mailmagazine .mm_box .mm_descr {
  width: 100%;
  background: #FFFFFF;
  border-top: 6px solid #45B035;
  padding: 16px 16px 48px;
  position: relative;
}
.mailmagazine .mm_box .mm_descr h3 {
  padding: 1em 0;
  margin-bottom: 1em;
  border-bottom: 1px solid #45B035;
}
.mailmagazine .mm_box .mm_descr ul {
  padding-left: 2em;
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
  margin-inline: auto;
}
.mailmagazine .mm_box .mm_descr ul li {
  position: relative;
  margin-bottom: 1em;
  line-height: 1.2em;
}
.mailmagazine .mm_box .mm_descr ul li::before {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-radius: 100%;
  background: #ffb400;
  position: absolute;
  top: 0.1em;
  left: -2em;
}
.mailmagazine .mm_box .mm_descr ul li:nth-child(even)::before {
  background: #45B035;
}
.mailmagazine .mm_box .mm_descr .deco {
  color: #ECF7EA;
  line-height: 1;
  text-align: center;
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  width: -moz-max-content;
  width: max-content;
}
.mailmagazine .mm_box .mm_descr .deco img {
  display: inline-block;
  width: 40px;
  line-height: 1;
  margin-right: 0.5em;
}
.mailmagazine .mm_box .mm_descr .deco span {
  line-height: 1;
  font-size: 20px;
}
.mailmagazine .mm_box .mm_form {
  width: 100%;
  padding: 24px 0 0;
}
.mailmagazine .mm_box .mm_form .form_box {
  display: flex;
  justify-content: center;
  align-items: center;
}
.mailmagazine .mm_box .mm_form .form_box form > div:not(:last-of-type) {
  margin-bottom: 16px;
}
.mailmagazine .mm_box .mm_form .form_box form h4 {
  font-size: clamp(16px, 0.8rem + 0.8vw, 20px);
  margin-bottom: 4px;
}
.mailmagazine .mm_box .mm_form .form_box form h4 i {
  color: #44af35;
}
.mailmagazine .mm_box .mm_form .form_box form input[type=email] {
  padding: 8px 8px;
  font-size: 16px;
  background: #FFFFFF;
  width: clamp(216px, 100%, 400px);
  transition: 0.24s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  border-radius: 6px;
  border: 0.2px solid #1c1c1c;
  margin-top: 8px;
}

.mailmagazine .mm_box .mm_form .form_box form input[type=email]:focus {
  background-color: #d0ebcd;
}
.mailmagazine .mm_box .mm_form .form_box form input[type=checkbox] {
  width: 16px;
  height: 16px;
  position: relative;
  top: 3px;
}
.mailmagazine .mm_box .mm_form .form_box form .agreement {
  text-align: center;
}
.mailmagazine .mm_box .mm_form .form_box form .agreement label {
  display: table;
  cursor: pointer;
}
.mailmagazine .mm_box .mm_form .form_box form .agreement a {
  color: #00A867;
  opacity: 1;
}
.mailmagazine .mm_box .mm_form .form_box form .agreement a:hover {
  filter: brightness(0.7);
  transition: 0.5s;
}
.mailmagazine .mm_box .mm_form .form_box form .submit_btn {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.mailmagazine .mm_box .mm_form .form_box form .submit_btn input[type=submit] {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.02em;
  border-radius: 8px;
  color: #FFFFFF;
  background-color: #44af35;
  position: relative;
  width: 200px;
  line-height: 49px;
  height: 49px;
  transition: 0.7s;
}
.mailmagazine .mm_box .mm_form .form_box form .submit_btn input[type=submit]:hover {
      filter: brightness(0.7);
}
.mailmagazine .mm_box .mm_form .form_box form .submit_btn input[type=submit]:focus {
  box-shadow: 0px 1px 0px #C28700 inset;
  top: 3px;
  filter: brightness(1.08) saturate(2);
}
.mailmagazine .mm_box .mm_form p.tx_small {
  font-size: 10px;
  padding: 4px;
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
  margin-inline: auto;
}
.mailmagazine .mm_box .mm_form p.tx_small a {
  color: #45B035;
  text-decoration: underline;
}

.wpcf7-not-valid-tip {
    color: #F83B3B !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    display: block !important;
    margin-top: 4px !important;
}


@container mmbox (min-width:600px) {
  .mailmagazine .mm_box .mm_descr {
    width: 50%;
  }
  .mailmagazine .mm_box .mm_form {
    width: 50%;
    padding-left: 24px;
    /* min-height: 320px; */
  }
}
@media screen and (min-width: 920px) {
  .mailmagazine {
    padding: 0;
    order: 3;
    grid-column: 1/3;
  }
  .mailmagazine .mm_box {
    width: calc(100% - 32px);
    margin: auto;
  }
  .mailmagazine .mm_box .flex_wrap p br{
  display: none;
}
.mailmagazine .mm_box .flex_wrap p {
    font-size: 14px;
    margin-top: 24px;
    line-height: 1.5em;
}
}
@media screen and (min-width: 1200px) {
  .mailmagazine {
    padding: 0 0 0 16px;
  }
  .mailmagazine .mm_box,
  .mailmagazine .on_sidebar {
    width: 100%;
  }
  
}

/* リンクバナー */
.related_banners{
  padding-top: 40px;
  border-top: 1px #C9C9C9 solid;
}

/*----スクロールでモーダル----*/
.modal_banner {
  display: none;
}
.modal_banner .modal_inner {
  width: calc(100% - 24px);
  max-width: 350px;
  background-color: #FFFFFF;
  position: relative;
  border-radius: 8px;
  padding: 48px 0 44px;
  overflow-y: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal_banner .modal_inner .modal_content {
  width: calc(100% - 48px);
  max-width: 300px;
}
.modal_banner .modal_inner .modal_content h2 {
  font-size: 18px;
  margin-bottom: 20px;
}
.modal_banner .modal_inner .modal_content p {
  font-size: 14px;
  margin-bottom: 20px;
}
.modal_banner .modal_inner .modal_content > img {
  -o-object-fit: 4/3;
     object-fit: 4/3;
  margin-bottom: 20px;
}
.modal_banner .modal_inner .modal_banner_close_btn {
  position: absolute;
  top: 8px;
  right: 8px;
  transform: rotate(45deg);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FFFFFF;
  border-radius: 100%;
  width: 36px;
  height: 36px;
  border: 1px solid #44AE35;
  cursor: pointer;
}
.modal_banner .modal_inner .modal_banner_close_btn i {
  display: block;
  position: relative;
  width: 1px;
  height: 17px;
  background-color: #44AE35;
}
.modal_banner .modal_inner .modal_banner_close_btn i::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  width: 1px;
  height: 17px;
  background-color: #44AE35;
}
@media screen and (min-width: 920px) {
  .modal_banner .modal_inner {
    width: 100%;
    max-width: 560px;
    padding: 64px 0 56px;
  }
  .modal_banner .modal_inner .modal_content {
    width: 100%;
    max-width: 380px;
  }
  .modal_banner .modal_inner .modal_content h2 {
    font-size: 20px;
  }
  .modal_banner .modal_inner .modal_content p {
    font-size: 16px;
  }
  .modal_banner .modal_inner .modal_banner_close_btn {
    width: 40px;
    height: 40px;
    top: 14px;
    right: 16px;
  }
  .modal_banner .modal_inner .modal_banner_close_btn i {
    height: 17px;
  }
  .modal_banner .modal_inner .modal_banner_close_btn i::after {
    height: 17px;
  }
  .modal_banner .modal_inner .modal_banner_close_btn:hover{
    background-color: #e8f5e6;
    transition: 0.7s;
  }
}
.modal_banner.modal_banner_active { /*展開時*/
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10000;
  animation: modalSadow 240ms ease-in forwards;
}

@keyframes modalSadow {
  0% {
    background-color: rgba(0, 0, 0, 0);
  }
  100% {
    background-color: rgba(0, 0, 0, 0.5);
  }
}
body.noscroll {
  position: fixed;
  overflow: hidden;
  overflow-y: auto;
  width: 100%;
}

/*フッター*/
.footer_brcmb {
  border-top: 1px solid #ddd;
  padding: 8px 0;
}

footer {
  background-color: #EFEFEF;
  color: #FFFFFF;
  padding:64px 0 0px;
  position: relative;
  z-index: 1;
  margin-top: 80px;
}
footer .footer_link {
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
  margin-inline: auto;
  font-size: 14px;
  margin-bottom: 64px;
  display: flex;
  gap: 24px;
}
footer .footer_link ul {
  color: #1c1c1c;
  display: flex;
    flex-direction: column;
    gap: 16px;
}
.dojo_off{
 display: none;
}
footer .footer_link ul li.tx_large {
  margin: 0 0 2em;
  display: block !important;
}
footer .footer_link ul.ftlk_tags li {
  display: inline-block;
}
/* footer .footer_link ul.ftlk_pages li {
  display: block;
} */

/* SNS */
.social_link {
    width:calc(100% - 48px);
    padding:40px 0;
    border-top:1px solid #c7c7c7;
        margin: 0 auto;
}
.social_link ul {
    gap:16px
}
.social_link ul li {
    max-width:calc(33% - 12px);
    display:flex;
    align-items:baseline;
    justify-content:center;
}
.social_link ul li a {
    font-size:10px;
    font-weight:700;
    color:#2b2b2b;
    text-align:center;
}
.social_link ul li a img {
    display:inline-block;
    vertical-align:middle;
    margin-right:.5em;
}

.tgt_blank,
.tgt_blank_menu {
    position: relative;
    padding-right: 1.3em !important;
}
.tgt_blank::before {
    content: "";
    position: absolute;
    width: .8em;
    height: 1em;
    background: url(https://shinko-jp.com/cms/wp-content/themes/shinko/images/icon_up_from_square.svg) 50% 50% no-repeat;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-size: contain;
    opacity: .64;
}
.tgt_blank_menu::before {
    content: "";
    position: absolute;
    width: .8em;
    height: 1em;
    background: url(https://shinko-jp.com/cms/wp-content/themes/shinko/images/icon_up_from_square.svg) 50% 50% no-repeat;
    right: -26px;
    top: 50%;
    transform: translateY(-50%);
    background-size: contain;
    opacity: .64;
}

@media screen and (min-width: 580px) {
    .social_link ul {
        gap:40px
    }
    .social_link ul li {
        justify-content:center;
        width:auto;
        flex:none
    }
}

@media screen and (min-width: 580px) {
    .social_link ul {
        gap:40px
    }
    .social_link ul li {
        justify-content:center;
        width:auto;
        flex:none
    }
}
@media screen and (min-width: 920px) {
     .social_link {
        padding:24px 0
    }
}
@media screen and (min-width: 1200px) {
    .social_link {
        width:100%
    }
}

.copyright {
  background-color: #3364b3;
  padding: 8px 0;
}
@media screen and (min-width: 920px) {
  /* footer .footer_link ul.ftlk_pages li {
    display: inline-block;
  } */
}
footer .sns_links {
  margin-bottom: 48px;
}
footer .sns_links a {
  margin: 0 16px;
}
footer .logomarks {
  margin: 24px 0 0;
  flex-direction: column;
}
footer .logomarks a:not(:last-child) {
  margin-bottom: 2em;
}
@media screen and (min-width: 768px) {
  /* footer .footer_link {
    display: flex;
    flex-direction: column;
        align-items: center;
  }
  footer .footer_link ul {
    display: flex;
    justify-content: center;
    flex-direction: row;
  } */
  footer .logomarks {
    flex-direction: row;
    margin: 16px 0 0;  
  }

  footer .logomarks a {
    margin: 0 16px;
    width: 120px;
  }
  footer .logomarks a:not(:last-child) {
    margin-bottom: 0;
  }
}

#pagetop {
  z-index: 2;
  display: block;
  position: absolute;
  top: 16px;
  right: 16px;
  width: 48px;
  height: 48px;
  border-radius: 100%;
  background: #45B035;
  color: #FFFFFF;
  overflow: hidden;
  cursor: pointer;
}
#pagetop a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 920px) {
  footer {
    padding: 48px 0 0px;
  }
  footer .footer_link {
    flex-direction: column;
    gap: 16px;
    align-items: center;
    margin-bottom: 48px;
  }
  footer .footer_link ul {
    display: flex;
    flex-direction: row;
    gap: 32px;
  }
  footer .footer_link li:hover{
    opacity: 0.7;
  }
  #pagetop {
    top: -24px;
  }
}

/*TOPページ*/
.fv_carousel {
  padding: 16px 24px 0px;
  width: 100%;
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  position: relative;
  margin-bottom: 80px;
}
.fv_carousel::-webkit-scrollbar {
  display: none;
}
.fv_carousel .carousel {
  display: flex;
  align-items: stretch;
  justify-content: center;
  width: -moz-max-content;
  width: max-content;
  height: 100%;
}
.fv_carousel .carousel li {
  scroll-snap-align: center;
  width: calc(100vw - 64px);
  height: auto;
  margin: 0 8px;
}
.fv_carousel .carousel li a {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #D9D9D9;
  background-color: #FFFFFF;
  cursor: pointer;
  display: block;
  height: 100%;
}
.fv_carousel .carousel li a img {
  width: 100%;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
.fv_carousel .carousel li a .fvc_title {
  font-size: clamp(14px, 0.733rem + 0.8vw, 16px);
  font-weight: 700;
  padding: 1em;
  display: block;
}
@media screen and (min-width: 420px) {
  /* .fv_carousel {
    padding-left: calc(18vw - 16px);
  } */
  .fv_carousel .carousel li {
    width: 64vw;
  }
}
@media screen and (min-width: 768px) {
  .fv_carousel {
    padding: 20px 24px 28px;
    /* padding-left: calc(25vw - 24px); */
  }
  .fv_carousel .carousel li {
    margin: 0 12px;
    width: 50vw;
  }
}
@media screen and (min-width: 920px) {
  .fv_carousel {
    padding: 24px 32px 32px;
    /* padding-left: calc(32vw - 32px); */
  }
  .fv_carousel .carousel li {
    margin: 0 16px;
    width: 36vw;
  }
}
@media screen and (min-width: 1200px) {
  .fv_carousel {
    padding: 24px 8px 32px;
    /* padding-left: calc(36vw - 24px); */
  }
  .fv_carousel .carousel li {
    margin: 0 16px;
    width: 28vw;
  }
}
@media (min-width: 1440px) {
  .fv_carousel .carousel li {
    width: 30vw;
  }
}

.archives section,
.home section {
  margin-bottom: 40px;
}
.archives h2,
.home h2 {
  font-size: clamp(19px, 1.172rem + 0.378vw, 22px);
  line-height: 1.414;
  color: #151515;
  margin-bottom: 1em;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.archives h2 img,
.home h2 img {
  margin-right: 0.5em;
}
@media screen and (min-width: 920px) {
  .archives section,
  .home section {
    margin-bottom: 40px;
  }
}
/* 記事一覧ページ */
.archive_box {
    margin-bottom: 30px;
}
/* 記事カセット */
.new_posts {
    margin-top: 20px;
}
.new_posts .grid {
  gap: 24px;
}
.new_posts .grid .new_post {
  background: #FFFFFF;
  border: 1px #D9D9D9 solid;
  container: new_post/inline-size;
  border-radius: 8px;
  overflow: hidden;
}
.new_posts .grid .new_post:hover {
  box-shadow: 0 4px 13px 0px rgba(0, 0, 0, 0.1);
}

.new_posts .grid .new_post a.flex_wrap div.flex_wrap {
  order: 1;
  padding: 20px 16px 16px;
  display: block;
  width: 100%;
}
.new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_date {
  width: 45%;
  align-self: center;
  font-size: 11px;
  color: #757575;
  min-height: 1.5em;
}
.new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_title {
  font-size: 16px;
  margin: 10px 0 20px;
  min-height: 4.5em;
}
.new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_tags .np_tag {
  display: inline-block;
  padding: 6px 14px 6px 12px;
  border-radius: 16px;
  margin: 0 6px 8px 0;
  color: #757575;
  font-size: 12px;
  font-weight: 400;
  border: 1px solid #757575;
  border-radius: 50px;
}
.new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_tags {
min-height: 7.5em;
}
.new_posts .grid .new_post a.flex_wrap .np_thumb {
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 220px;
}


/* 詳しく見る */
.read_post{
  font-size: 14px;
  font-weight: bold;
  text-align: right;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5em;
  margin-top: auto;
  color: #00A867;
}
.read_post::after{
  content: '';
  width: 1em;
  height: 1em;
  background: url(/column/wp-content/themes/br-labo/images/icon_next_lightgreen.svg) 50% 50% no-repeat;
  background-size: contain;
}
@media screen and (max-width: 374px) {
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_title {
    font-size: 14px;
    width: calc(100% - 112px);
    margin-right: 112px;
  }
  /* .new_posts .grid .new_post a.flex_wrap .np_thumb {
    width: 104px;
  } */
}
@container new_post (min-width:494px) {
  .new_posts .grid .new_post a.flex_wrap {
    padding: 0;
  }
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap {
    order: 2;
    width: 58%;
    flex: auto;
    justify-content: space-between;
    padding: 16px 0 16px 16px;
  }
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_title {
    order: 2;
    width: 100%;
    padding-right: 1rem;
    min-height: auto;
  }
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_date {
    order: 1;
    width: 100%;
    font-size: 13px;
    margin-bottom: 0.5em;
  }
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_tags {
    order: 3;
    width: 100%;
    padding-right: 16px;
    align-self: end;
  }
  .new_posts .grid .new_post a.flex_wrap .np_thumb {
    order: 1;
    position: relative;
    border-radius: 0;
    top: auto;
    right: auto;
    width: 42%;
  }
}
@container new_post (max-width:307px) {
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_date {
    margin-bottom: 8px;
  }
  .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_date, .new_posts .grid .new_post a.flex_wrap div.flex_wrap .np_tags {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
.new_posts .grid {
  gap: clamp(20px, 3vw, 32px);
  grid-template-columns: 1fr 1fr;
}
}
@media screen and (min-width: 920px) {
  .new_posts .grid {
    grid-template-columns: 1fr 1fr;
  }
 
}

.to_all_posts {
  padding: 48px 0 0;
}
.to_all_posts a {
  display: table;
  margin: 0 auto;
  padding: 10px 16px;
  border: 2px solid;
  font-weight: bold;
  border-radius: 24px;
}

/*ページのボディに背景グレーの検索＆タグのパーツ*/
.top_search {
  background: #F5F5F5;
  padding: 40px 0;
}

.search_onBody {
  padding: 0 8px;
}
.search_onBody .top_s_area {
  width: 100%;
  margin-bottom: 4em;
}
.search_onBody .top_s_area .top_s_box {
  height: auto;
  position: relative;
  width: min(400px, 100%);
  margin: 0 auto;
}
.search_onBody .top_s_area .top_s_box::before {
  content: none;
}
.search_onBody .top_s_area .top_s_box .top_s_form {
  width: calc(100% - 64px);
  background: #FFFFFF;
  border-radius: 24px 0 0 24px;
  padding-left: 16px;
  height: 40px;
}
.search_onBody .top_s_area .top_s_box .top_s_form::-moz-placeholder {
  opacity: 1;
}
.search_onBody .top_s_area .top_s_box .top_s_form::placeholder {
  opacity: 1;
}
.search_onBody .top_s_area .top_s_box .top_s_btn {
  width: 64px;
  height: 38px;
  opacity: 1;
}
.search_onBody .top_tag_area {
  width: 100%;
}
.search_onBody .top_tag_area .tag_pool {
  padding: 0 0 16px 16px;
}
.search_onBody .top_tag_area .tag_pool .ts_tags {
  text-align: left;
}
.search_onBody .top_tag_area .tag_pool .ts_tags .ts_tag {
  display: inline-block;
  margin-bottom: 1.618em;
  margin-left: 0.5em;
}
.search_onBody .top_tag_area .tag_pool .ts_tags .ts_tag a {
  background-image: linear-gradient(135deg, #41C92D, #45B035);
  box-shadow: 0px 2px 0px #238115;
  padding: 8px 16px 8px 8px;
  border-radius: 20px;
  color: #FFFFFF;
  font-size: clamp(15px, 0.933rem + 0.2vw, 16px);
  text-shadow: 0px -0.5px 1px #238115;
}
@media screen and (min-width: 920px) {
  .search_onBody .top_tag_area .tag_pool .ts_tags .ts_tag a {
    font-weight: 700;
    text-shadow: 0px -1px 1px #238115, -1px -1px 1px #238115, 1px -1px 1px #238115;
  }
}
@media screen and (min-width: 768px) {
  .search_onBody .top_s_area {
    width: calc(50% - 24px);
    margin-right: 24px;
    margin-bottom: 0;
  }
  .search_onBody .top_s_area .top_s_box {
    height: calc(100% - 6em);
  }
  .search_onBody .top_tag_area {
    width: 50%;
  }
}

#top_popular .popular_posts {
  padding: 0 8px;
}

#top_mmdlc {
  padding-top: 96px;
  margin-top: -96px;
}
#top_mmdlc .mailmagazine {
  padding: 0 8px;
  margin-bottom: 40px;
}
#top_mmdlc .mailmagazine .mm_box {
  width: 100%;
}
#top_mmdlc .dlc_banner {
  padding: 0 8px;
  container: dlc_banner/inline-size;
}
#top_mmdlc .dlc_banner .heading {
  margin-bottom: 1em;
}
#top_mmdlc .dlc_banner .flex_wrap {
  gap: 16px;
}
#top_mmdlc .dlc_banner .flex_wrap .to_archive {
  display: block;
}
#top_mmdlc .dlc_banner .flex_wrap .to_dlc {
  display: none;
}
@container dlc_banner (min-width: 321px) {
  #top_mmdlc .dlc_banner .flex_wrap .to_archive {
    display: none;
  }
  #top_mmdlc .dlc_banner .flex_wrap .to_dlc {
    width: calc(50% - 8px);
    display: block;
    box-shadow: 0px 2px 6px -3px rgba(0, 0, 0, 0.5);
  }
  #top_mmdlc .dlc_banner .flex_wrap .to_dlc span {
    display: block;
    padding: 8px;
    color: #FFFFFF;
    background-image: linear-gradient(135deg, #41C92D, #45B035);
  }
}
@container dlc_banner (min-width: 540px) {
  #top_mmdlc .dlc_banner .flex_wrap .to_dlc {
    width: calc(33% - 8px);
  }
}
#top_mmdlc .to_about_page {
  margin-top: 40px;
  padding: 0 8px;
}
#top_mmdlc .to_about_page a {
  background: #45B035;
  color: #FFFFFF;
  text-align: center;
  padding: 18px;
  display: block;
}

/*検索、アーカイブ用*/
.archives {
  margin: 40px auto;
}
.archives .search_result {
  margin-bottom: 24px;
}
.archives #top_mmdlc .mailmagazine {
  padding: 0 8px;
  width: 100%;
}
.archives #top_mmdlc .mailmagazine .mm_box {
  width: 100%;
}
@media screen and (min-width: 920px) {
  .archives .search_result {
    margin-bottom: 48px;
  }
}

/*固定ページ*/
.page .the_post .post_wrap {
  max-width: 800px;
  grid-template-columns: 1fr;
  gap: 0;
}
.page .the_post .post_wrap .post_body {
  width: 100%;
  padding-left: 0;
}
.page .the_post .post_wrap .post_body .post_data .data_l {
  margin-bottom: 0;
}
.page .the_post .post_wrap .post_body .inner {
  padding: 0 16px;
}
.page .the_post .post_wrap .post_body .inner #the_article h2::before {
  height: 2em;
}
.page .the_post .post_wrap .post_body .inner .post_flex .post_main_content {
  width: 100%;
}
.page #top_mmdlc .mailmagazine {
  padding: 0 0px;
  width: 100%;
}
.page section {
  margin-bottom: 40px;
}
.page .spmd_h2 {
  font-size: clamp(19px, 1.172rem + 0.378vw, 22px);
  line-height: 1.414;
  color: #151515;
  margin-bottom: 1em;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.page .spmd_h2 img {
  margin-right: 0.5em;
}
@media screen and (min-width: 920px) {
  .page section {
    margin-bottom: 40px;
  }
}

/*ページネーション*/
.pagenation {
  margin: 0 auto 40px;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
}
.pagenation .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.pagenation .nav-links .page-numbers {
  margin: 0 0.3em 1em;
  width: 2.5em;
  height: 2.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 2px solid #44AF35;
  border-radius: 50%;
  color: #44AF35;
  font-weight: 700;
  opacity: 1;
}
.pagenation .nav-links .page-numbers.current,
.pagenation .nav-links .page-numbers.current:hover {
  background: #44AF35;
  color: #FFFFFF;
  cursor: pointer;
}
.pagenation .nav-links .page-numbers:hover {
  background-color: #E8F5E6;
  cursor: pointer;
}

/*404*/
.error404 .search_result {
  min-height: 50vh;
  display: grid;
  place-content: center;
  border: 2px dashed #dddddd;
  position: relative;
}
.error404 .search_result::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 640px;
  height: 0;
  padding-bottom: 20%;
  background: url(../images/logo.svg) 50% 50% no-repeat;
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  filter: contrast(0) opacity(0.05);
}
.error404 .search_result h2 {
  max-inline-size: -moz-max-content;
  max-inline-size: max-content;
  margin-inline: auto;
  padding: 0 8px;
  margin-bottom: 0;
  color: #8E8E8E;
  text-shadow: 0px 2px 0px #fff, 0px -2px 0px #fff, 2px 0px 0px #fff, -2px 0px 0px #fff, 2px 2px 0px #fff, 2px -2px 0px #fff, -2px 2px 0px #fff, -2px -2px 0px #fff;
  position: relative;
  z-index: 2;
}

.form_box .wpcf7 form .wpcf7-response-output {
  text-align: center;
  border: none;
  background: rgba(255, 255, 255, 0.8);
  padding: 0.5em;
  border-radius: 8px;
  margin: -24px auto 24px;
  color: #46b450;
  font-weight: 700;
  font-size: 14px;
}/*# sourceMappingURL=main.css.map */


/* =========================================
   2カラム：layout-two-column 専用（モバイル優先）
   ========================================= */

/* まずは縦積み（～919px） */
.the_post .post_wrap.layout-two-column{
  display: block;          /* 既存の grid を上書き */
  gap: 0;
  max-width: 100%;
  margin: 40px auto 0;
}

/* 直下の子（本文・サイド）を全幅に */
.the_post .post_wrap.layout-two-column > .post_body,
.the_post .post_wrap.layout-two-column > .post_sidebar,
.the_post .post_wrap.layout-two-column > aside{
  width: 100%;
  max-width: none;
  float: none;              /* 念のための旧float対策 */
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
    .the_post .post_wrap.layout-two-column > .post_sidebar {
        width: 500px;
        margin: 0 auto;
    }
}

/* 920px以上で横並び2カラムに */
@media (min-width: 920px){
  .the_post .post_wrap.layout-two-column{
    display: flex;
    gap: clamp(24px, 4vw, 48px);
    max-width: 1168px;      /* 既存レイアウト幅に合わせる */
    padding: 0;
  }
  .the_post .post_wrap.layout-two-column > .post_body{
    flex: 1 1 auto;
    min-width: 0;
    width: auto;            /* 念のため */
  }
  .the_post .post_wrap.layout-two-column > .post_sidebar,
  .the_post .post_wrap.layout-two-column > aside{
    flex: 0 0 320px;
    width: 320px;
  }
}


/* ========================
   920px以上は2カラム（横並び）
   ======================== */
@media (min-width: 920px){
  .the_post .post_wrap.layout-two-column{
    display:flex;
    gap: clamp(24px, 4vw, 48px);
    max-width:1168px;         /* 既存レイアウトの幅に合わせる */
    padding: 0;
  }
  .the_post .post_wrap.layout-two-column > .post_body{
    flex: 1 1 auto;
    min-width:0;
    width:auto !important;    /* 念のため */
  }
  .the_post .post_wrap.layout-two-column > .post_sidebar,
  .the_post .post_wrap.layout-two-column > aside{
    flex: 0 0 320px;
    width:320px !important;
  }
}

body.post-type-archive-kenkokeiei_history #the_article h2::before,
body.post-type-archive-kenkokeiei_history #the_article h2::before {
  content: none !important;
  display: none !important;
}

@media (min-width: 540px) and (max-width: 768px) {
  .read_post_adjust {
    padding-right: 16px;
  }
}

/* --------------------------
タイトル 
--------------------------*/

.post_title.dojo_member,
.post_title.dojo_history,
.post_title.dojo_webinar {
    border-bottom: 3px solid #D9D9D9!important;
    padding-bottom: 8px!important;
    position: relative!important;
    
}
.post_title.dojo_member::after,
.post_title.dojo_history::after,
.post_title.dojo_webinar::after {
  position: absolute!important;
  display: block!important;
  content: ''!important;
  background: #44AE35!important;
  width: 100px!important;
  height: 3px!important;
  bottom: 2.5px!important;
  left: 0!important;
}

@media screen and (min-width: 768px) {

}
@media (min-width: 920px){
  .post_title.dojo_member::after,
  .post_title.dojo_history::after,
  .post_title.dojo_webinar::after  {
    width: 200px!important;
}

}

/* --------------------------
師範紹介
 --------------------------　*/

 .member_profile {
    margin-bottom: 64px;
 }
 .member_profile:first-child {
  margin-top: 16px;
 }
 .member_name.sub {
  font-size: 14px !important;
      margin-top: -32px;
}
 .member_name.shihan{
  font-size: 20px !important;
  line-height: 1.5em !important;
  margin: -16px 0 32px !important;
 }
 .member_txt {
  font-size: 14px;
 }

 .shikaku {
  font-size: 14px;
  margin-top: 32px  !important;
 }
@media screen and (min-width: 768px) {
  .post_body .inner .post_flex.dojo {
    width: 600px!important;
    margin: 0 auto!important;
    justify-content: center !important;
}
}

@media (min-width: 920px){
  .post_title.dojo_member {
    margin-left: 48px;
    width: calc(100% - 152px);
 }
  .member_profile {
    margin-bottom: 80px;
 }
.post_body .inner .post_flex.dojo {
    width: 100% !important;
    margin: 0!important;
    justify-content: space-between!important;
}
.member_name.sub {
    margin-top: 10px;
    margin-bottom: 10px !important;
}
  .member_name.shihan {
    margin: 0px 0 32px !important;
 }
}


/* --------------------------
健康経営の歴史
 --------------------------　*/

 .history_item {
    margin-bottom: 64px;
 }
 .history_item:first-child {
    margin-top: 16px
  }
  .history_item:last-child {
    margin-bottom: 0;
 }
 .history_title {
    background-color: #E8F5E6;
    padding: 10px 12px 8px;
    border-left: 4px solid #44AE35;
    margin-bottom: 24px !important;
    font-size: 18px !important;
 }
 .history_title:first-child{
  margin-top: 0 !important;
 }
 .history_title::after {
    background: none !important;
}
 .history_subtitle {
    border-left: 4px solid #44AE35;
    padding: 2px 0 2px 12px;
    margin: 0 0 20px 0 !important;
    font-size: 14px !important;
}
@media screen and (min-width: 768px) {
  .post_body .inner .post_flex.dojo {
    width: 600px!important;
    margin: 0 auto!important;
    justify-content: center !important;
}
}
@media (min-width: 920px){
   .post_title.dojo_history {
    margin-left: 48px;
    width: calc(100% - 152px);
 }
 .post_body .inner .post_flex.dojo {
    width: 100% !important;
    margin: 0!important;
    justify-content: space-between!important;
}
    .history_title {
      font-size: 20px !important;
    }
     .history_subtitle {
        font-size: 16px !important;
     }
}


/* --------------------------
セミナー
 --------------------------　*/
.post_title.dojo_webinar {
  width: 100%;
  margin-bottom: 40px !important;
}
 .wb-sec-ttl{
  background-color: #E8F5E6;
    padding: 10px 12px 8px;
    border-left: 4px solid #44AE35;
    margin-bottom: 24px;
    font-size: 18px;
}

.post_card{
  display:block;
  grid-template-columns:200px minmax(0,1fr);
  gap:16px;
  padding: 40px 0;
    border-top: 2px solid #e5e5e5;
}
.post_body .post_card:first-of-type {
  padding-top: 0;
  border-top: none;
}
.post_card .post_title {
  width: 100%;
  font-size: 16px;
}
.post_card--latest{
  grid-template-columns:320px minmax(0,1fr);
  border-color:#cfe9d2;
  background:#f7fbf7
}
@media(max-width:768px){
  .post_card,
  .post_card--latest{
    grid-template-columns:1fr}
  }
.wp-block-image img {
    width: 100%;
}
.wb-btn{
  width: 200px;
  display:inline-block;
  height: 49px;
  line-height: 49px;
  border-radius:6px;
  border:2px solid #45B035;
  background:#45B035;color:#fff;
  text-decoration:none;font-weight:700
}

.wb-btn--ghost{
  background:#fff;
  color:#45B035;
  border-color:#45B035
}
.wb-btn--disabled{
  background:#e5e5e5;
  border-color:#e5e5e5;
  color:#999;
  cursor:default;
  pointer-events:none}
.wb-actions{
   margin-top:1rem; 
   text-align:center; 
  }

.seminar_subtitle {
    padding: 4px 12px;
    border-left: 4px solid #44AE35;
    margin: 24px 0 8px;
    font-size: 14px;
    
}
#seminar_about p {
    font-size: 14px;
    line-height: 1.8em;
}

@media (min-width: 920px){
  #kenkokeiei_dojo_webinar {
    padding-left: 64px;
     width: clamp(480px, 50vw, 695px);
  }
   .wb-sec-ttl{
    font-size: 20px;
}
.the_post .post_wrap.webinar {
        gap: clamp(137px, 4vw, 200px);
    }
.post_card .post_title {
  font-size: 20px;
  margin-bottom: 24px;
}
    #seminar_about p:first-child {
        margin-top: 0;
    }
    .seminar_subtitle,
    #seminar_about p {
        font-size: 16px;
    }
    .wb-btn:hover {
      opacity: 1;
    filter: brightness(0.7);
    }
}

@media screen and (min-width: 1200px) {
  .the_post .post_wrap.webinar {
        gap: clamp(160px, 4vw, 200px);
    }
}