@charset "utf-8";

/*
Theme Name: ORIGINAL
*/



/*-----------------------------------------------

DETAIL

-----------------------------------------------*/

body,html {background:#e6eae3;color: #358a25;font-size: 10px;line-height: 1;-webkit-font-smoothing: antialiased;font-feature-settings: "palt";-webkit-text-decoration-skip-ink: none;text-decoration-skip-ink: none;overflow-anchor: none;}
body {line-break: strict;overflow-wrap: anywhere;word-break: normal;-webkit-text-size-adjust: 100%;}
blockquote,body,code,dd,div,dl,dt,fieldset,figure,form,h1,h2,h3,h4,h5,h6,input,legend,li,ol,p,pre,td,textarea,th,ul {margin: 0;padding: 0;}
div,a,p,input,textarea,select {box-sizing:border-box;}
ul li {list-style:none;}
figure{margin: 0;position: relative;}
img {width:100%;height:auto;user-drag: none;-webkit-user-drag: none;-moz-user-select: none;}
h1,h2,h3,h4,h5{font-weight: normal;margin:0;}
a {text-decoration:none;display:block;color: #358a25;}
a:focus {outline:none;}
*:focus {outline: none;}
a:hover,a:hover p,input:hover,button:hover,.toggle:hover{cursor: pointer;transition: all ease .2s;outline:none;}
.pc a[href^="tel:"] {cursor:default; pointer-events:none;}
.none {display: none !important;}
button {background:none;border:none;padding:0;margin:0;}

/*responsive*/
.pc_disp {display:block;}
.sp_disp {display:none !important;}
.pc_br {display: block;}
.sp_br {display: none;}


/*FONT STYLE*/
.ja_t_l {
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  -moz-osx-font-smoothing: grayscale;
}
.ja_t,.wpcf7-response-output,.wpcf7-not-valid-tip,dl.space_table dt,.form_list dt {
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
  -moz-osx-font-smoothing: grayscale;
}
.ja_p,.ja_p_s,.pager,figcaption,.post_content p,.post_content ul li,.post_content ol li,form input[type="text"],form textarea,.post_content pre a,dl.space_table dd,.form_list dd,dl.form_list dt sup {
  font-family: "Sawarabi Gothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.ja_t2,.ja_p2 {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.post_content h1,.post_content h2,.post_content h3,.post_content h5,.post_content h6,strong {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.en_t {
  font-family: "Nunito Sans",sans-serif;
  font-weight: 300;
  font-style: normal;
}
.en_p,.pager,form input[type="date"],form input[type="email"],form input[type="password"],form input[type="tel"],form select,form input[type="submit"] {
  font-family: "Nunito Sans",sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}

/*FONT SIZE*/
.ja_t_l,.ja_t2 {font-size:2.4rem;}
.ja_t,.ja_p2,.post_content h2,dl.space_table dt,.form_list dt {font-size:1.8rem;}
.ja_p,.pager,figcaption,.post_content p,.post_content h3,.post_content ul li,.post_content ol li,form textarea,.post_content pre a,.pager,dl.space_table dd,.form_list dd {font-size:1.5rem;}
.wpcf7-response-output,.wpcf7-not-valid-tip {font-size:1.5rem !important;}
.en_t {font-size: 3.2rem;}
.en_p,form input[type="date"],form input[type="email"],form input[type="password"],form input[type="tel"],form input[type="text"],form select,form input[type="submit"] {font-size: 1.4rem;}
.ja_p_s,.post_content .wp-caption-text,dl.form_list dt sup {font-size: 1.3rem;}

/*line-height*/
.news_list__badge.ja_p_s {line-height:1.4;}
.en_t,.en_p,.ja_t,.post_content h2,.post_content h3 {line-height:1.6;}
.ja_p,.ja_t2,.ja_t_l,figcaption,.post_content p,.post_content ul li,.post_content ol li {line-height:1.8;}
.wpcf7-response-output,.wpcf7-not-valid-tip {line-height:2;}
.main_nav .en_t {line-height: 1;}
.home_intro__text p,.p_mv__text p,.about_intro__text {line-height:2.2;}

/*letterspacing*/
strong,.post_content h1,.post_content h2,.post_content h3,.post_content h5,.post_content h6,
.ja_t,.ja_t_l,.wpcf7-response-output,.wpcf7-not-valid-tip,
.ja_p,.ja_p_s,.pager,figcaption,.post_content p,.post_content ul li,.post_content ol li,form input[type="text"],form textarea,.post_content pre a,.form_list dt,.form_list dd,.ja_p2{letter-spacing: 0.11em;}
.en_t,.pager,.en_p,form input[type="date"],form input[type="email"],form input[type="password"],form input[type="tel"],form select,form input[type="submit"]{letter-spacing: 0.11em;}
.en_t {letter-spacing: 0.14em;}
.ja_t2 {letter-spacing: 0.3rem;}


/*-----------------------------------------------

COMMON

-----------------------------------------------*/

/*trans_center*/
.trans_center {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  position: absolute;
}
.trans_center_h {
  top: 50%;
  left: 0;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
  position: absolute;
}
.trans_center_w {
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);
  position: absolute;
}

/*picture*/
.c_pic {
  position: relative;
  overflow: hidden;
  display: block;
}
.c_pic:before {
  display: block;
  content: '';
  width: 100%;
  height: 0;
  padding: 0 0 65.8%/*61.8%*/;
}
.c_pic .c_pic_img,
.c_pic img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  object-fit: cover;
  transition-duration: .4s;
}
.c_pic.s:before {
  padding: 0 0 100%;
}
.c_pic.h:before {
  padding: 0 0 133.33333%;
}
a:hover .c_pic img {
  opacity: .8;
  transform: translate(-50%, -50%) scale(1.05);
  -webkit-transform: translate(-50%, -50%) scale(1.05);
  -ms-transform: translate(-50%, -50%) scale(1.05);
  transition-duration: .7s;
  transition-timing-function: ease-in-out;
  cursor: pointer;
}

/*●ぽち入りカテゴリータイトル*/
.cmn_cat_txt {
  display: flex;
  align-items: center;
}
.cmn_cat_txt span {
  line-height: 1;
}
.cmn_cat_txt span+span {
  margin-left: 24px;
  margin-top: -1px;
  position: relative;
}
.cmn_cat_txt span+span:before,
.cmn_dot_list li:before,
.post_content ul li:before {
  content: "●";
  width: 7.5px;
  height: 7.5px;
  top: 60%;
  left: -17px;
  -webkit-transform: translate(0,-50%);
  transform: translate(0,-50%);
  position: absolute;
  font-size: 7.5px;
}

#home_mv .cmn_cat_txt {
  width: 185px;
}

