/* * {
	outline: 2px solid blue;
} */
html {
	font-size: 10px;
}
body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 1.65;
	letter-spacing: 0.01em;
	color: #202020;
	height: 100%;
	margin: 0;
	background-color: #f0f0f0;
	display: flex;
	flex-flow: column;
	min-height: 100vh;
}
main {
	flex: 1;
}
.wrapper {
	width: 90%;
	max-width: 1390px;
	margin: 0 auto;
}
.showPc {
	display: block;
}
.showSp {
	display: none;
}
.btn-link {
	background-color: #a0c922;
	width: 100%;
	max-width: 220px;
	/*背景アニメーション用*/
	position: relative;
	overflow: hidden;
	transition: ease .2s;
}
.btn-link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 2.4rem;
	letter-spacing: 0.01em;
	color: #fff;
	padding: 5px 20px;
	/*背景アニメーション用*/
	position: relative;
	z-index: 3;
}
.btn-link a::after {
	content: '';
	background: url(../images/share/arrow-w.png) no-repeat;
	width: 9px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

@media screen and (max-width: 640px) {
	body {
		font-size: 1.4rem;
	}
	.showPc {
		display: none;
	}
	.showSp {
		display: block;
	}

	.btn-link {
		max-width: 170px;
	}
	.btn-link a {
		font-size: 1.8rem;
		padding: 4px 16px;
	}
	.btn-link a::after {
		right: 16px;
	}
}

.pc{display: block;}
.sp{display: none;}

@media screen and (max-width: 640px){
	.pc{display: none;}
	.sp{display: block;}
}


/*--------------------------------

アニメーション用

--------------------------------*/
/*== 背景が流れる（左から右） ==*/
.bgleft:before {
	content: '';
	/*絶対配置で位置を指定*/
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	/*色や形状*/
	background:#202020;/*背景色*/
	width: 100%;
	height: 100%;
	/*アニメーション*/
	transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}
/*hoverした際の形状*/
.bgleft:hover:before {
	transform-origin:left top;
	transform:scale(1, 1);
}


/*== 左から右テキストエフェクト ==*/
.leftAnime{
	opacity: 0;
	overflow: hidden;
	display: inline-block;
}
.leftAnimeInner {
display: inline-block;
}
.slideAnimeLeftRight {
animation-name:slideTextX100;
animation-duration:0.7s;
animation-fill-mode:forwards;
	opacity: 0;
}
.home #mv .slideAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:0.9s;
	animation-fill-mode:forwards;
		opacity: 0;
}
.home #message .inner .slideAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:0.9s;
	animation-fill-mode:forwards;
		opacity: 0;
}
@keyframes slideTextX100 {
from {
transform: translateX(-100%); /*要素を左の枠外に移動*/
			opacity: 0;
}
to {
transform: translateX(0);/*要素を元の位置に移動*/
	opacity: 1;
}
}
.slideAnimeRightLeft {
animation-name:slideTextX-100;
animation-duration:0.7s;
animation-fill-mode:forwards;
	opacity: 0;
}
.home #mv .slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:0.9s;
	animation-fill-mode:forwards;
		opacity: 0;
}	
.home #message .inner .slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:0.9s;
	animation-fill-mode:forwards;
		opacity: 0;
}	
@keyframes slideTextX-100 {
from {
transform: translateX(100%);/*要素を右の枠外に移動*/
	opacity: 0;
}
to {
transform: translateX(0);/*要素を元の位置に移動*/
	opacity: 1;
}
}


/*== 左から右にベタ塗り ==*/
/*全共通*/
.bgextend{
  animation-name:bgextendAnimeBase;
  animation-duration:1.2s;
  animation-fill-mode:forwards;
  position: relative;
  overflow: hidden;/*　はみ出た色要素を隠す　*/
  opacity:0;
}
@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}
/*中の要素*/
.bgappear{
  animation-name:bgextendAnimeSecond;
  animation-duration:1s;
  animation-delay: 0.2s;
  animation-fill-mode:forwards;
  opacity: 0;
}
@keyframes bgextendAnimeSecond{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}
/*左から右*/
.bgLRextend::before{
  animation-name:bgLRextendAnime;
  animation-duration:1.2s;
  animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #a0c922;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
  0% {
    transform-origin:left;
    transform:scaleX(0);
  }
  50% {
    transform-origin:left;
    transform:scaleX(1);
  }
  50.001% {
    transform-origin:right;
  }
  100% {
    transform-origin:right;
    transform:scaleX(0);
  }
}
/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}


