@charset "UTF-8";

/* ----------------------------------------
font import
 ---------------------------------------- */ 
@import url('https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');

/* ----------------------------------------
html
 ---------------------------------------- */ 
html {
  font-size: calc(16px / 1.6); /*基準値16px*/
  margin-top: 0 !important;
}
/* SP */
@media (max-width: 768px) {
  html {
  }
}

/* ----------------------------------------
font
 ---------------------------------------- */ 
.ff_serif{font-family: "Zen Old Mincho", serif;}
.ff_sans{font-family: dnp-shuei-gothic-kin-std, sans-serif;}

/* ----------------------------------------
body
 ---------------------------------------- */ 
body{
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	line-height: 2;
  letter-spacing: 0.05em;
	font-size: 1.6rem;
	color: #464646;
	background-color: #fdf9f7;
	overflow-y: scroll;/* load時のガク付き防止 */
  font-family: "DNP 秀英角ゴシック金 Std", "DNPShueiGoKinStd", "Zen Old Mincho", serif;
  font-family: dnp-shuei-gothic-kin-std, sans-serif;
  font-weight: 500;/*medium*/
  box-sizing: border-box;
  text-align: justify;
}
/* sp */
@media (max-width: 768px) {
  body{
    font-size: 1.4rem;
  }
  body.gnav_active{
    overflow: hidden;
  }
}

/* ----------------------------------------
setting
 ---------------------------------------- */ 
*, :after, :before {
  border: 0;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

img{
	vertical-align: top;
  width: auto;
  max-width: 100%;
}
img:not(.no-round){
  border-radius: 10px;
}
picture{
  display: inline-block;
}

a{
  word-break: break-word;
  color: inherit;
	text-decoration: underline;
  transition: 0.2s;
}

/* hoverで半透明 */
  a:hover{
    opacity: 0.5;
  }

/* 半透明にした際、Chromeで画像の1pxズレる現象を防ぐ */
a img{
	backface-visibility: hidden;
}

sup{
  vertical-align: super;
  font-size: smaller;
}

/* ---------------------------------------------------------------- *
	medhia
 * ---------------------------------------------------------------- */

/* PC */
@media (min-width: 769px){
  .no-pc { display: none !important;}
}
/* SP */
@media (max-width: 768px) {
  .no-sp { display: none !important;}
}
/* print */
@media print {
}

/* PC */
@media (min-width: 769px){
}
/* SP */
@media (max-width: 768px) {
}
/* print */
@media print {
}

/* ----------------------------------------
wrap
 ---------------------------------------- */ 
#wrap{
  overflow: hidden;
}

/* ----------------------------------------
inner
 ---------------------------------------- */ 