/*cmn_btn*/
.cmn_btn,form input[type="submit"],.post_content pre a {
  display: table;
  background: #fffffc;
  border-radius: 999px;
  position: relative;
  padding: 21px 21px 22px;
  min-width: 240px;
  margin-top: 45px;
  border: none;
}
.cmn_btn.c,form input[type="submit"] {
  margin-right: auto;
  margin-left: auto;
  margin-top: 60px;
}
.cmn_btn span {
  display: table-cell;
  line-height: 1;
}
.cmn_btn span:nth-child(1) {
  padding-right: 18px;
  white-space:nowrap;
}

/*hover*/
.cmn_btn:hover,form input[type="submit"]:hover,.post_content pre a:hover {
  background: #358a25;
  color: #fffffc;
}
.cmn_btn:hover .cmn_arrow,.slick-next:hover .cmn_arrow,.slick-prev:hover .cmn_arrow {
  transform: translateX(3px)
}
.cmn_btn:hover .cmn_arrow:before,
.post_content pre a:hover::before {
  background:#fffffc;
}
.cmn_btn:hover .cmn_arrow:after,
.post_content pre a:hover::after  {
  border-top: 1px solid #fffffc;
  border-right: 1px solid #fffffc;
}

/*ボタンの右寄せ*/
.cmn_btn_wrap.right {display:flex;justify-content: end;}

/*.cmn_dl*/
.cmn_dl {
  display: grid;
  gap: 6px 40px;
  grid-template-columns: auto 1fr;
  column-gap: 24px;
}
.cmn_dl dt {
  min-width: 75px;
  display: inline-block;
}
#footer .cmn_dl dt,#home_access .cmn_dl dt {
  min-width: 9em;
}
.cmn_dl dd {
  margin: 0;
  white-space: nowrap;
}

/*arrow*/
.cmn_arrow {
  position: relative;
  display:flex;
  transition: transform 0.3s ease;
}
.cmn_arrow,.post_content pre a::before {width: 18px;}
.cmn_arrow::before,.cmn_arrow::after,
.post_content pre a::before,.post_content pre a::after {
  content: "";
  position: absolute;
  top: 50%;
}
.cmn_arrow::before,
.post_content pre a::before {
  height: 1px;
  transform: translateY(-50%);
  background: #358a25;
}
.cmn_arrow::before {
  width: 100%;
}
.cmn_arrow::after,
.post_content pre a::after {
  right: 0;
  width: 7px;
  height: 7px;
  border-top: 1px solid #358a25;
  border-right: 1px solid #358a25;
  transform: translateY(-50%) rotate(45deg);
}
.post_content pre a::after,.post_content pre a::before {
  right: 15px;
}
.cmn_arrow.blank {transform: rotate(-45deg);}
.cmn_btn:hover .cmn_arrow.blank {
  transform: rotate(-45deg) translateX(3px);
}
.cmn_arrow.down {transform: rotate(90deg);}
.cmn_btn:hover .cmn_arrow.down {transform: rotate(90deg) translateY(-3px);}
.cmn_arrow.wh::before {background: #fffffc;}
.cmn_arrow.wh::after {border-color: #fffffc;}

/*border*/
#home_mv,#home_intro,.home .sec_wrap,.p_mv,.sec_title,.access_bus_route:last-child {
  border-bottom: 1px solid  #358a25;
}
.access_bus_route,nav.post_morebtn {
  border-top: 1px solid #358a25;
}
main .sec_wrap:last-child,#floor_intro,#access_intro,#space .p_mv,#contact .p_mv {border-bottom: none;}

/*common animation*/
.ttl_wrap,.home .header_title a,.home_intro__label {overflow: hidden;display: block;}

/*cmn list*/
ul.cmn_list li {
  border-top: 1px solid #358a25;
  padding: 30px 15px;
}
ul.cmn_list li:last-child {
  border-bottom: 1px solid  #358a25;
}

/*common スクロールバー*/
.scroll_ui{scrollbar-gutter: stable;}
.scroll_ui::-webkit-scrollbar {height: 5px;}
.scroll_ui::-webkit-scrollbar-track {background: transparent;}
.scroll_ui::-webkit-scrollbar-thumb {background-color: rgba(49, 123, 57, 0.35); /* yosugaグリーン */border-radius: 999px;}
.scroll_ui::-webkit-scrollbar-thumb:hover {background-color: rgba(49, 123, 57, 0.6);}
.scroll_ui{scrollbar-width: thin;scrollbar-color: rgba(49,123,57,.4) transparent;}

.line_link {text-decoration:underline;}

/*-----------------------------------------------

STRUCTURE

-----------------------------------------------*/
.wrap {
  overflow-anchor: none;
  position: relative;
  height: 100%;
  width: 100%;
}
.header {
  position: absolute;
  top:0;
  width: 100%;
  z-index: 100;
}
.sec_wrap {
  padding-top: 96px;
  padding-bottom:120px;
}
.p_contents {padding-bottom:120px;}
nav.post_morebtn {margin-top: 96px;margin-bottom:120px;}

/*common*/
.contents {
  position: relative;
}

.cnt_l {
  position: relative;
  /*max-width: 1480px;*/
  width: 90%;
  margin: 0 auto;
}
.cnt_m {
  /*max-width: 1117px;*/
  width: 74%;
  margin: 0 auto;
}
.cnt_s {
  position: relative;
  width: 660px;
  margin: 0 auto;
}

/*layout_wrap*/
.layout2_wrap {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.grid_list_2 {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  column-gap: 120px;
  row-gap: 120px;
}
.grid_list_3 {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  column-gap: 30px;
  row-gap: 45px;
}
.grid_list_4 {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  column-gap: 0;
  row-gap: 0;
}

.footer_pattern,
.carousel_slider_wrap {
  overflow: hidden;
  /* ↓ 追加 */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}
.carousel_slider_wrap {
  width: 100%;
  max-width: 100%;
}

/*-----------------------------------------------

HEADER

-----------------------------------------------*/
.header_inner {
  position: relative;
}
.home .header_title {
  top: 55px !important;
  width: 175px !important;
  position: fixed;
}
.header_title {
  top: 21px;
  width: 135px;
}
.header_btn_wrap {
  position: absolute;
  top: 25px;
  height: 50px;
}
.header_inner .header_btn_wrap:nth-of-type(2) {
  left: 24px;
}
.header_inner .header_btn_wrap:nth-of-type(3) {
  right: 24px;
}
.header_btn_wrap .ic_access {
  background-image: url(img/common/ic_access.svg?1);
  background-repeat: no-repeat;
  background-size: 22px auto;
  background-position: center;
  display: block;
}
.header_inner .header_btn_wrap:nth-of-type(2) a:hover .ic_access {
  background-image: url(img/common/ic_access_hover.svg?1);
}
.header_btn_wrap .ic_access,.menu_btn_wrap .menu_icon {
  height: 27px;
}

/*header on*/
.header_on .header {
  position: fixed;
  top:0;
}
.header_on .header .header_title {
  top: 21px;
  width: 120px;
  opacity: 0;
}
.header_off .header .header_title {
}

/*-----------------------------------------------

00_HOME MV

-----------------------------------------------*/

#home_mv,#home_mv ul,#home_mv ul li,#home_mv ul li picture div,#home_mv ul li picture img {width: 100%;height: 100%;}

#home_mv {
  height: 100vh;
  position:relative;
}
#home_mv ul li .pic_wrap {
  height: 75vh;
}
#home_mv h1 {
  white-space: nowrap;
  writing-mode: vertical-rl;
  letter-spacing: 3px;
}
.chrome #home_mv h1 {
  letter-spacing: -2px;
}