/*== マウスオーバーで画像拡大 ==*/
.scaleAnime {
  overflow: hidden;
}
.scaleAnime img {
  height: auto;
  transition: transform .5s ease; /* ゆっくり変化させる */
}
.scaleAnime:hover img {
  transform: scale(1.1); /* 拡大 */
}
/* マスク */
.scaleAnime::before {
  background: rgba(0, 0, 0, .2); /* マスクの色(黒の50%) */
  bottom: 0;
  content: '';
  height: auto;
  left: 0;
  opacity: 0; /* 最初は透明（非表示） */
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity .6s ease; /* ゆっくりopacityのみへ変化させる */
  width: 100%;
  z-index: 1;
}
.scaleAnime:hover::before {
  opacity: 1;
}
.bgappearTrigger,.bgRLextendTrigger{
	opacity: 0;
}


/*== 下からフェード ==*/
.fadeIn {
  transform: translate3d(0, 40px, 0);
  transition: 0.6s;
  opacity: 0;
}
.fadeIn.animated {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

/*---------- header ----------*/
header {
	width: 100%;
	height: 60px;
	background-color:rgba(240,240,240,0.8);
	position: fixed;
	top: 0;
	z-index: 100;
	transition: 0.2s;
}
header.js-header_fixed {
	background-color: #f0f0f0;
	border-bottom: 1px solid #202020;
}
header .logo {
	width:80%;
	position:fixed; top:10px; left:15px;
	font-size:1rem;
	z-index: 200;
	transition: 0.3s ease;
}
header .logo a {display:flex; flex-flow:row wrap; justify-content:flex-start; align-content:center; align-items:center;}
header .logo img {width:20%; max-width:35px; margin:0 10px 0 0;}
header .logo span strong {
	display:block;
	font-family:"Oswald", sans-serif;
	font-size:2.3rem;
	font-weight:700;
	line-height:1.1;
}
header .logo:hover {opacity: 0.8;}

header .menu {
	/* メニューの位置マイナス指定で画面外に */
	position: fixed;
	right: -100%;
	width: 100%;
	height: 100vh;
	margin-left: auto;
	/* メニューを縦に */
	display: flex;
	flex-direction: column;
	gap: 16px;
	background-color:rgba(0,0,0,0);
	/* background-color: rgba(167, 148, 58, 0.7); */
	transition: .4s;
	z-index: 100;
	padding: 70px 0 70px 0;
	overflow-y: auto;
}

header .menu.open {
	right: 0;
	background-color: #a0c922;
	z-index: 300;
}
header .menu .menu-list {
	/* width: 100%;
	height: 100%; */
	/* メニューテキスト位置をリスト内中心に */
	display: flex;
	/* justify-content: center; */
	align-items: center;
	padding: 0 0 0 12%;
}
header.js-header_fixed .menu-list a {
	color: #fff;
}
header .menu .menu-list a {
	letter-spacing: 0.04em;
	font-size: 1.2rem;
	color: #fff;
}
header .menu .menu-list a span {
	display: block;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 3.2rem;
	line-height: 1.2;
}
header .btn {
	/* ボタンの配置位置  */
	position: fixed;
	top: 12px;
	right: 18px;
	/* ボタンの大きさ  */
	width: 36px;
	height: 36px;
	/* 最前面に */
	z-index: 9999;
}

/***** 真ん中のバーガー線 *****/
header .btn .btn-line {
	display: block;
	position: relative;  /* バーガー線の位置基準として設定 */
	width: 100%;  /* 線の長さと高さ */
	height: 1px;
	background-color: #202020;  /* バーガー線の色 */
	transition: .2s;
}

/****** 上下のバーガー線 *****/
header .btn .btn-line::before,
header .btn .btn-line::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #202020;
	transition: .2s;
}
header .btn .btn-line::before {
	/* 上の線の位置 */
	transform: translateY(-7px);
}
header .btn .btn-line::after {
	/* 下の線の位置 */
	transform: translateY(7px);
}
header.js-header_fixed .btn .btn-line,
header.js-header_fixed .btn .btn-line::before,
header.js-header_fixed .btn .btn-line::after {
	background-color: #202020;
}