.inner{
  width: 100%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
/* tab */
@media (max-width: 1050px) {
  .inner{
    width: calc(100% - 40px);
  }
}

/* ----------------------------------------
見出し
 ---------------------------------------- */ 
/* --- h1 --- */
h1:not(.page_mvTtl):not(.no_heading){
  font-size: 2.6rem;
  color: #3a9d27;
  font-weight: 700;
  margin-bottom: 0.4em;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 250px;
  text-align: center;
  letter-spacing: 0.05em;
}
/* SP */
@media (max-width: 768px) {
  h1:not(.page_mvTtl):not(.no_heading){
    font-size: 1.9rem;
    text-align: left;
    padding-top: 100px;
  }
}
/* --- page_mvTtl --- */
.page_mvTtlBox{
  min-height: 500px;
  background-color: #fdf9f7;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.page_mvTtlBox::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0.45;
  background-color: #464646;
  mix-blend-mode: multiply;
  z-index: 2;
}
.page_mvTtlBox::after{
  content: "";
  background-image: url(../img/common/bg_wave_mv.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center top;
  display: block;
  position: absolute;
  width: 100%;
  height: 60px;
  max-height: 60px;
  left: 0;
  right: 0;
  bottom: -4px;
  z-index: 3;
}
.page_mvTtlWave img{
  width: 100%;
  height: 100%;
}
h1.page_mvTtl{
  display: block;
  font-size: 3.3rem;
  letter-spacing: 0.2em;
  color: #fff;
  text-align: center;
  font-weight: 700;
  text-shadow: 0 0 15px rgba(0,0,0,0.80);
  position: relative;
  z-index: 4;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 30px;
}
.page_mvTtlBox_bg{
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  z-index: 1;
}
.page_mvTtlBox_bg picture{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.page_mvTtlBox_bg img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
/* SP */
@media (max-width: 768px) {
  .page_mvTtlBox{
    min-height: 333px;
  }
  .page_mvTtlBox::after{
    height: calc(4.534vw + 3px);
    background-image: url(../img/common/bg_wave_mv_sp.svg);
  }
  h1.page_mvTtl{
    font-size: 2.2rem;
    padding-bottom: 6px;
  }
}

/*if_page_mvTtl_deco*/
.if_page_mvTtl_deco{
  display: none;
  position: absolute;
  z-index: 4;
  bottom: 0;
  right: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* --- h2 --- */
h2:not(.no_heading){
  font-size: 2.2rem;
  color: #3a9d27;
  margin-bottom: 1.8em;
}
h2:not(.no_heading)::after{
  content: "";
  display: block;
  padding-top: 0.4em;
  font-size: 2.2rem;
  border-bottom: 2px dotted #3a9d27;
}
/* PC */
@media (min-width: 769px){
  h2.h2fs_big:not(.no_heading){
    font-size: 2.6rem;
  }
}
/* SP */
@media (max-width: 768px) {
  h2:not(.no_heading){
    font-size: 1.6rem;
    margin-bottom: 1.5em;
    letter-spacing: 0.075em;
  }
  h2:not(.no_heading):last-child{
    margin-bottom: 0;
  }
  h2:not(.no_heading)::after{
    padding-top: 0.3em;
    max-width: 127px;
  }
  h2.letterspacingPc-0:not(.no_heading)::after{
    max-width: 135px;
  }
}
/* --- h3 --- */
h3:not(.no_heading){
  font-size: 2.6rem;
  color: #3a9d27;
  font-weight: 700;
  margin-bottom: 0.7em;
  letter-spacing: 0.075em;
}
.inview h3:not(.no_heading),
.inviewBox h3:not(.no_heading){
  margin-bottom: 0.2em;
}
h3:not(.no_heading) em{
  font-style: normal;
  font-size: 1.6rem;
}
/* SP */
@media (max-width: 768px) {
  h3:not(.no_heading){
    font-size: 1.9rem;
    margin-bottom: 0.7em;
  }
  h3.fs_sp_mini:not(.no_heading){
    font-size: 1.6rem;
  }
  h3:not(.no_heading) em{
    font-size: 1.2rem;
  }
}
/* --- h4 --- */
h4:not(.no_heading){
  font-size: 2.4rem;
  color: #3a9d27;
  font-weight: 700;
  margin-bottom: 0.5em;
  letter-spacing: 0.075em;
}
.inview h4:not(.no_heading),
.inviewBox h4:not(.no_heading){
  margin-bottom: 0.4em;
}
h4:not(.no_heading) em{
  font-size: 1.6rem;
  display: block;
  font-style: normal;
}
/* SP */
@media (max-width: 768px) {
  h4:not(.no_heading){
    font-size: 1.9rem;
  }
  .inview h4:not(.no_heading),
  .inviewBox h4:not(.no_heading){
    margin-bottom: 0.3em;
  }
  h4.fs_sp_mini:not(.no_heading){
    font-size: 1.6rem !important;
  }
  h4:not(.no_heading) em{
    font-size: 1.3rem;
    display: inline;
    margin-right: 0.5em;
  }
}
/* --- h5 --- */
h5:not(.no_heading){
  font-size: 2rem;
  color: #3a9d27;
  font-weight: 700;
  margin-bottom: 0.3em;
}
/* SP */
@media (max-width: 768px) {
  h5:not(.no_heading){
    font-size: 1.5rem;
  }
}
/* --- h6 --- */
h6:not(.no_heading){
  font-size: 1.6rem;
  color: #3a9d27;
  font-weight: 700;
  margin-top: 1.7em;
  letter-spacing: -0.01em;
}
/* SP */
@media (max-width: 768px) {
  h6:not(.no_heading){
    font-size: 1.4rem;
  }
}


/* ----------------------------------------
fonts color
 ---------------------------------------- */ 
.fc_white{color: #fff;}
.fc_black{color: #464646;}
.fc_green{color: #3a9d27;}

/* ----------------------------------------
bg color
 ---------------------------------------- */ 
.bg_colorBox{
  border-radius: 10px;
  padding: 40px;
}
.bg_white{
  background-color: #fff;
}
.bg_cream{
  background-color: #fdf9f7;
}
.bg_black{
  background-color: #464646;
}
.bg_green{
  background-color: #3a9d27;
}
.bg_chartreuse{
  background-color: #d9f4d4;
}
.bg_beige{
  background-color: #f2ede5;
}
.bg_brown{
  background-color: #e5e1d3;
}
/* SP */
@media (max-width: 768px) {
  .bg_colorBox{
    padding: 25px;
  }
}

/* ----------------------------------------
bg img
 ---------------------------------------- */ 
.bgimg_blue{
  background-image: url("../img/common/bgimg_blue.jpg");
}
.bgimg_green{
  background-image: url("../img/common/bgimg_green.jpg");
}

/* ----------------------------------------
hr_wave
 ---------------------------------------- */ 
.hr_wave{
  position: relative;
  border: none !important;
  background-image: url(../img/common/bg_wave.svg);
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center bottom;
  width: 100%;
  height: 60px;
  border-radius: 0 !important;
}
.hr_wave.hr_wave_cr{
  background-image: url(../img/common/bg_wave.svg);
}
.hr_wave.hr_wave_green{
  background-image: url(../img/common/bg_wave_green.svg);
}
.hr_wave.hr_wave_chartreuse{
  background-image: url(../img/common/bg_wave_chartreuse.svg);
}
.hr_wave.hr_wave_beige{
  background-image: url(../img/common/bg_wave_beige.svg);
}

/* SP */
@media (max-width: 768px) {
  .hr_wave{
    height: 17px;
    background-image: url(../img/common/bg_wave_sp.svg);
  }
  .hr_wave.hr_wave_cr{
    background-image: url(../img/common/bg_wave_sp.svg);
  }
  .hr_wave.hr_wave_green{
    background-image: url(../img/common/bg_wave_green_sp.svg);
  }
  .hr_wave.hr_wave_chartreuse{
    background-image: url(../img/common/bg_wave_chartreuse_sp.svg);
  }
  .hr_wave.hr_wave_beige{
    background-image: url(../img/common/bg_wave_beige_sp.svg);
  }
}

/* ----------------------------------------
the_content
 ---------------------------------------- */ 
.the_content{
  padding-bottom: 140px;
}
.the_content.on_thumbnail{
  padding-top: 100px;
}
.the_content.no_pagettl{
  padding-top: 250px;
}
/* SP */
@media (max-width: 768px) {
  .the_content{
    padding-bottom: 60px;
  }
  .the_content.on_thumbnail{
    padding-top: 50px;
  }
  .the_content.no_pagettl{
    padding-top: 100px;
  }
}

/* ----------------------------------------
img
 ---------------------------------------- */ 
.the_content img{
  border-radius: 10px;
}
/* SP */
@media (max-width: 768px) {
  .the_content img{
    border-radius: 5px;
  }
}

.no-round,
.no-round img,
.the_content .no-round img{
  border-radius: 0 !important;
}
.img-circle{
  border-radius: 50% !important;
  overflow: hidden;
}

/* ----------------------------------------
sectionBox
 ---------------------------------------- */ 
.sectionBox{
  padding-top: 100px;
  padding-bottom: 100px;
}

/* ----------------------------------------
column_flex
 ---------------------------------------- */ 
.column_flex{
  display: flex;
  gap: 40px 100px;
}
.column_flex_big{
  display: flex;
  gap: 40px 91px;
}
.column_flex .column_flex_l{
  width: 176px;
  flex-basis: auto !important;
}
.column_flex_big .column_flex_l{
  width: 186px;
}
.column_flex .column_flex_r{
  width: calc(100% - 176px - 100px);
  flex-basis: auto !important;
}
.column_flex_big .column_flex_r{
  width: calc(100% - 186px - 91px);
}
/* PC */
@media (min-width: 769px){
}
/* SP */
@media (max-width: 768px) { 
  .column_flex{
    flex-wrap: wrap;
    gap: 30px 91px;
  }
  .column_flex .column_flex_l{
    width: 100%;
  }
  .column_flex .column_flex_r{
    width: 100%;
  }
}

/* ----------------------------------------
段落
 ---------------------------------------- */ 
.the_content p{
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}

/* ----------------------------------------
img_grid
 ---------------------------------------- */ 
.img_grid{
  flex-wrap: wrap !important;
  gap: 60px 50px;
}
.img_grid.img_grid_cap{
  gap: 80px 50px;
}
.img_grid .wp-element-caption{
  font-size: 1.8rem;
  margin-top: 25px;
  margin-bottom: 0;
}
.img_grid .wp-block-group h5 + p{
  margin-top: 0;
}
.img_grid .wp-block-group .wp-block-image + h5{
  margin-top: 1.5em;
}

/* SP */
@media (max-width: 768px) {
  .img_grid{
    gap: 22px 20px;
  }
  .img_grid.img_grid_cap{
    gap: 34px 20px;
  }
  .img_grid .wp-element-caption{
    font-size: 1.3rem;
    margin-top: 10px;
  }
  .img_grid .wp-block-group .wp-block-image + h5{
    margin-top: 1.3em;
  }
}

/* SP */
@media (max-width: 768px) {
  .img_grid_sp02column{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* ----------------------------------------
wp-block- customize
 ---------------------------------------- */ 
/* ---wp-block-image--- */
.wp-block-image{
  margin-bottom: 0.8em;
}
.wp-block-image:only-child{
  margin-bottom: 0;
}
.wp-block-image:first-child{
  margin-top: 0;
}

/* ---.wp-block-separator--- */
.wp-block-separator{
  margin-top: 80px;
  margin-bottom: 90px;
  border-top: 1px solid #dadada;
}
/* SP */
@media (max-width: 768px) {
  .wp-block-separator{
    margin-top: 43px;
    margin-bottom: 50px;
  }
}

/* ----------------------------------------
height
 ---------------------------------------- */ 
/* SP */
@media (max-width: 768px) {
  .sp_height0px{height: 0px !important;}
    .sp_height1px{height: 1px !important;}
    .sp_height2px{height: 2px !important;}
    .sp_height3px{height: 3px !important;}
    .sp_height4px{height: 4px !important;}
    .sp_height5px{height: 5px !important;}
    .sp_height6px{height: 6px !important;}
    .sp_height7px{height: 7px !important;}
    .sp_height8px{height: 8px !important;}
    .sp_height9px{height: 9px !important;}
  .sp_height10px{height: 10px !important;}
    .sp_height11px{height: 11px !important;}
    .sp_height12px{height: 12px !important;}
    .sp_height13px{height: 13px !important;}
    .sp_height14px{height: 14px !important;}
    .sp_height15px{height: 15px !important;}
    .sp_height16px{height: 16px !important;}
    .sp_height17px{height: 17px !important;}
    .sp_height18px{height: 18px !important;}
    .sp_height19px{height: 19px !important;}
  .sp_height20px{height: 20px !important;}
    .sp_height21px{height: 21px !important;}
    .sp_height22px{height: 22px !important;}
    .sp_height23px{height: 23px !important;}
    .sp_height24px{height: 24px !important;}
    .sp_height25px{height: 25px !important;}
    .sp_height26px{height: 26px !important;}
    .sp_height27px{height: 27px !important;}
    .sp_height28px{height: 28px !important;}
    .sp_height29px{height: 29px !important;}
  .sp_height30px{height: 30px !important;}
    .sp_height31px{height: 31px !important;}
    .sp_height32px{height: 32px !important;}
    .sp_height33px{height: 33px !important;}
    .sp_height34px{height: 34px !important;}
    .sp_height35px{height: 35px !important;}
    .sp_height36px{height: 36px !important;}
    .sp_height37px{height: 37px !important;}
    .sp_height38px{height: 38px !important;}
    .sp_height39px{height: 39px !important;}
  .sp_height40px{height: 40px !important;}
    .sp_height41px{height: 41px !important;}
    .sp_height42px{height: 42px !important;}
    .sp_height43px{height: 43px !important;}
    .sp_height44px{height: 44px !important;}
    .sp_height45px{height: 45px !important;}
    .sp_height46px{height: 46px !important;}
    .sp_height47px{height: 47px !important;}
    .sp_height48px{height: 48px !important;}
    .sp_height49px{height: 49px !important;}
  .sp_height50px{height: 50px !important;}
    .sp_height51px{height: 51px !important;}
    .sp_height52px{height: 52px !important;}
    .sp_height53px{height: 53px !important;}
    .sp_height54px{height: 54px !important;}
    .sp_height55px{height: 55px !important;}
    .sp_height56px{height: 56px !important;}
    .sp_height57px{height: 57px !important;}
    .sp_height58px{height: 58px !important;}
    .sp_height59px{height: 59px !important;}
  .sp_height60px{height: 60px !important;}
    .sp_height61px{height: 61px !important;}
    .sp_height62px{height: 62px !important;}
    .sp_height63px{height: 63px !important;}
    .sp_height64px{height: 64px !important;}
    .sp_height65px{height: 65px !important;}
    .sp_height66px{height: 66px !important;}
    .sp_height67px{height: 67px !important;}
    .sp_height68px{height: 68px !important;}
    .sp_height69px{height: 69px !important;}
  .sp_height70px{height: 70px !important;}
    .sp_height71px{height: 71px !important;}
    .sp_height72px{height: 72px !important;}
    .sp_height73px{height: 73px !important;}
    .sp_height74px{height: 74px !important;}
    .sp_height75px{height: 75px !important;}
    .sp_height76px{height: 76px !important;}
    .sp_height77px{height: 77px !important;}
    .sp_height78px{height: 78px !important;}
    .sp_height79px{height: 79px !important;}
  .sp_height80px{height: 80px !important;}
    .sp_height81px{height: 81px !important;}
    .sp_height82px{height: 82px !important;}
    .sp_height83px{height: 83px !important;}
    .sp_height84px{height: 84px !important;}
    .sp_height85px{height: 85px !important;}
    .sp_height86px{height: 86px !important;}
    .sp_height87px{height: 87px !important;}
    .sp_height88px{height: 88px !important;}
    .sp_height89px{height: 89px !important;}
  .sp_height90px{height: 90px !important;}
    .sp_height91px{height: 91px !important;}
    .sp_height92px{height: 92px !important;}
    .sp_height93px{height: 93px !important;}
    .sp_height94px{height: 94px !important;}
    .sp_height95px{height: 95px !important;}
    .sp_height96px{height: 96px !important;}
    .sp_height97px{height: 97px !important;}
    .sp_height98px{height: 98px !important;}
    .sp_height99px{height: 99px !important;}
  .sp_height100px{height: 100px !important;}
    .sp_height101px{height: 101px !important;}
    .sp_height102px{height: 102px !important;}
    .sp_height103px{height: 103px !important;}
    .sp_height104px{height: 104px !important;}
    .sp_height105px{height: 105px !important;}
    .sp_height106px{height: 106px !important;}
    .sp_height107px{height: 107px !important;}
    .sp_height108px{height: 108px !important;}
    .sp_height109px{height: 109px !important;}
  .sp_height110px{height: 110px !important;}
    .sp_height111px{height: 111px !important;}
    .sp_height112px{height: 112px !important;}
    .sp_height113px{height: 113px !important;}
    .sp_height114px{height: 114px !important;}
    .sp_height115px{height: 115px !important;}
    .sp_height116px{height: 116px !important;}
    .sp_height117px{height: 117px !important;}
    .sp_height118px{height: 118px !important;}
    .sp_height119px{height: 119px !important;}
  .sp_height120px{height: 120px !important;}
    .sp_height121px{height: 121px !important;}
    .sp_height122px{height: 122px !important;}
    .sp_height123px{height: 123px !important;}
    .sp_height124px{height: 124px !important;}
    .sp_height125px{height: 125px !important;}
    .sp_height126px{height: 126px !important;}
    .sp_height127px{height: 127px !important;}
    .sp_height128px{height: 128px !important;}
    .sp_height129px{height: 129px !important;}
  .sp_height130px{height: 130px !important;}
    .sp_height131px{height: 131px !important;}
    .sp_height132px{height: 132px !important;}
    .sp_height133px{height: 133px !important;}
    .sp_height134px{height: 134px !important;}
    .sp_height135px{height: 135px !important;}
    .sp_height136px{height: 136px !important;}
    .sp_height137px{height: 137px !important;}
    .sp_height138px{height: 138px !important;}
    .sp_height139px{height: 139px !important;}
  .sp_height140px{height: 140px !important;}
    .sp_height141px{height: 141px !important;}
    .sp_height142px{height: 142px !important;}
    .sp_height143px{height: 143px !important;}
    .sp_height144px{height: 144px !important;}
    .sp_height145px{height: 145px !important;}
    .sp_height146px{height: 146px !important;}
    .sp_height147px{height: 147px !important;}
    .sp_height148px{height: 148px !important;}
    .sp_height149px{height: 149px !important;}
  .sp_height150px{height: 150px !important;}
    .sp_height151px{height: 151px !important;}
    .sp_height152px{height: 152px !important;}
    .sp_height153px{height: 153px !important;}
    .sp_height154px{height: 154px !important;}
    .sp_height155px{height: 155px !important;}
    .sp_height156px{height: 156px !important;}
    .sp_height157px{height: 157px !important;}
    .sp_height158px{height: 158px !important;}
    .sp_height159px{height: 159px !important;}
  .sp_height160px{height: 160px !important;}
    .sp_height161px{height: 161px !important;}
    .sp_height162px{height: 162px !important;}
    .sp_height163px{height: 163px !important;}
    .sp_height164px{height: 164px !important;}
    .sp_height165px{height: 165px !important;}
    .sp_height166px{height: 166px !important;}
    .sp_height167px{height: 167px !important;}
    .sp_height168px{height: 168px !important;}
    .sp_height169px{height: 169px !important;}
  .sp_height170px{height: 170px !important;}
    .sp_height171px{height: 171px !important;}
    .sp_height172px{height: 172px !important;}
    .sp_height173px{height: 173px !important;}
    .sp_height174px{height: 174px !important;}
    .sp_height175px{height: 175px !important;}
    .sp_height176px{height: 176px !important;}
    .sp_height177px{height: 177px !important;}
    .sp_height178px{height: 178px !important;}
    .sp_height179px{height: 179px !important;}
  .sp_height180px{height: 180px !important;}
    .sp_height181px{height: 181px !important;}
    .sp_height182px{height: 182px !important;}
    .sp_height183px{height: 183px !important;}
    .sp_height184px{height: 184px !important;}
    .sp_height185px{height: 185px !important;}
    .sp_height186px{height: 186px !important;}
    .sp_height187px{height: 187px !important;}
    .sp_height188px{height: 188px !important;}
    .sp_height189px{height: 189px !important;}
  .sp_height190px{height: 190px !important;}
    .sp_height191px{height: 191px !important;}
    .sp_height192px{height: 192px !important;}
    .sp_height193px{height: 193px !important;}
    .sp_height194px{height: 194px !important;}
    .sp_height195px{height: 195px !important;}
    .sp_height196px{height: 196px !important;}
    .sp_height197px{height: 197px !important;}
    .sp_height198px{height: 198px !important;}
    .sp_height199px{height: 199px !important;}
  .sp_height200px{height: 200px !important;}
}

/* ----------------------------------------
gap
 ---------------------------------------- */ 
.gap0px{grid-gap: 0px !important;}
.gap1px{grid-gap: 1px !important;}
    .gap2px{grid-gap: 2px !important;}
    .gap3px{grid-gap: 3px !important;}
    .gap4px{grid-gap: 4px !important;}
    .gap5px{grid-gap: 5px !important;}
    .gap6px{grid-gap: 6px !important;}
    .gap7px{grid-gap: 7px !important;}
    .gap8px{grid-gap: 8px !important;}
    .gap9px{grid-gap: 9px !important;}
.gap10px{grid-gap: 10px !important;}
    .gap11px{grid-gap: 11px !important;}
    .gap12px{grid-gap: 12px !important;}
    .gap13px{grid-gap: 13px !important;}
    .gap14px{grid-gap: 14px !important;}
    .gap15px{grid-gap: 15px !important;}
    .gap16px{grid-gap: 16px !important;}
    .gap17px{grid-gap: 17px !important;}
    .gap18px{grid-gap: 18px !important;}
    .gap19px{grid-gap: 19px !important;}
.gap20px{grid-gap: 20px !important;}
    .gap21px{grid-gap: 21px !important;}
    .gap22px{grid-gap: 22px !important;}
    .gap23px{grid-gap: 23px !important;}
    .gap24px{grid-gap: 24px !important;}
    .gap25px{grid-gap: 25px !important;}
    .gap26px{grid-gap: 26px !important;}
    .gap27px{grid-gap: 27px !important;}
    .gap28px{grid-gap: 28px !important;}
    .gap29px{grid-gap: 29px !important;}
.gap30px{grid-gap: 30px !important;}
    .gap31px{grid-gap: 31px !important;}
    .gap32px{grid-gap: 32px !important;}
    .gap33px{grid-gap: 33px !important;}
    .gap34px{grid-gap: 34px !important;}
    .gap35px{grid-gap: 35px !important;}
    .gap36px{grid-gap: 36px !important;}
    .gap37px{grid-gap: 37px !important;}
    .gap38px{grid-gap: 38px !important;}
    .gap39px{grid-gap: 39px !important;}
.gap40px{grid-gap: 40px !important;}
    .gap41px{grid-gap: 41px !important;}
    .gap42px{grid-gap: 42px !important;}
    .gap43px{grid-gap: 43px !important;}
    .gap44px{grid-gap: 44px !important;}
    .gap45px{grid-gap: 45px !important;}
    .gap46px{grid-gap: 46px !important;}
    .gap47px{grid-gap: 47px !important;}
    .gap48px{grid-gap: 48px !important;}
    .gap49px{grid-gap: 49px !important;}
.gap50px{grid-gap: 50px !important;}
    .gap51px{grid-gap: 51px !important;}
    .gap52px{grid-gap: 52px !important;}
    .gap53px{grid-gap: 53px !important;}
    .gap54px{grid-gap: 54px !important;}
    .gap55px{grid-gap: 55px !important;}
    .gap56px{grid-gap: 56px !important;}
    .gap57px{grid-gap: 57px !important;}
    .gap58px{grid-gap: 58px !important;}
    .gap59px{grid-gap: 59px !important;}
.gap60px{grid-gap: 60px !important;}
    .gap61px{grid-gap: 61px !important;}
    .gap62px{grid-gap: 62px !important;}
    .gap63px{grid-gap: 63px !important;}
    .gap64px{grid-gap: 64px !important;}
    .gap65px{grid-gap: 65px !important;}
    .gap66px{grid-gap: 66px !important;}
    .gap67px{grid-gap: 67px !important;}
    .gap68px{grid-gap: 68px !important;}
    .gap69px{grid-gap: 69px !important;}
.gap70px{grid-gap: 70px !important;}
    .gap71px{grid-gap: 71px !important;}
    .gap72px{grid-gap: 72px !important;}
    .gap73px{grid-gap: 73px !important;}
    .gap74px{grid-gap: 74px !important;}
    .gap75px{grid-gap: 75px !important;}
    .gap76px{grid-gap: 76px !important;}
    .gap77px{grid-gap: 77px !important;}
    .gap78px{grid-gap: 78px !important;}
    .gap79px{grid-gap: 79px !important;}
.gap80px{grid-gap: 80px !important;}
    .gap81px{grid-gap: 81px !important;}
    .gap82px{grid-gap: 82px !important;}
    .gap83px{grid-gap: 83px !important;}
    .gap84px{grid-gap: 84px !important;}
    .gap85px{grid-gap: 85px !important;}
    .gap86px{grid-gap: 86px !important;}
    .gap87px{grid-gap: 87px !important;}
    .gap88px{grid-gap: 88px !important;}
    .gap89px{grid-gap: 89px !important;}
.gap90px{grid-gap: 90px !important;}
    .gap91px{grid-gap: 91px !important;}
    .gap92px{grid-gap: 92px !important;}
    .gap93px{grid-gap: 93px !important;}
    .gap94px{grid-gap: 94px !important;}
    .gap95px{grid-gap: 95px !important;}
    .gap96px{grid-gap: 96px !important;}
    .gap97px{grid-gap: 97px !important;}
    .gap98px{grid-gap: 98px !important;}
    .gap99px{grid-gap: 99px !important;}
.gap100px{grid-gap: 100px !important;}

/* sp */
@media (max-width: 768px) {
  .sp_gap0px{grid-gap: 0px !important;}
  .sp_gap1px{grid-gap: 1px !important;}
      .sp_gap2px{grid-gap: 2px !important;}
      .sp_gap3px{grid-gap: 3px !important;}
      .sp_gap4px{grid-gap: 4px !important;}
      .sp_gap5px{grid-gap: 5px !important;}
      .sp_gap6px{grid-gap: 6px !important;}
      .sp_gap7px{grid-gap: 7px !important;}
      .sp_gap8px{grid-gap: 8px !important;}
      .sp_gap9px{grid-gap: 9px !important;}
  .sp_gap10px{grid-gap: 10px !important;}
      .sp_gap11px{grid-gap: 11px !important;}
      .sp_gap12px{grid-gap: 12px !important;}
      .sp_gap13px{grid-gap: 13px !important;}
      .sp_gap14px{grid-gap: 14px !important;}
      .sp_gap15px{grid-gap: 15px !important;}
      .sp_gap16px{grid-gap: 16px !important;}
      .sp_gap17px{grid-gap: 17px !important;}
      .sp_gap18px{grid-gap: 18px !important;}
      .sp_gap19px{grid-gap: 19px !important;}
  .sp_gap20px{grid-gap: 20px !important;}
      .sp_gap21px{grid-gap: 21px !important;}
      .sp_gap22px{grid-gap: 22px !important;}
      .sp_gap23px{grid-gap: 23px !important;}
      .sp_gap24px{grid-gap: 24px !important;}
      .sp_gap25px{grid-gap: 25px !important;}
      .sp_gap26px{grid-gap: 26px !important;}
      .sp_gap27px{grid-gap: 27px !important;}
      .sp_gap28px{grid-gap: 28px !important;}
      .sp_gap29px{grid-gap: 29px !important;}
  .sp_gap30px{grid-gap: 30px !important;}
      .sp_gap31px{grid-gap: 31px !important;}
      .sp_gap32px{grid-gap: 32px !important;}
      .sp_gap33px{grid-gap: 33px !important;}
      .sp_gap34px{grid-gap: 34px !important;}
      .sp_gap35px{grid-gap: 35px !important;}
      .sp_gap36px{grid-gap: 36px !important;}
      .sp_gap37px{grid-gap: 37px !important;}
      .sp_gap38px{grid-gap: 38px !important;}
      .sp_gap39px{grid-gap: 39px !important;}
  .sp_gap40px{grid-gap: 40px !important;}
      .sp_gap41px{grid-gap: 41px !important;}
      .sp_gap42px{grid-gap: 42px !important;}
      .sp_gap43px{grid-gap: 43px !important;}
      .sp_gap44px{grid-gap: 44px !important;}
      .sp_gap45px{grid-gap: 45px !important;}
      .sp_gap46px{grid-gap: 46px !important;}
      .sp_gap47px{grid-gap: 47px !important;}
      .sp_gap48px{grid-gap: 48px !important;}
      .sp_gap49px{grid-gap: 49px !important;}
  .sp_gap50px{grid-gap: 50px !important;}
      .sp_gap51px{grid-gap: 51px !important;}
      .sp_gap52px{grid-gap: 52px !important;}
      .sp_gap53px{grid-gap: 53px !important;}
      .sp_gap54px{grid-gap: 54px !important;}
      .sp_gap55px{grid-gap: 55px !important;}
      .sp_gap56px{grid-gap: 56px !important;}
      .sp_gap57px{grid-gap: 57px !important;}
      .sp_gap58px{grid-gap: 58px !important;}
      .sp_gap59px{grid-gap: 59px !important;}
  .sp_gap60px{grid-gap: 60px !important;}
      .sp_gap61px{grid-gap: 61px !important;}
      .sp_gap62px{grid-gap: 62px !important;}
      .sp_gap63px{grid-gap: 63px !important;}
      .sp_gap64px{grid-gap: 64px !important;}
      .sp_gap65px{grid-gap: 65px !important;}
      .sp_gap66px{grid-gap: 66px !important;}
      .sp_gap67px{grid-gap: 67px !important;}
      .sp_gap68px{grid-gap: 68px !important;}
      .sp_gap69px{grid-gap: 69px !important;}
  .sp_gap70px{grid-gap: 70px !important;}
      .sp_gap71px{grid-gap: 71px !important;}
      .sp_gap72px{grid-gap: 72px !important;}
      .sp_gap73px{grid-gap: 73px !important;}
      .sp_gap74px{grid-gap: 74px !important;}
      .sp_gap75px{grid-gap: 75px !important;}
      .sp_gap76px{grid-gap: 76px !important;}
      .sp_gap77px{grid-gap: 77px !important;}
      .sp_gap78px{grid-gap: 78px !important;}
      .sp_gap79px{grid-gap: 79px !important;}
  .sp_gap80px{grid-gap: 80px !important;}
      .sp_gap81px{grid-gap: 81px !important;}
      .sp_gap82px{grid-gap: 82px !important;}
      .sp_gap83px{grid-gap: 83px !important;}
      .sp_gap84px{grid-gap: 84px !important;}
      .sp_gap85px{grid-gap: 85px !important;}
      .sp_gap86px{grid-gap: 86px !important;}
      .sp_gap87px{grid-gap: 87px !important;}
      .sp_gap88px{grid-gap: 88px !important;}
      .sp_gap89px{grid-gap: 89px !important;}
  .sp_gap90px{grid-gap: 90px !important;}
      .sp_gap91px{grid-gap: 91px !important;}
      .sp_gap92px{grid-gap: 92px !important;}
      .sp_gap93px{grid-gap: 93px !important;}
      .sp_gap94px{grid-gap: 94px !important;}
      .sp_gap95px{grid-gap: 95px !important;}
      .sp_gap96px{grid-gap: 96px !important;}
      .sp_gap97px{grid-gap: 97px !important;}
      .sp_gap98px{grid-gap: 98px !important;}
      .sp_gap99px{grid-gap: 99px !important;}
  .sp_gap100px{grid-gap: 100px !important;}
}

/* ----------------------------------------
lineheight
 ---------------------------------------- */ 
.lineheight-1769{line-height: 1.769;}
.lineheight-1786{line-height: 1.786;}
.lineheight-2000{line-height: 2;}
/* PC */
@media (min-width: 769px){
  .lineheightPc-1769{line-height: 1.769;}
  .lineheightPc-1786{line-height: 1.786;}
  .lineheightPc-2000{line-height: 2;}
}
/* SP */
@media (max-width: 768px) {
  .lineheightSp-1769{line-height: 1.769;}
  .lineheightSp-1786{line-height: 1.786;}
  .lineheightSp-2000{line-height: 2;}
}

/* ----------------------------------------
font-letterspacing
 ---------------------------------------- */ 
.letterspacing--0215{letter-spacing: -0.215em;}
.letterspacing-0{letter-spacing: 0;}
.letterspacing-005{letter-spacing: 0.05em;}
/* PC */
@media (min-width: 769px){
.letterspacingPc--0215{letter-spacing: -0.215em;}
.letterspacingPc-0{letter-spacing: 0;}
.letterspacingPc-005{letter-spacing: 0.05em;}
}
/* SP */
@media (max-width: 768px) {
.letterspacingSp--0215{letter-spacing: -0.215em;}
.letterspacingSp-0{letter-spacing: 0;}
.letterspacingSp-005{letter-spacing: 0.05em;}
}

/* ----------------------------------------
font-size
 ---------------------------------------- */ 
/* PC */
@media (min-width: 769px){
  .fs_pc_10px {font-size: 10px !important;}
    .fs_pc_11px {font-size: 11px !important;}
    .fs_pc_12px {font-size: 12px !important;}
    .fs_pc_13px {font-size: 13px !important;}
    .fs_pc_14px {font-size: 14px !important;}
    .fs_pc_15px {font-size: 15px !important;}
    .fs_pc_16px {font-size: 16px !important;}
    .fs_pc_17px {font-size: 17px !important;}
    .fs_pc_18px {font-size: 18px !important;}
    .fs_pc_19px {font-size: 19px !important;}
  .fs_pc_20px {font-size: 20px !important;}
    .fs_pc_21px {font-size: 21px !important;}
    .fs_pc_22px {font-size: 22px !important;}
    .fs_pc_23px {font-size: 23px !important;}
    .fs_pc_24px {font-size: 24px !important;}
    .fs_pc_25px {font-size: 25px !important;}
    .fs_pc_26px {font-size: 26px !important;}
    .fs_pc_27px {font-size: 27px !important;}
    .fs_pc_28px {font-size: 28px !important;}
    .fs_pc_29px {font-size: 29px !important;}
  .fs_pc_30px {font-size: 30px !important;}
    .fs_pc_31px {font-size: 31px !important;}
    .fs_pc_32px {font-size: 32px !important;}
    .fs_pc_33px {font-size: 33px !important;}
    .fs_pc_34px {font-size: 34px !important;}
    .fs_pc_35px {font-size: 35px !important;}
    .fs_pc_36px {font-size: 36px !important;}
    .fs_pc_37px {font-size: 37px !important;}
    .fs_pc_38px {font-size: 38px !important;}
    .fs_pc_39px {font-size: 39px !important;}
  .fs_pc_40px {font-size: 40px !important;}
    .fs_pc_41px {font-size: 41px !important;}
    .fs_pc_42px {font-size: 42px !important;}
    .fs_pc_43px {font-size: 43px !important;}
    .fs_pc_44px {font-size: 44px !important;}
    .fs_pc_45px {font-size: 45px !important;}
    .fs_pc_46px {font-size: 46px !important;}
    .fs_pc_47px {font-size: 47px !important;}
    .fs_pc_48px {font-size: 48px !important;}
    .fs_pc_49px {font-size: 49px !important;}
  .fs_pc_50px {font-size: 50px !important;}
    .fs_pc_51px {font-size: 51px !important;}
    .fs_pc_52px {font-size: 52px !important;}
    .fs_pc_53px {font-size: 53px !important;}
    .fs_pc_54px {font-size: 54px !important;}
    .fs_pc_55px {font-size: 55px !important;}
    .fs_pc_56px {font-size: 56px !important;}
    .fs_pc_57px {font-size: 57px !important;}
    .fs_pc_58px {font-size: 58px !important;}
    .fs_pc_59px {font-size: 59px !important;}
  .fs_pc_60px {font-size: 60px !important;}
    .fs_pc_61px {font-size: 61px !important;}
    .fs_pc_62px {font-size: 62px !important;}
    .fs_pc_63px {font-size: 63px !important;}
    .fs_pc_64px {font-size: 64px !important;}
    .fs_pc_65px {font-size: 65px !important;}
    .fs_pc_66px {font-size: 66px !important;}
    .fs_pc_67px {font-size: 67px !important;}
    .fs_pc_68px {font-size: 68px !important;}
    .fs_pc_69px {font-size: 69px !important;}
  .fs_pc_70px {font-size: 70px !important;}
    .fs_pc_71px {font-size: 71px !important;}
    .fs_pc_72px {font-size: 72px !important;}
    .fs_pc_73px {font-size: 73px !important;}
    .fs_pc_74px {font-size: 74px !important;}
    .fs_pc_75px {font-size: 75px !important;}
    .fs_pc_76px {font-size: 76px !important;}
    .fs_pc_77px {font-size: 77px !important;}
    .fs_pc_78px {font-size: 78px !important;}
    .fs_pc_79px {font-size: 79px !important;}
  .fs_pc_80px {font-size: 80px !important;}
    .fs_pc_81px {font-size: 81px !important;}
    .fs_pc_82px {font-size: 82px !important;}
    .fs_pc_83px {font-size: 83px !important;}
    .fs_pc_84px {font-size: 84px !important;}
    .fs_pc_85px {font-size: 85px !important;}
    .fs_pc_86px {font-size: 86px !important;}
    .fs_pc_87px {font-size: 87px !important;}
    .fs_pc_88px {font-size: 88px !important;}
    .fs_pc_89px {font-size: 89px !important;}
  .fs_pc_90px {font-size: 90px !important;}
    .fs_pc_91px {font-size: 91px !important;}
    .fs_pc_92px {font-size: 92px !important;}
    .fs_pc_93px {font-size: 93px !important;}
    .fs_pc_94px {font-size: 94px !important;}
    .fs_pc_95px {font-size: 95px !important;}
    .fs_pc_96px {font-size: 96px !important;}
    .fs_pc_97px {font-size: 97px !important;}
    .fs_pc_98px {font-size: 98px !important;}
    .fs_pc_99px {font-size: 99px !important;}
  .fs_pc_100px {font-size: 100px !important;}
}
/* SP */
@media (max-width: 768px) {
  .fs_sp_10px {font-size: 10px !important;}
    .fs_sp_11px {font-size: 11px !important;}
    .fs_sp_12px {font-size: 12px !important;}
    .fs_sp_13px {font-size: 13px !important;}
    .fs_sp_14px {font-size: 14px !important;}
    .fs_sp_15px {font-size: 15px !important;}
    .fs_sp_16px {font-size: 16px !important;}
    .fs_sp_17px {font-size: 17px !important;}
    .fs_sp_18px {font-size: 18px !important;}
    .fs_sp_19px {font-size: 19px !important;}
  .fs_sp_20px {font-size: 20px !important;}
    .fs_sp_21px {font-size: 21px !important;}
    .fs_sp_22px {font-size: 22px !important;}
    .fs_sp_23px {font-size: 23px !important;}
    .fs_sp_24px {font-size: 24px !important;}
    .fs_sp_25px {font-size: 25px !important;}
    .fs_sp_26px {font-size: 26px !important;}
    .fs_sp_27px {font-size: 27px !important;}
    .fs_sp_28px {font-size: 28px !important;}
    .fs_sp_29px {font-size: 29px !important;}
  .fs_sp_30px {font-size: 30px !important;}
    .fs_sp_31px {font-size: 31px !important;}
    .fs_sp_32px {font-size: 32px !important;}
    .fs_sp_33px {font-size: 33px !important;}
    .fs_sp_34px {font-size: 34px !important;}
    .fs_sp_35px {font-size: 35px !important;}
    .fs_sp_36px {font-size: 36px !important;}
    .fs_sp_37px {font-size: 37px !important;}
    .fs_sp_38px {font-size: 38px !important;}
    .fs_sp_39px {font-size: 39px !important;}
  .fs_sp_40px {font-size: 40px !important;}
    .fs_sp_41px {font-size: 41px !important;}
    .fs_sp_42px {font-size: 42px !important;}
    .fs_sp_43px {font-size: 43px !important;}
    .fs_sp_44px {font-size: 44px !important;}
    .fs_sp_45px {font-size: 45px !important;}
    .fs_sp_46px {font-size: 46px !important;}
    .fs_sp_47px {font-size: 47px !important;}
    .fs_sp_48px {font-size: 48px !important;}
    .fs_sp_49px {font-size: 49px !important;}
  .fs_sp_50px {font-size: 50px !important;}
    .fs_sp_51px {font-size: 51px !important;}
    .fs_sp_52px {font-size: 52px !important;}
    .fs_sp_53px {font-size: 53px !important;}
    .fs_sp_54px {font-size: 54px !important;}
    .fs_sp_55px {font-size: 55px !important;}
    .fs_sp_56px {font-size: 56px !important;}
    .fs_sp_57px {font-size: 57px !important;}
    .fs_sp_58px {font-size: 58px !important;}
    .fs_sp_59px {font-size: 59px !important;}
  .fs_sp_60px {font-size: 60px !important;}
    .fs_sp_61px {font-size: 61px !important;}
    .fs_sp_62px {font-size: 62px !important;}
    .fs_sp_63px {font-size: 63px !important;}
    .fs_sp_64px {font-size: 64px !important;}
    .fs_sp_65px {font-size: 65px !important;}
    .fs_sp_66px {font-size: 66px !important;}
    .fs_sp_67px {font-size: 67px !important;}
    .fs_sp_68px {font-size: 68px !important;}
    .fs_sp_69px {font-size: 69px !important;}
  .fs_sp_70px {font-size: 70px !important;}
    .fs_sp_71px {font-size: 71px !important;}
    .fs_sp_72px {font-size: 72px !important;}
    .fs_sp_73px {font-size: 73px !important;}
    .fs_sp_74px {font-size: 74px !important;}
    .fs_sp_75px {font-size: 75px !important;}
    .fs_sp_76px {font-size: 76px !important;}
    .fs_sp_77px {font-size: 77px !important;}
    .fs_sp_78px {font-size: 78px !important;}
    .fs_sp_79px {font-size: 79px !important;}
  .fs_sp_80px {font-size: 80px !important;}
    .fs_sp_81px {font-size: 81px !important;}
    .fs_sp_82px {font-size: 82px !important;}
    .fs_sp_83px {font-size: 83px !important;}
    .fs_sp_84px {font-size: 84px !important;}
    .fs_sp_85px {font-size: 85px !important;}
    .fs_sp_86px {font-size: 86px !important;}
    .fs_sp_87px {font-size: 87px !important;}
    .fs_sp_88px {font-size: 88px !important;}
    .fs_sp_89px {font-size: 89px !important;}
  .fs_sp_90px {font-size: 90px !important;}
    .fs_sp_91px {font-size: 91px !important;}
    .fs_sp_92px {font-size: 92px !important;}
    .fs_sp_93px {font-size: 93px !important;}
    .fs_sp_94px {font-size: 94px !important;}
    .fs_sp_95px {font-size: 95px !important;}
    .fs_sp_96px {font-size: 96px !important;}
    .fs_sp_97px {font-size: 97px !important;}
    .fs_sp_98px {font-size: 98px !important;}
    .fs_sp_99px {font-size: 99px !important;}
  .fs_sp_100px {font-size: 100px !important;}
}

/* ----------------------------------------
btn
 ---------------------------------------- */ 
.btn:not(p),
p.btn > a{
  width: 100%;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
  display: block;
  text-decoration: none;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  border-radius: 999em;
  padding: 14px 20px;
  background-color: #3a9d27;
  border: 1px solid #3a9d27;
  text-align: center;
}

.btn:not(a):not(p){
  transition: 0.2s;
}
.btn:not(a):not(p):hover,
.btn:not(p):hover,
p.btn > a:hover{
  max-width: 340px;
  opacity: 1;
  cursor: pointer;
  background-color: #fff;
  color: #3a9d27;
}

/* --- btn_round--- */
.btn_round:not(p),
p.btn_round > a{
  display: inline-block;
  text-align: center;
  width: 100%;
  max-width: 180px;
  font-size: 1.4rem;
  color: #3a9d27;
  text-decoration: none;
  background-color: #fff;
  border: 1px solid #3a9d27;
  border-radius: 999em;
  position: relative;
  padding: 9px 30px 8px 14px;
  letter-spacing: 0.1em;
}
.btn_round:not(p)::after,
p.btn_round > a::after{
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  background-image: url(../img/common/ic_arrow_gr.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.2s;
}
.btn_round:not(p):hover,
p.btn_round > a:hover{
  opacity: 1;
  background-color: #3a9d27;
  color: #fff;
}
.btn_round:not(p):hover::after,
p.btn_round > a:hover::after{
  background-image: url(../img/common/ic_arrow.svg);
  right: 6px;
}
/*btn_round_gr*/
.btn_round.btn_round_gr:not(p),
p.btn_round.btn_round_gr > a{
  background-color: #3a9d27;
  border-color: #3a9d27;
  color: #fff;
}
.btn_round.btn_round_gr:not(p)::after,
p.btn_round.btn_round_gr > a::after{
  background-image: url(../img/common/ic_arrow.svg);
}

/* --- btn_border--- */
.btn_border:not(p),
p.btn_border > a{
  display: block;
  font-size: 1.6rem;
  text-align: center;
  text-decoration: none;
  font-family: "Zen Old Mincho", serif;
  border: 1px solid #fff;
  padding: 4px 30px 8px;
  position: relative;
}
.btn_border:not(p)::after,
p.btn_border > a::after{
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background-image: url("../img/common/ic_arrow.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.2s;
}

.btn_border:not(p):hover,
p.btn_border > a:hover{
  opacity: 1;
  background-color: #fff;
  color: #3a9d27;
}
.btn_border:not(p):hover::after,
p.btn_border > a:hover::after{
  right: 6px;
  background-image: url("../img/common/ic_arrow_gr.svg");
}
/* SP */
@media (max-width: 768px) {
  .btn_border:not(p),
  p.btn_border > a{
    padding-top: 5px;
    padding-bottom: 7px;
  }
}

/* ----------------------------------------
telinfo_asset_
 ---------------------------------------- */ 
/* ---telinfo_asset_number--- */
.the_content .telinfo_asset_number{
  margin-top: -0.8em;
  margin-bottom: 0;
  color: #3a9d27;
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 0;
}
.the_content .telinfo_asset_number strong{
  font-size: 3.6rem;
}
/* SP */
@media (max-width: 768px) {
  .the_content .telinfo_asset_number{
    font-size: 1.6rem;
    margin-top: -0.5em;
  }
  .the_content .telinfo_asset_number strong{
    font-size: 3rem;
  }
}

/* ---telinfo_asset_receptionhours--- */
.the_content .telinfo_asset_receptionhours{
  margin-top: -0.3em;
  margin-bottom: 2em;
  font-size: 1.5rem;
}
.the_content .telinfo_asset_receptionhours:last-child{
  margin-bottom: 0;
}
.the_content .telinfo_asset_receptionhours > em{
  font-style: normal;
}
/* SP */
@media (max-width: 768px) {
  .the_content .telinfo_asset_receptionhours{
    font-size: 1.3rem;
    margin-bottom: 1.8em;
  }
  .the_content .telinfo_asset_receptionhours > em{
    display: block;
  }
}

/* ---wp-block-table--- */
.wp-block-table{
  font-size: 1.5rem;
  text-align: left;
}
/* SP */
@media (max-width: 768px) {
  .wp-block-table{
    font-size: 1.3rem;
  }
}
.wp-block-table thead{
  border-bottom: 0;
}
.wp-block-table tr th,
.wp-block-table tr td{
  border: 1px solid #b5b5b5;
  padding: 16px 12px 16px 20px;
}
.wp-block-table thead tr th {
  padding-top: 15px;
  padding-bottom: 15px;
}
.wp-block-table tr th:nth-child(1),
.wp-block-table tr td:nth-child(1){
  width: 106px;
  padding-left: 0;
  padding-right: 0;
  vertical-align: middle;
}
/* SP */
@media (max-width: 768px) {
  .wp-block-table thead tr th {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .wp-block-table tr th:nth-child(1),
  .wp-block-table tr td:nth-child(1){
    width: 60px;
  }
}
.wp-block-table tr th:nth-child(1),
.wp-block-table tr td:nth-child(1){
  border-left: 0;
}
.wp-block-table tr th:last-child,
.wp-block-table tr td:last-child{
  border-right: 0;
}
.wp-block-table tr td:last-child{
  padding-right: 13px;
}
.wp-block-table thead tr th{
  font-weight: 400;
}
.wp-block-table thead tr th:not(:nth-child(1)) {
  background-color: #3a9d27;
  color: #fff;
}
.wp-block-table thead tr th:nth-child(1){
  background-color: #e5e1d3;
  text-align: center;
}
.wp-block-table thead tr th:nth-child(1){
  font-weight: 700;
}
.wp-block-table tbody tr td:nth-child(1){
  background-color: #e5e1d3;
  border-right: 0;
  font-weight: 700;
  text-align: center;
}
.wp-block-table tbody tr td:nth-child(2){
  border-left: 0;
}
/* SP */
@media (max-width: 768px) {
  .wp-block-table tr th,
  .wp-block-table tr td{
    vertical-align: middle;
  }
  .wp-block-table tbody tr td:nth-child(1){
    padding-left: 8px;
    padding-right: 8px;
  }
  .wp-block-table tr td:last-child{
    padding-right: 9px;
  }
}
/* PC */
@media (min-width: 769px){
  .wp-block-table .table_att{
    display: inline-block;
    font-size: 1.4rem;
    margin-top: 4px;
  }
}

/* ---PC版2カラム、SP版1カラム--- */
.table_pc2c-sp1c{
  align-items: stretch;
  gap: 0;
}
.table_pc2c-sp1c table{
  height: 100%;
}
.table_pc2c-sp1c .wp-block-table tr th,
.table_pc2c-sp1c .wp-block-table tr td{
  vertical-align: middle;
}
/* SP */
@media (max-width: 768px) {
  .table_pc2c-sp1c{
    display: block !important;
  }
  .table_pc2c-sp1c .wp-block-table:nth-child(n+2) tr:first-child td{
    border-top: 0;
  }
}

/* ---wp-block-embed-youtube--- */
.is-provider-youtube{
  width: 100%;
  max-width: 603px;
  margin-left: auto;
  margin-right: auto;
  background-color: #dcdddd;
  border-radius: 10px;
}
.is-provider-youtube .wp-block-embed__wrapper{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.is-provider-youtube .wp-block-embed__wrapper iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px;
}

/* ----------------------------------------
timeline_list
 ---------------------------------------- */ 
.timeline_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
/* SP */
@media (max-width: 768px) {
  .timeline_list {
  }
}

.timeline_list dl{
  width: 100%;
  display: flex;
  gap: 40px;
  position: relative;
}
.timeline_list dt,
.timeline_list dd{
  padding-bottom: 32px;
}
/* SP */
@media (max-width: 768px) {
  .timeline_list dl{
    gap: 25px;
  }
  .timeline_list dt,
  .timeline_list dd{
    padding-bottom: 20px;
  }
  .timeline_list .timeline_item:last-child dt,
  .timeline_list .timeline_item:last-child dd{
    padding-bottom: 0;
  }
}

/* ---timeline_date--- */
.timeline_date{
  flex-shrink: 0;
  font-weight: 700;
  text-align: right;
}
/* SP */
@media (max-width: 768px) {
  .timeline_date{
    font-size: 1.3rem;
    position: relative;
    top: -0.2em;
  }
}

/* ---timeline_point--- */
.timeline_point{
  position: relative;
}
.timeline_point::before{
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: #3a9d27;
  border: 7px solid #fdf9f7;
  box-sizing: content-box;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  margin-top: -0.1em;
}
.timeline_point::after{
  content: "";
  display: block;
  width: 3px;
  height: 99%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-image: linear-gradient(to bottom, #b5b5b5 3px, transparent 3px);
  background-size: 3px 9px;
  background-position: left bottom 7px;
  background-repeat: repeat-y;
  z-index: 1;
}
/* SP */
@media (max-width: 768px) {
  .timeline_point::before{
    width: 0.9em;
    height: 0.9em;
    margin-top: -0.3rem;
  }
  .timeline_point::after{
    background-image: linear-gradient(to bottom, #b5b5b5 2px, transparent 2px);
    background-size: 2px 7px;
    background-position: left bottom 4px;
  }
}

/* ---timeline_detail--- */
/* PC */
@media (min-width: 769px){
  .timeline_detail .nowrap-pc{
    white-space: nowrap;
  }
}
/* SP */
@media (max-width: 768px) {
  .timeline_detail{
    margin-left: 5px;
    font-size: 1.3rem;
    line-height: 1.769;
  }
}

/* ----------------------------------------
z-index
 ---------------------------------------- */ 
.header_logo{
  z-index: 60;
}
.menuBox{
  z-index: 63;
}
.navList_inner{
  z-index: 62;
}
.nav_overlay{
  z-index: 61;
}
#pagetop{
  z-index: 50;
}

/* ----------------------------------------
header
 ---------------------------------------- */ 
.header{
}

/* ---header_logo--- */
.header_logo{
  position: fixed;
  top: 38px;
  left: 35px;
}
.header_logo a{
  text-decoration: none;
  display: block;
  width: 286px;
  height: 65.0631px;
  background-image: url("../img/common/logo_w.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.bgMode_dark .header_logo a{
  background-image: url("../img/common/logo_w.svg");
}
.bgMode_light .header_logo a{
  background-image: url("../img/common/logo_g.svg");
}
.header_logo{
  color: transparent;
}
/* SP */
@media (max-width: 768px) {
  .header_logo{
    top: 14px;
    left: 14px;
  }
  .header_logo a{
    width: 178px;
    height: 40px;
  }
}

/* ---menuBox--- */
.menuBox{
  position: fixed;
  top: 40px;
  right: 45px;
  display: flex;
  align-items: start;
  justify-content: start;
  gap: 34px;
}
/* SP */
@media (max-width: 768px) {
  .menuBox{
    top: 13px;
    right: 13px;
    gap: 22px;
  }
}
  
/* ---header_sns--- */
.header_sns{
  padding-top: 6px;
}
.header_sns ul{
  display: flex;
  align-items: start;
  justify-content: start;
  gap: 10px 10px;
}
.header_sns ul a{
  display: block;
  background-color: #fff;
  border-radius: 50%;
  width: 30px;
  height: 30px;
}
/* SP */
@media (max-width: 768px) {
  .header_sns{
    position: relative;
    transition: 0.2s;
    top: calc(-13px - 6px - 30px - 1px);
  }
  .header_sns.active{
    top: 0;
  }
}

/* ---gNavi--- */
.gNavi{
  position: relative;
  display: block;
  width: 75px;
  height: 75px;
  background-color: #fff;
  border-radius: 15px;
  transition: 0.2s;
}
  .gNavi:hover{
    cursor: pointer;
    opacity: 0.5;
  }
/* SP */
@media (max-width: 768px) {
  .gNavi{
    width: 56px;
    height: 56px;
    border-radius: 11px;
  }
}
.gNavi_txt{
  color: #3a9d27;
  display: block;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
  font-size: 10px;
  transform: scale(0.9);
  position: absolute;
  top: 14px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.gNavi_ic{
  display: block;
  position: absolute;
  width: 30px;
  height: 20px;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.gNavi_ic span,
.gNavi_ic span::before,
.gNavi_ic span::after{
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  width: 30px;
  cursor: pointer;
  background: #3a9d27;
  display: block;
  transition: 0.2s;
  transform: translate(-50%, -1px);
}
.gNavi_ic span::before{
  transform: translate(-50%, -10px);
}
.gNavi_ic span::after{
  transform: translate(-50%, 8px);
}
/* SP */
@media (max-width: 768px) {
  .gNavi_txt{
    top: 9px;
    transform: scale(0.7);
  }
  .gNavi_ic{
    bottom: 13px;
    left: -1px;
  }
  .gNavi_ic span,
  .gNavi_ic span::before,
  .gNavi_ic span::after{
    width: 23px;
  }
  .gNavi_ic span::before{
    transform: translate(-50%, -8px);
  }
  .gNavi_ic span::after{
    transform: translate(-50%, 6px);
  }
}
/* メニュー展開 */
.gNavi.active span{
  background-color: transparent !important;
}
.gNavi.active span::before{
  transform: translateX(-50%)rotate(45deg);
  top: 0;
}
.gNavi.active span::after{
  transform: translateX(-50%)translateY(-10px)rotate(-45deg);
  top: 10px;
}

/* ---nav_list--- */
.navList_inner{
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  background-color: #fdf9f7;
  width: 460px;
  overflow: scroll;
  overscroll-behavior: contain;
  padding: 110px 70px 75px;
  transition: 0.3s;
  transform: translateX(100%);
}
/* SP */
@media (max-width: 768px) {
  .navList_inner{
    width: 100%;
    padding: 115px 26px 44px;
  }
}
.nav_list.active .navList_inner{
  transform: translateX(0%);
}
/* スクロールバー */
.navList_inner::-webkit-scrollbar{
  overflow:hidden;
  width:8px;
  background:#fdf9f7;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.navList_inner::-webkit-scrollbar:horizontal{
  height:5px;
}
.navList_inner::-webkit-scrollbar-button{
  display:none;
}
.navList_inner::-webkit-scrollbar-piece{
  background:#fdf9f7;
}
.navList_inner::-webkit-scrollbar-piece:start{
  background:#fdf9f7;
}
.navList_inner::-webkit-scrollbar-thumb{
  overflow:hidden;
  -webkit-border-radius: 0;
  border-radius: 0;
  background:#3a9d27;
  border: 2px solid #fdf9f7;
}
.navList_inner::-webkit-scrollbar-corner{
  overflow:hidden;
  -webkit-border-radius: 0;
  border-radius: 0;
  background:#fdf9f7;
}
.nav_overlay{
  width: 100%;
  height: 100%;
  display: none;
  background-color: #464646;
  mix-blend-mode:	multiply;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  cursor: zoom-out;
}
.navList_txt > li {
  border-bottom: 1px solid #c7c7c7;
}
.navList_txt > li > .navList_item{
  text-decoration: none;
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 30px 30px 12px 0;
  transition: 0.2s;
}
  .navList_txt > li > .navList_item:hover{
    cursor: pointer;
    opacity: 0.5;
  }
/*navList_sub*/
.navList_sub > .navList_item{
  position: relative;
}
.navList_sub > .navList_item > i{
  display: inline-block;
  position: absolute;
  top: 26px;
  right: 7px;
  transition: 0.2s;
  transform: scaleY(1);
}
.navList_sub.active > .navList_item{
  color: #3a9d27;
}
.navList_sub.active > .navList_item > i{
  top: 34px;
  transform: scaleY(-1);
}
.navList_sub > .navList_item > i::after{
  transition: 0.2s;
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-bottom: 1px solid #c7c7c7;
  border-right: 1px solid #c7c7c7;
  transform: rotate(45deg);
}
.navList_sub > ul {
  display: none;
  padding-bottom: 20px;
}
.navList_sub > ul > li > .navList_sub_item{
  text-decoration: none;
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 4px 0;
}
.navList_sub > ul > li > .navList_sub_item:hover{
  color: #3a9d27;
  opacity: 1;
}
.navList_sub > ul > li:not(.navList_subHead) .navList_sub_item{
  padding-left: 20px;
  position: relative;
  font-weight: 400;
}
.navList_sub > ul > li:not(.navList_subHead) .navList_sub_item::before{
  content: "";
  display: block;
  width: 7px;
  height: 1px;
  background-color: #464646;
  position: absolute;
  top: 1.2em;
  left: 3px;
}

/*navList_img*/
.navList_img{
  margin-top: 50px;
}
.navList_img > li{
  margin-bottom: 21px;
  border-radius: 8px;
}
.navList_img > li:last-child{
  margin-bottom: 0;
}
.navList_img a{
  display: block;
  text-decoration: none;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}
.navList_img a::before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  background-color: #464646;
  z-index: 2;
  mix-blend-mode: multiply;
  transition: 0.2s;
}
.navList_img a:hover{
  opacity: 1;
}
.navList_img a:hover::before{
  opacity: 0.3;
}
.navList_img img{
  width: 100%;
  position: relative;
  z-index: 1;
}
.navList_img span{
  padding: 10px;
  display: block;
  text-align: center;
  position: absolute;
  width: 100%;
  margin: 0 auto;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
}
/*navList_contact*/
.navList_contact{
  max-width: 247px;
  margin: 45px auto 0;
  transition: 0.2s;
}
.navList_contact:hover{
  max-width: 287px;
}


/* ----------------------------------------
pagetop
 ---------------------------------------- */
#pagetop_fixLine{
  position: relative;
  height: 44px;
  display: block;
  margin: 0 0 -44px auto;
  top: -12px;
}

/* ----- pagetop ----- */
#pagetop{
  position: fixed;
	bottom: -44px;
	right: 47px;
  opacity: 0;
  visibility: hidden;
	text-align: center;
	width: 44px;
	height: 44px;
	background-color: #fff;
	border-radius: 50%;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
  margin-left: auto;
  transition: 0.2s;
}
#pagetop.active{
	bottom: 10px;
	visibility: visible;
	opacity: 1;
}
#pagetop.endPage{
  position: relative;
}
#pagetop::before{
  content: "";
  display: block;
  transition: 0.2s;
  position: relative;
	top: 3px;
  margin-left: auto;
  margin-right: auto;
  transform: rotate(-135deg);
  vertical-align: middle;
  width: 11px;
  height: 11px;
  border-bottom: 1px solid #3a9d27;
  border-right: 1px solid #3a9d27;
}
  #pagetop:hover{
    background-color: #3a9d27;
    cursor: pointer;
  }
  #pagetop:hover::before{
    border-bottom-color: #fff;
    border-right-color: #fff;
  }
/* SP */
@media (max-width: 768px) {
  #pagetop{
    right: 10px;
  }
}

/* ----------------------------------------
footer
 ---------------------------------------- */ 
.footer{
  background-color: #3a9d27;
  color: #fff;
  padding-top: 66px;
  padding-bottom: 60px;
}
/* SP */
@media (max-width: 768px) {
  .footer{
    padding-top: 37px;
    padding-bottom: 34px;
  }
}

/* ---footer_inner--- */
.footer_inner{
  display: flex;
  justify-content: space-between;
  gap: 0px 93px;
}
/* SP */
@media (max-width: 768px) {
  .footer_inner{
    display: block;
    text-align: center;
  }
}

/* ---footer_info--- */
.footer_info{
  width: 283px;
}
/* SP */
@media (max-width: 768px) {
  .footer_info{
    width: 100%;
  }
}

/* ---footer_logo--- */
.footer_logo{
  width: 280px;
}
/* SP */
@media (max-width: 768px) {
  .footer_logo{
    width: 225px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ---footer_address--- */
.footer_address{
  margin-top: 31px;
  font-size: 1.5rem;
  line-height: 1.733;
  letter-spacing: 0.07em;
}
/* SP */
@media (max-width: 768px) {
  .footer_address{
    margin-top: 26px;
  }
}
/*footer_mail*/
.mail_top{
  display: inline;
  padding-right: 0.8em;
  position: relative;
}
.mail_mid{
  display: inline;
  opacity: 1;
  position: absolute;
  top: 0;
  right: -0.15em;
}
.mail_mid i{
  opacity: 0;
  font-size: 0;
}
.mail_mid::before{
  content: "@";
  font-size: 1.5rem;
}
.mail_dm{
  display: inline;
}

/* ---footer_link--- */
.footer_link{
  margin-top: 32px;
  width: 100%;
}
/* SP */
@media (max-width: 768px) {
  .footer_link{
    max-width: 281px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* ---footer_sns--- */
.footer_sns{
  margin-top: 28px;
}
.footer_sns ul{
  display: flex;
  align-items: start;
  justify-content: start;
  gap: 10px 10px;
}
.footer_sns ul a{
  display: block;
  background-color: #fff;
  border-radius: 50%;
  width: 30px;
  height: 30px;
}
/* SP */
@media (max-width: 768px) {
  .footer_sns{
    margin-top: 28px;
  }
  .footer_sns ul{
    justify-content: center;
  }
}

/* ---footer_detail--- */
.footer_detail{
  width: calc(100% - 283px - 93px);
}
/* SP */
@media (max-width: 768px) {
  .footer_detail{
    display: none;
  }
}

/* ---footer_sitemap--- */
.footer_sitemap{
  display: flex;
  gap: 28px;
}
.footer_sitemap ul{
  width: calc(100% / 4);
  border-top: 1px solid #fff;
}
.footer_sitemap ul li{
  border-bottom: 1px solid #fff;
  padding: 7px 0;
}
.footer_sitemap ul li a{
  font-size: 1.3rem;
  line-height: 1.923;
  font-weight: 400;
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 5px 0;
  letter-spacing: 0.03em;
}
.footer_sitemap ul li a:hover{
  text-decoration: underline;
  opacity: 1;
}
.footer_sitemap ul li a.fs_sub{
  position: relative;
  padding-left: 19px;
  padding: 0px 0 0px 19px;
}
.footer_sitemap ul li .fs_subBox{
  margin-top: -4px;
}
.footer_sitemap ul li a.fs_sub:last-of-type{
  margin-bottom: 4px;
}
.footer_sitemap ul li a.fs_sub::before{
  content: "";
  display: block;
  width: 7px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: calc(1px + 0.9em);
  left: 3px;
}

/* ---copyright--- */
.copyright{
  margin-top: 40px;
  font-size: 1.2rem;
  text-align: right;
}
/* SP */
@media (max-width: 768px) {
  .copyright{
    margin-top: 21px;
    text-align: center;
  }
}


/* ----------------------------------------
news
 ---------------------------------------- */
/* PC */
@media (min-width: 769px){ 
  .news_heading{
    margin-top: -0.3em;
  }
}
/* ----- news_listBox ----- */ 
.news_listBox{
}
.news_listBox > .news_list{
  border-top: 1px solid #b5b5b5;
}
.news_listBox > .news_list:last-of-type{
  border-bottom: 1px solid #b5b5b5;
}
.news_listBox > .news_list a{
  display: flex;
  gap: 0 20px;
  justify-content: space-between;
  padding-top: 23px;
  padding-bottom: 24px;
  text-decoration: none;
  color: #464646;
}
/* SP */
@media (max-width: 768px) {
  .news_listBox > .news_list a{
    padding-top: 17px;
    padding-bottom: 11px;
  }
}

/*news_rough*/
.news_listBox > .news_list .news_rough{
  width: calc(100% - 23.822715% - 20px);
  padding-top: 10px;
}
.news_post{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 18px;
}
.news_category li{
  display: inline-block;
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
  padding: 4px 11.6px;
  background-color: #464646;
  border-radius: 5px;
  min-width: 111px;
  letter-spacing: 0.045em;
}
.news_category .newsCate_unsorted{
  letter-spacing: 0.345em;
}
.news_category .newsCate_tayori{
  background-image: url("../img/common/bgimg_blue.jpg");
}
.news_category .newsCate_futabablog{
  background-image: url("../img/common/bgimg_green.jpg");
}
.news_date{
  font-size: 1.4rem;
  color: #7d7d7d;
}
.news_ttl{
  width: 100%;
  margin-top: 18px;
}
/* SP */
@media (max-width: 768px) {
  .news_listBox > .news_list .news_rough{
    padding-top: 0;
  }
  .news_post{
    gap: 15px;
  }
  .news_category li{
    font-size: 1.2rem;
    min-width: 96px;
  }
  .news_date{
    font-size: 1.2rem;
  }
  .news_rough{
    width: 100%;
  }
  .news_ttl{
    margin-top: 13px;
  }
}

/*news_thumbnail*/
.news_listBox > .news_list .news_thumbnail{
  width: 172px;
  height: 119px;
}
.news_listBox > .news_list .news_thumbnail img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
/* SP */
@media (max-width: 768px) {
  .news_listBox > .news_list .news_thumbnail{
    display: none;
  }
}

/* ---pagination--- */
.pagination{
  margin-top: 62.5px;
}
.pagination a{
  text-decoration: none;
}
.pagination_list{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.pagination .pagination_item{
  display: flex;
  align-items: center;
  width: auto;
  height: 34px;
}
.pagination .page_num .page-numbers:not(.dots){
  color: #3a9d27;
  width: 34px;
  height: 100%;
  text-align: center;
  border: 2px solid #3a9d27;
  background-color: #fff;
  border-radius: 50%;
  font-size: 1.4rem;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination .page_num .page-numbers:not(.dots) span{
  position: relative;
  top: 0.1em;
}
.pagination .page-numbers:not(.dots).current{
  background-color: #3a9d27;
  color: #fff;
}
.pagination .page_dots{
  margin-left: 5px;
  margin-right: 5px;
  text-align: center;
  color: #3a9d27;
}
.pagination .page_num{
  margin: 8.5px;
}
.pagination .prev .page-numbers,
.pagination .next .page-numbers{
  width: 34px;
  height: 34px;
  background-image: url("../img/common/ic_arrow_gr.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px;
}
.pagination .prev .page-numbers{
  transform: scaleX(-1);
}
/* SP */
@media (max-width: 768px) {
  .pagination{
    margin-top: 50px;
  }
}

/* ---news_category_list--- */
.news_category_list{
  margin-bottom: 65px;
}
.news_category_list ul{
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  width: 100%;
}
.news_category_list li{
  width: 100%;
}
.news_category_list a{
  text-decoration: none;
  display: block;
  font-size: 1.6rem;
  color: #464646;
  position: relative;
  padding: 0 0 0 1.2em;
}
.news_category_list a::before{
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background-color: #a2a2a2;
  position: absolute;
  top: 0.4em;
  left: 0;
}
.news_category_list .futabablog a::before{
  background-image: url("../img/common/bgimg_green.jpg");
}

.news_category_list .tayori a::before{
  background-image: url("../img/common/bgimg_blue.jpg");
}
/* SP */
@media (max-width: 768px) {
  .news_category_list{
    margin-bottom: 45px;
  }
  .news_category_list ul{
    justify-content: space-between;
  }
  .news_category_list li{
    width: auto;
  }
  .news_category_list a{
    font-size: 1.5rem;
  }
}

/* ---news_search_month--- */
.news_search_month_ttl{
  display: block;
  text-align: center;
  margin-bottom: 17px;
  font-size: 1.6rem;
  font-weight: 700;
}

/* ---news_search_month_listBox--- */
.news_search_month_listBox .news_search_month_selectBtn{
  margin-left: auto;
  margin-right: auto;
  transition: 0.2s;
}
.news_search_month_listBox .news_search_month_selectBtn.open{
  background-color: #3a9d27;
  color: #fff;
}
.news_search_month_listBox .news_search_month_selectBtn::after{
  transform: translateY(-50%) rotate(90deg);
}
.news_search_month_listBox .news_search_month_selectBtn.open::after{
  background-image: url(../img/common/ic_arrow.svg);
  transform: translateY(-50%) rotate(-90deg);
}
  .news_search_month_listBox .news_search_month_selectBtn:hover{
    cursor: pointer;
  }
  .news_search_month_listBox .news_search_month_selectBtn:hover::after{
    right: 18px;
    top: 60%;
  }
  .news_search_month_listBox .news_search_month_selectBtn.open:hover::after{
    right: 18px;
    top: 40%;
  }
.news_search_month_list{
  background-color: #fff;
  border-radius: 10px;
  margin-top: 20px;
  padding: 10px 0;
  display: none;
}
.news_search_month_list a{
  display: block;
  padding: 10px;
  text-align: center;
  text-decoration: none;
}
/* SP */
@media (max-width: 768px) {
  .news_search_month_list ul{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }
  .news_search_month_list li{
    width: 50%;
  }
  .news_search_month_list li:nth-child(odd) a{
    padding-right: 0;
  }
  .news_search_month_list li:nth-child(even) a{
    padding-left: 0;
  }
  .news_search_month_listBox{
    margin-bottom: 15px;
  }
}

/* ---news_single--- */
.news_single .news_ttl{
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 68px;
  padding-bottom: 28px;
  border-bottom: 1px solid #b5b5b5;
}
/* SP */
@media (max-width: 768px) {
  .news_single .news_ttl{
    font-size: 1.5rem;
    margin-top: 16px;
    margin-bottom: 40px;
    padding-bottom: 15px;
  }
}
.news_single .news_the_content{
  margin-bottom: 68px;
  padding-bottom: 97px;
  border-bottom: 1px solid #b5b5b5;
}
/* SP */
@media (max-width: 768px) {
  .news_single_no-sp{
    display: none !important;
  }
  .news_single .news_the_content{
    padding-bottom: 39px;
    margin-bottom: 13px;
  }
}

/* ---news_bottom_menu--- */
.news_single .news_bottom_menu{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.news_single .news_bottom_menu .newslist_back{
  width: 180px;
  margin: 0 auto;
  text-align: center;
}
.news_single .news_bottom_menu .mbm_arrow a{
  display: inline-block;
  text-decoration: none;
  font-size: 1.4rem;
  position: relative;
}
.news_single .news_bottom_menu .mbm_next{
  text-align: left;
}
.news_single .news_bottom_menu .mbm_prev{
  text-align: right;
}
.news_single .news_bottom_menu .mbm_next a{
  padding-left: 42px;
}
.news_single .news_bottom_menu .mbm_prev a{
  padding-right: 42px;
}
.news_single .news_bottom_menu .mbm_arrow a::after{
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  background-image: url("../img/common/ic_arrow_gr.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.2s;
}
.news_single .news_bottom_menu .mbm_next a::after{
  left: 9px;
  transform: translateY(-50%) scaleX(-1);
}
.news_single .news_bottom_menu .mbm_prev a::after{
  right: 9px;
}
  .news_single .news_bottom_menu .mbm_next a:hover::after{
    left: 5px;
  }
  .news_single .news_bottom_menu .mbm_prev a:hover::after{
    right: 5px;
  }
/* SP */
@media (max-width: 768px) {
  .news_single .news_bottom_menu{
    flex-wrap: wrap;
  }
  .news_single .news_bottom_menu .mbm_arrow{
    width: calc(50% - 5px);
    padding: 13px 0;
  }
  .news_single .news_bottom_menu .mbm_prev{
    margin-left: auto;
  }
  .news_single .news_bottom_menu .newslist_back{
    order: 1;
    width: 100%;
    margin-top: 0px;
  }
}

/* ----------------------------------------
form
 ---------------------------------------- */ 
/* ---form base--- */
form input{
  font-family: "DNP 秀英角ゴシック金 Std", "DNPShueiGoKinStd", "Zen Old Mincho", serif;
  font-family: dnp-shuei-gothic-kin-std, sans-serif;
}
form input[type="text"],
form input[type="number"],
form input[type="tel"],
form input[type="email"],
form select,
form textarea{
  -webkit-appearance: none;
  border: 1px solid #b5b5b5;
  border-radius: 9px;
  font-size: 1.5rem;
  font-weight: 400;
  color: #464646;
  width: 100%;
  vertical-align: top;
}
form input[type="text"],
form input[type="number"],
form input[type="tel"],
form input[type="email"],
form textarea{
  padding: 15px;
}
form textarea{
  resize: vertical;
}

/* ---form_inputfield--- */
.form_inputfield{
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.form_inputfield table{
  width: 100%;
}
.form_inputfield table p{
  margin: 0;
}
.form_inputfield table td{
  padding: 24px 34px 8.5px 0;
  vertical-align: top;
}
.form_inputfield table tr:first-child td{
}
.form_inputfield table tr:last-child td{
  padding-bottom: 0;
}
.form_inputfield table td:nth-child(1){
  font-size: 1.5rem;
  padding-right: 40px;
}
.form_inputfield table td:nth-child(2){
}
.form_inputfield table td:nth-child(3){
  width: 550px;
  padding-right: 0;
  padding: 8.5px 0 8.5px 0;
}
/* SP */
@media (max-width: 768px) {
  .form_inputfield {
    margin-top: 40px;
  }
  .form_inputfield table,
  .form_inputfield tbody,
  .form_inputfield tr,
  .form_inputfield td{
    width: 100%;
    display: block;
  }
  .form_inputfield table tr{
    margin-bottom: 40px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .form_inputfield table tr:last-child{
    margin-bottom: 0;
  }
  .form_inputfield table td{
    padding: 0;
  }
  .form_inputfield table td:nth-child(1){
    width: calc(100% - 5em);
  }
  .form_inputfield table td:nth-child(2){
    width: 5em;
    padding-right: 0.5em;
    text-align: right;
  }
  .form_inputfield table td:nth-child(3){
    width: 100%;
    margin-top: 10px;
    padding: 0;
  }
}

/* ---form_required--- */
.form_required{
  font-style: normal;
  font-size: 1.4rem;
  font-weight: 700;
  color: #3a9d27;
}

/* ---form_last_att--- */
.form_last_att{
  text-align: center;
  font-size: 1.5rem;
  margin-top: 50px;
}
/* SP */
@media (max-width: 768px) {
  .form_last_att{
    margin-top: 30px;
  }
}

/* ---okBtn_nameBox--- */
.okBtn_nameBox{
  margin-top: 1.4em;
}
.okBtn_nameBox label{
  display: inline-block;
  padding: 10px 30px;
  border-radius: 10px;
  transition: 0.2s;
}
.okBtn_nameBox input{
  vertical-align: baseline;
  margin-right: 0.2em;
  position: relative;
  top: 0.08em;
}
  .okBtn_nameBox label:hover{
    cursor: pointer;
    background-color: #d9f4d4;
  }
/* SP */
@media (max-width: 768px) {
  .okBtn_nameBox{
    margin-top: 1em;
  }
  .okBtn_nameBox label{
    padding-left: 0;
    padding-right: 0;
  }
}

/* ---form_submit_area--- */
.form_submit_area{
  margin-top: 36px;
}
.form_submit_area p{
  margin-top: 0;
  margin-bottom: 0;
}
.form_submit_area .wpcf7-spinner{
  margin-left: auto;
  margin-right: auto;
  display: none;
}
/* SP */
@media (max-width: 768px) {
  .form_submit_area{
    margin-top: 30px;
  }
}

/* ---エラー--- */
.wpcf7-not-valid-tip{
  font-size: 1.4rem;
  margin-top: 0.1em;
}
.wpcf7 form .wpcf7-response-output{
  text-align: center;
  color: #464646;
  border: 1px solid #3a9d27;
  margin-top: 0;
  padding: 20px;
  font-weight: 700;
}
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{
  border: 1px solid #3a9d27;
}
/* SP */
@media (max-width: 768px) {
  .wpcf7-not-valid-tip{
    font-size: 1.3rem;
  }
  .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{
    font-size: 1.4rem;
  }
}


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