/*SLIDE*/
#home_mv,
.slider_wrap,
.slider,
.slick-slider,
.slick-list {
  max-width: 100%;
}
.slick-slider,.slider_wrap ul,.slider_wrap ul li,.slider_wrap ul li .inner,.slick-slider .slick-track, .slick-slider .slick-list {
  height: 100%;
}
#floor .slider_wrap,#floor .slick-slider,
#space .slider_wrap,#space .slick-slider {
  position: relative;
}
.slider_wrap {
  top: 53%;
}
.slider_wrap ul li {
  overflow: hidden;
  padding: 0;
}
.slider_wrap .pic_wrap {
  position: relative;
  overflow: hidden;
  display: block;
}
.slider_wrap .pic_wrap div  {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  overflow: hidden;
  background: 50% 50% no-repeat;
  background-size: cover;
  object-fit: cover;
}
.slider_wrap .c_pic:before {padding: 0 0 75vh;}
.slider_wrap ul li .inner {
  display: flex;
  flex-direction: column;
}
.slider_wrap .title_wrap {
  display: flex;
  align-items: center;
  margin-top: 3vh;
}
.slider_wrap .title_wrap p+p {
  margin-left: 9px;
  margin-top: -2px;
}
.mv_pic, .mv_pic img{
  display:block;
  width:100%;
  height:100%;
}
.mv_pic img{
  object-fit:cover;
}

/*arrow*/
.slick-arrow {position: absolute;bottom: -25px;padding: 25px 5px;}
.slick-prev {right: 40px;transform: rotate(-180deg);}
.slick-next {right: 0;}

.slick-track {display: flex !important;}

/* ドットの親要素（ul） */
.slick-dots {
  list-style: none;
  padding: 0;
  margin: 20px 0 0;
}
.slick-dots li {
  display: inline-block;
  vertical-align: middle;
}
.slick-dots li+li {
  margin-left: 9px;
}
.slick-dots li button {
  border: 1px solid #358a25;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  padding: 0;
  cursor: pointer;
  display: block;
  color: transparent;
  font-size: 0;
  line-height: 0;
}
.slick-dots li.slick-active button {
  background-color: #358a25; /* アクティブなドットの色 */
}

/*-----------------------------------------------

01_HOME INTRO

-----------------------------------------------*/
#home_intro {
  overflow: hidden;
}
#home_intro .cnt_l {
  padding: 210px 0 270px;
}
.home_intro__content {
  position: relative;
  z-index: 1;
}
.home_intro__label {
  margin-bottom: 60px;
}
.home_intro__label img {
  width: 175px;
  margin: 0 auto;
  display: block;
}
.home_intro__photo {
  position: absolute;
  z-index: 1;
  overflow: hidden;
}
.home_intro__photo,.about_intro__img img {
  width: 17vw;
  max-width: 330px;
}
.home_intro__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
}
.home_intro__photo--tl {top: 120px;left: 11vw;}
.home_intro__photo--tl,.about_intro__img .is_round {width: 11vw;max-width: 250px;}
.home_intro__photo--bl {top: 270px;right: 0;}
.home_intro__photo--br {right: 7vw;bottom: 120px;}
.home_intro__photo--tr {left: 0;bottom: 270px;}

.home_intro__text p {text-align: center;letter-spacing: 0.08em;}
.home_intro__text p+p {margin-top: 45px;}

.home_intro__bg {z-index: 0;}
.home_intro__bg span {display: block;
width: min(820px, 150vw);height: min(820px, 150vw);
background: url("img/common/bg_cmn_circle.svg?1") center/contain no-repeat;}
.home_intro__bg span {
  animation: introRotate 60s linear infinite;
  transform-origin: center center;
}
@keyframes introRotate {
  0% {transform: rotate(0deg);}
  100% {transform: rotate(360deg);}
}

/*-----------------------------------------------

01_HOME NEWS

-----------------------------------------------*/

/*title*/
.home_sec__head {position:relative;margin-bottom: 75px;}
.home_sec__title {text-align: center;}
.home_sec__title h2 {padding: 0 15px 24px 9px;margin: 0 auto 15px;position:relative;display: table;}
.home_sec__head .cmn_btn {position: absolute;top: 50%;right: 0;transform: translate(0, -50%);margin-top: 0;}

/* news list */
ul.news_list li {
  background: #fffffc;
}
.news_list__card {
  position: relative;
  padding: 45px 45px 33px;
}
.news_list__thumb {
  position: relative;
  display: block;
  margin-bottom: 27px;
}
.news_list__thumb img {
  width: 100%;
  display: block;
  object-fit: cover;
}
.news_list__label {
  position: absolute;
  right: 24px;
  top: 24px;
  padding-bottom: 15px;
}
.news_list__label .inner {
  position: relative;
  padding: 12px 27px;
  background: #358a25;
  color: #fffffc;
  border-radius: 0 0 5px 0;
}
.news_list__label .inner:after,.menu_cnt:after,.fv_newsFix_wrap:after {
  content: "";
  width: 30px;
  height: 15px;
  position: absolute;
  bottom: -11px;
  right: 0;
  background-image: url(img/common/bg_label.svg?4);background-repeat: no-repeat;background-size: cover;background-position: right bottom;
}
.news_list__date {
  position: absolute;
  left: 10px;
  top: 45px;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.news_list__title {
  margin-top: 12px;
}
/* 丸バッジ */
.news_list__badge {
  position: absolute;
  left: -24px;
  bottom: -15px;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  border: 1px solid #358a25;
  background: #fffffc;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/*-----------------------------------------------

01_HOME TENANT

-----------------------------------------------*/

.tenant_list article+article {
  margin-top: 120px;
}
.tenant_item__content {
  display: flex;
  justify-content: space-around;
  flex-direction: column;
  position: relative;
  z-index: 1;
}
.tenant_item__logo img {
  margin: 60px auto;
  width: 270px;
  display: block;
}
.tenant_list article:nth-child(2) .tenant_item__logo img {
  margin-top: 40px;
}
.tenant_item__main {
  padding-top: 30px;
  position:relative;
}
#home .tenant_item__main {
  padding-top: 0;
}
.tenant_item__main:after {
  content: "";
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
}
.tenant_item__main.tenant__cafe:after {
  background-image: url(img/home/tenant_bg_cafe.svg?1);
  width: 395px;
  height: 300px;
  top: 20px;
  left: -50px;
}
.tenant_item__main.tenant__shop:after {
  background-image: url(img/home/tenant_bg_shop.svg?1);
  width: 272px;
  height: 380px;
  top: -60px;
  left: -60px;
}
.tenant_item__main.tenant__space:after {
  background-image: url(img/home/tenant_bg_space.svg?1);
  width: 210px;
  height: 300px;
  top: -70px;
  left: -60px;
}
#home .tenant_item__main.tenant__shop:after {
  top: 100px;
  left: 35%;
}
#home .tenant_item__main.tenant__space:after {
  top: -30px;
}