/***** メニューオープン時 *****/
header .btn .btn-line.open {
	background-color: transparent;  	/* 真ん中の線を透明に */
}
header .btn .btn-line.open::before ,
header .btn .btn-line.open::after {
	content: "";
	transition: .2s;
}
header .btn .btn-line.open::before {
	transform: rotate(24deg);  /* 上の線を傾ける */
}
header .btn .btn-line.open::after {
	transform: rotate(-24deg);  /* 下の線を傾ける */
}
header.js-header_fixed .btn .btn-line.open::before,
header.js-header_fixed .btn .btn-line.open::after {
	background-color: #fff;
}

@media screen and (min-width: 1400px) {
	header {
		width: 100%;
		height: 82px;
		background-color:rgba(0,0,0,0);
		position: fixed;	
		top: 0;
	}
	header.js-header_fixed {
		background-color: #f0f0f0;
		border-bottom: 1px solid #202020;
	}
	header .logo {top:20px; left:34px;}
	header .logo {
		max-width:400px;
		top:18px; left:18px;
		font-size:1.43rem;
	}
	header .logo img {width:20%; max-width:70px; margin:0 10px 0 0; transition: .2s;}
	header .logo span strong {font-size:3.3rem; transition: .2s;}
	
	header.js-header_fixed .logo {font-size:1.2rem;}
	header.js-header_fixed .logo img {width:20%; max-width:50px;}
	header.js-header_fixed .logo span strong {font-size:2.78rem;}
	
	header .menu {
		/* メニューを横に */
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 82px;
		gap: 0;
		padding: 0;
	}
	header .menu .menu-list {
		padding: 0 10px;
	}

	header .menu .menu-list a {
		padding: 4px;
		font-size: 1.5rem;
	}
	header .menu-list a {
		transition: 0.2s ease;
	}
	header .menu-list a:hover {
		opacity: 0.8;
	}
	header .menu .menu-list a span {
		display: none;
	}
	header.js-header_fixed .menu-list a {
		color: #202020;
		transition: 0.2s;
	}
	header.js-header_fixed .menu-list a:hover {
		color: #a0c922;
	}
	header .btn {
		display: none;
	}
}

/*---------- header サブページ用 ----------*/
.subpage header .btn .btn-line.open {
	background-color: transparent;  	/* 真ん中の線を透明に */
}
.subpage header .btn .btn-line,
.subpage header .btn .btn-line::before,
.subpage header .btn .btn-line::after {
	background-color: #202020;
}
.subpage header .btn .btn-line.open::before,
.subpage header .btn .btn-line.open::after {
	background-color: #fff;
}
@media screen and (min-width: 1400px) {
	.subpage header .menu .menu-list a {
		color: #202020;
	}
	.subpage header .menu .menu-list a:hover {
		color: #a0c922;
	}
}

/*---------- footer ----------*/
footer {
	background-color: #fff;
}
footer .main {
	display: flex;
	justify-content: space-between;
	font-size: 1.3rem;
	padding: 100px 0 60px;
	gap: 0 4vw;
}
footer .main .info {
	display: flex;
	/* gap: 0 54px; */
	gap: 0 2.8vw;
}
footer .main .info h4 {
	font-size: 1.5rem;
	margin-bottom: 5px;
}
footer .main .info .office_main a {
	transition: 0.3s ease;
}
footer .main .info .office_main a:hover {
	opacity: 0.8;
}
footer .main .info .office_main img {
	width: 100%;
	max-width:60px;
	margin-bottom: 12px;
}

