@charset "utf-8";

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

ベース

==================================================*/
html {
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
  scroll-behavior: smooth;
}
body {
  background-color: #E7EFEE;
	color: #2D2D2D;
  font-family: "Noto Sans JP", sans-serif;
	font-size: 1.6rem;
	-webkit-font-smoothing: antialiased;
/*	font-feature-settings: "palt";*/
  letter-spacing: .04em;
}
body.english {
  font-family: 'Inter';
  letter-spacing: 0;
}
body.menu-open{
	overflow: hidden;
}
html.menu-open{
	overflow: hidden;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
a {
	color: #2D2D2D;
	text-decoration: none;
	cursor: pointer;
}

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

全ページ共通

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

/* PC */
@media print, screen and (min-width: 768px) {
	html {
		font-size: 10px;
	}
	.sp {
		display: none!important;
	}
	a:hover {
		text-decoration: underline;
	}
}

/* SP */
@media screen and (max-width: 767px) {
	html {
		font-size: 2.67vw;/*375*/
	}
	.pc {
		display: none!important;
	}
}

.js-accordions>*>*:last-child{
  display:none;
}

/* タグの表示制御用CSS */
.l-side__tag ul li:nth-child(n+11) {
    display: none;
}

.l-side__tag.show-all ul li:nth-child(n+11) {
    display: block;
}

.l-side__tag ul li {
    transition: opacity 0.3s ease;
}


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

ヘッダー

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

/* レイアウト 
--------------------------------------------------*/
.l-header{
	width: 100%;
	position:fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
.l-header__inner{
  height:100%;
  position: relative;
	background-color: #fff;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
}
.l-header a{
	text-decoration: none;
	display: block;
}
.l-header__logo{
  z-index:2;
}

/* PC */
@media print,only screen and (min-width: 841px){ 
	.l-header{
		height:9.7rem;
    padding: 0 2rem;
	}
	.l-header__inner{
    border-radius: 0 0 1.6rem 1.6rem;
	}
	.l-header__logo{
		width: 16.3rem;
		position:absolute;
		top:2.65rem;
		left:4.8rem;
	}
}

/* SP */
@media screen and (max-width: 840px){	
	.l-header{
    height: 5.2rem;
    padding: 0 1rem;
	}
	.l-header__inner{
    border-radius: 0 0 0.8rem 0.8rem;
	}
	.l-header__logo{
		width: 11rem;
		position:absolute;
		top:1.1rem;
		left:1.6rem;
	}
}

/* 検索
--------------------------------------------------*/
.l-header__search{
  display: flex;
  align-items: flex-start;
  
}
.l-search__input{
  background-color: #E7EFEE;
  border-radius: 10rem 0 0 10rem;
  vertical-align: top;
}
.l-search__button{
  background: url("../images/shared/icon-search.svg") 1.8rem center no-repeat,linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 0 10rem 10rem 0;
  position: relative;
  cursor: pointer;
  vertical-align: top;
}
.english .l-header__search,
.english .l-header__searchButton{
  display: none;
}

/* PC */
@media print,only screen and (min-width: 841px){
	.l-header__searchButton{
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    background:#E7EFEE url("../images/shared/icon-search-green.svg") center center no-repeat;
    background-size: 1.5rem auto;
    position: absolute;
    top: 1.6rem;
    right: 4.8rem;
    cursor: pointer;
	}
  .l-header__search{
    background-color: #fff;
    border-radius: 0.8rem;
    padding: 0.8rem 4.3rem 0.8rem 0.8rem;
    position: absolute;
    right: 0.5rem;
    bottom: -7.9rem;
    display:none;
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
    z-index: -1;
  }
  .l-search__close{
    width: 4.3rem;
    height: 4.3rem;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background:url("../images/shared/icon-close.svg") center center no-repeat;
    background-size: 1.5rem auto;
    cursor: pointer;
  }
  .l-search__input{
    width: 30.2rem;
    height: 4rem;
    padding: 0 1rem 0 2.5rem;
    font-size: 1.4rem;
    box-sizing: border-box;
  }
  .l-search__button{
    width: 5.8rem;
    height: 4rem;
    background-size: 1.8rem auto,100% auto;
    box-sizing: border-box;
  }
}

/* SP */
@media screen and (max-width: 840px){	
  .l-header__search{
    margin: 2rem -1.2rem 0 -1.2rem;
  }
  .l-search__input{
    width: calc( 100% - 5.8rem );
    height: 4.8rem;
    padding: 0 1rem 0 2.6rem;
    font-size: 16px;
  }
  .l-search__button{
    width: 5.8rem;
    height: 4.8rem;
    background-size: 2rem auto,100% auto;
  }
}

/* 言語
--------------------------------------------------*/
.l-language{
  background: url("../images/shared/icon-lang.svg") 1.1rem center no-repeat;
  background-size: 1.6rem auto;
  position: absolute;
  background-color: #E7EFEE;
  border-radius: 0.6rem;
  padding: 0.35rem 0.3rem 0.35rem 3.5rem;
  z-index:2;
}
.l-language a,
.l-language span{
  width: 3.6rem;
  color: #43914C;
  font-size: 1.3rem;
  font-weight: 600;
  position: relative;
  text-align: center;
  display: block;
  padding: 0.2rem;
}
.l-language__in{
  display: flex;
}
.l-language__in:before{
  width: 3.6rem;
  display: block;
  content: "";
  background-color: #fff;
  border-radius: 0.4rem;
  position: absolute;
  bottom: 0.35rem;
  top: 0.35rem;
  transition: all .3s ease;
}
.l-language.-ja .l-language__in:before{
  left: 3.5rem;
}
.l-language.-ja.-hover .l-language__in:before{
  transform: translateX(100%);
}
.l-language.-en.-hover .l-language__in:before{
  transform: translateX(-100%);
}
 .l-language.-en .l-language__in:before{
  right: 0.3rem;
} 

/* PC */
@media print,only screen and (min-width: 841px){ 
  .l-language{
    top: 1.6rem;
    right: 37rem;
  }
  .english .l-language{
    right: 18.5rem;
  }
}

/* SP */
@media screen and (max-width: 840px){	
  .l-language{
    top: 1rem;
    right: 6.8rem;
  }
}

/* グローバルナビ
--------------------------------------------------*/
.nav-global__hasPullDown{
  position: relative;
 }
.nav-global__bars{
  width: 1.1rem;
  height: 1.1rem;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1.5rem;
  margin: auto 0;
}
.nav-global__bars:before,
.nav-global__bars:after{
  width: 1.1rem;
  height: 1px;
  content: "";
  background-color: #43914C;
  display: block;
  position: absolute;
  inset:0;
  margin: auto 0;
  transition: all .3s ease;
}
.nav-global__bars:after{
  transform: rotate(-90deg);
}
.-open .nav-global__bars:after{
  transform: rotate(0);
}
.nav-global__gray{
  color: #999;
  display: block;
}

/* PC */
@media print,only screen and (min-width: 841px){ 
	.nav-global{
		position:absolute;
    right: 3.3rem;
    bottom: 1rem;
		display: flex;
		justify-content: flex-end;
    gap:0 0.8rem;
	}
	.nav-global>li>a{
		color: #2D2D2D;
		font-size: 1.4rem;
    font-weight: 600;
		padding: 0.8rem 1.5rem;
    display: block;
    position: relative;
    transition: color .3s ease;
    cursor: pointer;
	 }
	.nav-global>li>a:hover{
		color: #43914C;
	 }
	.nav-global>li>a:before{
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
    transition: all .3s ease;
	 }
	.nav-global>li>a:hover:before,
  .nav-global__hasPullDown:hover:before{
    transform: scale(1.2);
	 }
  .nav-global__hasPullDown{
    padding-right: 3.5rem!important;
    position: relative;
	 }
  .menu-open .l-header__inner{
    border-radius: 0;
  }
  .nav-global__child{
    position: fixed;
    top: 8.1rem;
    left: 2rem;
    right: 2rem;
    background-color: #fff;
    border-radius: 0 0 1.6rem 1.6rem;
    padding: 1.6rem 4.8rem 5.4rem 9.8rem;
    display: none;
    min-height:42rem;
  }   
  .library .nav-global__child{
    min-height:48rem;
  }   
  .nav-global__child>li{
    width: 24rem;
  }
  .nav-global__itemTitle{
    padding: 2.4rem 0 2.4rem 5rem;
    position: relative;
    font-size: 1.4rem;
    font-weight: 600;
    display: block;
    transition: all .3s ease;
    cursor: pointer;
    width: 24rem;
  }
  .nav-global__child>li.current>.nav-global__itemTitle{
    background-color: #E7EFEE;
    color: #43914C;
    border-radius: 10rem 0 0 10rem;
  }
  .nav-global__itemTitle:before{
    content: "";
    width: 0.6rem;
    height: 0.6rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 3.5rem;
    bottom: 0;
    margin: auto 0;
  }
  .nav-global__child__itemIn{
    width: calc( 100% - 38.1rem );
    height:calc( 100% - 7rem );
    position: absolute;
    right: 4.8rem;
    top: 0;
    z-index: 10;
    margin-top: 1.6rem;
    padding: 3rem 7.2rem 0 7.2rem;
    background-color: #E7EFEE;
    border-radius: 0 0.8rem 0.8rem 0.8rem;
    opacity:0;
    pointer-events: none;
    transition: opacity .3s ease;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
  }
  .current .nav-global__child__itemIn{
    opacity:1;
    pointer-events: auto;
  }
  .service .nav-global__child__ul,
  .library .nav-global__child__itemInIn{
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    gap:0 5.8rem
  }
  .service .nav-global__child__ul{
    align-items: center;
  }
  .service .nav-global__child__itemInIn{
    max-width: max(100rem,calc( 100% - 27rem ));
    width: 100%;
    margin-left: auto;
  }
  .service .nav-global__child__ul{
    width: 100%;
  }
  .nav-global__child__ul li{
    border-bottom: 1px #D1E2DA solid;
  }
  .nav-global__child__ul a{
    height: 100%;
  }
  .library .nav-global__child__itemInIn{
    width: 62.5rem;
  }
  .library .nav-global__child__row{
    width: calc( 50% - 5rem );
    margin-left: auto;
  }
  .service .nav-global__child__ul li{
    width: calc( ( 100% / 3 ) - 4rem );
  }
  .nav-global__child__itemIn.-twocol .nav-global__child__itemInIn{
    display: block;
  }
  .library .nav-global__child__row ul{
    margin-bottom: 2rem;
  }
  .library .nav-global__child__row ul:last-child{
    margin-bottom: 0;
  }
/*
  .nav-global__child__itemInIn li.-w100{
    width: 59.2rem;
  }
*/
  .nav-global__child__itemInIn li a{
    font-size: 1.4rem;
    font-weight: 600;
    padding: 3.2rem 3.2rem 3.2rem 0;
    display: block;
    position: relative;
  }
  .nav-global__autor a{
    position: relative;
    padding: 1.6rem 3.2rem 1.6rem 4.8rem;
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 600;
  }
  .nav-global__autor a:before{
    content: "";
    width: 0.6rem;
    height: 0.6rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 3.5rem;
    bottom: 0;
    margin: auto 0;
  }
  .nav-global__gray{
    font-size: 1.4rem;
    margin-bottom: -2.5rem;
  }
}
@media (min-width: 768px) and (max-width: 1410px) {
  .service .nav-global__child__ul li {
        width: calc( (100% / 2) - 4rem);
    }
}
/* SP */
@media screen and (max-width: 840px){	
	.nav-global{
    border-bottom: 1px #D1E3DE solid;
    font-weight: 600;
	}
	.nav-global>li{
    border-top: 1px #D1E3DE solid;
	}
	.nav-global>li>a,
  .nav-global__hasPullDown{
		color: #2D2D2D;
		font-size: 1.4rem;
		padding: 2.4rem 2.4rem 2.4rem 0;
    display: block;
	}
	.english .nav-global>li>a{
		font-size: 1.6rem;
	}
  .nav-global__child{
    display: block!important;
    min-height:auto!important;
  }
  .nav-global__child>li>span,
  .nav-global__child>li>a{
    color: #2D2D2D;
    font-size: 1.4rem;
    padding: 1.1rem 2.4rem 1.1rem 1.7rem;
    position: relative;
    display: block;    
  }
  .nav-global__child>li>span:before{
    content: "";
    width: 0.5rem;
    height: 0.5rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0.4rem;
    bottom: 0;
    margin: auto 0;
    display: block;
  }
  .nav-global__child__itemInIn{
    margin: 0.3rem 0 1.5rem 0;
  }
  .nav-global__child__itemInIn li a{
    color: #43914C;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 1.1rem 3.4rem 1.1rem 1.7rem;
    display: block;
    position: relative;
  }
  .library .nav-global__child__row:first-child{
    margin-bottom: 0;
  }
  .library .nav-global__child__row:last-child{
    margin: 0;
  }
  .nav-global__child__itemInIn a:before,
  .nav-global__child>li>a:before{
    content: "";
    width: 2.4rem;
    height: 2.4rem;
    background-color: #E7EFEE;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transition: all .4s ease;
  }
  .nav-global__itemTitle{
    position: relative;
    display: block;
  }
  .nav-global__bars,
  .nav-global__barsSp{
    width: 4.5rem;
    height: 4.5rem;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -1rem;
    margin: auto 0;
  }
  .nav-global__barsSp:before,
  .nav-global__barsSp:after,
  .nav-global__bars:before,
  .nav-global__bars:after{
    width: 1.1rem;
    height: 1px;
    content: "";
    background-color: #43914C;
    display: block;
    position: absolute;
    inset:0;
    margin: auto auto;
  }
  .nav-global__bars:before,
  .nav-global__bars:after{
    background-color: #2d2d2d;
  }
  .nav-global__bars:after,
  .nav-global__barsSp:after{
    transform: rotate(-90deg);
    transition: all .3s ease;
  }
  .nav-global__gray{
    font-size: 1.4rem;
    margin-bottom: -0.5rem;
    padding: 1.1rem 3.4rem 0 1.7rem;
  }
  .nav-global__autor{
    margin-bottom: 2.2rem;    
  }

  /* spプルダウン */
  .js-ng-spPullDown > div:last-child{
    display: none;
  }
  .-open .nav-global__barsSp:after{
    transform: rotate(0);
  }

}

/* リンク矢印
--------------------------------------------------*/
.m-arrow{
  width: 2.4rem;
  height: 2.4rem;
  z-index: 10;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto 0;
  transition: all .4s ease;
}
.m-arrow:before{
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  border-radius: 50%;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  transition: all .4s ease;
}
.m-arrow:after{
  content: "";
  width: 3.5rem;
  height: 1rem;
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow-green.svg");
  background-size: 1rem auto,1rem auto;
  background-position: right center,0 center;
  background-repeat: no-repeat,no-repeat;
  display: block;
  position: absolute;
  top: 0;
  right: 0.7rem;
  bottom: 0;
  margin: auto 0;
  transition: transform .4s ease;
}
a[target="_blank"] .m-arrow:after{
  width: 1.2rem;
  height: 1.2rem;
  background-image: url("../images/shared/target-white.svg");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: no-repeat;
  right: 0.6rem;
}
/*- ピックアップ -*/
.home-pickup .m-arrow{
  width: 3.2rem;
  height: 3.2rem;
  background: linear-gradient(289.05deg, rgba(82, 167, 51, 0.4) 16.58%, rgba(29, 150, 138, 0.4) 83.47%);
  border-radius: 50%;
}
.home-pickup .m-arrow:before{
  width: 3.2rem;
  height: 3.2rem;
  background: linear-gradient(289.05deg, rgba(72, 157, 45, 1) 16.58%, rgba(27, 139, 127, 1) 83.47%);
  opacity: 0;
}
.home-pickup .m-arrow:after{
  background-image: url("../images/shared/arrow.svg"),url("../images/shared/arrow.svg"); 
  right: 1.1rem;
}
/*- ボタン -*/
.m-button .m-arrow:before{
  background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
  opacity: 0;
}
.m-button .m-arrow:after{
  background-image: url("../images/shared/arrow.svg"),url("../images/shared/arrow.svg");
}
/*- サービス -*/
.m-service__link01 .m-arrow:after,
.m-linkbox .m-arrow:after{
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg");
  background-size: 0.9rem auto,0.9rem auto;
}
/*- お知らせ -*/
.home-news__listIn .m-arrow:after,
.m-news .m-arrow:after,
.m-backnumber__list .m-arrow:after,
.search-list .m-arrow:after{
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg");  
}
/*- 下部リンク -*/
.m-link .m-arrow{
  width: 4rem;
  height: 4rem;
  right: 4rem;
}
.m-link .m-arrow:before{
  width: 4rem;
  height: 4rem;
  background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
  opacity: 0;
}
.m-link .m-arrow:after{
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg"); 
}
/*- 下部メルマガ -*/
.m-malmaga__button .m-arrow{
  right: 1.5rem;
}
.m-malmaga__button .m-arrow:before{
  background: linear-gradient(289.05deg, rgba(72, 157, 45, 1) 16.58%, rgba(27, 139, 127, 1) 83.47%);
  opacity: 0;
}
.m-malmaga__button .m-arrow:after{
  background-image: url("../images/shared/arrow.svg"),url("../images/shared/arrow.svg")!important; 
}
.m-malmaga__link .m-arrow,
.backnumber-entry__link .m-arrow,
.m-author__text02 .m-arrow{
  background: #CFE1DC;
  opacity: 1;
  border-radius: 50%;
}
.m-malmaga__link .m-arrow:before,
.backnumber-entry__link .m-arrow:before,
.m-author__text02 .m-arrow:before{
  border-radius: 50%;
  background: #CFE1DC;
  opacity: 0;
}
.m-malmaga .m-arrow:after,
.backnumber-entry__link .m-arrow:after,
.m-author__text02 .m-arrow:after{
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg"); 
}
/*- フッターボタン -*/
.l-footer02__button .m-arrow:before{
  background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
  opacity: 0;
}
.l-footer02__button .m-arrow{
  right: 0.6rem;
  transition: all .3s ease;
}
.l-footer02__button .m-arrow:after{
  background-image: url("../images/shared/arrow.svg"),url("../images/shared/arrow.svg");
  transition: all .3s ease;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  a:hover .m-arrow:after{
    transform: translateX(2.5rem);
  }
  a[target="_blank"] .m-arrow:after{
    transform: translateX(0);
  }
  /*- グローバルナビ -*/
  .nav-global__child__itemInIn .m-arrow:before{
    background-color: #fff;
    opacity: 1;
  }
  .nav-global__child__itemInIn a:hover .m-arrow:before{
    opacity: 0;
  }
  .nav-global__autor .m-arrow:before{
    background-color: #E7EFEE;  
    opacity: 1;
  }
  .nav-global__autor a:hover .m-arrow:before{
    opacity: 0;
  }
  /*- ピックアップ -*/
  .home-pickup a:hover .m-arrow:before{
    opacity: 1;
  }  
  /*- ボタン -*/
  .m-button a:hover .m-arrow:before{
    opacity: 1;
  }
  .m-button .m-arrow{
    right: 1.4rem;
  }
  /*- サービス -*/
  .m-service__link01 .m-arrow:before,
  .m-linkbox .m-arrow:before{
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    opacity: 0;
  }
  .m-service__link01 a:hover .m-arrow:before,
  .m-linkbox a:hover .m-arrow:before{
    opacity: 1;
  }
  .m-service__link01 .m-arrow,
  .m-linkbox .m-arrow{
    right: 3.1rem;
  }
  .m-service__link02 .m-arrow{
    width: 4rem;
    height: 4rem;
    right: 3.2rem;
  }
  .m-service__link02 .m-arrow:before{
    width: 4rem;
    height: 4rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    opacity: 0;
  }
  .m-service__link02 a:hover .m-arrow:before{
    opacity: 1;
  }
  .m-service__link02 .m-arrow:after{
    width: 5.5rem;
    height: 1.4rem;
    background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg");
    background-size: 1.4rem auto,1.4rem auto;
    right: 1.3rem;
  }
  .m-service__link02 a:hover .m-arrow:after{
    transform: translateX(4rem);
  }
  .m-service__link02 a[target="_blank"] .m-arrow:after{
    width: 1.4rem;
    height: 1.4rem;
    background-image: url("../images/shared/icon-target.svg");
    background-size: 100% auto;
    background-position: center center;
    background-repeat: no-repeat;
    right: 1.3rem;
  }
  .m-service__link02 a[target="_blank"]:hover .m-arrow:after{
    filter: brightness(0) invert(1);
    transform: translate(0);
  }
  /*- お知らせ -*/
  .home-news__listIn .m-arrow,
  .m-news .m-arrow,
  .m-backnumber__list .m-arrow,
  .search-list .m-arrow{
    width: 3.2rem;
    height: 3.2rem;
  }
  .home-news__listIn .m-arrow:before,
  .m-news .m-arrow:before,
  .m-backnumber__list .m-arrow:before,
  .search-list .m-arrow:before{
    width: 3.2rem;
    height: 3.2rem;
    background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
    opacity: 0;
  }
  .home-news__listIn .m-arrow:after,
  .m-news .m-arrow:after,
  .m-backnumber__list .m-arrow:after,
  .search-list .m-arrow:after{
    right: 0.8rem;
  }
  .home-news__listIn a:hover .m-arrow:before,
  .m-news a:hover .m-arrow:before,
  .m-backnumber__list a:hover .m-arrow:before,
  .search-list a:hover .m-arrow:before{
    opacity: 1;
  }  
  .home-news__listIn a:hover .m-arrow:after,
  .m-news a:hover .m-arrow:after,
  .m-backnumber__list a:hover .m-arrow:after,
  .search-list a:hover .m-arrow:after{
    transform: translateX(2.2rem);
  }
  /*- 下部リンク -*/
  .m-link a:hover .m-arrow:before{
    opacity: 1;
  }
  .m-link .m-arrow{
    right: 4rem;
  }
  .m-link .m-arrow:after{
    height: 1.4rem;
    right: 1.5rem;
    background-size: 1.4rem auto,1.4rem auto;
  }
  .m-link a:hover .m-arrow:after{
    transform: translateX(2.4rem);
  }
  /*- 下部メルマガ -*/
  .m-malmaga__button a:hover .m-arrow:before{
    opacity: 1;
  }
  .m-malmaga__link a:hover .m-arrow:before,
  .backnumber-entry__link a:hover .m-arrow:before,
  .m-author__text02:hover .m-arrow:before{
    background: linear-gradient(289.05deg, rgba(72, 157, 45, 1) 16.58%, rgba(27, 139, 127, 1) 83.47%);
    opacity: 1;
  }
  .m-malmaga__button a:hover .m-arrow:after{
    transform: translateX(2.5rem);
  }
  /*- フッターボタン -*/
  .l-footer02__button a:hover .m-arrow:before{
    opacity: 1;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-arrow:before{
    width: 1rem;
    height: 1rem;
  }
  .m-arrow:after{
    width: 3.3rem;
  }
  /*- グローバルナビ -*/
  .nav-global__child__itemInIn .m-arrow:before{
    right: 0;
  }
  /*- ピックアップ -*/
  .home-pickup .m-arrow{
    top: 2.5rem;
  }
  .home-pickup__list .m-arrow:before{
    right: 0;
  }
  /*- ボタン -*/
  .m-button .m-arrow{
    right: 1.4rem;
  }
  .m-button .m-arrow:after{
    width: 0.8rem;
    height: 0.8rem;
    background-size: 0.8rem auto,0.8rem auto;
  }
  /*- サービス -*/
  .m-service__link01 .m-arrow,
  .m-linkbox .m-arrow{
    right: 1.6rem;
  }
  .m-service__button .m-arrow{
    right: 1.1rem;
  }
  .m-service__button .m-arrow:after{
    background-image: url("../images/shared/arrow.svg"),url("../images/shared/arrow.svg");
  }
  /*- お知らせ -*/
  .home-news__list .m-arrow,
  .m-backnumber__list .m-arrow,
  .search-list .m-arrow{
    right: 0;
  }
  /*- 下部リンク -*/
  .m-link .m-arrow{
    width: 2rem;
    right: 1.2rem;
  }
  .m-link .m-arrow:after{
    height: 1.4rem;
    background-size: 1.4rem auto, 1.4rem auto;
  }
  /*- 下部メルマガ -*/
  .m-malmaga__button .m-arrow:before{
    opacity: 0;
  }
  .m-malmaga__button .m-arrow:after{
    width: 0.8rem;
    height: 0.8rem;
    background-size: 0.8rem auto,0.8rem auto;
    right: 0.2rem;
  }
  .m-malmaga__link .m-arrow:before,
  .backnumber-entry__link .m-arrow:before{
    width: 2.4rem;
    height: 2.4rem;
  }
  .m-malmaga__link .m-arrow:after,
  .backnumber-entry__link .m-arrow:after{
    background-size: 0.8rem auto,0.8rem auto;
    right: 0.8rem;
  }
  /*- フッターボタン -*/
  .l-footer02__button .m-arrow:after{
    right: 0.5rem;
  }
}

/* ヘッダーナビ
--------------------------------------------------*/

.nav-header li{
  position: relative;
}
.nav-header li:first-child:after{
  content: "";
  width: 1px;
  height: 1.2rem;
  background: url("../images/shared/header-line.png") center center no-repeat;
  background-size: 100% auto;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  right: 0;
}
/* PC */
@media print,only screen and (min-width: 841px){ 
	.nav-header{
		position:absolute;
		top:1.6rem;
		right:48rem;
		display: flex;
		justify-content: flex-end;
	}
	.nav-header li a{
		color: #43914C;
		font-size: 1.4rem;
    font-weight: 600;
    padding: 0.5rem 2.8rem 0.5rem 2rem;
	}
	.nav-header li:last-child a{
    padding: 0.5rem 2rem 0.5rem 2.6rem;
	}
	.nav-header li a:before{
    content: "";
    width: 0.8rem;
    height: 0.8rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    opacity: 0;
    transition: all .3s ease;
	 }
	.nav-header li a:hover:before{
    opacity: 1;
	 }
	.nav-header li:first-child a:before{
    left: 0.3rem;
	 }
	.nav-header li:nth-child(2) a:before{
    left: 1.1rem;
	 }
}

/* SP */
@media screen and (max-width: 840px){	
	.nav-header{
		display: flex;
		justify-content: center;
    margin-top: 1.8rem;
	}
	.nav-header li a{
    font-size: 1.4rem;
    font-weight: 600;
    padding: 0.5rem 1.6rem;
	}
}

/* ヘッダーボタン
--------------------------------------------------*/
.nav-button{
  display: flex;
}
.nav-button a{
  width: 12rem;
  font-weight: 600;
  border-radius: 10rem;
  display: inline-block;
}
.nav-button li:first-child a{
  border: 1px #2D2D2D solid;
}
.nav-button li:last-child a{
  background-color: #DD5E14;
  color: #fff;
  border: 1px #DD5E14 solid;
}

/* PC */
@media print,only screen and (min-width: 841px){
  .nav-button{
    position: absolute;
    top: 1.5rem;
    right: 10rem;
    justify-content: flex-end;
    gap:0 0.8rem;
  }
  .english .nav-button{
    right: 4.8rem;
  }
  .nav-button a{
    width: 12rem;
    font-size: 1.4rem;
    text-align: center;
    padding: 0.45rem 0.5rem;
    transition: all .3s ease;
  }
  .nav-button li:first-child a:hover{
    color: #43914C;
    border: 1px #43914C solid;
  }
  .nav-button li:last-child a:hover{
    border: 1px #43914C solid;
    background-color: #fff;
    color: #43914C;
  } 
}

/* SP */
@media screen and (max-width: 840px){
  .nav-button{
    justify-content: center;
    gap:0 1rem;
    margin: 2rem -1.2rem 0 -1.2rem;
  }
  .nav-button li{
    width: calc( 50% - 0.5rem );
  }
  .nav-button a{
    width: 100%;
    font-size: 1.6rem;
    text-align: center;
    padding: 1.1rem 0.5rem;
    box-sizing: border-box;
  }
  .nav-button li:first-child a:before{
    width: 1.4rem;
    height: 1.8rem;
    background-image: url("../images/shared/icon-document.svg");
    filter: invert(8%) sepia(1%) saturate(947%) hue-rotate(314deg) brightness(101%) contrast(77%);
  }
  .nav-button li:last-child a:before{
    width: 2rem;
    height: 1.4rem;
    background-image: url("../images/shared/icon-mail.svg");
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(323deg) brightness(103%) contrast(101%);
  }
  .nav-button li a:before{
    content: "";
    background-size: 100% auto;
    display: inline-block;
    margin-right: 0.88rem;
    vertical-align: middle;
    position: relative;
    top: -0.15rem;
  }
}

/* ハンバーガー
--------------------------------------------------*/

/* PC */
@media print,only screen and (min-width: 841px){ 
	.m-hamburger{
	  display:none;
	}	
  .l-header__menus{
    display: block!important;
	}
}

/* SP */
@media screen and (max-width: 840px){	
	.l-header__menus{
    background-color: #fff;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		height: 100vh;
    padding: 7.2rem 2.2rem 2rem 2.2rem;
    margin: 0 -1rem;
    display: none;
	}
	.m-hamburger{
		width: 5rem;
		height: 5rem;
		position: absolute;
		top: 0;
		right: 1rem;
		cursor: pointer;
		z-index: 100;
	}
	.m-hamburger__lines{
		height: 100%;
		width:67%;
		margin: 0 auto;
		position: relative;
	}
	.m-hamburger__lines>div{
		background-color: #2D2D2D;
		width:100%;
    height: 1px;
		transition: transform .3s ease, opacity .3s ease;
		position: absolute;
		left:0;
		top:50%;
	}
	.m-hamburger__lines>div:first-child{
		transform: translateY(-530%);
	}
	.m-hamburger__lines>div:last-child{
		transform: translateY(530%);
	}
	.menu-open .m-hamburger__lines>div:first-child{
		transform: rotate(225deg);
	}
	.menu-open .m-hamburger__lines>div:last-child{
		transform: rotate(-225deg);
	}
	.m-hamburger__text{
		height: 15%;
		width:50%;
		margin: 0 auto;
	}
	.m-hamburger__text:before{
		content: "MENU";
	}
	.menu-open .m-hamburger__text:before{
		content: "閉じる";
	}
}

@media (min-width: 840px) and (max-width: 1130px) {
  .library .nav-global__child__itemInIn{
    gap:0 3rem
  }
  .nav-global__child{
    top: 7.8rem;
    left: 2rem;
    right: 2rem;
    padding: 0.9rem 2rem 6.1rem 3rem;
    border-radius: 0 0.8rem 0.8rem 0.8rem;
  }
  .nav-global__child>li{
    width: 20rem;
  }
  .nav-global__child__itemIn{
    width: calc( 100% - 26.2rem );
    right: 2.8rem;
    gap:0 5.8rem;
    padding: 3rem 2.5rem 0 7.2rem;
    background-color: #E7EFEE;
    border-radius: 0 0.8rem 0.8rem 0.8rem;
    margin-top: 0.9rem;
  }
  .nav-global__child__itemInIn>li{
    max-width: 22.4rem;
    width: 90%;
  }
  .nav-global__child__itemIn.-twocol .nav-global__child__itemInIn{
    max-width: 22.4rem;
    width: 90%;
  }
  .nav-global__child__itemInIn>li.-w100{
    width: 59.2rem;
  }
}

@media (min-width: 840px) and (max-width: 948px) {
	.l-header__logo{
		width: 14.5rem;
		position:absolute;
		left:2rem;
	} 
  .l-language{
    right: 28rem;
  }
  .nav-button{
    right: 2rem;
  }
	.nav-global{
    right: 1rem;
    bottom: 1rem;
    gap:0 0;
	}
	.nav-header{
		top:1.6rem;
		right:39.5rem;
	}
}

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

フッター

==================================================*/
/* pagetop
--------------------------------------------------*/
.l-footer__pagetop{
  width: 4rem;
  height: 4rem;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 50%;
  position: fixed;
  right: 0.8rem;
  bottom: 0.8rem;
  z-index: 100;
  cursor: pointer;
}
.l-footer__pagetop:before{
  content: "";
  width: 1rem;
  height: 1rem;
  position: absolute;
  background: url("../images/shared/arrow.svg") center center no-repeat;
  background-size: 100% auto;
  inset:0;
  margin: auto auto;
  display: block;
  transform: rotate(-90deg);
}
/* PC */
@media print,only screen and (min-width: 768px){ 
}

/* SP */
@media screen and (max-width: 767px){
}
/* フッター1
--------------------------------------------------*/
.l-footer{
  background-color: #fff;
}
.nav-footer01 a{
  position: relative;
  display: block;
  font-size: 1.4rem;
}
.nav-footer01 a:before{
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
  transition: all .3s ease;
 }
.nav-footer02__inner>li{
  font-size: 1.4rem;
  border-top: 1px #D1E3DE solid;
}
.nav-footer02__heading{
  border-top: none;
}
.nav-footer02__heading a{
  color: #43914C;
  display: block!important;
  padding-bottom: 1.4rem;
  font-weight: 600;
}
.nav-footer02__heading a:hover{
  text-decoration: none;
}
.nav-footer02__title{
  display: block;
  position: relative;
  font-weight: 600;
  cursor: pointer;
}
.nav-footer02__bars{
  width: 1.1rem;
  height: 1.1rem;
  position: absolute;
  top:0;
  bottom: 0;
  right: 0;
  margin: auto 0;
}
.nav-footer02__bars:before,
.nav-footer02__bars:after{
  width: 1.1rem;
  height: 1px;
  content: "";
  background-color: #43914C;
  display: block;
  position: absolute;
  inset:0;
  margin: auto 0;
  transition: all .3s ease;
}
.nav-footer02__bars:after{
  transform: rotate(-90deg);
}
.-open .nav-footer02__bars:after{
  transform: rotate(0);
}
.nav-footer02In a{
  display: block;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .l-footer{
    padding: 33.6rem 3rem 8rem 3rem;
    margin-top: -22rem;
  }
  .english .l-footer{
    padding-top: 28rem;
  }
  .l-footer01,
  .l-footer02{
    max-width: 120rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .nav-footer01{
    width: 34%;
    order: 1;
  }
  .nav-footer01 li{
    margin-bottom: 0.5rem;
  }
  .nav-footer01 a{
    padding: 0.5rem 0 0.5rem 1.7rem;
    transition: color .3s ease;
  }
  .nav-footer01 a:hover:before{
    transform: scale(1.3);
   }
  .nav-footer01 a:hover{
    color: #43914C;
    text-decoration: none;
   }  
  .english .nav-footer01{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap:0 4rem;
    margin-bottom: 4.3rem;
  }
  .nav-footer02{
    width: 63.6%;
    order: 2;
    margin-top: -3rem;
  }  
	.nav-footer02__heading a{
    transition: all .3s ease;
    position: relative;
	 }
  .nav-footer02__heading a:before{
    content: "";
    width: 0.8rem;
    height: 0.8rem;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 50%;
    display: block;
    position: absolute;
    top: 0.6em;
    left: -1.5rem;
    transition: all .3s ease;
    opacity: 0;
	 }
	.nav-footer02__heading a:hover:before{
    opacity: 1;
	 }  
  .nav-footer02__title{
    padding: 3.2rem 3.2rem 3.2rem 0;
    transition: all .3s ease;
  }
  .nav-footer02__title:hover{
		color: #43914C;
  }
  .nav-footer02In{
    margin: -1.5rem 0 2.5rem 0;
  }
  .nav-footer02In a{
    padding: 0.7rem 0;
    transition: color .3s ease;
  }
  .nav-footer02In a:hover{
    color: #43914C;
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .l-footer{
    padding: 58rem 2rem 2rem 2rem;
    margin-top: -53.5rem;
  }
  .english .l-footer{
    padding: 28rem 2rem 2rem 2rem;
    margin-top: -28.5rem;
  }
  .nav-footer01{
    margin: 3rem 0;
  }
  .nav-footer01 li{
    margin-bottom: 0.3rem;
  }
  .nav-footer01 a{
    font-size: 1.6rem;
    padding: 0.5rem 0 0.5rem 1.7rem;
  }
  .nav-footer02{
    border-bottom: 1px #D1E3DE solid;
  }
  .nav-footer02__title{
    padding: 2rem 3.2rem 2rem 0;
  }
  .nav-footer02In{
    margin: 0 0 2rem 0;
  }
  .nav-footer02In a{
    padding: 0.5rem 0;
  }
}

/* フッター2
--------------------------------------------------*/
.l-footer02{
  background-color: #fff;
}
.l-footer02__address{
  font-size: 1.4rem;
  line-height: 1.7;
}  
.l-footer02__button a{
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  display: block;
  background-color: #43914C;
  border-radius: 10rem;
  position: relative;
  transition: all .4s ease;
}
.l-footer02__tel{
  font-size: 1.4rem;
}
.l-footer02__banner li{
  border: 1px #D1E3DE solid;
  border-radius: 0.8rem;
  overflow: hidden;
}
.l-footer__copy{
  text-align: right;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
	.l-footer02{
		padding:2rem 3rem 0 3rem;
	}
	.l-footer02__left{
    width: 34%;
	}
	.l-footer02__right{
    width: 63.6%;
	}
  .l-footer02__logo{
    width: 16.3rem;
    margin-bottom: 0.8rem;
  }
  .l-footer02__address{
    margin-bottom: 0.8rem;
  }  
  .l-footer02__button{
    width: 10.3rem;
    margin-bottom: 0.8rem;
  }
  .l-footer02__button a{
    padding: 0.8rem 1.6rem 0.8rem 1.6rem;
  }
  .l-footer02__button a:hover{
    background: #E7EFEE;
    color: #43914C;
    text-decoration: none;
  }
  .l-footer02__banner{
    display: flex;
    gap:0 1.4rem;
  }
  .l-footer02__banner li{
    width: calc( 50% - 0.7rem );
  }
	.l-footer__copy{
    font-size: 1.4rem;
    margin-top: 5.6rem;
	}
}

/* SP */
@media screen and (max-width: 767px){
	.l-footer02{
	}
  .l-footer02__logo{
    width: 16.3rem;
    margin-bottom: 1.2rem;
  }
  .l-footer02__address{
    margin-bottom: 1.2rem;
  }  
  .english .l-footer02__address{
    font-size: 1.6rem;
  }  
  .l-footer02__button{
    width: 10.3rem;
    margin-bottom: 1.2rem;
  }
  .english .l-footer02__button{
    font-size: 1.6rem;
  }
  .l-footer02__button a{
    padding: 0.8rem 1.6rem 0.8rem 1.6rem;
  }
  .l-footer02__tel{
    font-size: 1.6rem;
  }
  .l-footer02__banner{
    margin-top: 2rem;
  }
  .l-footer02__banner li{
    margin-bottom: 2rem;
  }
  .l-footer02__banner li:last-child{
    margin-bottom: 0;
  }
	.l-footer__copy{
    font-size: 1.2rem;
    margin-top: 2rem;
	}
}

/* 下部リンク
--------------------------------------------------*/
.m-link a{
  background-color: #fff;
  border-radius: 0.8rem;
  display: block;
  position: relative;
}
.m-link a:hover{
  text-decoration: none;
}
.m-link__title{
  font-size: 2rem;
  font-weight: 600;
  display: block;
}
.m-link__text{
  font-size: 1.4rem;
  line-height: 1.7;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-links{
    max-width: 119rem;
    margin: 0 auto 5.5rem auto;
    padding:0 3rem;
    box-sizing: content-box;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap:0 3.2rem;
  }
  .m-link{
    width: calc( 50% - 1.6rem );
    display: flex;
  }
  .m-link a{
    display: block;
    padding: 5.6rem 10rem 5.6rem 4rem;
  }
  .m-link a:hover{
    text-decoration: none;
  }
  .m-link__title{
    margin-bottom: 0.5rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-links{
    margin: 0 2.4rem 2.4rem 2.4rem;
  }
  .m-links.-service{
    margin-top: -3rem;
  }
  .m-link{
    margin-bottom: 1.5rem;
  }
  .m-link:last-child{
    margin-bottom: 0;
  }
  .m-link a{
    padding: 2.4rem 5.1rem 2.4rem 2.4rem;
  }
  .m-link__title{
    margin-bottom: 0.2rem;
  }
  .english .m-link__text{
    font-size: 1.6rem;
  }
}

/* 下部お問い合わせ
--------------------------------------------------*/
.m-information{
  position: relative;
}
.m-information__inner{
  border-radius: 0.8rem;
  background: linear-gradient(76.67deg, #002836 -0.32%, #007086 100%);
}
.m-contact{
  background-color: #fff;
  border-radius: 0.4rem;
  position: relative;
}
.m-contact__button a{
  width: 100%;
  font-size: 1.6rem;
  font-weight: 600;
  border-radius: 10rem;
  display: inline-block;
  transition: all .3s ease;
}
.m-contact__button a:before{
  content: "";
  background-position: center center;
  background-repeat: no-repeat;
  display: inline-block;
  vertical-align: middle;
  transition: all .3s ease;
  position: relative;
  top: -0.2rem;
}
.m-contact__item:first-child .m-contact__button a:before{
  background-image: url("../images/shared/icon-document.svg");
  filter: invert(8%) sepia(1%) saturate(947%) hue-rotate(314deg) brightness(101%) contrast(77%);
  background-size: 100% auto;
}
.m-contact__item:last-child .m-contact__button a:before{
  background-image: url("../images/shared/icon-mail.svg");
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(323deg) brightness(103%) contrast(101%);
  background-size: 100% auto;
}
.m-contact__item:first-child .m-contact__button a{
  border: 1px #2D2D2D solid;
}
.m-contact__item:last-child .m-contact__button a{
  color: #fff;
  background-color: #DD5E14;
  border: 1px #DD5E14 solid;
}
.m-contact__text{
  font-size: 1.4rem;  
}
.m-malmaga{
  color: #fff;
}
.m-malmaga__title{
  font-size: 2rem;
  font-weight: 600;
}
.m-malmaga__text{
  font-size: 1.4rem;
  line-height: 1.7;
}
.m-malmaga__button{
  text-align: center;
}
.m-malmaga a{
  color: #fff;
  font-weight: bold;
  position: relative;
}
.m-malmaga__button a{
  width: 100%;
  color: #fff;
  font-size: 1.6rem;
  border: 1px #fff solid;
  border-radius: 10rem;
  display: block;
  box-sizing: border-box;
  position: relative;
  transition: color .3s ease;
}
.m-malmaga__link a{
  font-size: 1.4rem;
  position: relative;
  display: block;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-information{
    padding: 0 3rem;
  }
  .m-information__inner{
    max-width: 119rem;
    padding: 1.6rem 1.6rem 5rem 1.6rem;
    margin: 0 auto;
  }
  .english .m-information__inner{
    padding: 1.6rem 1.6rem 2.2rem 1.6rem;
  }
  .m-contact{
    display: flex;
    justify-content: space-between;
    padding: 5.6rem 2rem;
  }
  .english .m-contact{
    justify-content: center;
    padding: 3.2rem 2rem;
  }
  .m-contact:after{
    content: "";
    width: 1px;
    height: 9.8rem;
    background-color: #d8f5d9;
    display: block;
    position: absolute;
    inset:0;
    margin: auto auto;
  }
  .english .m-contact:after{
    content: none;
  }
  .m-contact__item{
    width: 47%;
    text-align: center;
  }
  .m-contact__button{
    max-width: 28rem;
    margin:0 auto 1.8rem auto;
  }
  .m-contact__button a{
    padding: 1.7rem 2rem;
  }
  .m-contact__button a:before{
    margin-right: 1.4rem;
  }
  .m-contact__item:first-child .m-contact__button a:before{
    width: 1.5rem;
    height: 1.8rem;
  }
  .m-contact__item:last-child .m-contact__button a:before{
    width: 2rem;
    height: 1.4rem;
  }
  .m-contact__item .m-contact__button a:hover{
    color: #43914C;
    background-color: #fff;
    border: 1px #43914C solid;
    text-decoration: none;
  }
  .m-contact__item .m-contact__button a:hover:before{
    filter: invert(48%) sepia(12%) saturate(1924%) hue-rotate(76deg) brightness(97%) contrast(86%);
  }
  .m-malmaga{
    display: flex;
    justify-content: space-between;
    margin: 6rem 6.8rem 0 6.8rem;
  }
  .english .m-malmaga{
    margin: 4.5rem 6.8rem 0 6.8rem;
  }
  .m-malmaga__left{
    width: 54%;
  }
  .m-malmaga__right{
    width: 45%;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
  }
  .english .m-malmaga__left{
    width: calc( 100% - 30rem );
  }
  .english .m-malmaga__right{
    width: 28rem;
  }
  .m-malmaga__title{
    margin-bottom: 1.6rem;
  }
  .m-malmaga__button{
    width: 28rem;
  }
  .m-malmaga a:hover{
    text-decoration: none;
  }
  .m-malmaga__button a{
    padding: 1.4rem 2.5rem 1.4rem 1rem;
    transition: all .3s ease;
  }
  .m-malmaga__button a:hover{
    background-color: #fff;
    color: #43914C;
    border: 1px #43914C solid;
  }
  .m-malmaga__link{
    display: flex;
    gap:0 2.4rem;
    margin-top: 2rem;
  }
  .m-malmaga__link a{
    padding: 0.5rem 3.2rem 0.5rem 0;
  }
}

@media (min-width: 768px) and (max-width: 1240px) {
  .m-malmaga{
    margin: 6rem 2rem 0 2rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-information{
    margin: 0 2rem;
  }
  .m-information__inner{
    padding: 1.6rem 1.6rem 3.9rem 1.6rem;
  }
  .m-contact{
    padding: 3.2rem 2.4rem;
  }
  .m-contact__item{
    text-align: center;
    margin-bottom: 2.4rem;
  }
  .m-contact__item:last-child{
    margin-bottom: 0;
  }
  .m-contact__button{
    margin-bottom: 1.6rem;
  }
  .m-contact__button a{
    padding: 1.5rem 2rem;
  }
  .m-contact__button a:before{
    margin-right: 1.4rem;
  }
  .m-contact__item:first-child .m-contact__button a:before{
    width: 1.5rem;
    height: 1.8rem;
  }
  .m-contact__item:last-child .m-contact__button a:before{
    width: 2rem;
    height: 1.4rem;
  }
  .english .m-contact__text{
    font-size: 1.6rem;  
  }
  .m-malmaga{
    margin: 4rem 1.5rem 0 1.5rem;
  }
  .m-malmaga__title{
    text-align: center;
    margin-bottom: 1.2rem;
  }
  .m-malmaga__button{
    margin-top: 2.4rem;
  }
  .m-malmaga__button a{
    padding: 1.4rem 2.5rem 1.4rem 1rem;
  }
  .m-malmaga__link{
    margin-top: 2.4rem;
  }
  .m-malmaga__link li{
    margin-bottom: 1rem;
  }
  .m-malmaga__link li:last-child{
    margin-bottom: 0;
  }
  .m-malmaga__link a{
    padding: 0.5rem 3.2rem 0.5rem 0;
  }
}

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

セカンド共通

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

/* form リセット
--------------------------------------------------*/
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
input[type="checkbox"]{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* レイアウト
--------------------------------------------------*/
.l-content{
	line-height: 1.8;
}

/* PC */
@media print,only screen and (min-width: 768px){	
	.l-content{
		max-width: 120rem;
		font-size: 1.6rem;
		padding: 0 3rem;
		margin: 0 auto 16rem auto;		
    box-sizing: content-box;
	}
  main{
    margin-bottom: 16rem;
  }
}

/* SP */
@media screen and (max-width: 767px){
	.l-content{
    padding: 0 2rem;
		font-size: 1.6rem;
    margin-bottom: 7rem;
	}
  main{
    margin-bottom: 7rem;
  }
}

/* ページタイトル
--------------------------------------------------*/
.m-pageTitle{
  position: relative;
	font-weight: bold;	
}
.m-pageTitle.-gradation:before{
  content: "";
  background: url("../images/home/main-bg-bottom.png") center bottom repeat-x;
  background-size: 100% 100%;
  position: absolute;
  bottom: -0.1rem;
  left: 0;
  right: 0;
  z-index: 20;
  display: block;
}
.m-pageTitle__catch{
  color: #fff;
  font-weight: 500;
  text-align: center;
  display: block;
}
.m-pageTitle__english{
  width: fit-content;
  font-family: 'Inter';
  font-weight: 700;
  letter-spacing: 0.38em;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  display: block;
}
.m-pageTitle__japanese{
  font-weight: 600;
  line-height: 1.6;
  letter-spacing: 0.04em;
  display: block;
}
.m-pageTitle.-center .m-pageTitle__english,
.m-pageTitle.-center .m-pageTitle__japanese{
  text-align: center;
  margin: 0 auto;
}
.m-pageTitle.-gradation .m-pageTitle__japanese{
  color: #fff;
}
.m-pageTitle__buttons a{
  background-color: #DD5E14;
  color: #fff;
  border-radius: 10rem;
  font-size: 1.6rem;
  padding: 1.3rem 2.5rem;
  font-weight: 600;
  text-align: center;
  display: block;
  border: 1px #DD5E14 solid;
}
.m-pageTitle__buttons li.-white a{
  background-color: #fff;
  color: #2D2D2D;
  border: 1px #fff solid;
}
.m-pageTitle__text{
  line-height: 1.9;
  margin: 3rem auto 0 auto;
  font-weight: 400;
}
.m-pageTitle.-gradation .m-pageTitle__text{
  color: #fff;
  margin: 3rem auto -3rem auto;
}
.m-pageTitle__category{
  display: flex;
  flex-wrap: wrap;
  gap:0.6rem 0.6rem;
}
.m-pageTitle__category li{
  background-color: #557D92;
  color: #fff;
  font-weight: 500;
  display: inline-block;
  border-radius: 0.2rem;
}
.m-pageTitle__data{
  color: #fff;
  font-family: 'Inter';
  font-weight: normal;
}
.m-pageTitle__tag{
  display: flex;
  flex-wrap: wrap;
}
.m-pageTitle__tag a{
  color: #fff;
  font-weight: normal;
  text-decoration: underline;
}
.m-pageTitle.-article .m-pageTitle__japanese{
  text-align: left;
}
.m-pageTitle__authorImage{
  border-radius: 0.8rem;
  overflow: hidden;
}
.m-pageTitle__author h1{
  color: #fff;
  line-height: 1.6;
  font-weight: 600;
}
.m-pageTitle__author h1 span{
  display: block;
  font-weight: 400;
}
.m-pageTitle__authorText{
  color: #fff;
  line-height: 1.8;
  font-weight: 400;
}
.m-pageTitle__authorSocial{
  background-color: #fff;
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  width: fit-content;
}
.m-pageTitle__authorSocial img{
  width: auto;
  height: 2.4rem;
  vertical-align: middle;
}
.m-pageTitle__authorYoutube img{
  width: 8rem;
}
.m-pageTitle__image{
  border-radius: 0.6rem;
  overflow: hidden;
}
.m-pageTitle__image img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 105 / 58;
}


/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-pageTitle{
    padding: 20rem 3rem 7.5rem 3rem;
  }
  .m-pageTitle.-gradation{
    background: url("../images/shared/title-bg.png") center top no-repeat;
    background-size: 100% 100%;
    padding: 16rem 3rem 24rem 3rem;
  }
  .m-pageTitle__inner{
    max-width: 120rem;
    margin: 4rem auto 0 auto;
  }
  .m-pageTitle.-gradation .m-pageTitle__inner{
    max-width: 96rem;
  }
  .single-services .m-pageTitle.-gradation .m-pageTitle__inner{
    max-width: 93rem;
  }
  .m-pageTitle.-gradation.-author .m-pageTitle__inner{
    max-width:104rem;
    margin: 0 auto;
  }
  .m-pageTitle.-gradation:before{
    height: 25rem;
  }
  .m-pageTitle__catch{
    font-size: 1.8rem;
    margin-bottom: 0.8rem;
  }
  .m-pageTitle__english{
    font-size: 1.8rem;
    line-height: 1.1;
  }
  .m-pageTitle.-gradation .m-pageTitle__english{
    margin-bottom: 0.5rem;
  }
  .m-pageTitle__japanese{
    font-size: 4.6rem;
  }
  .m-pageTitle.-article .m-pageTitle__japanese{
    font-size: 3.2rem;
    line-height: 1.6;
    margin-bottom: 2.8rem;
  }
  .l-container.-whitepaper .m-pageTitle__japanese{
    font-size: 2.8rem;
    line-height: 1.6;
  }
  .m-pageTitle__buttons{
    display: flex;
    justify-content: center;
    gap:0 1.6rem;
    margin-top: 4.3rem;
  }
  .m-pageTitle__buttons li{
    min-width: 21.2rem;
  }
  .m-pageTitle__buttons a{
    transition: all .3s ease;
  }
  .m-pageTitle__buttons a:hover{
    background-color: #fff;
    color: #43914C;
    border: 1px #43914C solid;
    text-decoration: none;
  }
  .m-pageTitle__buttons li.-white a:hover{
    color: #43914C;
    border: 1px #43914C solid;
  }
  .m-pageTitle__text{
    font-size: 1.8rem;
  }
  .m-pageTitle__category{
    margin:1rem 0 1.6rem 0;
  }
  .m-pageTitle__category li{
    font-size: 1.4rem;
    padding: 0.25rem 1.2rem;
  }
  .m-pageTitle__data{
    font-size: 1.4rem;
    margin:-0.8rem 0 1rem 0;
  }
  .m-pageTitle__data span{
    margin-right: 0.8rem;
  }
  .m-pageTitle__tag{
    gap:0.5rem 2rem;
  }
  .m-pageTitle__tag a{
    font-size: 1.4rem;
  }
  .l-container .m-pageTitle {
    padding: 0 0 7.5rem 0;
  }
  .l-container:has(.m-pageTitle) .l-side {
    margin-top: 3.5rem;
  }
  .m-pageTitle__author{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 4.2rem;
  }
  .m-pageTitle__authorImage{
    width: 17.31%;
    order: 2;
  }
  .m-pageTitle__authorTexts{
    width: 73.5%;
    order: 1;
  }
  .m-pageTitle__author h1{
    font-size: 3.8rem;
    margin-bottom: 2.4rem;
  }
  .m-pageTitle__author h1 .m-pageTitle__authorTitle01{
    font-size:1.6rem;
  }
  .m-pageTitle__authorText{
    font-size: 1.6rem;
    margin-bottom: 2.4rem;
  }
  .m-pageTitle__authorSocial{
    padding: 1.1rem 2.8rem;
    gap:0 2.4rem;
    margin-top: 2.4rem;
  }
  .m-pageTitle__titleImage{
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .m-pageTitle__titleImage-texts{
    width: 70%;
  }
  .m-pageTitle__authorSocial{
    padding: 1.1rem 2.8rem;
    gap:0 2.4rem;
    margin-top: 2.4rem;
  }
  .m-pageTitle:not(.l-content .m-pageTitle) .m-pageTitle__titleImage-texts .m-pageTitle__japanese{
    font-size: 3.2rem;
    line-height: 1.6;
  }  
  .m-pageTitle__image{
    width: 28.38%;
    border-radius: 0.6rem;
    overflow: hidden;
  }
  .m-pageTitle__image img{
    width: 100%;
    object-fit: cover;
    aspect-ratio: 105 / 58;
  }
  .m-pageTitle:not(.l-content .m-pageTitle) .m-pageTitle__image{
    width: 26.8%;
    margin-top: 3.5rem;
  }  
  .m-pageTitle:not(.l-content .m-pageTitle) .m-pageTitle__titleImage-texts{
    width: 69.3%;
  }  
}

/* SP */
@media screen and (max-width: 767px){	 
  .m-pageTitle.-gradation{
    background: url("../images/shared/title-bg-sp.png") center top no-repeat;
    background-size: 100% 100%;
    padding: 14rem 2rem 11.5rem 2rem;
  }
  .m-pageTitle{
    padding: 15rem 3rem 2rem 3rem;
  }
  .l-container .m-pageTitle {
    padding: 0 0 2rem 0;
    
    margin-top: -1rem;
  }
  .m-pageTitle.-gradation:before{
    height: 13rem;
  }
  .m-pageTitle__catch{
    font-size: 1.6rem;
    line-height: 1.75;
    margin:-3rem 0 1.6rem 0;
  }
  .m-pageTitle__english{
    font-size: 1.2rem;
  }
  .m-pageTitle__japanese{
    font-size: 2.3rem;
    line-height: 1.6;
  }
  .m-pageTitle__japanese .m-pageTitle.-gradation{
    font-size: 2.8rem;
  }
  .m-pageTitle.-article .m-pageTitle__japanese{
    font-size: 1.8rem;
    line-height: 1.6;
    margin-bottom: 1rem;
  }
  .l-container.-whitepaper .m-pageTitle__japanese{
    font-size: 1.8rem;
    line-height: 1.6;
    margin-bottom: 1rem;
  }
  .m-pageTitle__buttons{
    margin: 4rem 0 -3rem 0;
  }
  .m-pageTitle__buttons li{
    margin-bottom: 1.6rem;
  }
  .m-pageTitle__buttons li:last-child{
    margin-bottom: 0;
  }
  .m-pageTitle__text{
    font-size: 1.6rem;
    margin-top: 1rem;
  }
  .m-pageTitle__category{
    margin-bottom: 0.8rem;
  }
  .m-pageTitle__category li{
    font-size: 1.1rem;
    padding: 0.3rem 1rem 0.2rem 1rem;
  }
  .m-pageTitle__data{
    font-size: 1.2rem;
  }
  .m-pageTitle__data span{
    margin-right: 0.4rem;
  }
  .m-pageTitle__tag{
    gap:0 0.8rem;
  }
  .m-pageTitle__tag a{
    font-size: 1.2rem;
  }
  .m-pageTitle__authorImage{
    width: 17rem;
    margin: 0 auto 1.5rem auto;
  }
  .m-pageTitle.-gradation.-author{
    padding: 15rem 2rem 15rem 2rem;
  }
  .m-pageTitle__author h1{
    font-size: 2.6rem;
    margin-bottom: 1rem;
    text-align: center;
  }
  .m-pageTitle__author h1 .m-pageTitle__authorTitle01{
    font-size:1rem;
    line-height: 1.1;
  }
  .m-pageTitle__authorText{
    font-size: 1.3rem;
    margin-bottom: 1.5rem;
  }
  .m-pageTitle__authorSocial{
    padding: 0.7rem 2rem;
    gap:0 1.8rem;
    margin-top: 2rem;
  }
  .m-pageTitle__image{
    width: 80%;
    margin: 0 auto;
  }
}


/* 見出し
--------------------------------------------------*/
.m-title01{
  position: relative;
  z-index: 10;
}
.m-title01__english{
  width: fit-content;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  font-weight: bold;
  font-family: "Inter";
  letter-spacing: 0.0125em;
  display: block;
  position: relative;
  padding-left: 1.5rem;
}
.m-title01__english:before{
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
}
.m-title01__japanese{
  color: #2d2d2d;
  font-weight: 600;
}
.m-title01.-white .m-title01__japanese{
  color: #fff;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-title01__japanese{
    font-size: 3.2rem;
  }
  .m-title01__english{
    font-size: 1.4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-title01__japanese{
    font-size: 2.8rem;
    line-height: 1.5;
  }
  .m-title01__english{
    font-size: 1.2rem;
  }
}


/* 見出し2
--------------------------------------------------*/
.m-title02{
  color: #fff;
  font-weight: 600;
  position: relative;
  padding-left: 3.5rem;
}
.m-title02:before{
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background:url("../images/shared/icon-title.svg") center center no-repeat;
  position: absolute;
  left: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-title02{
    font-size: 2.4rem;
    margin-bottom: 3.2rem;
  }
  .m-title02:before{
    top: 0.3em;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-title02{
    font-size: 2rem;
    margin-bottom: 2rem;
  }
  .m-title02:before{
    top: 0.2em;
  }
}

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

.m-title03{
  line-height: 1.7;
  font-weight: 600;
  position: relative;
}
.m-title03:before{
  content: "";
  width: 0.5rem;
  position: absolute;
  top: 0.7rem;
  bottom: 0.7rem;
  left: 0;
  background: linear-gradient(219.25deg, #52A733 30.75%, #1D968A 56.3%);
  border-radius: 10rem;
}
.m-title03.-white{
  color: #fff;
}

/* PC */
@media print,only screen and (min-width: 768px){   
  .m-title03{
    font-size: 2rem;
    padding-left:2.1rem;
    margin-bottom: 1rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	  
  .m-title03{
    font-size: 1.8rem;
    padding-left:1.7rem;
    margin-bottom: 1rem;
  }
  .m-title03:before{
    width: 0.55rem;
    top: 0.6rem;
    bottom: 0.6rem
  }
}

/* 隙間--------------------------------------------------*/
/* PC */
@media print,only screen and (min-width: 768px){   
  .-mt8{
    margin-top: 8rem;
  }
  .-mb6{
    margin-bottom: 6rem!important;
  }
  .-mb16{
    margin-bottom: 16rem!important;
  }
  .-mb48{
    margin-bottom: 4.5rem!important;
  }
}

/* SP */
@media screen and (max-width: 767px){	  
  .-mt8{
    margin-top: 4rem;
  }
  .-mb6{
    margin-bottom: 6rem!important;
  }
  .-mb16{
    margin-bottom: 8rem!important;
  }
  .-mb48{
    margin-bottom: 3rem!important;
  }
  .-mt70{
    margin-top: 7rem!important;
  }
}

/* テキスト
--------------------------------------------------*/

/* PC */
@media print,only screen and (min-width: 768px){     
  .m-text{
    font-size: 1.8rem;
    line-height: 1.9;
    margin: 3.6rem 0;
  }
}

/* SP */
@media screen and (max-width: 767px){	   
  .m-text{
    font-size: 1.5rem;
    margin: 3rem 0;
  }
}

/* ぱんくず
--------------------------------------------------*/
.m-bread{
  max-width: 100%; 
  color: #2d2d2d;
  font-weight: 400;
  position: absolute;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  right: 0; 
}
.m-bread ol{
  min-width: max-content; 
	display: flex;
  align-items: flex-start;
  gap:0 2.7rem;
}

.m-bread a,
.m-bread li{
  color: #2d2d2d;
  position: relative;
}
.m-pageTitle.-gradation .m-bread a,
.m-pageTitle.-gradation .m-bread li,
.m-pageTitle.-gradation .m-bread{
  color: #fff;
}
.m-bread a:after{
  content: "";
	background: url("../images/shared/arrow-bread-black.svg") right center no-repeat;  
  background-size: 100% auto;
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -1.5rem;
  margin: auto 0;
}
.m-pageTitle.-gradation a:after{
	background: url("../images/shared/arrow-bread.svg") right center no-repeat;
}
.m-bread:not(.m-pageTitle .m-bread){
  position: static;
  top: auto;
  left: auto;
  color: #2d2d2d;
}

/* PC */
@media print,only screen and (min-width: 768px){	
  .m-bread{
    font-size: 1.4rem;
    top: 12.9rem;
    max-width: 120rem;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding: 0 2rem;
    box-sizing: content-box;
  }
  .m-bread a:after{
    width: 0.5rem;
    height: 0.8rem;
  }
  .m-bread:not(.m-pageTitle .m-bread){
    margin: 12.9rem auto 5.5rem auto;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-bread{
    font-size: 1.2rem;
    top: 7.4rem;
    left: 0;
    padding:0 2rem 0 1.65rem;
  }
  .m-bread a:after{
    width: 0.3rem;
    height: 0.7rem;
    top: 0.2rem;
  }
  .m-bread:not(.m-pageTitle .m-bread){
    margin: 7.57rem 0 5rem 1.65rem;
  }
}

/* ボタン
--------------------------------------------------*/
.m-button a,
.page-content .wp-block-button__link{
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  background-color: #43914C!important;
  border-radius: 10rem!important;
  position: relative;
  transition: all .4s ease;
  display: inline-block;
}
.m-button.-center{
  text-align: center;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-button{
    text-align: right;
  }  
  .m-button a,
  .page-content .wp-block-button__link{
    padding: 1.3rem 5.2rem 1.3rem 3.2rem;
    transition: all .3s ease;
  }
  .m-button a:hover,
  .page-content .wp-block-button__link:hover{
    text-decoration: none;
    background: #fff!important;
    color: #43914C;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .m-button{
    text-align: center;
  }  
  .m-button a,
  .page-content .wp-block-button__link{
    padding: 1.3rem 5.2rem 1.3rem 4.2rem;
  }
  .english .m-button a{
    font-size: 1.6rem;
  }
}

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

トップページ

==================================================*/
/* メイン
--------------------------------------------------*/
.home-cover{
  position: relative;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  overflow: hidden;
}
.home-cover:before,
.home-cover:after{
  content: "";
  display: block;
  position: absolute;
  display: none;
}
.home-cover__bg-whiteBottom,
.home-cover__bg-blueTop,
.home-cover__bg-yellowTopRight,
.home-cover__bg-whiteTopLeft,
.home-cover__bg-whiteTopRight,
.home-cover__bg-blueBottom,
.home-cover__bg-circle,
.home-cover__bg-black,
.home-cover__bg-gradation{
  position: absolute;
}
/* 全体グラ */
.home-cover:before{
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background: url("../images/home/main-bg02.png") 0 0 no-repeat;
  background-size: cover;
  mix-blend-mode: overlay;
  transform: matrix(-1, 0, 0, 1, 0, 0);
  z-index: 2;
}
/* 下部グラ */
.home-cover:after{
  left: 0;
  right: 0;
  background: url("../images/home/main-bg01.png") 0 0 no-repeat;
  background-size: cover;
}
/* 下グラ */
.home-cover__bg-gradation{
  background: url("../images/home/main-bg-bottom.png") center bottom repeat-x;
  background-size: 100% 100%;
  height: 25.7rem;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 20;
  display: block;
}
/* 円 */
.home-cover__bg-circle{
  background: url("../images/home/main-circle.png") center center no-repeat;
  background-size: 100% auto;
  left: 50%;
  transform: translateX(-50%);
/*
  background: #009795;
  border-radius: 50%;
  mix-blend-mode:color-dodge;
  opacity: 0.5;
*/
}
/* 黒円 */
/*
.home-cover__bg-black{
  background: url("../images/home/bg-black.png") center center no-repeat;
  background-size: 100% auto;
  mix-blend-mode: normal;
  transform: rotate(-52deg);
}
*/
/* 上白円右 */
.home-cover__bg-whiteTopRight{
  background: #FFF;
  mix-blend-mode: normal;
  transform: rotate(-17.88deg);
  opacity: 0.8;
}
/* 上黄円右 */
.home-cover__bg-yellowTopRight{
  background: #DCF698;
  mix-blend-mode: lighten;
  transform: rotate(-17.88deg);
}
/* 上青円 */
.home-cover__bg-blueTop{
  background: #77EBFF;
  mix-blend-mode: lighten;
  transform: rotate(42.29deg);
  opacity: 0.5;
}
/* 下青円 */
.home-cover__bg-blueBottom{
  background: #77EBFF;
  mix-blend-mode: overlay;
  transform: rotate(41.62deg);
  z-index: 5;
}
.home-cover__texts{
  color: #fff;
  position: absolute;
  z-index: 10;
}
.home-cover__text01{
  letter-spacing: 0.2em;
  font-weight: bold;
}
.home-cover__texts img{
  vertical-align: baseline;
}
.home-cover__text02{
  letter-spacing: 0;
  font-weight: 600;
}
.home-pickup{
  position: relative;
  z-index: 10;
}
.home-pickup__list a{
  color: #fff;
  position: relative;
}
.home-pickup__list a:hover{
  text-decoration: none;
}
.home-pickup__time{
  width: 6.5em;
  font-family: "Inter";
  font-size: 1.6rem;
  font-weight: 600;
}
.home-pickup__category{
  width: 8rem;
  background-color: #002836;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 0.1rem 0.5rem 0.2rem 0.5rem;
  border-radius: 0.2rem;
  text-align: center;
}
.home-pickup__text{
  flex: 1;
  font-size: 1.6rem;
  line-height: 1.7;
/*
  overflow: hidden;
  text-overflow: ellipsis;
*/
}
/* PC */
@media print,only screen and (min-width: 768px){ 
	.home-cover{
    background: url("../images/home/main.png") center center no-repeat;
    background-size: 100% 100%;
		min-height: 120rem; 
	}
  .english .home-cover{
		height: 90rem; 
	}
  /* 下部グラ */
  .home-cover__in:after{
    height: 90rem;
    bottom: -30rem;
  }
  /* 下グラ */
  .home-cover__bg-gradation{
/*
    background-size: 100% auto;
    height: 21.7rem;
    bottom: 0;
    left: 0;
    right: 0;
*/
/*    filter: blur(5rem);*/
  }
  /* 黒円 */
  .home-cover__bg-black{
    width: 518rem;
    height: 469rem;
    left: 50rem;
    top: -70rem;
  }
  /* 円 */
  .home-cover__bg-circle{
    width: 198rem;
    height: 198rem;
    top: 51.5rem;
    z-index: 3;
  }
  /* 上白円右 */
  .home-cover__bg-whiteTopRight{
    width: 47rem;
    height: 47rem;
    right: -20rem;
    top: -25rem;
    filter: blur(14.5rem);
  }
  /* 上黄円右 */
  .home-cover__bg-yellowTopRight{
    width: 99.7rem;
    height: 66.2rem;
    right: -90rem;
    top: -15rem;
    filter: blur(20rem);
    opacity: 0.4;
  }
  /* 上青円 */
  .home-cover__bg-blueTop{
    width: 93.4rem;
    height: 36.4rem;
    right: 20rem;
    top: -20rem;
    filter: blur(21.5rem);
    display: block;
  }
  /* 下青円 */
  .home-cover__bg-blueBottom{
    background: #408fab;
    width: 128.9rem;
    height: 58.8rem;
    left: -40rem;
    bottom: 5rem;
    filter: blur(10rem);
  }
	.home-cover__texts{
    top: 27rem;
    left: 9.6rem;
	}
	.home-cover__text01{
    font-size: 2.2rem;
    margin-bottom: 1.8rem;
	}
	.home-cover__texts img{
    width: 4.3rem;
    margin: 0 0.6rem;
	}
	.home-cover__text02{
    font-size: 4.5rem;
    line-height: 1.65;
	}
  .english .home-cover__text01{
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0;
    margin-bottom: 1rem;
	}
  .english .home-cover__text02{
    font-size: 3.8rem;
    line-height: 1.5;
    letter-spacing: 0;
	}
	.home-pickup{
    max-width: 88rem;
    display: flex;
    justify-content: center;
    padding: 0 3rem;
    box-sizing: content-box;
    margin: 75rem auto 31rem auto;
	}
	.home-pickup .m-title01{
    width: 20.4rem;
	}
	.home-pickup .m-title01__english{
    font-size: 1.4rem;
	}
	.home-pickup .m-title01__japanese{
    font-size: 2rem;
	}
	.home-pickup__list{
    width: calc( 100% - 20.4rem );
    margin-top: -1rem;
	}
	.home-pickup__list a{
    display: flex;
    align-items: flex-start;
    gap:0 1rem;
    padding:0.5rem 5.4rem 0.5rem 0;
	}
  .home-pickup__category{
    position: relative;
    top: 0.3rem;
  }
  .home-pickup__time{
    position: relative;
    top: 0.3rem;
  }
  .home-pickup__text{
    padding:0 0 0.5rem 0;
    margin-left: 1rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	 
	.home-cover{
    background: url("../images/home/main-sp.png") center top no-repeat;
    background-size: 100% 100%;
		min-height: 126rem;
	} 
	.english .home-cover{
		height: 60rem;
    min-height: auto;
	}
  /* 全体グラ */
  .home-cover:before{
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background: url("../images/home/main-bg02-sp.png") 0 0 no-repeat;
    background-size: cover;
    mix-blend-mode: overlay;
  }
  /* 下グラ */
  .home-cover__bg-gradation{
/*
    width: 150%;
    height: 18rem;
    bottom: -43rem;
    left: -10%;
*/
/*    filter: blur(2.5rem);*/
    height: 35rem;
    bottom: 0;
  }
	.english .home-cover__bg-gradation{
    height: 30rem;
    bottom: -1rem;
	}
  /* 黒円 */
  .home-cover__bg-black{
    width: 193.4rem;
    height: 250rem;
    left: -16.94rem;
    top: -70rem;
    filter: blur(8rem);
    opacity: 0.96;
  }
  /* 円 */
  .home-cover__bg-circle{
/*
    width: 75rem;
    height: 75rem;
*/
    aspect-ratio: 1 / 1;
    left: -50vw;
    right: -50vw;
    top: 50rem;
    transform: translateX(0);
  }
  .english .home-cover__bg-circle{
    width: 75rem;
    height: 75rem;
    top: 30rem;
    left: 50%;
    transform: translateX(-50%);
    aspect-ratio: auto;
  }
  /* 上白円右 */
  .home-cover__bg-whiteTopRight{
    width: 47.7rem;
    height: 31.7rem;
    right: -35rem;
    top: -22rem;
    filter: blur(9.5rem); 
    z-index: 3;
  }
  /* 上黄円右 */
  .home-cover__bg-yellowTopRight{
    width: 47.7rem;
    height: 31.7rem;
    right: -45rem;
    top: 3.8rem;
    filter: blur(8rem);
    opacity: 0.4;
    z-index: 4;
  }
  /* 上青円 */
  .home-cover__bg-blueTop{
    width: 46.4rem;
    height: 20.9rem;
    left: -15rem;
    top: -25rem;
    filter: blur(8rem);
    z-index: 2;
  }
  /* 下青円 */
  .home-cover__bg-blueBottom{
    width: 74.4rem;
    height: 33.9rem;
    left: -55rem;
    bottom: 30rem;
    filter: blur(8rem);
    opacity: 0.7;
  }
	.home-cover__texts{
    top: 22.2rem;
    left: 2.8rem;
	}
	.english .home-cover__texts{
    top: 12rem;
    right: 2.8rem;
	}
	.home-cover__text01{
    font-size: 1.5rem;
    margin-bottom: 1.8rem;
	}
	.home-cover__texts img{
    width: 3rem;
    margin: 0 0.4rem;
	}
	.home-cover__text02{
    font-size: 2.4rem;
    line-height: 1.7;
	}
	.home-pickup{
    padding: 0 2rem;
    margin: 63rem auto 30rem auto;
	}
	.home-pickup .m-title01{
    margin-bottom: 2.4rem;
	}
	.home-pickup__list{
	}
	.home-pickup__list li{
    margin-bottom: 1.5rem;
	}
	.home-pickup__list a{
    display: block;
    padding-right: 7rem;
	}
  .home-pickup__category{
    margin-left: 1rem;
  }
	.home-pickup__text{
    display: block;
    padding:0.5rem 0 0.5rem 0;
    position: relative;
	}
}

/* 上部バナー
--------------------------------------------------*/
.home-banner{
  position: relative;
  z-index: 20;
}
.home-banner ul{
  padding: 2rem;
}
.home-banner img{
  object-fit: cover;
  aspect-ratio: 275 / 104;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .home-banner{
    max-width: 120rem;
    padding: 0 3rem;	
    margin: -22rem auto 19.2rem auto;	
    box-sizing: content-box;
  }
  .home-banner ul{
  background-color: #fff;
  border-radius: 0.8rem;
    display: flex;
    gap:0 2rem;
  }
  .home-banner li{
    border-radius: 0.4rem;
    overflow: hidden;
    width: calc( 25% - 1.5rem );
    transition: all .3s ease;
  }
  .home-banner li:hover{
    opacity: 0.7;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .home-banner{
    margin:-27rem -2rem 11rem -2rem;
  }
  .home-banner__slideItem{
    background-color: #fff;
    border-radius: 0.4rem;
    margin: 0 0.75rem;
    overflow: hidden;
  }
  .home-banner .slick-list {
    padding: 0 2.3rem 0 2.3rem!important;
	}
  .home-banner .slick-prev,
  .home-banner .slick-next{
    width: 4.8rem;
    height: 4.8rem;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 0.76rem auto;
    background-color: #fff;
    border-radius: 50%;
    bottom: -3.4rem;
    position: absolute;
    text-indent: -9999px;
	}
  .home-banner .slick-prev{
    background-image: url("../images/shared/prev.svg");
    left: 5.9rem;
	}
  .home-banner .slick-next{
    background-image: url("../images/shared/next.svg");
    right: 5.9rem;
	}
  .slick-dots{
    width: fit-content;
    position: absolute;
    bottom: -3.5rem;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    gap:0 1rem;
  }
  .slick-dots li{
    width: 0.7rem;
    height: 0.7rem;
    background-color: #999;
    border-radius: 50%;
    text-indent: -9999px;
  }
  .slick-dots li.slick-active{
    background-color: #43914C;
  }
  
}

/* Business for a Better Future
--------------------------------------------------*/
.m-overflowhidden{
  overflow:hidden;
  position: relative;
}
.m-about{
  position: relative;
}
.m-about__inner{
  position: relative;
  z-index: 5;
}
.m-about__title{
  font-family: "Inter";
  line-height: 1.15;
  letter-spacing: 0;
  font-weight: 600;
}
.m-about__text{
  font-size: 1.8rem;
  line-height: 1.88;
}

/* PC */
@media print,only screen and (min-width: 768px){  
  .m-overflowhidden.-w100{
    margin: 0 calc( 50% - 50vw );
  }
  .m-about__inner{
    max-width: 120rem;
    padding: 0 3rem;	
    margin: 0 auto;	
    position: relative;
  }
  .m-about__image{
    width: 45.08%;
    position: absolute;
    top: 0;
    left: 3rem;
    aspect-ratio: 1 / 1;
  }
  .m-about__title{
    font-size: 5.6rem;
    margin-bottom: 5rem;
    padding-left: 52.4%;
  }
  .m-about__text{
    margin-bottom: 5rem;
    padding-left: 52.4%;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .m-overflowhidden.-w100{
    margin: 0 -2rem;
  }
  .m-about{
    padding:0 2rem;
    position: relative;
  }
  .m-about__image{
    margin:3rem 0;
  }
  .m-about__title{
    font-size: 3.6rem;
    margin-bottom: 2.5rem;
  }
  .m-about__text{
    margin-bottom: 3.5rem;
  }
  .m-about .m-button{
    left: 0;
    right: 0;
    bottom: -10rem;
    margin: 0 auto 5rem auto;
  }
}
	
/* サービス
--------------------------------------------------*/
.m-service{
  background: linear-gradient(76.67deg, #002836 -0.32%, #007086 100%);
  position: relative;
  z-index: 3;
}
.m-service:after{
  content: "";
  display: block;
  position: absolute; 
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
}
.m-service:before{
  content: "";
  display: block;
  position: absolute;
  background: linear-gradient(98.98deg, #11982F 24.86%, #58E3E6 82.05%);
  mix-blend-mode: normal;
  transform: rotate(15deg);  
}
.m-service.-service{
  background: none;
}
.m-service.-service:before,
.m-service.-service:after{
  content: none;
}
.m-service.-service .m-title02{
  color: #2D2D2D;
}
.m-service__bg-top{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.m-service__bg-gradation{
  background: url("../images/home/main-bg-bottom.png") center top no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transform: rotate(180deg);
}
.m-service__inner{
  position: relative;
  z-index: 8;
}
.m-service__link01 a,
.m-service__link01In{
  background-color: #fff;
  border-radius: 0.4rem;
  box-sizing: border-box;
  font-size: 1.6rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  position: relative;
}
.m-service__link02 a{
  background-color: #fff;
  border-radius: 0.4rem;
  display: block;
  position: relative;
}
.m-service__text01{
  font-size: 2rem;
  font-weight: 600;
}
.m-service__text02{
  font-size: 1.4rem;
  line-height: 1.7;
}
.m-service__logos{
  display: flex;
  flex-wrap: wrap;
}
.m-service__logos li{
  margin-bottom: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-service{
    padding: 40rem 0 10rem 0;
    margin-top: -29rem;
  } 
  .m-service.-service{
    margin-top: -38rem;
    padding-bottom: 0;
  }
  .m-service:after{
    height: 40rem;
    height: 20vw;
    background: url("../images/home/service-bg-bottom.png") center bottom no-repeat;
    background-size: 100% auto;
  }
  .m-service:before{
    bottom: -5rem;
    left: -25rem;
    width: 99.3rem;
    height: 43.9rem;
    filter: blur(28rem);  
  }
  .m-service__bg-top{
    background: url("../images/shared/service-bg.png") center top no-repeat;
    background-size: 100% 100%;
    height: 99.7rem;
  }
  .m-service__bg-gradation{
    height: 60rem;
  }
  .m-service__inner{
    max-width: 120rem;	
    margin: 0 auto;	
    padding: 0 3rem;	
    box-sizing: content-box;
  }
  .m-service .m-title01{
    margin-bottom: 8rem;
  }
  .m-service__link01{
    display: flex;
    flex-wrap: wrap;
    gap:2rem 2rem;
    margin-bottom: 8rem;
  }
  .m-service__link01 li{
    width: calc( ( 100% / 3 ) - 1.33334rem );
    min-height: 10.4rem;
    display: flex;
    align-items: center;
  }
  .m-service__link01 a,
  .m-service__link01In{
    width: 100%;
    height: 100%;
    padding: 2.4rem 6.8rem 2.4rem 3.2rem;
    transition: color .3s ease;
  }
  .m-service__link01 a:hover{
    color: #43914C;
    text-decoration: none;
  }
  .m-service__link02 li{
    margin-bottom: 2.4rem;
  }
  .m-service__link02 li:last-child{
    margin-bottom: 0;
  }
  .m-service__link02 a{
    padding: 4.8rem 10.4rem 4.8rem 3.2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
  }
  .m-service__link02 a:hover{
    text-decoration: none;
  }
  .m-service__image{
    width: 34.03%
  }
  .m-service__texts{
    width: 62%;
  }
  .m-service__text01{
    margin-bottom: 2rem;
  }
  .m-service__logos{
    gap:0.8rem 0.8rem;
    margin-top: 3.2rem;
  }
  .m-service__logos img{
    width: 10rem;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .m-service{
    padding: 21rem 2rem 3rem 2rem;
    margin:-15rem 0 0.1rem 0;
  }
  .m-service.-service{
    padding-bottom: 0;
  }
  .m-service:after{
    height: 15rem;
    background: url("../images/home/service-bg-bottom.png") center bottom no-repeat;
    background-size: cover;
    bottom: -0.1rem;
  }
  .m-service:before{
    bottom: 2rem;
    left: -25rem;
    width: 48rem;
    height: 21rem;
    filter: blur(28rem);  
  }
  .m-service__bg-top{
    background: url("../images/shared/service-bg-sp.png") center top no-repeat;
    background-size: 100% auto;
    height: 70rem;
  }
  .m-service__bg-gradation{
    height: 18rem;
    top: -0.3rem;
  }
  .m-service .m-title01{
    margin-bottom: 2.5rem;
  }
  .m-service .m-title02{
    margin-top: 4rem;
  }
  .m-service:has(.m-title02) .m-title02:first-of-type{
    margin-top: 0;
  }
  .english .m-service__text02{
    font-size: 1.6rem;
  }
  .m-service__link01 li{
    margin-bottom: 1rem;
  }
  .m-service__link01 a,
  .m-service__link01In{
    width: 100%;
    padding: 2rem 4.5rem 2rem 2.4rem;
  }
  .m-service__link02 li{
    margin-bottom: 1rem;
  }
  .m-service__link01 li:last-child,
  .m-service__link02 li:last-child{
    margin-bottom: 0;
  }
  .m-service__link02 a{
    padding: 0.5rem 2.4rem 2.4rem 2.4rem;
  }
  .m-service__link02 .m-service__image{
    margin: 0 -2rem;
  }
  .m-service__text01{
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
  .m-service__button{
    width: 17.9rem;
    color: #fff;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 1.3rem 5.2rem 1.3rem 3.2rem;
    margin: 1.2rem auto 0 auto;
    background: linear-gradient(289.05deg, #52A733 16.58%, #1D968A 83.47%);
    border-radius: 10rem;
    position: relative;
    display: block;
  }
  .english .m-service__button{
    width: 90%;
    font-size: 1.6rem;
  }
  a[target="_blank"] .m-service__button .m-arrow:after{
    width: 1.2rem;
    height: 1.2rem;
    background: url("../images/shared/icon-target-white.svg") center center no-repeat;
    background-size: 100% auto;
  }
  a:hover .m-service__button .m-arrow:after{
    transform: translate(0);
  }
  .m-service__logos{
    gap:0.5rem 0.5rem;
    margin-top: 3.2rem;
    justify-content: center;
  }
  .m-service__logos li{
    margin-bottom: 0;
  }
  .m-service__logos img{
    width: 9rem;
  }
}

/* お知らせ
--------------------------------------------------*/
.home-news{
  position: relative;
  z-index: 10;
  background-color: #E7EFEE;
}
.home-news__list{
  background-color: #fff;
  border-radius: 0.8rem;
}
.home-news__list li{
  border-bottom: 1px #D1E3DE solid;
}
.home-news__list li:last-child{
  border-bottom: none;
}
.home-news__listIn a{
  position: relative;
  display: block;
}
.home-news__time{
  font-family: "Inter";
  font-size: 1.4rem;
  font-weight: 600;
}
.home-news__category{
  background-color: #557D92;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 0.1rem 1.5rem 0.2rem 1.5rem;
  border-radius: 0.2rem;
}
.home-news__text{
  font-size: 1.4rem;
  line-height: 1.7;
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .home-news__inner{
    max-width: 120rem;
    margin: 0 auto;
    padding: 17.5rem 3rem 0 3rem;
    box-sizing: content-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 16rem;
  }
  .home-news .m-title01{
    width: 16rem;
    margin-bottom: 4.6rem;
  }
  .home-news__text{
    width: calc( 100% - 17.6rem );
  }
  .home-news__right{
    max-width: 85.1rem;
    width: calc( 100% - 16rem );
  }
  .home-news__list{
    padding: 3.2rem 4rem;
    margin-bottom: 4.8rem;
  }
	.home-news__listIn a{
    display: flex;
    align-items: center;
    gap:0 2rem;
    padding: 4rem 6.4rem 4rem 0;
	}
	.home-news__listIn a:hover{
    text-decoration: none;
	}  
  .home-news__time{
    width: 5.1em;
  }
  .home-news__category{
    width: 9rem;
    text-align: center;
    padding: 0.1rem 0.5rem 0.2rem 0.5rem;
    box-sizing: border-box;
    
    margin-left: 1rem;
  }
  .home-news__text{
    flex: 1;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .home-news{
    margin: 7rem 2rem 0 2rem;
  }
  .home-news__list{
    padding: 1rem 2.4rem;
    margin: 3rem 0;
  }
	.home-news__listIn li{
    border-bottom: none;
	}
	.home-news__listIn a{
    padding: 2rem 2.6rem 2rem 0;
	}
  .home-news__category{
    margin-left: 1rem;
    display: inline-block;
  }
	.home-news__text{
    margin-top: 0.4rem;
	}
}

/* ライブラリ
--------------------------------------------------*/
.home-library__title{
  font-size: 1.4rem;
  font-weight: 600;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Inter";  
}
.home-library__tablist{
  font-size: 1.4rem;
  font-weight: 600;
}
.home-library__tablist li{
  cursor: pointer;
}
.home-library__tablist li.current{
  cursor:auto;
}
.home-library__time{
  color: #57829A;
}
.home-library__tag li{
  color: #8e8e8e;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .home-library{
    max-width: 120rem;
    margin: 0 auto;
    padding: 0 3rem;
    box-sizing: content-box;
  }
  .home-library__heading{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap:2.8rem 0;
    margin-bottom: 4.8rem;
  }
  .home-library .m-title01{
    width: 20rem;
  }
  .home-library__tab{
    display: flex;
    align-items: center;
    gap:0 1.6rem;
  }
  .home-library__tablist{
    background-color: #fff;
    border-radius: 10rem;
    display: flex;
    gap:0 2rem;
    padding: 1.5rem 2rem;
  }
  .home-library__tablist li{
    padding: 1rem 2rem;
    position: relative;
    transition: all .3s ease;
  }
  .home-library__tablist li:before{
    content: "";
    background-color: #D1E3DE;
    height: 2rem;
    width: 1px;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -1rem;
    margin: auto 0;
  }
  .home-library__tablist li:first-child:before{
    content: none;
  }
  .home-library__tablist li.current,
  .home-library__tablist li:hover{
    color: #fff;
    background: #43914C;
    border-radius: 10rem;
  }  
  .home-library__tag{
    display: flex;
    flex-wrap: wrap;
    gap:0.2rem 1.2rem;
  }
  .home-library__tag li{
    font-size: 1.4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .home-library{
    margin: 7rem 2rem 0 2rem
  }
  .home-library__title{
    margin-bottom: 1rem;
    }
  .home-library .m-title01{
    margin-bottom: 2.5rem;
  }
  .home-library__tablist{
    width: 100%;
    background: url("../images/shared/select-arrow.svg") right 3.2rem center no-repeat;
    background-size: 1.4rem auto;
    background-color: #fff;
    border-radius: 10rem;
    padding: 1.6rem 3.2rem;
    margin: 0.4rem 0 2.5rem 0;
  }
  .home-library__tag{
    display: none;
  }
}

/* ライブラリリスト
--------------------------------------------------*/
.home-library__items{
  display: flex;
  flex-wrap: wrap;
}
.home-library__item{
  background-color: #fff;
  border-radius: 0.8rem;
  box-sizing: border-box;
  display: flex;
}
.home-library__item a{
  display: flex;
	flex-direction: column;
  height: 100%;
}
.home-library__image{
  overflow: hidden;
  border-radius: 0.6rem;
}
.home-library__image img{
  object-fit: cover;
  aspect-ratio: 182 / 103;
}
.home-library__text{
  font-size: 1.4rem;
  line-height: 1.7;
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  flex: 0.95;
}
.home-library__category li{
  background-color: #557D92;
  border-radius: 0.2rem;
  color: #fff;
  font-weight: 500;
  display: inline-block;
}
.home-library__time{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .home-library__items{
    gap:3rem 3rem;
    margin-bottom: 4.8rem;
  }
  .home-library__item{
    width: calc( ( 100% / 3 ) - 2rem );
  }
  .home-library__item a{
    padding: 0.8rem 0.8rem 2rem 0.8rem;
    transition: all .3s ease;
  }
  .home-library__image{
    transition: all .3s ease;
  }
  .home-library__item a:hover{
    text-decoration: none;
  }
  .home-library__item a:hover .home-library__image{
    opacity: 0.8;
  }
  .home-library__item a:hover .home-library__text{
    color: #43914C;
  }
  .home-library__image{
    margin-bottom: 2rem;
  }
  .home-library__text{
    margin:0 1.6rem 0.4rem 1.6rem;
    transition: color .3s ease;
  }
  .home-library__time{
    font-size: 1.2rem;
    margin: 0 1.6rem;
  }
  .home-library__category{
    margin:auto 1.6rem 0.5rem 1.6rem;
  }
  .home-library__category li{
    font-size: 1.2rem;
    padding: 0.2rem 1rem;
    margin-bottom: 0.4rem;
    display: inline-block;
  }
  .home-library__tag{
    display: flex;
    flex-wrap: wrap;
    gap:0.2rem 1.2rem;
    margin: 0 1.6rem;
  }
  .home-library__tag li{
    font-size: 1.4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .home-library__items{
    gap:1.5rem 1.5rem;
    margin:0 -2rem 2.5rem -2rem;
    padding:0 0 8rem 1rem;
    position: relative;
    overflow-x: hidden;
  }  
  .home-library .slick-track {
    display: flex!important;
  }
  .home-library .slick-slide {
    height: auto !important;
  }
  .home-library .m-button{
    margin-top: -7.5rem;
  }  
  .home-library__items .slick-list{
	  overflow: visible;
  }
  .home-library__items .slick-prev,
  .home-library__items .slick-next{
    width: 4.8rem;
    height: 4.8rem;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 0.76rem auto;
    background-color: #fff;
    border-radius: 50%;
    bottom: 0;
    position: absolute;
    text-indent: -9999px;
	}
  .home-library__items .slick-prev{
    background-image: url("../images/shared/prev.svg");
    left: 2rem;
	}
  .home-library__items .slick-next{
    background-image: url("../images/shared/next.svg");
    right: 2rem;
	}
  .home-library__item{
    margin-left: 1rem;
  }
  .home-library__item a{
    padding: 0.8rem 0.8rem 1.2rem 0.8rem;
  }
  .home-library__image{
    margin-bottom: 1.2rem;
  }
  .home-library__text{
    margin:0 0.5rem 0.7rem 0.5rem;
  }
  .home-library__time{
    font-size: 1rem;
    margin: 0 0.5rem 0.2rem 0.5rem;
  }
  .home-library__category{
    margin: 0 0.5rem;
    padding: 0 0.4rem 0.1rem 0.4rem;
  }
  .home-library__category{
    margin: 0 0.5rem 0.5rem 0.5rem;
  }
  .home-library__category li{
    font-size: 1.2rem;
    padding: 0.2rem 1rem;
    margin-bottom: 0.4rem;
    display: inline-block;
  }
  .home-library__category li{
    font-size: 1rem;
    padding: 0.1rem 0.4rem;
    margin-bottom: 0.2rem;
  }
  .home-library__category li:last-child{
    margin-bottom: 0;
  }
  .home-library__tag{
    display: none;
  }
}

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

サービス

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

/* リード文
--------------------------------------------------*/
/* PC */
@media print,only screen and (min-width: 768px){ 
  .service-read{
    margin: 0 12rem 8rem 12rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .service-read{
    margin-bottom: 2rem;
  }
}

/* 囲い
--------------------------------------------------*/
.service-content{
  background-color: #fff;
  border-radius: 1.6rem;
}
.service-content > :last-child {
  margin-bottom: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .service-content{
    padding: 6rem 12rem 12rem 12rem;
    margin-bottom: 8rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .service-content{
    padding: 2rem;
    margin-bottom: 2rem;
  }
}

/* 画像
--------------------------------------------------*/
.service-image{
  width: 100%;
}
.service-image3{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap:0.8rem 0.8rem;
  margin-bottom: 14.4rem;
}
.service-image3__in{
  width: calc( ( 100% / 3 ) - 0.533333rem );
}
.service-image3__in img{
  object-fit: cover;
  aspect-ratio: 315 / 177;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .service-image{
    margin-bottom:4.8rem; 
  }
  .service-image3{
    margin-bottom: 14.4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .service-image{
    margin-bottom:2rem; 
  }
  .service-image3{
    margin-bottom: 4rem;
  }
}




/* 画像とテキスト
--------------------------------------------------*/
.service-imagetext__image img{
  border-radius: 0.8rem;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .service-imagetext{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 14.4rem;
  }
  .service-imagetext__image{
    width: 34%;
  }
  .service-imagetext__text{
    width: 58.6%;
  }
}

/* SP */
@media screen and (max-width: 767px){	 
  .service-imagetext{
    margin-bottom: 4rem;
  }
  .service-imagetext__image{
    margin-bottom: 2rem;
  }
}

/* 関連サービス
--------------------------------------------------*/

/* PC */
@media print,only screen and (min-width: 768px){ 
  .service-related{
    margin-bottom: 14rem;
  }
  .service-related .m-service__link01{
    margin-top: 4.3rem;
  }
  .service-related .m-service__link01 li{
    min-height: auto;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .service-related{
    margin-bottom: 5.4rem;
  }
  .service-related .m-service__link01{
    margin-top: 2rem;
  }
  .service-related .m-service__link01 li{
  }
}

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

イースクエアについて

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

/* 代表メッセージ
--------------------------------------------------*/
.aboutus-message__image{
  border-radius: 0.4rem;
  overflow: hidden;
}
.aboutus-message__name{
  font-weight: 600;
  line-height: 1.5;
}
.aboutus-message__name span{
  display: block;
}
.aboutus-message__text:last-child{
  margin-bottom: 0;
}
/* PC */
@media print,only screen and (min-width: 768px){
  .aboutus-message{
    margin-bottom: 16rem;
  }
  .english .aboutus-message{
    max-width: 120rem;
    margin: 0 auto -24rem auto;
    padding: 0 3rem;
    box-sizing: content-box;
    position: relative;
    z-index: 10;
  }
  .aboutus-message__content{
    position: relative;
    margin-top: 4rem;
    padding-left: 29%;
  }
  .aboutus-message__image{
    width: 21.67%;
    position: absolute;
    top: 0;
    left: 0;
  }
  .aboutus-message__texts{
    width: 71%;
  }
  .aboutus-message__name{
    font-size: 3.2rem;
    margin-bottom: 4.6rem;
  }
  .aboutus-message__name span{
    font-size: 1.4rem;
  }
  .aboutus-message__text{
    line-height: 1.9;
    margin-bottom: 4rem;
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .aboutus-message{
    margin-bottom: 8rem;
  }
  .english .aboutus-message{
    margin-bottom: 8rem;
    padding: 0 2rem;
  }
  .aboutus-message__content{
    margin-top: 4rem;
  }
  .aboutus-message__image{
    width: 70%;
    margin: 0 auto 3rem auto;
  }
  .aboutus-message__texts{
  }
  .aboutus-message__name{
    font-size: 2.5rem;
    margin-bottom: 3rem;
  }
  .aboutus-message__name span{
    font-size: 1.3rem;
  }
  .aboutus-message__text{
    line-height: 1.7;
    font-size: 1.6rem;
    margin-bottom: 3rem;
  }	
}

/* イースクエアが選ばれる理由
--------------------------------------------------*/
.aboutus-strengths{
  position: relative;
  z-index: 5;
}
.aboutus-strengths__item{
  background-color: #fff;
  border-radius: 0.8rem;
  box-sizing: border-box;
}
.aboutus-strengths__text01{
  font-weight: 600;
  line-height: 1.5;
}
.aboutus-strengths__text02{
  font-size: 1.6rem;
  line-height: 1.8;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .aboutus-strengths{
    max-width: 120rem;
    padding: 0 3rem;
    box-sizing: content-box;
    margin:0 auto 21rem auto;
  }
  .aboutus-strengths__items{
    display: flex;
    flex-wrap: wrap;
    gap:2.4rem 2.4rem;
  }
  .aboutus-strengths__item{
    width: calc( 50% - 1.2rem );
    padding: 3.4rem 2.4rem 2.4rem 4.8rem;
    display: flex;
    gap:0 4.8rem;
  }
  .aboutus-strengths__item:last-child{
    width: 100%;
  }
  .aboutus-strengths__icon{
    width: 7.2rem;
    margin: 1.8rem 0 2.4rem 0;
  }
  .aboutus-strengths__texts{
    width: calc( 100% - 12rem );
  }
  .aboutus-strengths__text01{
    font-size: 2rem;
    margin-bottom: 0.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){ 
  .aboutus-strengths{
    padding: 0 2rem;
    margin-bottom: 8rem;
    z-index: 20;
  }
  .aboutus-strengths__items{
  }
  .aboutus-strengths__item{
    padding: 2.5rem 2rem 2.2rem 1.5rem;
    margin-bottom: 2rem;
  }
  .aboutus-strengths__icon{
    width: 5rem;
    margin: 0 auto 0.7rem auto;
  }
  .aboutus-strengths__text01{
    font-size: 2rem;
    text-align: center;
    margin-bottom: 1rem;
  }	
}

/* 企業理念
--------------------------------------------------*/
.aboutus-vision{
  background: linear-gradient(76.67deg, #002836 -0.32%, #007086 100%);
  position: relative;
}
.aboutus-vision__inner{
  position: relative;
  z-index: 10;
}
.aboutus-vision:before{
  content: "";
  display: block;
  position: absolute;
  background: linear-gradient(98.98deg, #11982F 24.86%, #58E3E6 82.05%);
  mix-blend-mode: normal;
  transform: rotate(15deg);  
}
.aboutus-vision:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
}
.aboutus-vision__bg-top{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.aboutus-vision__bg-gradation{
  background: url("../images/home/main-bg-bottom.png") center top no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transform: rotate(180deg);
}
.aboutus-vision__item01,
.aboutus-vision__item02{
  background-color: #fff;
  border-radius: 0.8rem;
}
.aboutus-vision__item01Title{
  color: #43914C;
  font-weight: 600;
  line-height: 1.5;
}
.aboutus-vision__item01List li{
  position: relative;
  font-size: 1.8rem;
}
.aboutus-vision__item01List li:before{
  content: "・";
  position: absolute;
  top: 0;
  font-weight: bold;
}
.aboutus-vision__item02{
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.aboutus-vision__item02:before{
  content: "";
  width: 1px;
  background-color: #CFE1DC;
  position: absolute;
  display: block;
}
.aboutus-vision__item02Number{
  text-align: center;
  font-family: 'Inter';
  font-style: normal;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.1;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
.aboutus-vision__item02Number span{
  font-weight: 500;
  display: block;
}
.aboutus-vision__item02Text01{
  color: #43914C;
  font-family: 'Inter';
  font-weight: 600;
  line-height: 1.6;
}
.aboutus-vision__item02Text02{
  color: #43914C;
  font-weight: 600;
  line-height: 1.65;
}
.aboutus-vision__item02List li{
  position: relative;
  font-size: 1.6rem;
  line-height: 1.8;
}
.aboutus-vision__item02List li:before{
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .aboutus-vision{
    padding: 70rem 3rem 1rem 3rem;
    margin:-70rem 0 0 0;
  }
  .english .aboutus-vision{
    padding-top: 40rem;
    margin: 0;
  }
  .aboutus-vision__inner{
    max-width: 120rem;
    margin: 0 auto;
  } 
  .aboutus-vision:before{
    bottom: -5rem;
    left: -25rem;
    width: 99.3rem;
    height: 43.9rem;
    filter: blur(28rem);  
  }
  .aboutus-vision:after {
    height: 40rem;
    height: 20vw;
    background: url(../images/home/service-bg-bottom.png) center bottom no-repeat;
    background-size: 100% auto;
  }
  .aboutus-vision__bg-top{
    background: url("../images/shared/service-bg.png") center top no-repeat;
    background-size: 100% 100%;
    height: 99.7rem;
  }
  .aboutus-vision__bg-gradation{
    height: 60rem;
  }
  .aboutus-vision__items01{
    margin-bottom: 16rem;
  }
  .aboutus-vision__item01,
  .aboutus-vision__item02{
    padding: 4.8rem;
    margin-bottom: 2.4rem;
  }
  .aboutus-vision__item01Title{
    font-size: 2rem;
    margin-bottom: 1rem;
  }
  .aboutus-vision__item01Text{
    font-size: 1.8rem;
    line-height: 1.9;
  }
  .aboutus-vision__item01List li{
    line-height: 1.9;
    padding-left: 1.7em;
  }
  .aboutus-vision__item01List li:before{
    left: 0.5rem;
  }
  .aboutus-vision__items02{
    margin-top: 3.2rem;
  }
  .aboutus-vision__item02{
    padding: 5.6rem 7.2rem 5.6rem 3.5rem;
    margin-bottom: 2.4rem;
  }
  .aboutus-vision__item02:before{
    top: 5.6rem;
    bottom: 5.6rem;
    left: 18.6rem;
  }
  .aboutus-vision__item02Number{
    width: 12.4rem;
    margin-top: 1.1rem;
  }
  .aboutus-vision__item02Number span{
    font-size: 9.6rem;
  }
  .aboutus-vision__item02Texts{
    width: calc( 100% - 20.3rem );
  }
  .aboutus-vision__item02Text01{
    font-size: 3.8rem;
  }
  .aboutus-vision__item02Text02{
    font-size: 1.8rem;
    margin-bottom: 1.6rem;
  }
  .aboutus-vision__item02List li{
    padding-left: 1.2em;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .aboutus-vision{
    padding: 30rem 2rem 3rem 2rem;
    margin:-30rem 0 0 0;
    position: relative;
    z-index: 10;
  }  
  .aboutus-vision:before{
    bottom: 2rem;
    left: -25rem;
    width: 48rem;
    height: 21rem;
    filter: blur(28rem);  
  }
  .aboutus-vision:after {
      height: 19rem;
      background: url(../images/home/service-bg-bottom-sp.png) center bottom no-repeat;
      background-size: cover;
      bottom: 0;
  }
  .aboutus-vision__bg-top{
    background: url("../images/shared/service-bg-sp.png") center top no-repeat;
    background-size: 100% auto;
    height: 70rem;
  }
  .aboutus-vision__bg-gradation{
    height: 18rem;
    top: -0.3rem;
  }
  .aboutus-vision__items01{
    margin: 2rem 0 4rem 0;
  }
  .aboutus-vision__item01,
  .aboutus-vision__item02{
    padding: 2.4rem;
    margin-bottom: 2rem;
  }
  .aboutus-vision__item02:last-child{
    margin-bottom: 0;
  }
  .aboutus-vision__item01Title{
    font-size: 1.9rem;
    margin-bottom: 0.8rem;
  }
  .aboutus-vision__item01Text{
    font-size: 1.6rem;
    line-height: 1.8;
  }
  .aboutus-vision__item01List li{
    font-size: 1.6rem;
    line-height: 1.8;
    padding-left: 1em;
  }
  .aboutus-vision__item01List li:before{
    left: 0;
  }
  .aboutus-vision__items02{
    margin-top: 2rem;
  }
  .aboutus-vision__item02{
    padding: 2.4rem 2.4rem 2.4rem 0;
    margin-bottom: 2.4rem;
  }
  .aboutus-vision__item02:before{
    top: 4rem;
    bottom: 4rem;
    left: 8rem;
  }
  .aboutus-vision__item02Number{
    width: 8rem;
    margin-top: 1.1rem;
  }
  .aboutus-vision__item02Number span{
    font-size: 5rem;
  }
  .aboutus-vision__item02Texts{
    width: calc( 100% - 9.5rem );
  }
  .aboutus-vision__item02Text01{
    font-size: 2.4rem;
    line-height: 1.2;
    margin-bottom: 0.5rem;
  }
  .aboutus-vision__item02Text02{
    font-size: 1.5rem;
    margin-bottom: 1.2rem;
    line-height: 1.5;
  }
  .aboutus-vision__item02List li{
    font-size: 1.4rem;
    line-height: 1.6;
    padding-left: 1em;
  }
}

/* 沿革
--------------------------------------------------*/
.aboutus-history__history{
  background-color: #fff;
  border-radius: 0.8rem;
  position: relative;
}
.aboutus-history__history:before{
  content: "";
  width: 1px;
  background-color: #CFE1DC;
  position: absolute;
  display: block;
}
.aboutus-history__historyIn{
  display: flex;
  justify-content: space-between;
  position: relative;
}
.aboutus-history__historyIn:before{
  content: "";
  height: 1px;
  background-color: #CFE1DC;
  position: absolute;
  display: block;
}
.aboutus-history__year{
  font-family: 'Inter';
  font-weight: 700;
  line-height: 1.1;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
.aboutus-history__texts{
  line-height: 1.8;
}
.aboutus-history__month{
  font-weight: 600;
  line-height: 1.8;
  text-align: right;
}
.aboutus-history__month span{
  font-family: 'Inter';
}
.aboutus-history__text{
  line-height: 1.8;
  position: relative;
  padding-left: 2.7rem;
}
.aboutus-history__text:before{
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 50%;
  position: absolute;
  left: 1.2rem;
  display: block;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .aboutus-history{
    display: flex;
    justify-content: space-between;
    margin: 16rem 0;
  }
  .aboutus-history .m-title01{
    width: 20rem;
  }
  .aboutus-history__history{
    width: 88.5rem;
    padding: 6.4rem 6.4rem 6rem 6.4rem;
  }
  .aboutus-history__history:before{
    top: 8rem;
    bottom: 8.2rem;
    left: 20.4rem;
  }
  .aboutus-history__historyIn:before{
    width: 5.6rem;
    height: 1px;
    top: 1.5rem;
    left: 11.2rem;
  }
  .aboutus-history__year{
    width: 14rem;
    font-size: 3.6rem;
  }
  .aboutus-history__texts{
    width: calc( 100% - 16.7rem );
    font-size: 1.6rem;
  }
  .aboutus-history__textsIn{
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.9rem;
  }
  .aboutus-history__month{
    width: 5.5rem;
    font-size: 1.8rem;
  }
  .aboutus-history__text{
    width: calc( 100% - 6.2rem );
    font-size: 1.6rem;
  }
  .aboutus-history__text:before{
    top: 0.7em;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .aboutus-history{
    margin: 8rem 0;
  }
  .aboutus-history__history{
    margin-top: 2rem;
    padding: 2rem 2rem 2rem 2rem;
  }
  .aboutus-history__history:before{
    top: 3.3rem;
    bottom: 4.2rem;
    left: 8.8rem;
  }
  .aboutus-history__historyIn:before{
    width: 2.5rem;
    height: 1px;
    top: 1.3rem;
    left: 5.6rem;
  }
  .aboutus-history__year{
    width: 3em;
    font-size: 1.8rem;
    position: relative;
    top: 0.2rem;
  }
  .aboutus-history__texts{
    width: calc( 100% - 8.9rem );
    font-size: 1.6rem;
  }
  .aboutus-history__textsIn{
    margin-bottom: 1rem;
  }
  .aboutus-history__month{
    width: 4rem;
    font-size: 1.5rem;
  }
  .aboutus-history__text{
    font-size: 1.3rem;
    line-height: 1.6;
  }
  .aboutus-history__text:before{
    top: 0.55em;
  }
}

/* 社会と環境への還元
--------------------------------------------------*/
.aboutus-contributions__item{
  background: #FFF;
  border-radius: 0.8rem;
}
.aboutus-contributions__item:last-child{
  margin-bottom: 0;
}
.aboutus-contributions__image{
  border-radius: 0.4rem;
  overflow: hidden;
}
.aboutus-contributions__text01{
  font-weight: 600;
  line-height: 1.7;
}
.aboutus-contributions__text02{
  font-size: 1.6rem;
  line-height: 1.8;
}
.aboutus-contributions__text03{
  font-size: 1.4rem;
  line-height: 1.7;
}
.aboutus-contributions__text04{
  font-size: 1.4rem;
  line-height: 1.7;
  border: 1px #CFE1DC solid;
  margin-top: 1.8rem;
}
.aboutus-contributions__text04Title{
  font-weight: 600;
  display: block;
}
.aboutus-contributions__list{
  font-size: 1.4rem;
  line-height: 1.7;
  margin: 2rem 0;
}
.aboutus-contributions__list li{
  position: relative;
  padding-left: 1em;
}
.aboutus-contributions__list li:before{
  position: absolute;
  content: "・";
  top: 0;
  left: 0;
  font-weight: bold;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .aboutus-contributions{
    margin-bottom: 16rem;
  }
  .aboutus-contributions__item{
    padding: 4.8rem;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.4rem;
  }
  .aboutus-contributions__image{
    width: 29.53%;
  }
  .aboutus-contributions__texts{
    width: 66.12%;
    margin-top: 1rem;
  }
  .aboutus-contributions__text01{
    font-size: 2rem;
    margin-bottom: 1.8rem;
  }
  .aboutus-contributions__text02{
    margin-bottom: 1.8rem;
  }
  .aboutus-contributions__text03{
    margin:1.8rem 0;
  }
  .aboutus-contributions__text03 p{
    margin-bottom: 1.8rem;
  }
  .aboutus-contributions__text03 p:last-child{
    margin-bottom: 0;
  }
  .aboutus-contributions__text04{
    padding: 2rem 2.4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .aboutus-contributions{
    margin-bottom: 8rem;
  }
  .aboutus-contributions__item{
    padding: 2.4rem;
    margin-bottom: 2rem;
  }
  .aboutus-contributions__texts{
    margin-top: 1.5rem;
  }
  .aboutus-contributions__text01{
    font-size: 1.7rem;
    text-align: center;
    margin-bottom: 0.5rem;
  }
  .aboutus-contributions__text02{
    margin-bottom: 1.5rem;
  }
  .aboutus-contributions__text03{
    margin: 1.5rem 0;
  }
  .aboutus-contributions__text03 p{
    margin-bottom: 1.5rem;
  }
  .aboutus-contributions__text03 p:last-child{
    margin-bottom: 0;
  }
  .aboutus-contributions__text04{
    padding: 1.5rem;
  }
}

/* パートナー企業様
--------------------------------------------------*/
/* PC */
@media print,only screen and (min-width: 768px){ 
  .aboutus-partners{
    margin-bottom: 16rem;
  }
  .aboutus-partners__banner{
    display: flex;
    justify-content: center;
    gap:0 2rem;
    margin-top: 3.3rem;
  }
  .aboutus-partners__banner li{
    width: max(27.5rem,22.92%);
  }
  .aboutus-partners__banner a{
    transition: all .3s ease;
  }
  .aboutus-partners__banner a:hover{
    opacity: 0.8;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .aboutus-partners{
    margin-bottom: 8rem;
  }
  .aboutus-partners__banner{
    margin-top: 3rem;
  }
  .aboutus-partners__banner li{
    margin-bottom: 2rem;
  }
}

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

会社概要

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

/* 会社概要
--------------------------------------------------*/
.profile-overview__table th,
.profile-overview__table td{
  border-bottom: 1px #CFE1DC solid;
  vertical-align: top;
}
.profile-overview__table tr:last-child th,
.profile-overview__table tr:last-child td{
  border-bottom: none;
}
.profile-overview__table th{
  font-weight: 600;
}
.profile-overview__button{
  padding: 1rem 1rem;
  width: 28rem;
  border: 1px solid #2D2D2D;
  border-radius: 10rem;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  display: block;
  margin-top: 2.4rem;
  box-sizing: border-box;
  cursor: pointer;
  transition: all 1.3s ease;
}
.-open .profile-overview__button{
  display: none;
}
.profile-overview__button span{
  font-size: 1.2rem;
  margin-left: 1.1rem;
  position: relative;
  top: -0.2rem;
}
.profile-overview__more{
  display: none;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .profile-overview{
    margin-bottom: 13.5rem;
  }
  .profile-overview__inner,
  .profile-access__inner{
    display: flex;
    justify-content: space-between;
    gap:0 2rem;
  }
  .profile-overviewt .m-title01,
  .profile-access .m-title01{
    width: 18rem;
  }
  .profile-access__address{
    font-size: 1.8rem;
    margin-bottom: 2.5rem;
  }
  .profile-overview__table,
  .profile-access__detail{
    width: max(82.8rem,69%);
  }
  .profile-overview__table{
    margin-top: 2rem;
  }
  .profile-overview__table th,
  .profile-overview__table td{
    padding: 2.3rem 0;
    font-size: 1.8rem;
    line-height: 1.9;
  }
  .profile-overview__table th{
    width: 18rem;
    padding-right: 2rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .profile-overview{
    margin-bottom: 8rem;
  }
  .profile-overview__table,
  .profile-access__detail{
    width: 100%;
  }
  .profile-access__address{
    font-size: 1.4rem;
    margin-bottom: 1rem;
  }
  .profile-overview__table{
    margin-top: 3rem;
  }
  .profile-overview__table th,
  .profile-overview__table td{
    font-size: 1.6rem;
    line-height: 1.9;
    display: block;
  }
  .profile-overview__table th{
    padding-top: 1rem;
    border-bottom: none;
  }
  .profile-overview__table td{
    padding-bottom: 1rem;
  }
  .profile-overview__button{
    margin: 2.4rem auto 0 auto;
  }
}

/* 役員紹介
--------------------------------------------------*/
.profile-directors__items{
  background-color: #fff;
  border-radius: 0.8rem;
}
.profile-directors__item{
  border-bottom: 1px #CFE1DC solid;
}
.profile-directors__item:first-child{
  padding-top: 0;
}
.profile-directors__item:last-child{
  padding-bottom: 0;
  border-bottom: none;
}
.profile-directors__image{
  border-radius: 0.4rem;
  overflow: hidden;
}
.profile-directors__text01{
  font-size: 1.4rem;
  font-weight: 500;
}
.profile-directors__name{
  line-height: 1.5;
  font-weight: 600;
  display: block;
}
.profile-directors__text02{
  line-height: 1.8;
}
.english .profile-directors__text02{
  font-size: 1.6rem;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .profile-directors{
    margin-bottom: 16rem;
  }
  .profile-directors__items{
    padding: 7.2rem;
    margin-top: 4.8rem;
  }
  .profile-directors__item{
    min-height: 24rem;
    padding: 4.8rem 0 4.8rem 23.1%;
    position: relative;
  }
  .profile-directors__item:not(:has(.profile-directors__image)) {
    width: 100%;
    min-height: auto;
    padding-left: 0;
  }
  .profile-directors__item:first-child .profile-directors__image{
    top: 0;
  }
  .profile-directors__image{
    width: 17.05%;
    position: absolute;
    top: 4.8rem;
    left: 0;
  }
  .profile-directors__text01{
    margin-bottom: 1.4rem;
  }
  .profile-directors__name{
    font-size: 2.4rem;
  }
  .profile-directors__text02{
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .profile-directors{
    margin-bottom: 8rem;
  }
  .profile-directors__items{
    padding: 2rem;
    margin-top: 3rem;
  }
  .profile-directors__item{
    padding: 2rem 0;
  }
  .profile-directors__image{
    width: 70%;
    margin: 0 auto 2rem auto;
  }
  .profile-directors__text01{
    font-size: 1.1rem;
    margin-bottom: 1rem;
    text-align: center;
  }
  .profile-directors__name{
    font-size: 2rem;
  }
  .profile-directors__belong{
    font-size: 1.6rem;
    display: block;
  }
  .profile-directors__text02{
    font-size: 1.4rem;
  }
}

/* アクセス
--------------------------------------------------*/
.profile-access__map01 iframe{
  width: 100%;
  aspect-ratio: 829 / 351;
}
.profile-access__map02{
  border-radius: 0.8rem;
  overflow: hidden;
}
.profile-access__table{
  width: 100%;
}
.profile-access__table th,
.profile-access__table td{
  border-bottom: 1px #CFE1DC solid;
  vertical-align: top;
}
.profile-access__table tr:last-child th,
.profile-access__table tr:last-child td{
  border-bottom: none;
}
.profile-access__table th{
  font-weight: 600;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .profile-access{
    margin-bottom: 16rem;
  }
  .profile-access__map01{
    margin-bottom: 2rem;
  }
  .profile-access__table{
    margin-bottom: 2rem;
  }
  .profile-access__table th,
  .profile-access__table td{
    padding: 2.3rem 0;
    font-size: 1.8rem;
    line-height: 1.9;
  }
  .profile-access__table th{
    width: 24.3rem;
    padding-right: 2rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .profile-access{
    margin-bottom: 8rem;
  }
  .profile-access__map01{
    margin: 2rem 0 1rem 0;
  }
  .profile-access__table{
    margin-bottom: 1.8rem;
  }
  .profile-access__table th,
  .profile-access__table td{
    font-size: 1.4rem;
    line-height: 1.9;
    display: block;
  }
  .profile-access__table th{
    padding-top: 1rem;
    border-bottom: none;
  }
  .profile-access__table td{
    padding-bottom: 1rem;
  }
}

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

採用情報

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

/* 私たちが共に働きたい人物像
--------------------------------------------------*/
.recrite-card__item{
  background-color: #fff;
  position: relative;
  border: 1px solid #CFE1DC;
  border-radius: 0.4rem;
  box-sizing: border-box;
}
.recrite-card__item:before,
.recrite-card__item:after{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto 0;
  display: block;
}
.recrite-card__item:before{
  width: 1.6rem;
  height: 1px;
  background-color: #CFE1DC;
  left: 0;
}
.recrite-card__item:after{
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  left: 1.6rem;
  border-radius: 50%;
}
.recrite-card__text01{
  line-height: 1.65;
  font-weight: 600;
  margin-bottom: 0.6rem;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .recruit-people{
    margin-bottom: 16rem;
  }
  .recrite-card{
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem 2.4rem;
    margin-top: 4.5rem;
  }
  .recrite-card__item{
    padding: 3rem 3rem 3rem 4.1rem;
  }
  .recrite-card.-two .recrite-card__item{
    width: calc( ( 100% / 2 ) - 1.2rem );
  }
  .recrite-card.-three .recrite-card__item{
    width: calc( ( 100% / 3 ) - 1.6rem );
  }
  .recrite-card__text01{
    font-size: 1.8rem;
  }
  .recrite-card__text02{
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .recruit-people{
    margin-bottom: 8rem;
  }
  .recrite-card{
    margin-bottom: 4rem;
  }
  .recrite-card__item{
    padding: 2.4rem 1.8rem 2.4rem 3.1rem;
    margin-bottom: 1.6rem;
  }
  .recrite-card__text01{
    font-size: 1.6rem;
  }
  .recrite-card__text02{
    font-size: 1.4rem;
  }
}

/* 社内制度・福利厚生
--------------------------------------------------*/
/* PC */
@media print,only screen and (min-width: 768px){ 
  .recruit-benefits{
    margin-bottom: 16rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .recruit-benefits{
    margin-bottom: 8rem;
  }
}

/* 募集要項
--------------------------------------------------*/
.recruit-description{
  position: relative;
  z-index: 20;
}
.recruit-description__tabIn{
  display: flex;
  align-items: flex-end;
}
.recruit-description__tabIn li{
  color: #fff;
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
  background: linear-gradient(180deg, #43914C 82.76%, #3D8445 100%);
  border-radius: 0.8rem 0.8rem 0 0;
}
.recruit-description__tabIn li:not(.current){
  cursor: pointer;
}
.recruit-description__tabIn li.current{
  color: #43914C;
  background: #fff;
}
.recruit-description__detail{
  background-color: #fff;
  position: relative;
}
.recruit-description__table{
  width: 100%;
}
.recruit-description__table th,
.recruit-description__table td{
  border-bottom: 1px #CFE1DC solid;
  vertical-align: top;
}
.recruit-description__table th{
  font-weight: 600;
}
.recruit-description__list li{
  position: relative;
}
.recruit-description__list li:before{
  content: "・";
  position: absolute;
  top: 0;
  font-weight: bold;
}
.recruit-bg__top{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}
.recruit-bg__gradation{
  background: url("../images/recruit/gradation.png") center top no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transform: rotate(180deg);
  z-index: 10;
}
/* PC */
@media print,only screen and (min-width: 768px){
  .recruit-description{
    max-width: 120rem;
    padding: 0 3rem;
    box-sizing: content-box;
    margin:0 auto 8rem auto;
  }
  .recruit-description__tabIn{
    gap:0 0.8rem;
    margin:4.5rem 0 -1.6rem 0;
    justify-content: flex-start;
  }
  .recruit-description__tabIn li{
    font-size: 2rem;
    padding: 1.2rem 3.2rem 2.8rem 3.2rem;
  }
  .recruit-description__tabIn li.current{
    padding-top:3rem;
  }
  .recruit-description__detail{
    border-radius: 1.6rem;
    padding: 4.8rem 7.2rem;
  }
  .recruit-description__table th,
  .recruit-description__table td{
    font-size: 1.8rem;
    padding: 2.3rem 0;
    line-height: 1.9;
  }
  .recruit-description__table th{
    width: 18rem;
    padding-right: 2rem;
  }
  .recruit-description__list li{
    padding-left: 1.5em;
  }
  .recruit-description__list li:before{
    left: 0.3em;
  }
  .recruit-bg__top{
    background: url("../images/shared/service-bg.png") center top no-repeat;
    background-size: 100% 100%;
    height: 99.7rem;
  }
  .recruit-bg__gradation{
    height: 90rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .recruit-description{
    padding: 0 2rem;
    margin:0 -2rem 2rem -2rem;
  }
  .recruit-description .m-title01{
    margin:0 2rem;
  }
  .recurite-description__tab{
    display: block;
    overflow-x: scroll;
    overflow-y: hidden;
    padding:0 2rem;
  }
  .recruit-description__tabIn{
    width: max-content;
    gap:0 0.4rem;
    margin:2rem 0 -0.8rem 0;
  }
  .recruit-description__tabIn li{
    font-size: 1.2rem;
    padding: 0.8rem 0.7rem 1.3rem 0.7rem;
  }
  .recruit-description__tabIn li.current{
    padding-top:1.5rem;
  }
  .recruit-description__detail{
    padding: 2rem;
    margin-bottom: 2rem;
  }
  .recruit-description__table th,
  .recruit-description__table td{
    font-size: 1.4rem;
    display: block;
  }
  .recruit-description__table th{
    padding-top: 1.5rem;
    border-bottom: none;
  }
  .recruit-description__table td{
    padding-bottom: 1.5rem;
  }
  .recruit-description__list li{
    padding-left: 1.1em;
  }
  .recruit-description__list li:before{
    left: 0;
  }
  .recruit-bg__top{
    background: url("../images/shared/service-bg-sp.png") center top no-repeat;
    background-size: 100% auto;
    height: 70rem;
  }
  .recruit-bg__gradation{
    height: 18rem;
    top: -0.3rem;
  }
}

/* エントリー
--------------------------------------------------*/
.recruit-form{
  position: relative;
  background: linear-gradient(76.67deg, #002836 -0.32%, #007086 100%);
}
.recruit-form__inner{
  background-color: #fff;
  border-radius: 0.8rem;
  position: relative;
  z-index: 10;
}
.recruit-form__title{
  font-weight: 600;
  text-align: center;
}
.recruit-form__intro{
  text-align: center;
}
.recruit-form__text{
  font-size: 1.8rem;
  font-weight: 600;
}
.recruit-form__input input,
.recruit-form__input textarea{
  width: 100%;
  border: 1px #CFE1DC solid;
  border-radius: 0.4rem;
}
.recruit-form__input textarea{
  box-sizing: border-box;
}
.recruit-form__buttons{
	margin: 4rem auto;
	text-align: center;
  overflow: hidden;
}
.recruit-form__buttons input{
	overflow: hidden;
	text-align: center;
	position: relative;
	background-color: #DD5E14;
	color: #fff;
  font-weight: 600;
	border: 0;
	cursor: pointer;
  box-sizing: border-box;
  border-radius: 10rem;
  border: 1px #DD5E14 solid;
}
.recruit-form__buttons input.submit{
	text-align: center;
	margin: 0 auto;
}
.recruit-form__telIn{
  background-color: #E7EFEE;
  border-radius: 0.8rem;
}
.recruit-form__text01{
  font-size: 1.8rem;
  font-weight: 600;
}
.recruit-form__text02 span{
  font-family: "Inter";
  font-weight: bold;
  vertical-align: middle;
}
.recruit-form__text02 img{
  vertical-align: middle;
}
.recruit-form:before{
  content: "";
  display: block;
  position: absolute;
  background: linear-gradient(98.98deg, #11982F 24.86%, #58E3E6 82.05%);
  mix-blend-mode: normal;
  transform: rotate(15deg);  
}
.recruit-form:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
}
.recruit-form__input.-file {
  margin-bottom: 2.4rem;
}
.recruit-form__input.-file input {
  border: none;
}
.recruit-form__input.-file label {
  display: inline-block;
  background-color: #43914C;
  border-radius: 10rem;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  padding: 0.8rem 1.6rem;
  margin-right: 1.6rem;
  cursor: pointer;
}
.recruit-form__input.-file input[type="file"] {
  display: none;
}
.recruit-form__input .button-fileDelete {
  width: 3.2rem;
  height: 3.3rem;
  background:url("../images/shared/icon-delete.svg") center center no-repeat;
  display: inline-block;
  vertical-align: middle;
  margin-left: 1.6rem;
  cursor: pointer;
}


.recruit-form .must {
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 600;
  color: #fff;
  background-color: #43914C;
  padding: 0.2rem 0.6rem 0.2rem 0.6rem;
  border-radius: 0.2rem;
  margin-right: 0.8rem;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .recruit-form{
    padding: 200rem 3rem 1rem 3rem;
    margin: -200rem 0 0 0;
  }
  .recruit-form__inner{
    max-width: 120rem;
    padding: 11rem 0 12rem 0;
    box-sizing: border-box;
    margin:0 auto 9rem auto;
  }
  .recruit-form__form{
    max-width: 65.4rem;
    margin: 0 auto;
  }
  .recruit-form__title{
    font-size: 3.2rem;
    margin-bottom: 2.2rem;
  }
  .recruit-form__intro{
    font-size: 1.6rem;
    line-height: 1.8;
    max-width: 120rem;
    padding: 0 3rem;
    box-sizing: content-box;
    margin: 0 auto 4.8rem auto;
  }
  .recruit-form__text{
    font-size: 1.8rem;
    margin-bottom: 0.4rem;
  }
  .recruit-form__input input{
    margin-bottom: 2.4rem;
  }
  .recruit-form__input input,
  .recruit-form__input textarea{
    padding: 0.8rem 1.5rem;
    font-size: 1.6rem;
  }
  .recruit-form__input textarea{
    height: 14.4rem;
  }
  .recruit-form__buttons{
    width: 60rem;
    margin: 4rem auto;
  }
  .recruit-form__buttons input{
    width: 28rem;
    padding: 1.2rem 0.8rem;
    font-size: 1.6rem;
    transition: all .3s ease;
  }
  .recruit-form__buttons input:hover{
    background-color: #fff;
    color: #43914C;
    border: 1px #43914C solid;
  }
  .recruit-form__buttons input.send{
    float: right;
  }
  .recruit-form__buttons input.back{
    float: left;
  }
  .recruit-form__tel{
    margin: 0 -19%;
  }
  .recruit-form__telIn{
    max-width: 80rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2.5rem 0;
    position: relative;
    margin: 4.8rem auto 0 auto;
  }
  .recruit-form__telIn:before{
    background-color: #557D92;
    content: "";
    width: 1px;
    position: absolute;
    top: 2.6rem;
    left: 36%;
    bottom: 2.6rem;
    display: block;
  }
  .recruit-form__text01{
    width: 35%;
    left: 28.4rem;
    font-size: 1.8rem;
    text-align: center;
    padding: 0 1rem;
  }
  .recruit-form__text02{
    width: 65%;
    font-size: 1.6rem;
    text-align: center;
    padding: 0 1rem;
  }
  .recruit-form__text02 span{
    font-size: 2.4rem;
    margin-right: 0.8rem;
  }
  .recruit-form__text02 img{
    width: 1.6rem;
    margin-right: 0.4rem;
  }
  .recruit-form:before{
    bottom: -5rem;
    left: -25rem;
    width: 99.3rem;
    height: 43.9rem;
    filter: blur(28rem);  
  }
  .recruit-form:after {
    height: 40rem;
    height: 20vw;
    background: url(../images/home/service-bg-bottom.png) center bottom no-repeat;
    background-size: 100% auto;
  }
  .recruit-form .wpcf7-not-valid-tip{
   margin: -2rem 0 1.5rem 0; 
  }
  .recruit-form [data-name="your-file"] .wpcf7-not-valid-tip{
   margin: 0.5rem 0 1.5rem 0; 
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .recruit-form{
    margin-bottom: 8rem;
    padding: 30rem 2rem 3rem 2rem;
    margin: -30rem 0 0 0;
    position: relative;
  }
  .recruit-form__inner{
    padding: 2rem;
  }
  .recruit-form__title{
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
  .recruit-form__intro{
    font-size: 1.4rem;
    text-align: left;
    margin-bottom: 2rem;
  }
  .recruit-form__text{
    font-size: 1.5rem;
    margin-bottom: 0.3rem;
  }
  .recruit-form__input{
    margin-bottom: 1.5rem;
  }
  .recruit-form__input input,
  .recruit-form__input textarea{
    padding: 0.4rem 1.5rem;
    font-size: 1.6rem;
  }
  .recruit-form__input textarea{
    height: 15rem;
  }
  .recruit-form__buttons{
    width: 100%;
    margin: 2rem auto 0 auto;
  }
  .recruit-form__buttons input{
    width: 100%;
    padding: 0.8rem 0.8rem;
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .recruit-form__telIn{
    padding: 2rem;
  }
  .recruit-form__text01{
    font-size: 1.5rem;
    padding: 0 1rem;
    text-align: center;
  }
  .recruit-form__text02{
    font-size: 1.4rem;
    text-align: center;
  }
  .recruit-form__text02 span{
    font-size: 2.2rem;
    display: block;
  }
  .recruit-form__text02 img{
    width: 1.4rem;
    margin-right: 0.4rem;
  }
  .recruit-form:before{
    bottom: 2rem;
    left: -25rem;
    width: 48rem;
    height: 21rem;
    filter: blur(28rem);  
  }
  .recruit-form:after {
      height: 18rem;
      background: url(../images/home/service-bg-bottom-sp.png) center bottom no-repeat;
      background-size: cover;
      bottom: 0;
  }
  .recruit-form .wpcf7-not-valid-tip{
   margin: 0 0 1.5rem 0; 
  }
}

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

個人情報保護方針

==================================================*/
.privacy-content{
  line-height: 1.8;
  border-radius: 0.8rem;
  background-color: #fff;
}
.privacy-title{
  align-items: center;
  background: #002836;
  border-radius: 0.4rem;
  color: #fff;
  font-weight: 600;
}
.privacy-detail{
  counter-reset: listnum;
}
.privacy-detail a{
  text-decoration: underline;
}
.privacy-detail__inner{
  padding-left: 1em;
  position: relative;
}
.privacy-detail__inner:before{
  counter-increment: listnum; 
	content: counter(listnum)".";
  font-family: "Inter";
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 0;
}
.privacy-detail__title{
  font-weight: 600;
  display: block;
}
.privacy-detail p,.privacy-detail ul{
  margin-bottom: 1.5em;
}
.privacy-detail ul li{
  position: relative;
  padding-left: 1.5em;
  list-style-type: none;
}
.privacy-detail ul li:before{
  content: "・";
  position: absolute;
  left: 0.4rem;
  top: 0;
  font-weight: bold;
}

.privacy-detail ol {
  /* list-style-position: outside;
  padding-left: 1.5em; */
  
}

.privacy-detail ol li{
    text-indent: -1.2em;       /* 番号だけ突き出す */
  margin-left: 1.2em;        /* 本文は揃える */
  /* position: relative;
  padding-left: 1.5em; */
}

.privacy-name{
  text-align: right;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .privacy-content{
    padding: 12rem;
    font-size: 1.6rem;
    margin-bottom: 16rem;
  }
  .privacy-title{
    padding: 1.1rem 3.2rem;
    font-size: 2.4rem;
    margin-bottom: 4rem;
  }
  .privacy-text{
    margin-bottom: 3.8rem;
  }
  .privacy-detail>li{
    margin-bottom: 2.8rem;
  }
  .privacy-detail__list{
    margin-top: 2rem;
  }
  .privacy-name{
    margin-top: 4rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .privacy-content{
    padding: 1.8rem;
    font-size: 1.4rem;
    margin-bottom: 8rem;
  }
  .privacy-title{
    padding: 1rem 1.5rem;
    font-size: 1.8rem;
    margin-bottom: 1.8rem;
    text-align: center;
  }
  .privacy-text{
    margin-bottom: 2.4rem;
  }
  .privacy-detail>li:before{
    top: 0.1em;
  }
  .privacy-detail>li{
    margin-bottom: 2.4rem;
  }
  .privacy-detail__list{
    margin-top: 2.4rem;
  }
  .privacy-name{
    margin-top: 4rem;
  }
  .privacy-detail__contact{
    font-size: 1.3rem;
    letter-spacing: .02em;
  }
}

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

404

==================================================*/
.notfound-content{
  text-align: center;
}
.notfound-content__text01{
  font-family: 'Inter';
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.05em;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
.notfound-content__text02{
  font-weight: 600;
  line-height: 1.5;
}
.notfound-content .m-button{
  margin: 0 auto;
}
.notfound-content .m-button a{
  width: 100%;
  box-sizing: border-box;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .notfound-content{
    margin:10.5rem 0 16rem 0;
  }
  .notfound-content__text01{
    font-size: 13rem;
    margin-bottom: 0.5rem;
  }
  .notfound-content__text02{
    font-size: 2.8rem;
    margin-bottom: 1.2rem;
  }
  .notfound-content__text03{
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
  .notfound-content .m-button{
    width: 20rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .notfound-content{
    margin:3rem 0 8rem 0;
  }
  .notfound-content__text01{
    font-size: 10rem;
  }
  .notfound-content__text02{
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
  .notfound-content__text03{
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 2rem;
  }
  .notfound-content .m-button{
    width: 22rem;
  }
}

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

ページナビ

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

.m-pagenav{
  position: fixed;
  z-index: 90;
}
.m-pagenav__button{
  background: url("../images/shared/pagenav-button.svg") center center no-repeat;
  display: block;
  cursor: pointer;
  border-radius: 0.8rem;
}
.m-pagenav__content{
  position: fixed;
  background: #FFF;
  box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1);
  border-radius: 0.8rem;
  /* display: none; */
  opacity:0;
  pointer-events:none;
  transition: all .3s ease;
  transform : scale(0.5);
  transform-origin: top right;
}
  
.m-pagenav.-open .m-pagenav__content{
  opacity:1;
  pointer-events:auto;
  transform : scale(1);
}
.m-pagenav__close{
  width: 3rem;
  height: 3rem;
  background: url("../images/shared/pagenav-close.svg") center center no-repeat;
  display: block;
  position: absolute;
  cursor: pointer;
}
.m-pagenav__list li{
  margin-bottom: 0.1rem;
}
.m-pagenav__list a{
  position: relative;
  color: #2D2D2D;
  transition: all .3s ease;
  display: block;
}
.m-pagenav__list a:before{
  width: 0.5rem;
  height: 0.5rem;
  content: "";
  position: relative;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 50%;
  display: block;
  position: absolute;
  left: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-pagenav{
    right: 2rem;
    top: 12.9rem;
  }
  .m-pagenav__button{
    width: 3.7rem;
    height: 5.7rem;
  }
  .m-pagenav__content{
    right: 1.9rem;
    top: 12.8rem;
    padding: 5.2rem 2.2rem 2.4rem 2.6rem;
  }
  
  .m-pagenav__close{
    width: 3rem;
    height: 3rem;
    top: 0.7rem;
    right: 0.4rem;
    padding: 2.5rem;
  }
  .m-pagenav__list li{
    margin-bottom: 0.1rem;
  }
  .m-pagenav__list a{
    font-size: 1.4rem;
    padding: 0.4rem 0 0.4rem 1.6rem;
    transition: all .3s ease;
  }
  .m-pagenav__list a:before{
    top: 0.8em;
    transition: all .3s ease;
  }
  .m-pagenav__list a:hover{
    color: #43914C;
    text-decoration: none;
  }
  .m-pagenav__list a:hover:before{
    transform: scale(1.2);
  }
}

/* SP */
@media screen and (max-width: 767px){	 
  .m-pagenav{
    right: 1rem;
    top: 6rem;
  }
  .m-pagenav__button{
    width: 3.3rem;
    height: 5.3rem;
  }
  .m-pagenav__content{
    right: 1rem;
    top: 5.7rem;
    padding: 4rem 2rem 1.8rem 2.2rem;
  }
  .m-pagenav__close{
    width: 3rem;
    height: 3rem;
    top: 1rem;
    right: 1rem;
    padding: 1.5rem;
  }
  .m-pagenav__list a{
    font-size: 1.3rem;
    padding: 0.3rem 0 0.3rem 1.2rem;
  }
  .m-pagenav__list a:before{
    top: 0.75em;
  }
}
/* アンカー
--------------------------------------------------*/
.m-anchor{
  position: relative;
}
/* PC */
@media print,only screen and (min-width: 768px){

  .m-anchor{
    scroll-margin-top: 10rem;
  }
  #form{
    scroll-margin-top: 19rem;
  }

}

/* SP */
@media screen and (max-width: 767px){

 .m-anchor{
    scroll-margin-top: 3rem;
  }
  #form{
    scroll-margin-top: 4rem;
  }
}

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

テンプレート

==================================================*/
/* 囲い
--------------------------------------------------*/
.page-content{
  position: relative;
  background: linear-gradient(76.67deg, #002836 -0.32%, #007086 100%);
}
.page-content.-bgnone{
  background: none;
}
.page-content__inner{
  background-color: #fff;
  border-radius: 0.8rem;
  position: relative;
  z-index: 5;
}
.-whitepaper .page-content__inner{
  background-color: transparent;
  border-radius: 0;
}
.page-content:before{
  content: "";
  display: block;
  position: absolute;
  background: linear-gradient(98.98deg, #11982F 24.86%, #58E3E6 82.05%);
  mix-blend-mode: normal;
  transform: rotate(15deg);  
}
.page-content:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
}
.page-content.-bgnone:before,
.page-content.-bgnone:after{
  content: none;
}
.page-content__bg-top{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.page-content__bg-gradation{
  background: url("../images/home/main-bg-bottom.png") center top no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  transform: rotate(180deg);
}
.page-content.-whitepaper .page-content__inner .m-socialNextprev{
  margin-bottom: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .page-content{
    padding: 0 3rem;
  }
  .page-content.-bgnone{
    padding: 0;
  }
  .page-content__inner{
    max-width: 120rem;
    margin: 0 auto;
    padding: 6rem 12rem 12rem 12rem;
    box-sizing: border-box;
  }
  .page-content__inner.-padding0{
    padding: 0;
  }
  .page-content.-search{
    padding: 0 3rem 10rem 3rem;
  }
  .page-content.-search .page-content__inner{
    padding: 3.2rem 7.2rem;
  }
  .page-content.-whitepaper .page-content__inner{
    max-width: auto;
    padding: 0 0 10rem 0;
  }
  .page-content.-whitepaper .page-content__inner{
    max-width: auto;
    padding: 0 0 10rem 0;
  }
  .page-content:before{
    bottom: -5rem;
    left: -25rem;
    width: 99.3rem;
    height: 43.9rem;
    filter: blur(28rem);  
  }
  .page-content:after {
    height: 40rem;
    height: 20vw;
    background: url(../images/home/service-bg-bottom.png) center bottom no-repeat;
    background-size: 100% auto;
  }
  .page-content__bg-top{
    background: url("../images/shared/service-bg.png") center top no-repeat;
    background-size: 100% 100%;
    height: 99.7rem;
  }
  .page-content__bg-gradation{
    height: 60rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	 
  .page-content{
    padding: 0 2rem;
  } 
  .page-content.-bgnone{
    padding: 0;
  }
  .page-content__inner{
    padding: 1.8rem;
  }
  .page-content__inner.-padding0{
    padding: 0;
  }
  .page-content.-whitepaper .page-content__inner{
    padding: 0 0 5rem 0;
  }
  .page-content.-search{
    padding-bottom: 5rem;
  }
  .page-content.-search .page-content__inner{
    padding: 0.5rem 1.8rem;
  }
  .page-content:before{
    bottom: 2rem;
    left: -25rem;
    width: 48rem;
    height: 21rem;
    filter: blur(28rem);  
  }
  .page-content:after {
      height: 10rem;
      background: url(../images/home/service-bg-bottom-sp.png) center bottom no-repeat;
      background-size: cover;
      bottom: 0;
  }
  .page-content__bg-top{
    background: url("../images/shared/service-bg-sp.png") center top no-repeat;
    background-size: 100% auto;
    height: 70rem;
  }
  .page-content__bg-gradation{
    height: 18rem;
    top: -0.3rem;
  }
}


/* リスト
--------------------------------------------------*/
.m-list01 li{
  position: relative;
  line-height: 1.8;
  padding-left: 1em;
}
.m-list01 li:before{
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
}
/*
.page-content ol.wp-block-list{
  list-style: decimal;
  margin-left: 1.3em;
}
.page-content ol.wp-block-list li{
  position: relative;
  line-height: 1.8;
  padding-left: 0;
}
.page-content ol.wp-block-list li:before{
  content: none;
}
*/
.page-content .wp-block-quote{
  line-height: 1.8;
  position: relative;
}
.page-content .wp-block-quote:before{
  background-color: #CFE1DC;
  width: 2px;
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -1px;
  display: block;
}
.page-content .wp-block-quote{
  text-align: right;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-list01,
  .page-content ol.wp-block-list{
    margin-bottom: 4.8rem;
  }
  .page-content ol.wp-block-list li{
    font-size: 1.6rem;
  }
  .page-content ol.wp-block-list li{
    font-size: 1.6rem;
  }
  .page-content .wp-block-quote{
    padding-left: 3.2rem;
    font-size: 1.6rem;
  }
  .page-content .wp-block-quote a{
    text-decoration: underline;
  }
  .page-content .wp-block-quote a:hover{
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-list01,
  .m-list02{
    margin-bottom: 4rem;
  }
  .m-list01 li{
    font-size: 1.4rem;
  }
  .m-list02 li{
    font-size: 1.4rem;
  }
  .page-content .wp-block-quote{
    padding-left: 2.4rem;
    font-size: 1.4rem;
    margin-bottom: 4rem;
  }
  .page-content .wp-block-quote a{
    margin-top: 1.2rem;
  }
}

/* 関連記事
--------------------------------------------------*/
.m-articlebox{
  margin-bottom: 2.4rem;
}
.m-articlebox a{
  border: 1px #CFE1DC solid;
  border-radius: 0.8rem;
}
.m-articlebox__image{
  border-radius: 0.4rem;
  overflow: hidden;
}
.m-articlebox__texts{
  line-height: 1.8;
}
.m-articlebox__text01{
  font-weight: 600;
  margin-bottom: 0.5rem;
}
.m-articlebox__text02{
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-articlebox a{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2.4rem 2.4rem 2.4rem 4.8rem;
  }
  .m-articlebox a:hover{
    text-decoration: none;
  }
  .m-articlebox a:hover .m-articlebox__text02{
    text-decoration: underline;
  }
  .m-articlebox__image{
    width: 22.6%;
  }
  .m-articlebox__texts{
    width: 72%;
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-articlebox a{
    padding: 1.5rem;
    display: block;
  }
  .m-articlebox__image{
    width: 20rem;
    margin: 1rem auto 0 auto;
  }
  .m-articlebox__texts{
    font-size: 1.4rem;
  }
}

/* link
--------------------------------------------------*/
.m-linkbox li{
  border-radius: 0.4rem;
  border: 1px #CFE1DC solid;
}
.m-linkbox a{
  display: block;
  position: relative;
  font-weight: 600;
  line-height: 1.65;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-linkbox{
    display: flex;
    flex-wrap: wrap;
    gap:2rem 2rem;
    margin-bottom: 14.4rem;
  }
  .m-linkbox li{
    width: calc( 50% - 1rem - 2px );
  }
  .m-linkbox a{
    padding: 3.7rem 5.6rem 3.7rem 3.2rem;
    font-size: 1.6rem;
    transition: all .3s ease;
  }
  .m-linkbox a:hover{
    color: #43914C;
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-linkbox{
    margin-bottom: 6rem;
  }
  .m-linkbox li{
    margin-bottom: 1.5rem;
  }
  .m-linkbox li:last-child{
    margin-bottom: 0;
  }
  .m-linkbox a{
    padding: 2rem 5.1rem 2rem 2rem;
    font-size: 1.4rem;
  }
}

/* 資料
--------------------------------------------------*/
.m-material__category{
  background-color: #557D92;
  border-radius: 0.2rem;
  color: #fff;
  line-height: 1.5;
  font-weight: 600;
  display: inline-block;
}
.m-material__image{
  overflow: hidden;
  border-radius: 0.8rem;
}
.m-material__image img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 25 / 14;  
}
.m-material__text{
  line-height: 1.8;
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.m-material__button a{
  width: 92%;
  border: 1px #2D2D2D solid;
  border-radius: 10rem;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 auto;
  display: block;
  text-align: center;
  box-sizing: border-box;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-material{
    display: flex;
    flex-wrap: wrap;
    gap:3rem 3rem;
    margin-bottom: 11.4rem;
  }
  .m-material__item{
    width: calc( ( 100% / 3 ) - 2rem );
  }
  .m-material__category{
    font-size: 1.2rem;
    padding: 0.2rem 1rem 0.3rem 1rem;
    margin-bottom: 0.8rem;
  }
  .m-material__text{
    font-size: 1.6rem;
    margin: 1.8rem 0 1.6rem 0;
  }
  .m-material__button a{
    font-size: 1.6rem;
    padding: 1.3rem 3rem;
    transition: all .3s ease;
  }
  .m-material__button a:hover{
    border: 1px #43914C solid;
    color: #43914C;
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){
  .m-material{
    margin-bottom: 6rem;
  }
  .m-material__item{
    margin-bottom: 3rem;
  }
  .m-material__category{
    font-size: 1rem;
    padding: 0.2rem 1rem 0.3rem 1rem;
    margin-bottom: 0.8rem;
  }
  .m-material__text{
    font-size: 1.4rem;
    margin: 1.1rem 0 1rem 0;
  }
  .m-material__button a{
    font-size: 1.4rem;
    padding: 1.1rem 3rem;
  }
}










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

記事一覧共通

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

/* カラム
--------------------------------------------------*/
.l-side__title{
  font-weight: 600;
}
.l-side__category{
  background-color: #fff;
  border-radius: 0.6rem;
}
.l-side__category a{
  display: block;
  position: relative;
}
.l-side__category a:before{
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 10rem;
  display: block;
  position: absolute;
  left: 0;
}
.l-side__tag{
  position: relative;
}
.l-side__tagList{
  display: flex;
  flex-wrap: wrap;
}
.l-side__tagList a{
  background-color: #fff;
  border-radius: 0.4rem;
  display: block;
}
.l-side__tagButton{ 
  width: 16rem;
  color: #43914C;
  background-color:#CFE1DC;
  border-radius: 10rem;
  transition: all .3s ease;
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 1.2rem 4rem 1.2rem 1.4rem;
  margin: 2rem auto 0 auto;
  z-index: 10;
  cursor: pointer;
  position: relative;
}
.l-side__tagButton .l-side__tagButton__button{ 
  width: 2.4rem;
  height: 2.4rem;
  background-color: #43914C;
  border-radius: 50%;
  position: absolute;
  right: 1.2rem;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: block;
}
.l-side__tagButton .l-side__tagButton__button:before,
.l-side__tagButton .l-side__tagButton__button:after{ 
  width: 0.8rem;
  height: 1px;
  content: "";
  background-color: #fff;
  display: block;
  position: absolute;
  inset:0;
  margin: auto auto;
  transition: all .3s ease;
}
.l-side__tagButton .l-side__tagButton__button:after{ 
  transform: rotate(-90deg);
  transiton: transform .3s ease;
}
.show-all .l-side__tagButton .l-side__tagButton__button:after{ 
  transform: rotate(0);
}
.l-side__year{  
  border: 1px #CFE1DC solid;
  border-radius: 0.4rem;
  background-color: #fff;
}
.l-side__yearTitle{  
  font-size: 1.4rem;
  font-weight: 500;
  background: url("../images/shared/arrow-down.svg") right 2rem center no-repeat;
  background-size: 1rem auto;
  cursor: pointer;
}
.l-side__yearList{  
  display: none;
}
.l-side__yearList a{  
  font-size: 1.4rem;
  display: block;
}
.l-main > *:last-child {
  margin-bottom: 0;
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .l-container{
    display: flex;
    justify-content: space-between;
    max-width: 120rem;
    padding: 0 3rem;
    margin: 0 auto;
    box-sizing: content-box;
  }
  .l-main{
    width: calc( 100% - 36rem );
  }
  .l-side{
    width: 28rem;
    position: sticky;
    top: 13rem;
    margin-bottom: 16rem;
    align-self: flex-start;
    transition: all .3s ease;
    max-height:calc(100vh - 13rem);
    overflow-y: auto;
  }
  .l-side.-hide{
    opacity:0;
    pointer-events: none;
  }
  .l-container.-whitepaper .l-main{
    width: calc( 100% - 46rem );    
  }
  .l-container.-whitepaper .l-side{
    width: 38rem;    
  }
  .l-side .m-title03{
    font-size: 1.8rem;
    padding-left: 1.2rem;
    margin-bottom: 2rem;
  }
  .l-side .m-title03:before{
    bottom: 0.4rem;
  }
  .l-side__title{
    font-size: 1.8rem;
    margin-bottom: 0.6rem;
  }
  .l-side__category{
    padding: 1.6rem 1.2rem 1.4rem 2.4rem;
    margin-bottom: 2rem;
  }
  .l-side__category a{
    font-size: 1.4rem;
    padding: 0.5rem 0 0.5rem 1.2rem;
    transition: all .3s ease;
  }
  .l-side__category a:before{
    top: 0.95em;
    transition: all .3s ease;
  }
  .l-side__category a:hover:before{
    transform: scale(1.3);
  }
  .l-side__category a:hover{
    color: #43914C;
    text-decoration: none;
  }
  .l-side__tag{
    margin-bottom: 2rem;
  }
  .l-side__tagList{
    gap:0.4rem 0.4rem;
  }
  .l-side__tagList a{
    font-size: 1.4rem;
    padding: 0.7rem 1.2rem;
    transition: all .3s ease;
  }
  .l-side__tagList a:hover{
    color: #43914C;
    text-decoration: none;
  }
/*
  .l-side__tagButton{ 
    top: 16.4rem;
  }
*/
  .l-side__tagButton:hover{  
    background-color: #fff;
  }
  .l-side__year{  
    margin-bottom: 10rem;
  }
  .l-side__yearTitle{  
    padding: 0.8rem 2rem;
  }
  .l-side__yearList a{  
    padding: 0.8rem 2rem;
    transition: all .3s ease;
  }
  .l-side__yearList a:hover{  
    background-color: #F3FAF9;
    color: #43914C;
    text-decoration: none;
  }
}

/* メールマガジンページのみ */
@media screen and (max-width: 1000px){	
  .l-container.-under1000-onecol{
    padding: 0 3rem;
		font-size: 1.6rem;
    display: block;
    max-width: auto;
  }
  .l-container.-under1000-onecol .l-main{
    width: 100%;
    margin-bottom: 9rem;
  }
  .l-container.-under1000-onecol .l-side{
    width: 100%;
  }
}


/* SP */
@media screen and (max-width: 767px){	
  .l-container{
    padding: 0 2rem;
		font-size: 1.6rem;
  }
  .l-side__title{
    margin: 0 2rem;
  }
  .l-side__category{
    padding: 2.5rem 2.4rem 2.8rem 3.5rem;
    margin:2.5rem 2rem 7rem 2rem;
  }
  .l-side__category li{
    margin-bottom: 0.4rem;
  }
  .l-side__category li:last-child{
    margin-bottom: 0;
  }
  .l-side__category a{
    font-size: 1.6rem;
    padding: 0.7rem 0 0.7rem 1.4rem;
  }
  .l-side__category a:before{
    top: 0.95em;
  }
  .l-side__tag{
    margin:2.5rem 2rem 7rem 2rem;
  }
  .l-side__tagList{
    gap:0.8rem 0.8rem;
  }
  .l-side__tagList a{
    font-size: 1.4rem;
    padding: 0.9rem 2rem;
    transition: all .3s ease;
  }
/*
  .l-side__tagButton{ 
    top: 16.4rem;
  }
*/
  .l-side__year{  
    margin:2.5rem 2rem 7rem 2rem;
  }
  .l-side__yearTitle{  
    padding: 1.2rem 2rem;
  }
  .l-side__yearList a{  
    padding: 1.2rem 2rem;
  }
}

/* 共通リスト
--------------------------------------------------*/
.m-card{
  border-radius: 0.8rem;
  background-color: #fff;
  box-sizing: border-box;
}
.m-card a{
  height: 100%;
  display: flex;
  flex-direction: column;
}
.m-card__image{
  border-radius: 0.6rem;
  overflow: hidden;
}
.m-card__image img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 62 / 35;
}
.m-card__time{
  color: #557D92;
  font-size: 1.2rem;
  line-height: 1.5;
}
.m-card__text{
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  flex: 1;
}
.m-card__category li{
  background-color: #557D92;
  border-radius: 0.2rem;
  color: #fff;
  font-weight: 500;
  display: inline-block;
}
.m-card__tag li{
  color: #8e8e8e;
}
.m-card__button{
  text-align: center;
}
.m-card__button a{
  border: 1px #2D2D2D solid;
  border-radius: 10rem;
  font-weight: 600;
  transition: all .3s ease;
}
.library-pagenav{
  display: flex;
  flex-wrap: wrap;
}
.library-pagenav a{
  background-color: #CFE1DC;
  border-radius: 10rem;
  position: relative;
  color: #43914C;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  display: block;
}
.library-pagenav a:after{
  width: 2.4rem;
  height: 2.4rem;
  content: "";
  background: url("../images/shared/arrow-pagenavi.svg") center center no-repeat;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  right: 1.2rem;
  bottom: 0;
  margin: auto 0;
  display: block;
}
.articleList-content .m-cards__controls,
.library-content .m-cards__controls{
  display: flex;
  justify-content: center;
  gap:0 1.2rem;
  margin-top: 2.5rem;
}
.articleList-content .m-cards__controls .slick-prev,
.library-content .m-cards__controls .slick-prev{
  background-image: url("../images/shared/prev.svg");
}
.articleList-content .m-cards__controls .slick-next,
.library-content .m-cards__controls .slick-next{
  background-image: url("../images/shared/next.svg");
}
.articleList-content .m-cards__controls .slick-arrow,
.library-content .m-cards__controls .slick-arrow{
  width: 4.8rem;
  height: 4.8rem;
  background-color: #fff;
  border-radius: 50%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 1rem auto;
  text-indent: -9999px;
  cursor: pointer;
  padding: 0;
}
.m-cards .slick-track {
  display: flex!important;
}
.m-cards .slick-slide {
  height: auto!important;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  #column,
  #backnumber{
    position: relative;
    top: -5rem;
  }
  .m-cards{
    display: flex;
    flex-wrap: wrap;
    gap:2.4rem 2.4rem;
  } 
  .m-title01 + .m-cards {
    margin-top: 3.5rem;
  }
  .m-card{
    width: calc( ( 100% / 3 ) - 1.6rem );
    box-sizing: border-box;
  }
  .articleList-content.-slide .m-cards{
    margin-left: -1.4rem;
    margin-right: -1.4rem;
  }
  .m-cards.-slide .m-card{
    width: auto;
    margin: 0 1.4rem;
  }
  .m-cards.-four .m-card{
    width: calc( 25% - 1.8rem );
  }
  .m-card>a{
    padding: 0.8rem 2.4rem 2.4rem 2.4rem;
    transition: all .3s ease;
  }
  .m-card:not(:has(> a)) {
    padding: 2rem 2.4rem 2.4rem 2.4rem;
  }
  .m-card .m-card__image{
    transition: all .3s ease;
  }
  .m-card a:hover{
    text-decoration: none;
  }
  .m-card a:hover .m-card__text {
    color: #43914C;
  }
  .m-card a:hover .m-card__image{
    opacity: 0.8;
  }
  .m-card__image{
    margin: 0 -1.6rem 1.7rem -1.6rem;
  }
  .m-card__text{
    font-size: 1.6rem;
    line-height: 1.8;
    margin-bottom: 0.4rem;
  }
  .m-card:not(:has(> a)) .m-card__category{
    margin: 0 -1.6rem 0.4rem -1.6rem;
  }
  .m-card__category{
    margin-bottom: 0.5rem;
  }
  .m-card__category li{
    font-size: 1.2rem;
    padding: 0.2rem 1rem;
    margin-bottom: 0.4rem;
    display: inline-block;
  }
  .m-card:not(:has(> a)) .m-card__category li{
    padding: 0.1rem 1rem;
  }
  .m-card__tag{
    display: flex;
    flex-wrap: wrap;
    gap:0.2rem 1.2rem;
  }
  .m-card__tag li{
    font-size: 1.4rem;
  }
  .m-card__button a{
    max-width: 28rem;
    font-size: 1.6rem;
    padding: 1.1rem 1.5rem;
    margin: 1.6rem auto 0 auto;
    transition: all .3s ease;
  }
  .m-card__button a:hover{
    border: 1px #43914C solid;
    color: #43914C;
  }
  .library-pagenav{
    gap:2rem 2.4rem;
    margin-bottom: 7.4rem;
    flex-wrap: wrap;
  }
  .library-pagenav a{
    padding: 1.7rem 6.2rem 1.6rem 4rem;
    transition: all .3s ease;
  }
  .library-pagenav a:hover{
    background-color: #fff;
    text-decoration: none;
  }
  .library-pagenav a:after{
    right: 1.4rem;
  }
}

@media (min-width: 901px) and (max-width: 1140px) {
  .l-main .m-card{
    width: calc( ( 100% / 2 ) - 1.2rem );
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  .l-main .m-card{
    width: 100%;
  }
}
@media (min-width: 768px) and (max-width: 840px) {
  .l-content .m-card{
    width: calc( ( 100% / 2 ) - 1.2rem );
  }
}

/* SP */
@media screen and (max-width: 767px){	
  #column,
  #backnumber{
    position: relative;
    top: -5rem;
  }
  .m-cards .slick-list {
	  padding: 0 6.5% 0 0!important;
	}
  .m-cards{
    display: flex;
    flex-wrap: wrap;
    gap:1.5rem 1.5rem;
	}
  .m-title01 + .m-cards {
    margin-top: 2.5rem;
  }
  .m-cards.-sp-slide{
    margin: 0 -2rem;
    gap:0;
    margin: 2.5rem -2rem 0 -2rem;
	}
  .m-cards.-slide .slick-track,
  .m-cards.-sp-slide .slick-track{
    margin-left: 1rem;
  }
  .m-card{
    width: calc( 50% - 0.75rem );
  }
  .m-cards.-sp-slide .m-card,
  .m-cards.-slide .m-card{
    margin-left: 1rem;
	}
  .m-card a{
    padding: 0.8rem 0.8rem 1.2rem 0.8rem;
  }
  .m-card:not(:has(> a)){
    padding: 0.2rem 0.8rem 0.8rem 0.8rem;
  }
  .m-card__image{
    margin-bottom: 0.8rem;
  }
  .m-card__text{
    font-size: 1.4rem;
    line-height: 1.7;
    margin-bottom: 0.4rem;
  }
  .m-card:not(:has(> a)) .m-card__category{
    margin-bottom: 0.6rem;
  }
  .m-card__category li{
    font-size: 1rem;
    padding: 0.1rem 0.4rem;
    margin-bottom: 0.2rem;
  }
  .m-card:not(:has(> a)) .m-card__category li{
    padding: 0 0.4rem 0.1rem 0.4rem;
  }
  .m-card__category li:last-child{
    margin-bottom: 0;
  }
  .m-card__tag{
    display: none;
  }
  .m-card__button a{
    font-size: 1.3rem;
    padding: 0.4rem 1rem 0.5rem 1rem;
    margin-top: 1rem;
  }
  .library-pagenav{
    gap:1.2rem 1.2rem;
    margin-bottom: 7.4rem;
  }
  .library-pagenav a{
    padding: 1.3rem 4.4rem 1.2rem 1.6rem;
  }
}

/* ライブラリー
--------------------------------------------------*/
.m-pagenavi{
  display: flex;
  justify-content: center;
  align-items: center;
  gap:0 0.8rem;
  margin-top: 4rem;
}
.m-pagenavi a,
.m-pagenavi span{
  width: 3.2rem;
  height: 3.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  position: relative;
  font-size: 1.4rem;
}
.m-pagenavi .current{
  font-weight: bold;
}
.m-pagenavi a:hover,
.m-pagenavi .current{
	background-color:#CFE1DC;
	text-decoration:none;
}
.m-pagenavi .prev:hover,
.m-pagenavi .next:hover{
}
.m-pagenavi .prev{
  background-image: url("../images/shared/prev02.svg");
}
.m-pagenavi .next{
  background-image: url("../images/shared/next02.svg");
}
.m-pagenavi .prev,
.m-pagenavi .next{
  width: 4rem;
  height: 4rem;
  display: block;
  border: none;
  position: relative;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  
}
/* PC */
@media print,only screen and (min-width: 768px){ 
  .library-content{
    margin-bottom: 12.7rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .library-content{
    margin-bottom: 7rem;
  }
  .sp .articleList-content,
  .articleList-content.-slide{
    margin: 0 -2rem 7rem -2rem;
  }
  .articleList-content .m-title01{
    margin-left: 2rem;
  }
}

/* メールマガジンバックナンバー
--------------------------------------------------*/
.m-backnumber__intro{
  font-size: 1.6rem;
  line-height: 1.8;
  margin: 3.2rem 0;
}
.m-backnumber__list{
  background-color: #fff;
  border-radius: 0.8rem;
}
.m-backnumber__list li{
  border-bottom: 1px #D1E3DE solid;
}
.m-backnumber__list li:last-child{
  border-bottom: none;
}
.m-backnumber__list a{
  position: relative;
  display: block;
}
.m-backnumber__time{
  font-family: "Inter";
  font-size: 1.4rem;
  font-weight: 600;
}
.m-backnumber__text{
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.backnumber-entry{
  background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
  border-radius: 0.8rem;
  padding: 0.8rem;
  margin-top: 3.2rem;
}
.backnumber-entry__inner{
  background-color: #fff;
  border-radius: 0.4rem;
}
.backnumber-entry .m-button{
  margin-bottom: 1.4rem;
}
.backnumber-entry .m-button a{
  background-color: #DD5E14!important;
  border: 1px #DD5E14 solid!important;
  padding: 1.2rem 5.2rem 1.2rem 3.2rem;
}
.backnumber-entry .m-button a:hover{
  background-color: #fff!important;
  border: 1px #43914C solid!important;
}
.backnumber-entry__link{
  text-align: center;
}
.backnumber-entry__link a{
  font-weight: 500;
  position: relative;
  display: inline-block;
  text-align: center;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-backnumber__list{
    padding: 3.2rem 4rem;
    margin-bottom: 1.6rem;
  }
	.m-backnumber__list a{
    display: flex;
    align-items: center;
    gap:0 2rem;
    padding: 4rem 6.4rem 4rem 0;
	}  
	.m-backnumber__list a:hover{
    text-decoration: none;
	}
  .m-backnumber__time{
    width: 10rem;
    position: relative;
  }
  .m-backnumber__time:after{
    content: "";
    width: 1px;
    height: 4.7rem;
    border-right: 1px #CFE1DC dotted;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto 0;
  }
  .m-backnumber__text{
    width: calc( 100% - 11.6rem );
    font-size: 1.6rem;
    line-height: 1.8;
  }
  .backnumber-entry__inner{
    padding: 2rem 2.6rem;
  }
  .l-side .backnumber-entry{
    margin-top: 2.2rem;
  }
  .l-side .backnumber-entry__inner{
    padding: 2rem 1.6rem 1.6rem 1.6rem;
  }
  .l-side .backnumber-entry .m-button a{
    padding: 1.2rem 2.5rem;
  }
  .backnumber-entry__link a{
    font-size: 1.4rem;
    padding: 0.5rem 3.3rem 0.5rem 0;
  }
  .backnumber-entry__link a:hover{
    color: #43914C;
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-backnumber{
    margin-bottom: 5.4rem;
  }
  .m-backnumber__list{
    padding: 1rem 2.4rem;
    margin: 3rem 0;
  }
	.m-backnumber__list a{
    padding: 2rem 2.6rem 2rem 0;
	}
	.m-backnumber__text{
    margin-top: 0.4rem;
    font-size: 1.4rem;
    line-height: 1.7;
	}
  .backnumber-entry__inner{
    padding: 2rem 2.6rem 1.5rem 2.6rem;
  }
  .backnumber-entry__link{
    margin-top: 0.8rem;
  } 
  .backnumber-entry__link a{
    font-size: 1.4rem;
    padding: 0.5rem 3.2rem 0.5rem 0;
  } 
  .m-backnumber .m-button{
    width: 26.7rem;
    margin: 0 auto;
  }
  .m-backnumber .m-button a{
    padding: 1.2rem 4.2rem 1.2rem 2.2rem;
    box-sizing: border-box;
  }
  .l-side .backnumber-entry{
    margin: -4rem 0 7rem 0;
  }
}


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

ライブラリテンプレート

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

/* この記事の監修者
--------------------------------------------------*/
.m-author{
  background-color: #fff;
  border-radius: 0.8rem;
}
.m-author__image{
  border-radius: 0.4rem;
  overflow: hidden;
}
.m-author__text01{
  font-weight: 500;
}
.m-author__text02{
  font-weight: 600;
}
.m-author__text02 a{
  line-height: 1;
  position: relative;
  display: inline-block;
}
.m-author__text02 a:before{
  content: "";
  background-color: #CFE1DC;
  width: 1px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
}
.m-author__text03{
  line-height: 1.8;
}

/* PC */
@media print,only screen and (min-width: 768px){  
  .m-author{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4.8rem;
    margin-bottom: 4.8rem;
  }
  .m-author__image{
    width: 12rem;
  }
  .m-author__texts{
    width: calc( 100% - 16.8rem );
  }
  .m-author__text01{
    font-size: 1.2rem;
  }
  .m-author__text02{
    font-size: 2rem;
    margin-bottom: 1.8rem;
  }
  .m-author__text02 a{
    font-size: 1.6rem;
    padding:0 3.2rem 0 1.8rem;
    margin-left: 1.6rem;
    transition: all .3s ease;
  }
  .m-author__text02 a:hover{
    color: #43914C;
    text-decoration: none;
  }
  .m-author__text02 a:before{
    height: 2rem;
  }
  .m-author__text03{
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-author{
    padding: 2rem;
    margin-bottom: 2rem;
  }
  .m-author__image{
    width: 13rem;
    margin: 0 auto 1.5rem auto;
  }
  .m-author__texts{
  }
  .m-author__text01{
    font-size: 1.1rem;
  }
  .m-author__text02{
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
  .m-author__text02 a{
    font-size: 1.4rem;
    padding:0 3.2rem 0 1.4rem;
    margin-left: 1.2rem;
  }
  .m-author__text02 a:before{
    height: 1.8rem;
  }
  .m-author__text03{
    font-size: 1.4rem;
  }
}

/* ソーシャルボタン＆ページャー
--------------------------------------------------*/
.m-socialNextprev{
  background-color: #fff;
  border-radius: 0.8rem;
  position: relative;
  z-index: 10;
}
.m-social{
  border-bottom: 1px #CFE1DC solid;
}
.m-social__text{
  font-weight: 600;
  letter-spacing: 0;
}
.m-social__list{
  display: flex;
}
.m-social__copy button{
  letter-spacing: .0125em;
  line-height: 1.2;
  border: 1px solid #CFE1DC;
  border-radius: 10rem;
  cursor: pointer;
}
.m-nextprev{
	position: relative;
}
.m-pagenav__title{
  color: #999;
}
.m-nextprev a{
  display: block;
}
.m-nextprev span{
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.m-nextprev time{
  color: #999;
}
.m-nextprev .prev:before{
  right: 0;
}
.m-nextprev .next:before{
  left: 0;
}
.m-nextprev .list{
  margin: 0 auto;
  text-align: center;
  display: flex;
}
.m-nextprev .list a{
  width: 100%;
  font-weight: 600;
  border: 1px solid #2D2D2D;
  border-radius: 10rem;
  box-sizing: border-box;
  display: block;
  align-items: center;
}
.m-nextprev .m-arrow{
  background: #CFE1DC;
  border-radius: 50%;
}
.m-nextprev .m-arrow:before{
  border-radius: 50%;
  background: #43914C;
  opacity: 0;
  transition: opacity .4s ease;
}
.m-nextprev a:hover .m-arrow:before{
  opacity: 1;
}
.m-nextprev .m-arrow:after{
  background-image: url("../images/shared/arrow-green.svg"),url("../images/shared/arrow.svg"); 
}
.m-nextprev .prev .m-arrow{
  right: auto;
  left: 0;
}
.m-nextprev .prev .m-arrow:after{
  background-image: url("../images/shared/arrow-prev.svg"),url("../images/shared/arrow-prev-green.svg"); 
  background-position: right center,left center;
  left: 0.8rem;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-socialNextprev{
    max-width: 120rem;
    padding: 6.2rem 4.8rem 4.8rem 4.8rem;
    margin:0 auto 16rem auto;
    box-sizing: border-box;
  }
  .l-main .m-socialNextprev{
    padding: 4rem;
  }
  .m-social{
    display: flex;
    justify-content: center;
    align-items: center;
    gap:0 2.4rem;
    padding-bottom: 4.2rem;
    margin-bottom: 4.2rem;
  }
  .m-social__text{
    font-size: 1.2rem;
    margin-right: 3.4rem;
  }
  .m-social__list{
    gap:0 2.4rem;  
  }
  .m-social__list li{
    width: 3.2rem;
  }
  .m-social__copy button{
    font-size: 1.2rem;
    padding: 0.8rem 1.6rem;
  }
  .m-pagenav__title{
    font-size: 1rem;
    margin-bottom: 0.3rem;
  }
  .m-nextprev a{
    transition: all .4s ease;
  }
  .m-nextprev .prev,
  .m-nextprev .next{
    width: calc( 50% - 13rem );
    font-size: 1.4rem;
    line-height: 1.71;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    box-sizing: border-box;
  }
  .m-nextprev .prev{
    left: 0;
  }
  .m-nextprev .next{
    right: 0;
  }
  .m-nextprev .prev:before,
  .m-nextprev .next:before{
    content: "";
    width: 1px;
    background-color: #CFE1DC;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
  }
  .m-nextprev .prev a{
    padding:0 3.2rem 0 4.8rem;
  }
  .m-nextprev .next a{
    padding:0 4.8rem 0 3.2rem;
  }
  .m-nextprev .prev a:hover,
  .m-nextprev .next a:hover{
    color: #43914C;
    text-decoration: none;
  }
  .m-nextprev .list{
    width: 19.6rem;
    padding: 1.1rem 0 1.7rem 0;
  }
  .m-nextprev .list a{
    font-size: 1.6rem;
    padding: 1rem 1rem;
  }
  .m-nextprev .list a:hover{
    border: 1px solid #43914C;
    color: #43914C;
    text-decoration: none;
  }
  .m-nextprev .m-arrow:before{
    width: 2.4rem;
    height: 2.4rem;
  }
  .m-nextprev .m-arrow:after{
    width: 3.3rem;
    background-size: 0.8rem auto,0.8rem auto;
    right: 0.8rem;
  }
  .m-nextprev a:hover .m-arrow:before{
    background: linear-gradient(289.05deg, rgba(72, 157, 45, 1) 16.58%, rgba(27, 139, 127, 1) 83.47%);
    opacity: 1;
  }
  .m-nextprev .prev a:hover .m-arrow:after{
    transform: translateX(-2.5rem);
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-socialNextprev{
    padding: 2rem 2rem 11rem 2rem;
    margin-bottom: 7rem;
  }
  .m-social{
    padding-bottom: 2rem;
    margin-bottom: 2rem;
    text-align: center;
  }
  .m-social__text{
    font-size: 1.3rem;
  }
  .m-social__list{
    gap:0 2rem;  
    justify-content: center;
    margin: 1rem 0 1.5rem 0;
  }
  .m-social__list li{
    width: 2.8rem;
  }
  .m-social__copy button{
    font-size: 1.2rem;
    padding: 0.8rem 1.6rem;
  }
  .m-nextprev{
    display: flex;
    justify-content: space-between;
  }
  .m-pagenav__title{
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }
  .m-nextprev time{
    display: block;
    margin-top: 0.6rem;
  }
  .m-nextprev:before{
    content: "";
    width: 1px;
    background-color: #CFE1DC;
    display: block;
    position: absolute;
    inset:0;
    margin: 0 auto;
  }
  .m-nextprev .prev,
  .m-nextprev .next{
    width: 50%;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .m-nextprev .prev{
    padding:0 1rem 0 3.6rem;
  }
  .m-nextprev .next{
    padding:0 3.6rem 0 1rem;
  }
  .m-nextprev .list{
    position: absolute;
    max-width: 19.4rem;
    left: 0;
    right: 0;
    bottom: -8rem;
    margin: 0 auto;
  }
  .m-nextprev .list a{
    font-size: 1.6rem;
    padding: 1.2rem 1rem 1.3rem 1rem;
  }
  .m-nextprev .m-arrow{
    width: 2.4rem;
    height: 2.4rem;
  }
  .m-nextprev .m-arrow:after{
    background-size: 0.9rem auto,0.9rem auto;
    right: 0.8rem;
  }
  .m-nextprev .prev .m-arrow:after{
    right: auto;
    left: 0.8rem;
  }
}

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

監修者紹介

==================================================*/
.author-list__item a{
  background-color: #fff;
  border-radius: 0.8rem;
  text-align: center;
  box-sizing: border-box;
  display: block;
}
.author-list__image{
  border-radius: 0.8rem;
  overflow: hidden;
  margin-bottom: 2rem;
}
.author-list__image img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 204 / 273;
}
.author-list__text01{
  line-height: 1.7;
}
.author-list__text02{
  font-weight: 600;
  line-height: 1.7;
}
.m-more{ 
  width: 22.3rem;
  color: #43914C;
  background:#CFE1DC url("../images/shared/icon-plus.svg") right 1.2rem center no-repeat;
  background-size: 2.4rem auto;
  border-radius: 10rem;
  transition: all .3s ease;
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  padding: 1.2rem 4rem 1.2rem 1.4rem;
  margin: 0 auto;
  z-index: 10;
  cursor: pointer;
  margin-top: 4rem;
}
/* 
--------------------------------------------------*/
/* PC */
@media print,only screen and (min-width: 768px){ 
  .author-content{
    margin-bottom: 16rem;
  }
  .author-list{
    display: flex;
    flex-wrap: wrap;
    gap:2.4rem 2.4rem;
  }
  .author-list__item{
    width: calc( 20% - 1.92rem );
  }
  .author-list__item a{
    padding: 0.8rem 0.8rem 2rem 0.8rem;
    transition: all .3s ease;
  }
  .author-list__item a:hover{
    text-decoration: none;
    opacity: 0.8;
  }
  .author-list__text01{
    font-size: 1.4rem;
  }
  .author-list__text02{
    font-size: 1.8rem;
  }
  .m-more:hover{  
    background-color: #fff;
  }
}

@media (min-width: 841px) and (max-width: 1050px) {
  .author-list__item{
    width: calc( 25% - 1.8rem );
  }
}
@media (min-width: 768px) and (max-width: 840px) {
  .author-list__item{
    width: calc( ( 100% / 3 ) - 1.6rem );
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .author-content{
    margin-bottom: 5.4rem;
  }
  .author-list{
  display: flex;
  flex-wrap: wrap;
    gap:1.5rem 1.5rem;
  }
  .author-list__item{
    width: calc( 50% - 0.75rem );
  }
  .author-list__item a{
    padding: 0.8rem 0.8rem 1.6rem 0.8rem;
  }
  .author-list__text01{
    font-size: 1.2rem;
  }
  .author-list__text02{
    font-size: 1.6rem;
  }
}

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

メールマガジンバックナンバー

==================================================*/
.article-content{
  background-color: #fff;
  border-radius: 0.8rem;
  word-break: break-word;
  position: relative;
  z-index: 20;
}
.article-content a{
  text-decoration: underline;
}
.article-image{
  border-radius: 1.6rem;
  overflow: hidden;
}
.article-image img{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .article-content{
    padding: 6rem 12rem 12rem 12rem;
    margin-bottom: 4.8rem;
  }
  .l-main .article-content{
    padding: 4rem;
    margin-bottom: 4.8rem;
  }
  .article-image{
    margin-bottom: 5rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .article-content{
    padding: 2rem;
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .article-image{
    margin-bottom: 2rem;
  }
}

/* カテゴリーで絞り込む
--------------------------------------------------*/
.m-categorySearch__title{  
  font-weight: 500;
  line-height: 1.7;
  color: #43914C;
}
.m-categorySearch__list{
  background-color: #fff;
}
.m-categorySearch__list li{
  font-weight: 600;
  position: relative;
}
.m-categorySearch__list a{
  display: block;
  cursor:default;
}
.m-categorySearch__list li:not(.current) a{
  display: block;
  cursor: pointer;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-categorySearch{
    margin-bottom: 5.2rem;  
  }
  .m-categorySearch__title{ 
    text-align: center;  
    font-size: 1.4rem;
    margin-bottom: 1.6rem;
  }
  .m-categorySearch__list{
    width: fit-content;
    padding: 1.4rem 2rem;
    gap:1.8rem 1.8rem;    
    border-radius: 10rem;
    display: flex!important;
    justify-content: center;
    margin: 0 auto;
  }
  .m-categorySearch__list a{
    border-radius: 10rem;
    padding: 0.9rem 2.2rem;
    font-size: 1.4rem;
    display: inline-block;
    transition: all .3s ease;
  }
  .m-categorySearch__list li:before{
    content: "";
    width: 1px;
    background-color: #CFE1DC;
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    margin: auto 0;
    height: 2rem;
    left: -0.7rem;
  }
  .m-categorySearch__list li:first-child:before{
    content: none;
  }
  .m-categorySearch__list li.current a,
  .m-categorySearch__list a:hover{
    background: #43914C;
    color: #fff;
    text-decoration: none;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-categorySearch{
    margin-bottom: 2rem;  
  }
  .m-categorySearch__title{  
    font-size: 1.2rem;
    margin-bottom: 1rem;
  }
  .m-categorySearch__all{  
    background-color: #fff;
    border-radius: 10rem;
    font-size: 1.4rem;
    font-weight: 600;
    padding: 1.6rem 5rem 1.6rem 3rem;
    position: relative;
    margin-bottom: 1rem;
  }
  .m-categorySearch__all:after{ 
    width: 1.3rem;
    height: 1.3rem;
    content: "";
    background: url("../images/shared/select-arrow.svg") center center no-repeat;
    background-size: 100% auto;
    display: block;
    position: absolute;
    right: 2.4rem;
    top: 0;
    bottom: 0;
    margin: auto 0;
    transition: all .3s ease;
  }
  .-open .m-categorySearch__all:after{ 
    transform: rotate(-180deg);
  }
  .m-categorySearch__list{
    padding: 1.3rem 3.2rem;
    gap:1rem 1rem;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.15);
    border-radius: 0.8rem;
    display:none;
  }
  .m-categorySearch__list a{
    padding: 1rem 1.5rem;
    font-size: 1.4rem;
    font-weight: 400;
    position: relative;
  }
  .m-categorySearch__list a:before{
    width: 0.5rem;
    height: 0.5rem;
    content: "";
    background: linear-gradient(289.05deg, #49A651 16.58%, #08909C 83.47%);
    border-radius: 50%;
    position: absolute;
    top: 1.4em;
    left: 0;
    display: block;
  }
}

/* リスト
--------------------------------------------------*/
.m-news__list{
  background-color: #fff;
  border-radius: 0.8rem;
}
.m-news__list li{
  border-bottom: 1px #D1E3DE solid;
}
.m-news__list li:last-child{
  border-bottom: none;
}
.m-news__listIn a{
  position: relative;
  display: block;
}
.m-news__time{
  font-family: "Inter";
  font-size: 1.4rem;
  font-weight: 600;
}
.m-news__category{
  background-color: #557D92;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 0.1rem 1.5rem 0.2rem 1.5rem;
  border-radius: 0.2rem;
}
.m-news__text{
  font-size: 1.4rem;
  line-height: 1.7;
  overflow: hidden;
	display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.m-news a[href$=".pdf" i] .m-arrow:after{
  width: 1.5rem;
  height: 1.6rem;
  background-image: url("../images/shared/icon-pdf.svg");
  background-position: center center;
  background-size: 100% auto;
  transition: all .3s ease;
}
.m-news a[href$=".pdf" i]:hover .m-arrow:after{
  transform: translateX(0);
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1);
}


/* PC */
@media print,only screen and (min-width: 768px){ 
  .m-news{
    margin-bottom: 16rem;
  }
  .m-news .m-title01{
    width: 16rem;
    margin-bottom: 4.6rem;
  }
  .m-news__list{
    padding: 3.2rem 4rem;
    margin-bottom: 4.8rem;
  }
	.m-news__listIn a{
    display: flex;
    align-items: center;
    gap:0 2rem;
    padding: 4.3rem 6.4rem 4.3rem 0;
	}
	.m-news__listIn a:hover{
    text-decoration: none;
	}
  .m-news__time{
    width: 5.7em;
  }
  .m-news__category{
    width: 9rem;
    text-align: center;
    padding: 0.1rem 0.5rem 0.2rem 0.5rem;
    box-sizing: border-box;
    
    margin-left: 1rem;
  }
  .m-news__text{
    flex: 1;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .m-news{
    margin-bottom: 7rem;
  }
  .m-news__list{
    padding: 1rem 2.4rem;
    margin: 3rem 0;
  }
	.m-news__listIn a{
    padding: 2rem 2.6rem 2rem 0;
	}
  .m-news__category{
    margin-left: 1rem;
  }
	.m-news__text{
    margin-top: 0.4rem;
	}
}

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

資料請求　2カラム　右フォーム

==================================================*/
.africagrant-form{
  background-color: #fff;
  border-radius: 0.8rem;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .africagrant-form{
    padding: 3.2rem;
  }

}

/* SP */
@media screen and (max-width: 767px){	
  .africagrant-form{
    padding: 2rem;
    margin-bottom: 7rem;
  }
}

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

検索結果

==================================================*/
.search-title{
  font-weight: 600;
  line-height: 1.6;
}
.search-title span{
  font-family: 'Inter';
  margin: 0 0.5rem;
  line-height: 1;
  vertical-align: bottom;
}
.search-list{
  background-color: #fff;
  border-radius: 0.8rem;
}
.search-list li{
  border-bottom: 1px #D1E3DE solid;
}
.search-list li:last-child{
  border-bottom: none;
}
.search-list a{
  position: relative;
  display: block;
}
.search-list__title{
  font-weight: 600;
  line-height: 1.65;
}
.search-list__text{
  line-height: 1.8;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .search-title{
    font-size: 3.2rem;
    margin:8rem 0 4.5rem 0;
  }
  .search-title span{
    font-size: 5.6rem;
  }
  .search-list a{
    padding: 4rem 6.4rem 4rem 0;
  }
	.search-list a:hover{
    text-decoration: none;
	}
  .search-list__title{
    font-size: 2rem;
    margin-bottom: 1.6rem;
  }
  .search-list__text{
    font-size: 1.6rem;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .search-title{
    font-size: 1.6rem;
    margin:5rem 0 2rem 0;
  }
  .search-title span{
    font-size: 2.4rem;
  }
  .search-list a{
    padding: 2rem 2.6rem 2rem 0;
  }
  .search-list__title{
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .search-list__text{
    font-size: 1.3rem;
  }
}

/* 検索結果0
--------------------------------------------------*/
.noresult-content{
  background-color: #fff;
  border-radius: 0.8rem;
}
.noresult-title01{
  font-weight: 600;
  line-height: 1.65;
}
.noresult-list li{
  position: relative;
}
.noresult-list li:before{
  content: "・";
  position: absolute;
  top: 0;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .noresult-content{
    padding: 7.2rem;
    margin-bottom: 4.8rem;
  }
  .noresult-title01{
    font-size: 2rem;
    margin-bottom: 4rem;
  }
  .noresult-title02{
    font-size: 1.6rem;
  }
  .noresult-list li{
    font-size: 1.6rem;
    padding-left: 1.4em;
  }
  .noresult-list li:before{
    left: 0.2rem;  
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .noresult-content{
    padding: 2rem;
    margin-bottom: 2rem;
  }
  .noresult-title01{
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
  .noresult-title02{
    font-size: 1.4rem;
  }
  .noresult-list li{
    font-size: 1.4rem;
    padding-left: 1em;
  }
  .noresult-list li:before{
    left: 0rem;  
  }
}

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

お問い合わせ

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

/* thanksページ
--------------------------------------------------*/
.thanks-content{
  text-align: center;
}
.thanks-title{
  line-height: 1.6;
  font-weight: 600;
}
.thanks-text{
  line-height: 1.8;
}
.english .thanks-text{
  text-align: left;
}

/* PC */
@media print,only screen and (min-width: 768px){ 
  .thanks-content{
    margin: 13.5rem 0 16rem 0;
  }
  .thanks-title{
    font-size: 3.2rem;
    margin-bottom: 3.2rem;
  }
  .thanks-text{
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
  .thanks-content .m-button a{
    width: 20.5rem;
    box-sizing: border-box;
  }
}

/* SP */
@media screen and (max-width: 767px){	
  .thanks-content{
    margin: 7rem 0 7rem 0;
  }
  .thanks-title{
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
  .thanks-text{
    font-size: 1.3rem;
    margin-bottom: 2rem;
  }
}