/*-----------------------------------------------

01_HOME ACCESS

-----------------------------------------------*/

/* マップ枠 */
.access_map_block {
  position: relative;
  overflow: hidden;
}

/* アスペクト比固定（16:9くらい） */
.access_map_block::before {
  content: "";
  display: block;
  padding-top: 60%; /* 16:9 */
}

/* iframe or プレースホルダーの配置 */
.access_map_block iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.access_map_block__bottom {
  margin-top: 45px;
  display: flex;
  justify-content: space-between;
  align-items: start;
} 
.access_map_block__bottom .cmn_btn {
  margin-top: -15px;
}
.access_map_block__addr {
  margin-bottom: 30px;
}

/*-----------------------------------------------

FOOTER

-----------------------------------------------*/

footer#footer {margin-top: 60px;}

footer#footer,footer#footer a,.menu,.menu a {color: #fffffc;}
footer#footer a:hover,.menu a:hover,#space_fix_nav a:hover,.faq_item .toggle:hover {opacity:0.7;}

/* メインフッターのグリーン部分 */
.footer_main {
  background-color: #358a25;
  padding-top: 90px;
  padding-bottom: 27px;
}
.footer_inner {
  display: flex;
  justify-content: space-between;
  column-gap: 40px;
  align-items: flex-start;
}
.footer_copy {
  margin-bottom: 60px;
}
.footer_copy p {
  padding: 30px 75px 30px;
  background-image: url(img/common/img_yosugakun.svg);
  background-repeat: no-repeat;
  background-size: 48px auto;
  background-position: center left;
}
.footer_copy.sp {display:none;}

/* フッター+ハンバーガーメニュー内 ナビ */
.main_nav ul {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  row-gap: 60px;
  column-gap: 45px;
}
.main_nav a span:nth-child(2) {
  display: block;
  margin-top: 18px;
}

/* 右側：ロゴ＋住所 */
.footer_info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 48px;
}
.footer_logo {
  display: block;
  margin: 0 auto;
}
.footer_logo img {
  width: 135px;
}

/* 下段・SNSとコピーライト */
.footer_bottom {
  margin-top: 90px;
}