footer .main .info a.logo_name {
	margin:0 0 15px;
	display: block;
	display:flex; flex-flow:row wrap; justify-content:flex-start; align-content:flex-end; align-items:flex-end;
}
footer .main .info a.logo_name img {margin:0 10px 0 0;}
footer .main .info a.logo_name h4 {
	margin:0;
	font-size:1.2rem;
	line-height:1.4;
}
footer .main .info a.logo_name h4 b {
	display:block;
	font-family:"Oswald", sans-serif;
	font-size:2.75rem;
	font-weight:700;
}

footer .main .info .office_main span {
	display: block;
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 30px;
	white-space: nowrap;
}
footer .main .info .office_main .honsya {
	margin-bottom: 30px;
}
footer .main .info .office_main .honsya h4 {
	font-weight:700;
}
footer .main .info .office_main .honsya p {
	font-size: 1.4rem;
	white-space: nowrap;
}
footer .main .info .office_main .tel p {
	color: #929292;
}
footer .main .info .office_main .tel a {
	display: inline-block;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	color: #202020;
	font-size: 2.5rem;
	line-height: 1;
	white-space: nowrap;
	position: relative;
	padding-left: 23px;
	margin-top:15px;
}
footer .main .info .office_main .tel a::before {
  content: "";
  background: url(../images/share/icon_tel.svg) no-repeat;
  width: 18px;
  height: 21px;
  position: absolute;
  top: 64%;
  left: 0;
  transform: translateY(-50%);
}
footer .main .info .office_sub {
	padding-top: 8px;
}
footer .main .info .office_sub li {
	margin-bottom: 20px;
}
footer .main .info .office_sub li p {
	color: #929292;
	white-space: wrap;
}

footer .main .nav {
	padding-top: 8px;
}

footer .main .nav .inner ul {
	display: flex;
	color: #929292;
	margin-bottom: 16px;
	gap: 0 32px;
}
footer .main .nav .inner ul:last-of-type {
	margin-bottom: 40px;
}
footer .main .nav .inner ul li a span {
	transition: 0.2s;
}
footer .main .nav .inner ul li a:hover span {
	color: #a0c922;
}
footer .main .nav .inner ul li span {
	display: block;
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	color: #202020;
	font-size: 3.2rem;
	line-height: 1;
}
footer .main .nav .btn-link {
	background-color: #202020;
}
footer .copy {
	border-top: 1px solid #dfdfdf;
	padding: 20px 0 40px;
}
footer .copy small {
	display: block;
	color: #929292;
	letter-spacing: 0.01em;
	text-align: right;
}
/*アニメーション用*/
footer .btn-link.bgleft:before {
	background:#a0c922;/*背景色*/
}


footer dl.group {
	width:100%;
	margin:0 auto;
	padding:50px 0 60px;
	background:#454545;
}
footer dl.group dt {
	width:100%;
	margin:0 auto 10px;
	color:#fff;
	font-size:2rem;
	font-family: "Oswald", sans-serif;
	font-weight:500;
	text-align:center;
}
footer dl.group dt img {max-width:100px; margin:0 auto 15px;}
footer dl.group dt strong {
	display:block;
	font-size:3rem;
	font-weight:500;
	line-height:1;
	margin-bottom: 30px;
}
footer dl.group dd {
	width:90%;
	max-width:1000px;
	margin:0 auto;
	display:flex; flex-flow:row wrap; justify-content:center; align-content:center; align-items:center;
}
footer dl.group dd a {margin:10px; transition: .2s;}
footer dl.group dd a:hover {opacity: .5;}

@media screen and (max-width: 640px) {
	
	footer dl.group {padding:40px 0;}
	footer dl.group dt {margin:0 auto 5px; font-size:1.8rem;}
	footer dl.group dt img {max-width:60px; margin:0 auto 10px;}
	footer dl.group dt strong {font-size:2.4rem;}
	footer dl.group dd {width:80%; justify-content:space-between;}
	footer dl.group dd a {width:48%; margin:8px 0;}
	footer dl.group dd a img {max-width:100%;}
}