.footer_bottom__inner {
  width: calc(100% - 48px);
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Instagram */
.sns_insta__link {
  display: inline-flex;
  width: 27px;
  height: 27px;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  border-radius: 6px;
  border: 1px solid #fffffc;
}
.sns_insta__icon {
  position: relative;
  width: 100%;
  height: 100%;
}
.sns_insta__icon::before {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  border: 1px solid #fffffc;
}
.sns_insta__icon::after {
  content: "";
  position: absolute;
  right: 2px;
  top: 3px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #fffffc;
}
a.sns_insta__link:hover {
  background-color: #fffffc;
}
a.sns_insta__link:hover .sns_insta__icon::before {
  border: 1px solid #358a25;
}
a.sns_insta__link:hover .sns_insta__icon::after {
  background-color: #358a25;
}

/* 上のラインアート帯 */
.footer_pattern {margin-bottom: 5px;overflow: hidden;}

/*carousel_slider_wrap*/
.carousel_slider_wrap {
  position: relative;
  width: 100%;
}
.carousel_slider_inner {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: footer-marquee 90s linear infinite;
  /* 追記 */
  transform: translateZ(0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.carousel_slider_inner ul {
  display: flex;
  flex: 0 0 auto;
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: center;
}

.carousel_slider_inner ul{
  gap: 0;
}
.carousel_slider_inner ul li {
  position: relative;
}
.carousel_slider_inner li{
  flex: 0 0 auto;
  width: calc(100vw / 2.5);
  margin-left: -30px;
}

/* 2セットある前提で「半分」動かすとシームレスになりやすい */
@keyframes footer-marquee{
  from {transform: translate3d(0, 0, 0);}
  to   {transform: translate3d(-50%, 0, 0);}
}

/*-----------------------------------------------

MENU

-----------------------------------------------*/
/*menu icon*/
.menu_btn_wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 50px;
}
.menu_btn_wrap .menu_icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.menu_btn_wrap .menu_icon span:before,
.menu_btn_wrap .menu_icon span:after {
  height: 1px;
  background-color: #358a25;
  -webkit-transition: 0.3s ease all;
  -moz-transition: 0.3s ease all;
  -ms-transition: 0.3s ease all;
  transition: 0.3s ease all;
  transform-origin: center;
  transition: all .25s ease;
}
.menu_btn_wrap .menu_icon span {
  display: inline-block;
  width: 27px;
  vertical-align: middle;
  position: relative;
}
.menu_btn_wrap .menu_icon span:before {
  top: -5px;
}
.menu_btn_wrap .menu_icon span:after {
  bottom: -5px;
}
.menu_btn_wrap .menu_icon span:before,
.menu_btn_wrap .menu_icon span:after {
  content: "";
  position: absolute;
  width: 100%;
}

/*close*/
.menu_on header .menu_btn_wrap .menu_icon span:before,.menu .menu_btn_wrap .menu_icon span:before {
  top: 0;
  transform: rotate(-43deg);
}
.menu_on header .menu_btn_wrap .menu_icon span:after,.menu .menu_btn_wrap .menu_icon span:after {
  transform: rotate(43deg);
  bottom: -2px;
}

/*content*/
.menu {
  opacity: 0;
  z-index: 9999;
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.menu_wrap {
  width: auto;
  height: 100%;
  position: absolute;
  right: 24px;
  top: 24px;
}
.menu_inner {
  position: relative;
  width: 100%;
  height: 100%;
}
.menu_cnt {
  position: relative;
  width: 100%;
  height: calc(100% - 52px);
  background: #358a25;
  border-radius: 0 0 10px 0;
}
.menu_cnt:after,
.fv_newsFix_wrap:after {
  width: 61px;
  height: 25px;
  bottom: -20px;
}
.menu_head {
  display: flex;
  justify-content: space-between;
  top: 27px;
  width: calc(100% - 48px);
}
.menu_title {
  width: 75px;
}
.menu_btn {margin-top: -3px;}
.menu_head_btn {
  display: flex;
  column-gap: 24px;
}
.menu_main {
  padding: 20vh 45px 0;
}
.menu_copy {
  position: absolute;
  bottom: 11vh;
}
.menu .main_nav ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  row-gap: 4.5vh;
  column-gap: 45px;
}
.menu_copy_small {
  position: absolute;
  bottom: 18px;
  left: 21px;
}

.menu .menu_btn_wrap .menu_icon span:before,.menu .menu_btn_wrap .menu_icon span:after {background-color:#fffffc;}
.menu_on main,.menu_on footer,.menu_on .header_title, .menu_on .header_inner .header_btn_wrap:nth-of-type(2) {
  -ms-filter: blur(5px);
  filter: blur(5px);
}

/*-----------------------------------------------

FV BANNER

-----------------------------------------------*/

.fv_newsFix {
  position: fixed;
  display: block;
  z-index: 80;
}
.fv_newsFix,
#space_fix_nav {
  bottom: 30px;
  right: 24px;
}
.fv_newsFix.display_on,
.home .fv_newsFix {
  display: block;
}
.fv_newsFix.display_off,
.page .fv_newsFix {
  display: none;
}
.fv_newsFix {
  width: 380px;
  opacity: 0;
}
.fv_newsFix_wrap {
  width: 100%;
  background: #fffffc;
  border-radius: 0 0 10px 0;
  position: relative;
}
.fv_newsFix_wrap:after {
  background-image: url(img/common/bg_label_wh.svg);
}
.fv_newsFix_wrap:hover {
  background: #358a25;
}
.fv_newsFix_wrap:hover a {
  color: #fffffc;
}
.fv_newsFix_wrap:hover:after {
  background-image: url(img/common/bg_label.svg?4);
}
.fv_newsFix_wrap:hover .fv_newsFix_icon a {
  border: 1px solid #fffffc;
}
.fv_newsFix_wrap a {
  width: 100%;
  height: 100%;
  display: block;
}
.fv_newsFix_inner {
  display: flex;
  align-items: center;
  width: 100%;
  column-gap: 6px;
}
.fv_newsFix figure {
  height: 100%;
  width: 30%;
}
.fv_newsFix figure .c_pic {
  margin: 10px;
}
.fv_newsFix_text_wrap {
  width: 70%;
  padding-right: 15px;
  display: flex;
  flex-direction: column;
}
a:hover .fv_newsFix_text_wrap p {
}
.fv_newsFix_text_wrap p:nth-child(1) {
  display: inline-block;
  margin-bottom: 9px;
}
.fv_newsFix_text_wrap p:nth-child(2) {
  text-decoration: underline;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 1.6;
}

/*close icon*/
.fv_newsFix_icon {
  position: absolute;
  top: -9px;
  right: -9px;
}
.fv_newsFix_icon a {
  width: 30px;
  height: 30px;
  border-radius:100%;
  background-size: cover;
  text-align: center;
  z-index: 10;
  text-decoration: none;
  margin: 0;
  padding: 0;
  border: none;
  display: block;
  background:#358a25;
}
.fv_newsFix_icon a:hover {
  cursor: pointer;
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  cursor:pointer;
  transition-duration: .3s;
  transition-timing-function: ease-in-out;
}
.fv_newsFix_icon a .inner,
.fv_newsFix_icon a .inner span {
  transition: all .4s;
}
.fv_newsFix_icon a .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  width: 18px;
  height: 1px;
}
.fv_newsFix_icon a .inner span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background:#fff;
}
.fv_newsFix_link span:nth-of-type(1) {
  -webkit-transform: translateY(0) rotate(-45deg);
  transform: translateY(0) rotate(-45deg);
  top: 0;
}
.fv_newsFix_link span:nth-of-type(2) {
  -webkit-transform: translateY(0) rotate(45deg);
  transform: translateY(0) rotate(45deg);
  bottom: 0;
}

/* footer が見えてる間だけ強制的に隠す */
.is-hide-by-footer{
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity .25s ease, transform .25s ease;
}

/*-----------------------------------------------

SECOND COMMON

-----------------------------------------------*/

/*second p_mv*/
.p_mv {
  width: 100%;
  height: 800px;
  position: relative;
}
.p_mv .inner {
  column-gap: 0;
  position: absolute;
  top: 57%;
}

.p_mv__left figure,.p_mv__left figure img {
  height: auto;
  width: 100%;
  max-height: 500px;
}
.p_mv__right .p_mv__title {
  background-image: url(img/common/bg_p_mv_title.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 280px auto;
  height: 176px;
  text-align: center;
  display: flex !important;
  flex-direction: column;
  row-gap: 21px;
  padding-top: 51px;
}
.p_mv__right .p_mv__title p,.p_mv__right .p_mv__title h1 {line-height: 1;}
.p_mv__text p {
  text-align: center;
  margin: 40px 0 0;
}

.p_mv_none {padding-top: 172px;}

.p_intro__head {
  margin-top: -15px;
  margin-bottom: 75px;
}
#about .p_intro__head {
  margin-bottom:0;
}

/*section common*/
.sec_title {
  background: #fffffc;
  padding: 36px 0 33px;
  margin-bottom: 75px;
  text-align: center;
}
.cmn_sec_row_wrap > .cmn_sec_row + .cmn_sec_row {margin-top: 90px;}
.cmn_sec_row_cnt {
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: end;
}
.cmn_sec_row_cnt h3 {
  margin-bottom: 24%;
  text-align: center;
}
.cmn_sec_row.is_reverse .cmn_sec_row_cnt:nth-child(1) {order: 2;}
.cmn_sec_row.is_reverse .cmn_sec_row_cnt:nth-child(2) {order: 1;}

.cmn_sec_row_cnt.left {padding-left: 20%;padding-right:0;}
.cmn_sec_row_wrap > .cmn_sec_row:nth-child(2) > .cmn_sec_row_cnt:nth-child(1) {padding-right: 20%;}

#about_name .cmn_sec_row_wrap > .cmn_sec_row:first-child {height: 420px;}
#about_name .cmn_sec_row_wrap > .cmn_sec_row:first-child > .cmn_sec_row_cnt:nth-child(2) {justify-content: center;align-items: center;}
#about_name .cmn_sec_row_wrap > .cmn_sec_row:first-child > .cmn_sec_row_cnt:nth-child(2) img {width: 330px;}
#about .cmn_sec_row_cnt p { margin-bottom: 30px;}

/*breadcrump*/
nav.breadcrumbs {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
#home_mv h1,nav.breadcrumbs {
  right: 24px;
  left: unset;
}
nav.breadcrumbs ul {
  display: flex;
  gap: 3px;
}
nav.breadcrumbs ul li + li {
  position: relative;
  padding-top: 21px;
}
nav.breadcrumbs ul li + li::before {
  content: "";
  position: absolute;
  background: #358a25;
  width: 1px;
  height: 9px;
  top: 3px;
  left: 48%;
  transform: translateX(-50%);
}

/*-----------------------------------------------

ABOUT

-----------------------------------------------*/

/* メイン */
.about_intro__main {
  position: relative;
  padding-top: 8vw;
}
.about_intro__main figure.about_intro__title {
  position: absolute;
  top: 0;
  right: 7vw;
  width: 30vw;
  max-width: 450px;
  z-index: 1;
}
.about_intro__main figure.c_pic {
  width: 50vw;
  max-width: 900px;
  margin: 0 auto;
}
/*グリッド*/
.about_intro__grid {
  display: flex;
  flex-direction: column;
  padding-bottom: 450px;
}
.about_intro__text {
  display: table;
  margin: 3vw auto 0;
  width: 35%;
}
.about_intro__grid p:first-child {
  margin-top: 8vw;
}

/* 画像共通 */
.about_intro__img img {
  position: absolute;
  opacity: 0;
}

.about_intro__img--sub1 img:nth-child(1) {left: 3vw;top: -60px;}
.about_intro__img--sub1 img:nth-child(2) {right:18%;top:-150px;}
.about_intro__img--sub2 img:nth-child(1) {left: 7vw;top: 50px;}
.about_intro__img--sub2 img:nth-child(2) {top: -150px;right: 0;width: 13vw;max-width: 280px;}
.about_intro__img--sub3 img:nth-child(1) {left: 18vw;top: 150px;}
.about_intro__img--sub3 img:nth-child(2) {right: 20%;top: 100px;}

/*-----------------------------------------------

FLOOR

-----------------------------------------------*/

.tenant_item__mv {
  margin-bottom: 30px;
}
.tenant_item__detail > p+dl {
  margin-top: 36px;
}
.cmn_flex_2 {display:flex;column-gap: 15px;margin-top: 45px;align-items: center;}
.cmn_flex_2 a {margin-top:0;}

/*非表示見出し*/
.sr_only{
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

/*news*/
floor_tenant_list .tenant_item__news,
#floor_tenant_list .tenant_item__news_main,
#floor_tenant_list .news_block__body{
  width: 100%;
  min-width: 0;
}
.tenant_item__news {
  margin-top: 60px;
}
.tenant_item__news_main {
  display: flex;
  column-gap: 90px;
}
.news_block__head {
  display: inline-flex;
}
.tenant_item__news_title {
  white-space: nowrap;
  writing-mode: vertical-rl;
}
#floor_tenant_list .news_list{
  --gap: 30px;
  column-gap: var(--gap);
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: 1fr;
  row-gap: 0;
  /* ★ singleでも通常でも同じ幅ルールにする */
  grid-auto-columns: min(
    720px,
    calc((100% - var(--gap) * 2) / 2.5)
  );
  grid-template-columns: none;
  padding-bottom: 15px;
}
#floor_tenant_list .news_list.is-single {
  overflow-x: visible;
}
.tenant_item__news .cmn_btn {
  margin-right: unset;
  margin-left: auto;
  margin-top: 20px;
}

/*-----------------------------------------------

ACCESS

-----------------------------------------------*/

/*車*/
#access_car_block article h3 {
  text-align: left;
  margin-bottom: 45px;
}
#access_car_block .cmn_sec_row_cnt {
  justify-content: center;
}

/* バス */
.access_bus_route {margin-top: 75px;padding: 45px 15px;}
.access_bus_route h3 {margin-bottom: 45px;}
.access_bus_route+.access_bus_route {margin-top: 0;}
.access_bus_route .cmn_btn {margin-top: 30px;}

.access_bus_flow_inner {
  display: flex;
  column-gap: 100px;
  justify-content: space-between;
}
.access_bus_flow {
  display: flex;
  align-items: stretch;
  gap: 24px;
  flex-wrap: nowrap;
}
.access_bus_flow > *{
  flex-shrink: 0;
}
.bus_step,.bus_goal,.bus_arrow {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
}
.bus_arrow {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}
.bus_arrow .cmn_arrow {
  padding: 9px 0;
  width: 100%;
}
.bus_info {
  display: flex;
  align-items: center;
}
.bus_info dl {
  background: #fff;
  padding: 30px 45px;
}
.bus_step {
  border: 1px solid #358a25;
  aspect-ratio: 1 / 1;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}
.access_bus_flow >.bus_step:nth-child(1) p span {
  display: block;
}
.access_bus_flow >.bus_step:nth-child(1) p span:first-child {
  margin-bottom: 5px;
}
.access_bus_flow >.bus_step:nth-child(1) p span:first-child,
.access_bus_route:last-child .access_bus_flow >.bus_step:nth-child(1) p span {
  line-height: 1.55;
}
.access_bus_flow_scroller {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  min-width: 0;
  flex: 1 1 0%;
}
.access_bus_flow_inner{
  align-items: center;
}
.access_bus_flow_scroller .cmn_btn {
  margin-left: auto;
  display: inline-flex;
}


/*-----------------------------------------------

SPACE

-----------------------------------------------*/

/* TABLE風レイアウト（dl） */
.space_table {
  display: grid;
  row-gap: 0;
  border-top: 1px solid #358a25;
}
.space_row {
  display: grid;
  grid-template-columns: 240px 1fr;
  column-gap: 30px;
  padding: 39px 15px 38px;
  border-bottom: 1px solid #358a25;
}
.space_row dd {
  margin: 0;
}
.space_row dd ul {
  margin-top: 9px;
}

/* リスト */
.cmn_dot_list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.cmn_dot_list li,
.post_content ul li {
  position: relative;
  margin-right: 30px;
  margin-left: 18px;
  list-style: none;
}
.cmn_dot_list li:before,
.post_content ul li:before {
  top: 45%;
}
.cmn_note_list li::before {
  content: "※";
  margin-right: 2px;
}

/* 料金バッジ */
.fee_badge {
  display: inline-block;
  margin-right: 6px;
  padding: 3px 10px;
  border: 1px solid #358a25;
  border-radius: 999px;
  font-size: 0.85em;
  line-height: 1;
}

/* 注意文 */
.fee_notes {
  font-size: 0.9em;
  line-height: 1.7;
}