@media screen and (max-width: 1000px) {
	footer .main {
		flex-direction: column;
		font-size: 1.3rem;
		padding: 80px 0 60px;
	}
	footer .main .info {
		margin-bottom: 20px;
		gap: 0 40px;
	}
	footer .main .nav .inner {
		display: flex;
		gap: 0 32px;
	}
	footer .main .nav .inner ul:last-of-type {
		margin-bottom: 30px;
	}
	footer .main .nav .inner ul li span {
		margin-top: 2px;
	}
}
@media screen and (max-width: 800px) {
	footer .main {
		padding: 60px 0 20px;
	}
	footer .main .info {
		margin-bottom: 0;
	}
	footer .main .nav {
		display: none;
	}
}
@media screen and (max-width: 640px) {
	footer .main {
		padding: 46px 0 20px;
	}
	footer .main .info {
		flex-direction: column;
		gap: 24px 0;
	}
	footer .main .info h4 {
		font-size: 1.4rem;
		margin-bottom: 5px;
	}	
	footer .main .info .office_main a {
		display: block;
		text-align: center;
	}
	footer .main .info .office_main img {
		margin-bottom: 10px;
	}
	footer .main .info .office_main .honsya {
		margin-bottom: 20px;
	}	
	footer .main .info .office_main .honsya p {
		font-size: 1.4rem;
	}
	footer .main .info .office_main span {
		text-align: center;
	}
	footer .main .info .office_sub li {
		margin-bottom: 24px;
	}	
}



/*---------- サブページ共通 ----------*/
.subpage .pagetitle .inner {
	width: 90%;
	max-width: 1390px;
	margin: 0 auto;
	padding: max(10.4%, 180px) 0 26px;
}
.subpage .pagetitle h1 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 24px;
	padding-left: 6px;
}
.subpage .pagetitle h1 span {
	display: block;
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 13rem;
	letter-spacing: -0.02em;
	line-height: 1;
	margin-top: 8px;
	margin-left: -6px;
}
.subpage .pagetitle .nav {
	font-family: "Oswald", sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	display: flex;
	justify-content: flex-end;
	gap: 12px;
	padding-right: 20px;
}
.subpage .pagetitle .nav li:nth-child(1)::after {
	content: "/";
	padding-left: 12px;
}
.subpage .pagetitle .nav li.active {
	color: #ababab;
}
.subpage .pagetitle .nav li a {
	transition: 0.3s ease;
}
.subpage .pagetitle .nav li a:hover {
	opacity: 0.7;
}
.subpage .pagetitle .image {
	margin-bottom: 100px;
}
.subpage .pagetitle .image img {
	width: 100%;
	max-height: 621px;
	min-height: 420px;
	object-fit: cover;
}
@media screen and (max-width: 1000px) {
	.subpage .pagetitle .inner {
		padding: max(10.4%, 140px) 0 16px;
	}
	.subpage .pagetitle h1 {
		font-size: 1.6rem;
		margin-bottom: 20px;
	}
	.subpage .pagetitle h1 span {
		font-size: 10rem;
		margin-top: 4px;
	}
	.subpage .pagetitle .nav {
		font-size: 1.5rem;
	}
	.subpage .pagetitle .image {
		margin-bottom: 80px;
	}	
	.subpage .pagetitle .image img {
		min-height: 360px;
	}	
}
@media screen and (max-width: 640px) {
	.subpage .pagetitle .inner {
		padding: max(10.4%, 110px) 0 8px;
	}	
	.subpage .pagetitle h1 {
		font-size: 1.4rem;
		margin-bottom: 20px;
		padding-left: 4px;
	}
	.subpage .pagetitle h1 span {
		font-size: 7rem;
		margin-top: 4px;
		margin-left: -4px;
	}
	.subpage .pagetitle .nav {
		font-size: 1.3rem;
		padding-right: 8px;
	}
	.subpage .pagetitle .image {
		margin-bottom: 60px;
	}	
	.subpage .pagetitle .image img {
		min-height: 240px;
	}
}
/* .pagetitle imgなし */
.subpage .pagetitle.no-img {
	margin-bottom: 60px;
}
.subpage .pagetitle.no-img h1 {
	margin-bottom: 46px;
}
.subpage .pagetitle.no-img .nav {
	border-top: 1px solid #929292;
	border-bottom: 1px solid #929292;
	padding: 16px 20px 16px 0;
}
@media screen and (max-width: 1000px) {
	.subpage .pagetitle.no-img {
		margin-bottom: 40px;
	}	
	.subpage .pagetitle.no-img h1 {
		margin-bottom: 30px;
	}	
	.subpage .pagetitle.no-img .nav {
		padding: 12px 20px 12px 0;
	}	
}
@media screen and (max-width: 640px) {
	.subpage .pagetitle.no-img h1 {
		margin-bottom: 30px;
	}	
	.subpage .pagetitle.no-img .nav {
		padding: 10px 8px 10px 0;
	}	
}