/* 利用方法（フロー） */
.use_flow {
  margin-top: 45px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 60px;
}
.use_flow__steps {
  display: grid;
  row-gap: 30px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.use_flow__steps li,
h3.use_flow__steps {
  display: flex;
  align-items: baseline;
  gap: 14px;
}
.use_flow__num {
  flex: 0 0 28px;
  height: 28px;
  border-radius: 50%;
  background: #358a25;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1px 0 0 1px;
}
.use_flow__txt {
  line-height: 1.7;
}
.use_flow__txt a {
  display: inline-block;
  text-decoration: underline;
}

/* カレンダー */
.space_calendar {
  /*margin-top: 90px;*/
  margin: 45px auto 75px;
}
.space_calendar iframe {
  display: block;
  width: 100%;
  border-radius: 12px;
  background: #fff;
}

/* スライダー */
.space_intro__mv.slider_item {margin-top: 120px;}
.space_intro__mv .slider_caption {
  padding-top: 15px;
  text-align: center;
}
.space_intro__mv .slick-arrow {bottom: -18px;z-index: 99;}
.space_intro__mv .slick-dots {margin: -18px 0 0;position: relative;z-index: 0;}

/*space専用：追従ナビ*/
#space_fix_nav {
  position: fixed;
  z-index: 100;
  background: #358a25;
  border-radius: 50px;
  margin: 0;
  padding: 0 12px;
  column-gap: 0px;
}
#space_fix_nav .cmn_btn {
  background: none;
  color: #fffffc;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 190px;
}
#space_fix_nav .cmn_arrow:before {background: #fffffc;}
#space_fix_nav .cmn_arrow:after {border-color: #fffffc;}

/* =========================
  SP調整
========================= */
@media (max-width: 559px){
  .space_info__block + .space_info__block {
    margin-top: 90px;
  }
  .space_row,
  .fee_row {
    grid-template-columns: 1fr;
    row-gap: 12px;
    padding: 22px 0;
  }
  .space_calendar iframe {
    height: 520px;
  }
}

/*-----------------------------------------------

FAQ

-----------------------------------------------*/

.faq_item {
  border-bottom: 1px solid #358a25;
}
.faq_item:first-child {
  border-top: 1px solid #358a25;
}
.faq_item .toggle {
  display: flex;
  align-items: flex-start;
  gap: 30px;
  padding: 30px 40px 30px 0;
  cursor: pointer;
  position: relative;
  font-weight: 500;
  line-height: 1.6;
}
.faq_item .toggle .q {
  line-height: 1;
}
.faq_item .acc_content {
  display: none;
  padding: 0 0 45px 51px;
}

#faq .faq_block h2 {margin: 75px 0 30px;}

/*accordion*/
.accordion_icon,.accordion_icon span {display: inline-block;transition: all .4s;box-sizing: border-box;}
.accordion_icon {position: absolute;width: 27px;height: 27px;top: 50%;right:5px;}
.accordion_icon span {position: absolute;width: 100%;height: 1px;background-color: #358a25;}
.accordion_icon span:nth-of-type(1) {transform: rotate(0deg);-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-ms-transform: rotate(0deg);-o-transform: rotate(0deg);}
.accordion_icon span:nth-of-type(2) {transform: rotate(90deg);-webkit-transform: rotate(90deg);-moz-transform: rotate(90deg);-ms-transform: rotate(90deg);-o-transform: rotate(90deg);}
.accordion_icon.active span:nth-of-type(1) {transform: rotate(-45deg);}
.accordion_icon.active span:nth-of-type(2) {transform: rotate(45deg);}

/*-----------------------------------------------

NEWS

-----------------------------------------------*/

/* カテゴリタブ全体 */
.news_head_catlist {
  margin: 0 0 75px;
  overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;overscroll-behavior-x: contain;
  position: relative;
}
.news_head_catlist ul{
  display: inline-flex;
  align-items: center;
  gap: 36px;
  position: relative;
  padding: 0 5px 45px 0;
  list-style: none;
}
.news_head_catitem > a {
  display: inline-block;
  white-space: nowrap;
}
.news_head_catitem.is-active > a,.news_head_catitem > a:hover {
  font-weight: 700;
}
.news_head_catlist_wrap {
  position: relative;
  width: 700px;
}
.news_head_catlist_wrap::after,
.home_sec__title h2::after {
  content:"";
  position:absolute;
  left: 0;
  right: 0;
  bottom: 13px;
  width: calc(100% - 44px);
  height: 1px;
  border: 1px solid #358a25;
  border-top: none;
  border-left: none;
  border-right: none;
  pointer-events: none;
  opacity: 1;
}
.news_head_catlist_wrap::before,
.home_sec__title h2::before {
  content:"";
  position:absolute;
  right: 0;
  bottom: 0;
  width: 45px;
  height: 24px;
  background-repeat: no-repeat;
  background-image: url(img/news/bg_head_catlist.svg?2);
  background-position: bottom left;
}

/*single*/
#news-single .news_list__label {
  position: unset;
  padding: 0;
}
#news-single .post_title {margin-bottom: 60px;}
#news-single .post_title .cmn_flex_2 {margin-top: 30px;column-gap: 21px;}

nav.post_morebtn span:nth-child(1) {padding: 0;transform: rotate(180deg);}
nav.post_morebtn a:hover span:nth-child(1) {transform: rotate(180deg) translateX(3px);}
nav.post_morebtn span:nth-child(2) {text-align: center;}

#news-single .news_list__badge {
  bottom: unset;
  top: -45px;
  left: unset;
  right: -45px;
  font-size: 18px;
  width: 96px;
  height: 96px;
}

/*-----------------------------------------------

CONTACT

-----------------------------------------------*/

/*カスタム*/
/*contact-form7*/
.form_list_wrap {
  width: 76%;
  margin: 6rem auto 0;
}
dl.form_list {display: grid;width: 100%;margin: 0 0 40px;position: relative;grid-template-columns: 1fr 2fr;column-gap: 30px;}
dl.form_list dt:before {content:none;}
dl.form_list dt span {display: flex;align-items: center;justify-content: space-between;}
dl.form_list dt sup {color:#e72d22;padding-top: 2px;}

.wpcf7-not-valid-tip {font-family:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Hiragino Sans",serif;font-weight:700;font-style: normal;font-size: 1.5rem !important;margin-top: 3px;letter-spacing: 0.08em;line-height: 1.8;color:#e72d22 !important;}
.form_list_cnt > .wpcf7-response-output:first-of-type {margin: 0 0 50px !important;}
.wpcf7 form .wpcf7-response-output {font-size: 16px;line-height: 1.8;text-align: center;}

/*注意事項*/
.form_list_txt_p {text-align: center;margin: 6rem 0 4.5rem;}
.form_list_txt_p h4+p {margin: 15px 0 30px;}
.form_list_txt_p a {display: inline-flex;}

/*チェックボックスカスタマイズ*/
input.text-input-small {width: auto !important;}
.wpcf7-form-control-wrap {display: block;}
.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
}
span.wpcf7-list-item {position: relative;width:100%;margin:0 0 12px !important;}
.wpcf7-list-item-label {cursor: pointer;}
input[type="checkbox"] {position: absolute;opacity: 0;}
.wpcf7-list-item-label:before {content: '';border: 1px solid #358a25;background: #fffffc;display: inline-block;width: 15px;height: 15px;position: relative;top: 0;margin-right: 10px;vertical-align: middle;cursor: pointer;text-align: center;border-radius: 50px;}
input[type="checkbox"]:checked + .wpcf7-list-item-label:after { content: "";display: block;position: absolute;top: 6px;left: 5px;background:#358a25;border-radius: 50px;height:7px;width:7px;
}
form input[type="date"], form input[type="email"], form input[type="password"], form input[type="tel"], form input[type="text"], form select, form textarea {
  width: 100%;
  margin-bottom: 0;
  position: relative;
  z-index: 0;
  text-align: left;
  border: 1px solid #358a25;
  background-color: #fffffc;
}
form input[type=date],form input[type=email],form input[type=password],form input[type=tel],form input[type=text],form select,form textarea {
  padding: 14px;
}
form input[type="submit"] {color:#358a25;}

/*掲示枠*/
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output {
  border-color: #e72d22 !important; /* red */
  color: #e72d22;
  margin: 50px 0 25px;padding: 20px 15px;border: 2px solid;
  font-family: "Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Hiragino Sans",serif;font-weight:500;font-style: normal;
}
.wpcf7 form.sent .wpcf7-response-output {
  display:none;
}
.wpcf7 form.sent .form_list_wrap > .wpcf7-response-output:first-child,.wpcf7 form.invalid .form_list_wrap > .wpcf7-response-output:first-child,.wpcf7 form.unaccepted .form_list_wrap > .wpcf7-response-output:first-child {
  margin-top: 0;
  margin-bottom: 30px;
}
.wpcf7 form.sent .form_list_wrap > .wpcf7-response-output:last-child,.wpcf7 form.invalid .form_list_wrap > .wpcf7-response-output:last-child,.wpcf7 form.unaccepted .form_list_wrap > .wpcf7-response-output:last-child {
  margin: 30px 0 -15px;
}
.wpcf7 form.invalid .hidden-fields-container + .wpcf7-response-output,.wpcf7 form.unaccepted .hidden-fields-container + .wpcf7-response-output,.wpcf7 form.sent .hidden-fields-container + .wpcf7-response-output {
  margin: -30px 0 50px;
}
span.wpcf7-spinner {
  margin: 24px auto;
  display: block;
}

/* THANKS */
#thanks_main h2 {text-align: center;margin-bottom: 60px;}
#thanks_main p {text-align: center;}

/* CONTACT BOTTOM */
#contact_bottom {border-top: 1px solid #358a25;text-align:center;}
#contact_bottom h2 {margin-bottom: 45px;}
#contact_bottom h3 {margin-bottom: 15px;}

/*-----------------------------------------------

POST CONTENT

-----------------------------------------------*/

.post_nav {
  margin-top: 120px;
  padding: 60px 0 0;
  border-top: 1px solid #358a25;
}
.post_nav .c_btn {
  margin: 0 auto;
}

/*SINGLE*/
.post_content {
  text-align:justify;
  word-break:break-all;
}
.post_content > h2:first-child,.post_content > h3:first-child {margin-top: 0;}
.post_content h2,.privacy_main h3 {
  margin: 6rem 0 4.5rem;
}
.post_content h3 {margin: 4.5rem 0 1.2rem;}
.post_content a {
  text-decoration:underline;
  display:inline-block;
}
.post_content a:hover {
  transition: all ease .5s;
  opacity:.6;
}
.post_content pre a {text-decoration:unset;}
.post_content pre a:hover {opacity:1;}
.post_content img {
  display:block;
  max-width:100%;
  height:auto;
}
.post_content br {
  width:0;
  height:0;
  margin:0;
  padding:0;
}
.post_content .aligncenter {
  margin-right:auto;
  margin-left:auto;
}
.post_content .alignright {
  float:right;
}
.post_content .alignleft {
  float:left;
}
.post_content aside.post_info,.post_info_h {
  margin-top: 90px;
}
.post_content > p+p {
  margin-top: 1.5rem;
}
.post_content ul,.post_content ol,
.post_content > pre+p,
.post_content > p+pre,
.post_content > pre+div,
.post_content > img+pre,
.post_content > pre+img {
  margin-top: 3rem;
}
.post_content > ul+p,
.post_content > ol+p {
  margin-top: 1.5rem;
}
.post_content > picture {
  margin-bottom: 4.5rem;
  display: block;
}
.post_content > div+p,
.post_content > p+div,
.post_content > div+div,
.post_content > img+p,
.post_content > p+img,
.post_content > img+img,
.post_content p > img+img,
.post_content > img+div,
.post_content > div+img {
  margin-top: 4.5rem;
}
.post_content .wp-caption-text {
  margin: .78125rem 0 0;
  color: rgba(0,0,0,.5);
}
.post_content .wp-caption {
  max-width: 100% !important;
}
.post_content ol {padding-inline-start: 25px;}
.post_content ol li {list-style-type: decimal;}
.post_content ol li,.post_content ul li {display: list-item;text-align: -webkit-match-parent;}
.post_content ol li+li,.post_content ul li+li {margin-top: 9px;}
.post_content ul li {
  list-style-type: none;
  position: relative;
}
.post_content hr {
  margin-top: 60px;
  margin-bottom: 30px;
}
.post_content iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 3;
  margin: 3rem 0;
}

/*-----------------------------------------------

PAGER

-----------------------------------------------*/

nav.pagenav_wrap {
  display: table;
  margin: 0 auto;
}
.wp-pagenavi {
  display: flex;
  align-items: center;
}
.pager {
  display:inline-block;
  vertical-align:middle;
  text-align:center;
  margin:0;
  padding:0;
  box-sizing: border-box;
  position: relative;
  line-height:45px;
  width: 45px;
  height: 45px;
  overflow: hidden;
}
a.pager.larger,a.pager.smaller {
  border: 1px solid #358a25;
  border-radius: 100%;
}
a.pager.larger:hover,a.pager.smaller:hover {
  background: #358a25;
  color: #fff;
}
.pager+.pager {
  margin-left: 1rem;
}
span.pager {
  margin-right: -2px;
}
span.pager:after {
  content:none;
}
.pager[rel~="prev"]:after,
.pager[rel~="next"]:after {
  content:none;
}
.pager.larger:before,.pager.smaller:before {
  content:none;
  width: unset;
  height: unset;
  background:none;
  position: unset;
  right: unset;
  left: unset;
  top: unset;
  transform: unset;
}
.pages {
  display: none;
}
.wp-pagenavi a.first,
.wp-pagenavi a.last,
.wp-pagenavi .extend {
  font-size: 15px;
}
.wp-pagenavi .extend {
  margin: -9px 15px 0 15px;
}