.subpage .section_title {
	font-size: 3.6rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.4;
	position: relative;
	padding-top: 18px;
	margin-bottom: 34px;
}
.subpage .section_title::before {
	content: "";
	width: 88px;
	height: 3px;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(90deg, #00a9f7 0, #00a9f7 50%, #a0c922 0,#a0c922);
}

.subpage .setumei-title{
	display: block;
	font-size: 1.7rem;
	font-weight: 700;
	position: relative;
	padding-bottom: 7px;
}
.subpage .setumei-title::before {
	content: "";
	width: 80px;
	height: 3px;
	position: absolute;
	top: 30px;
	left: 0;
	background: linear-gradient(90deg, #00a9f7 0, #00a9f7 50%, #a0c922 0,#a0c922);
}


@media screen and (max-width: 1000px) {
	.subpage .section_title {
		font-size: 3rem;
		line-height: 1.3;
		padding-top: 18px;
		margin-bottom: 30px;
	}
	.subpage .section_title::before {
		width: 68px;
		height: 3px;
	}	
}
@media screen and (max-width: 640px) {
	.subpage .section_title {
		font-size: 2.4rem;
		line-height: 1.3;
		padding-top: 18px;
		margin-bottom: 30px;
	}
	.subpage .section_title::before {
		width: 64px;
		height: 3px;
	}	
	.subpage .setumei-title{
	display: block;
	font-size: 1.5rem;
	font-weight: 700;
	position: relative;
	padding-bottom: 7px;
}
	.subpage .setumei-title::before {
	content: "";
	width: 64px;
	height: 3px;
	position: absolute;
	top: 25px;
	left: 0;
	background: linear-gradient(90deg, #00a9f7 0, #00a9f7 50%, #a0c922 0,#a0c922);
}
}

#client h2 {
	display: inline-block;
	margin-bottom: 20px;
}
#client p {
	margin-top: 30px;
}  
#client ul {
	display: flex;
	flex-wrap: wrap;
	width: 90%;
	max-width: 1250px;
	margin: 0 auto;
	gap: 0 3.5%;
  }
#client ul li {
	width: calc((100% - 7%) / 3) ;
	border-bottom: 1px solid #929292;
	padding: 20px 0 8px;
	font-size: 1.5rem;
	letter-spacing: 0.06em;
}
#client p {
	width: 90%;
	margin: 0 auto;
	text-align: right;
	margin-top: 30px;
	font-size: 1.5rem;
}
@media screen and (max-width: 1000px) {
	#client ul li {
		width: calc((100% - 3.5%) / 2) ;
		padding: 16px 0 6px;
	}
}
@media screen and (max-width: 640px) {
	#client ul {
		width: 84%;
	}
	#client ul li {
		width: 100% ;
		border-bottom: none;
		padding: 6px 0;
		font-size: 1.3rem;
	}
	#client p {
		width: 84%;
		margin: 0 auto;
		text-align: right;
		margin-top: 20px;
		font-size: 1.3rem;
	}  
}

a.link {
	position: relative;
	text-decoration: underline;
	padding-right: 18px;
	transition: 0.3s;
}
a.link::after {
	content: "";
	background: url(../images/share/icon_link.svg) no-repeat;
	width: 14px;
	height: 12px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
a.link:hover {
	opacity: 0.7;
}