@charset "utf-8";
@media only screen and (min-width: 751px) {
	/*--------------------*/
	/*---- pc_cont.css ----*/
	/*--------------------*/

	/*------------------------------------
		基本設定
	-------------------------------------*/
	html {
		font-size: 62.5%;
		overflow: auto;
	}

	body {
		font-size: 1.7em;
		min-width: 1280px;
		/* text-align: justify; */
	}

	img {
		height: auto;
		vertical-align: bottom;
	}

	.pcNone {
		display: none;
	}

	/*ーーーーー
	※レイアウト調整用
	* {
		outline: 1px solid #555;
	}
	ーーーーー*/

	/*------------------------------------
		section共通
	-------------------------------------*/
	section {
		line-height: 3rem;
		font-weight: var(--font-w-regular);
		text-align: center;
	}
	.sectionCommon {
		width: 1200px;
		margin: 0 auto;
		text-align: left;
	}

	/*------------------------------------
		大項目(これは見本)
	-------------------------------------*/
	/* --------- 中項目(これは見本) ----------- */
	/* 小項目(これは見本) */


	/*------------------------------------
		共通部品
	-------------------------------------*/
	.buCommon {
		display: flex;
		align-items: center;
		width: fit-content;
		padding: 11px 25px 12px 30px;
		font-size: 1.6rem;
		color: #006636;
		font-weight: var(--font-w-medium);
		line-height: 2.5rem;
		background-color: #fff;
		border: 1px solid #006636;
		border-radius: 100px;
		box-shadow: 2px 2px 0px 0px rgba(0, 102, 54, 1);
		transition: 0.2s;
	}
	.buCommon::after {
		content: "";
		display: inline-block;
		min-width: 8px;
		min-height: 16px;
		margin: 0 0 0 15px;
		background-image: url(../img/common/basic-img/arrow_common_bu.svg);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 8px 16px;
	}
	.buCommon:hover {
		color: #fff;
		background-color: #006636;
		border: 1px solid #006636;
		box-shadow: none;
		transform: translate(2px, 2px);
	}
	.buCommon:hover::after {
		background-image: url(../img/common/basic-img/arrow_common_bu_h.svg);
	}
	.buCommon.s {
		display: flex;
		align-items: center;
		width: fit-content;
		padding: 6px 20px 8px 25px;
		font-size: 1.6rem;
		color: #006636;
		font-weight: var(--font-w-medium);
		line-height: 2.5rem;
		background-color: #fff;
		border: 1px solid #006636;
		border-radius: 100px;
		box-shadow: 2px 2px 0px 0px rgba(0, 102, 54, 1);
		transition: 0.2s;
	}
	.buCommon.s:hover {
		color: #fff;
		background-color: #006636;
		border: 1px solid #006636;
		box-shadow: none;
		transform: translate(2px, 2px);
	}
	.buCommon.ss {
		display: flex;
		align-items: center;
		width: fit-content;
		padding: 4px 20px 6px 25px;
		font-size: 1.5rem;
		color: #006636;
		font-weight: var(--font-w-medium);
		line-height: 2.5rem;
		background-color: #fff;
		border: 1px solid #006636;
		border-radius: 100px;
		box-shadow: 1px 1px 0px 0px rgba(0, 102, 54, 1);
		transition: 0.2s;
	}
	.buCommon.ss::after {
		background-position: 0px 1px;
	}
	.buCommon.ss:hover {
		color: #fff;
		background-color: #006636;
		border: 1px solid #006636;
		box-shadow: none;
		transform: translate(1px, 1px);
	}

	.buCommonContact {
		display: flex;
		align-items: center;
		width: fit-content;
		padding: 16px 30px 17px 25px;
		font-size: 1.6rem;
		color: #006636;
		font-weight: var(--font-w-medium);
		line-height: 2.5rem;
		background-color: #fff;
		border: 1px solid #006636;
		border-radius: 8px;
		box-shadow: 2px 2px 0px 0px rgba(0, 102, 54, 1);
		transition: 0.2s;
	}
	.buCommonContact::before {
		content: "";
		display: inline-block;
		min-width: 35px;
		min-height: 30px;
		margin: 0 15px 0 0;
		background-image: url(../img/common/basic-img/icon_bu_contact.svg);
		background-repeat: no-repeat;
		background-position: center;
		background-size: 35px 30px;
	}
	.buCommonContact:hover {
		color: #fff;
		background-color: #006636;
		border: 1px solid #006636;
		box-shadow: none;
		transform: translate(2px, 2px);
	}
	.buCommonContact:hover::before {
		background-image: url(../img/common/basic-img/icon_bu_contact_h.svg);
	}

	.menuBreadCrumbs {
		display: flex;
		flex-wrap: wrap;
		gap: 7px 13px;
		margin: 25px 0 0 0;
	}
	.menuBreadCrumbs li.home {
		width: 16px;
		height: 16px;
	}
	.menuBreadCrumbs li.home a {
		display: block;
		width: 16px;
		height: 20px;
		background-image: url(../img/common/basic-img/icon_home.svg);
		background-repeat: no-repeat;
		background-position: 0px 1px;
		background-size: 16px 16px;
	}
	.menuBreadCrumbs li {
		position: relative;
		padding: 0 0 0 27px;
		font-size: 1.3rem;
		line-height: 2.0rem;
	}
	.menuBreadCrumbs li.home {
		padding: 0 0 0 0;
	}
	.menuBreadCrumbs li::before {
		content: ">";
		position: absolute;
		top: 0;
		left: 5px;
		display: inline-block;
	}
	.menuBreadCrumbs li:first-child:before {
		content: none;
	}
	.menuBreadCrumbs li a {
		text-decoration: underline;
	}
	.menuBreadCrumbs li a:hover {
		text-decoration: none;
	}
	.wrapBox2Column {
		display: flex;
		gap: 60px;
		margin: 70px 0 0 0;
	}
	.wrapBox2Column .box2ColumnLeft {
		width: 900px;
	}
	.wrapBox2Column .box2ColumnRight {
		width: 240px;
	}

	.box2ColumnRight .boxCatTitle {
		padding: 17px 20px 17px 20px;
		font-size: 1.7rem;
		font-weight: var(--font-w-bold);
		line-height: 2.5rem;
		color: #fff;
		text-align: center;
		border-radius: 10px 10px 0 0;
		background-image: linear-gradient(-45deg, #006636 25%, #006636 50%, #0A8049 50%, #0A8049 75%);
	}
	.box2ColumnRight .boxCatMenu {
		padding: 25px 20px 20px 20px;
		border: 1px solid #B4CFAB;
		border-width: 0px 1px 1px 1px;
		border-radius: 0 0 10px 10px;
		background: #F7FFF5;
	}
	.box2ColumnRight .boxCatMenu li a:hover {
		text-decoration: underline;
	}
	.box2ColumnRight .boxCatMenu > li {
		min-height: 19px;
		margin: 0 0 17px 0;
		padding: 0 0 0 25px;
		font-size: 1.6rem;
		font-weight: var(--font-w-bold);
		line-height: 2.2rem;
		background: url(../img/common/basic-img/arrow_green.svg) no-repeat left top 3px;
		background-size: 19px 19px;
	}
	.box2ColumnRight .boxCatMenu > li > ul {
		margin: 15px 0 0 0;
	}
	.box2ColumnRight .boxCatMenu > li > ul > li {
		min-height: 19px;
		margin: 0 0 15px -25px;
		padding: 0 0 0 25px;
		font-size: 1.6rem;
		font-weight: var(--font-w-regular);
		line-height: 2.2rem;
		background: url(../img/common/basic-img/arrow_green_2.svg) no-repeat left top 3px;
		background-size: 19px 19px;
	}

	.box2ColumnLeft .ulPager {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 100px;
	}
	.box2ColumnLeft .ulPager li {
		padding: 0px 0px 0px 0px;
		background-image: none;
		font-size: 1.6rem;
	}
	.box2ColumnLeft .ulPager li a:hover {
		opacity: 1;
	}
	.box2ColumnLeft .ulPager li.top a::before {
		content: "<<";
	}
	.box2ColumnLeft .ulPager li.prev a::before {
		content: "<";
	}
	.box2ColumnLeft .ulPager li.next a::before {
		content: ">";
	}
	.box2ColumnLeft .ulPager li.end a::before {
		content: ">>";
	}
	.box2ColumnLeft .ulPager li.prev {
		margin-right: 33px;
	}
	.box2ColumnLeft .ulPager li.next {
		margin-left: 33px;
	}
	.box2ColumnLeft .ulPager li a,
	.box2ColumnLeft .ulPager li div {
		display: block;
		width: 46px;
		height: 46px;
		margin: 0px 8px;
		line-height: 44px;
		text-align: center;
		border-radius: 6px;
		border: 1px solid #006636;
		text-decoration: none;
		transition: 0.2s;
	}
	.box2ColumnLeft .ulPager li a {
		background-color: #ffffff;
	}
	.box2ColumnLeft .ulPager li a:hover {
		background-color: #006636;
		color: #ffffff;
	}
	.box2ColumnLeft .ulPager li div {
		background-color: #006636;
		color: #ffffff;
	}
	.box2ColumnLeft .ulPager li span,
	.box2ColumnLeft .ulPager li.spNum {
		display: none;
	}







	/*------------------------------------
		header
	-------------------------------------*/
	header {
		position: absolute;
		width: 100%;
		z-index: 9999;
	}
	.headerWrap.fixed {
		position: fixed;
		width: 100%;
		min-width: 1280px;
		animation: down-in 0.3s;
		animation-fill-mode: forwards;
		z-index: 9999;
	}
	@keyframes down-in {
		0% {
			opacity: 0;
			transform: translateY(-110px);
		}
		100% {
			opacity: 1;
			transform: translateY(0px);
		}
	}
	.headerWrap.def {
		position: relative;
		width: 100%;
		animation: up-out 0.8s;
		animation-fill-mode: forwards;
	}
	@keyframes up-out {
		0% {
			position: relative;
			opacity: 0;
		}
		/*
		50% {
			opacity: 0;
		}
		*/
		100% {
			opacity: 1;
			position: relative;
		}
	}

	/* --------- ヘッダー（通常） ----------- */
	header .headerWrap {
		/*height: 145px;*/
		background-image: url(../img/common/header/header_bg_pc.svg);
		background-repeat: no-repeat;
		background-position: top right;
		background-size: 3000px 120px;
	}
	header .mainLogoBox {
		position: relative;
		display: flex;
		justify-content: right;
		min-width: 1200px;
	}
	header .logo a {
		position: absolute;
		top: 20px;
		left: 30px;
		display: inline-block;
		width: 326px;
		height: 61px;
		background-image: url(../img/common/header/logo.svg);
		background-repeat: no-repeat;
		background-position: top right;
		background-size: 326px 61px;
	}
	header .logo a span {
		display: none;
	}
	header .menuBox {
		display: flex;
		flex-direction:column-reverse;
		width: fit-content;
	}
	header .commonBtnBox {
		display: flex;
		justify-content: flex-end;
	}
	header .commonBtnBox .bu {
		display: flex;
		width: 190px;
		height: 44px;
		margin: 0 0 0 2px;
		justify-content: center;
		align-items: center;
		font-size: 1.4rem;
		font-weight: var(--font-w-medium);
		color: #ffffff;
		transition: 0.2s;
	}
	header .buHome {
		width: fit-content !important;
		padding: 0 20px 0 0;
		background: #006636;
	}
	header .buHome .icon {
		width: 16px;
		height: 19px;
		margin: 0 10px 0 0;
		background-image: url(../img/common/header/icon_home_pc.svg);
		background-repeat: no-repeat;
	}
	header .buMembership {
		background: #00A859;
	}
	header .buMembership:hover {
		background: #2BC77E;
	}
	header .buMembership .icon {
		width: 20px;
		height: 20px;
		margin: -1px 10px 0 0;
		background-image: url(../img/common/header/icon_membership.svg);
		background-repeat: no-repeat;
	}
	header .buMember {
		background: #FF9811;
	}
	header .buMember:hover {
		background: #FFB452;
	}
	header .buMember .icon {
		width: 21px;
		height: 16px;
		margin: 1px 10px 0 0;
		background-image: url(../img/common/header/icon_member.svg);
		background-repeat: no-repeat;
	}
	header .buContact {
		background: #FF5A35;
	}
	header .buContact:hover {
		background: #FF8D73;
	}
	header .buContact .icon {
		width: 20px;
		height: 16px;
		margin: 2px 10px 0 0;
		background-image: url(../img/common/header/icon_contact.svg);
		background-repeat: no-repeat;
	}

	header .commonBtnBoxSp {
		display: none;
	}
	header .navMenuWrap {
		height: 78px;
		margin-top: 23px;
		background: #ffffff;
		border: 2px solid #006636;
		border-width: 0 0 2px 2px;
		border-radius: 8px 0 0 8px;
		box-shadow: 2px 2px #006636;
	}
	header .navMenuInner {
		display: flex;
	}

	/*----- 検索ウィンドウ大枠 -----*/
	.gsc-control-cse {
		display: block !important;
		background-color: unset !important;
		border: none !important;
		padding: 0 !important;
	}
	form.gsc-search-box {
		width: 190px !important;
		margin: 0 0 0 2px !important;
	}
	.gsc-results-wrapper-overlay {
		height: 80vh !important;
		right: 12% !important;
	}
	table.gsc-search-box {
		margin-bottom: 0 !important;
	}


	.headerSearch {
		position: relative;
		display: flex;
		flex-wrap: wrap;
	}
	.headerSearchWrap td {
		vertical-align: top !important;
	}

	.headerWrap.fixed .gsc-search-button-v2 {
		height: 40px !important;
	}


	/*----- 検索ボタン -----*/
	.gsc-search-button-v2 {
		display: block !important;
		width: 44px !important;
		height: 44px !important;
		padding: 0px !important;
		border: none !important;
		position: absolute !important;
		top: 0px !important;
		right: 0px !important;
		background: #5195D8 url(../img/common/icon_search.svg) no-repeat center 8px !important;
		background-size: 20px 20px !important;
		background-position: center center !important;
		font-size: .15rem !important;
		color: #fff !important;
		border-radius: 0px !important;
		cursor: pointer !important;
		outline: none !important;
	}
	.gsc-search-button-v2 svg {
		display: none !important;
	}
	.gsc-search-button-v2::after {
		content: "";
	}

	/*----- 検索ボックス -----*/
	.gsc-input-box {
		width: 146px !important;
		height: 44px !important;
		padding-top: 0px !important;
		border: solid 1px #ffffff !important;
		border-radius: 0px !important;
	}
	.gsib_a {
		width: 146px !important;
		height: 44px !important;
		padding: 0px 10px 0px 10px !important;
		border-radius: 6px !important;
	}
	#___gcse_0 > div > div > form > table > tbody > tr > td.gsc-input {
		padding: 0 !important;
	}
	#gsc-i-id1.gsc-input {
		height: 44px !important;
		border-radius: 6px !important;
		padding: 1px 0px 3px !important;
		font-size: 1.4rem !important;
		background-color: unset !important;
		background-image: none !important;
	}
	/* プレイスホルダーの文字設定 */
	#gsc-i-id1.gsc-input::placeholder {
		font-size: 1.4rem !important;
		color: #bababa;
		opacity: 1;
	}
	/* フォーカスした時に文字色を透明にする */
	#gsc-i-id1.gsc-input:focus::placeholder {
		color: transparent !important;
	}
	.gsc-clear-button {
		display: none !important;
	}
	/*----- 項目クリアボタン -----*/
	.gsib_b {
		display: none;
	}

	/* --------- グローバルナビ ----------- */
	header .navMenuInner {
		padding: 0 4px 0 4px;
	}
	header .buGmenu {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 46px;
		margin: 15px 13px 15px 13px;
		padding: 0 27px 0 27px;
		font-size: 1.6rem;
		font-weight: var(--font-w-bold);
		border-radius: 6px;
		background: #ffffff;
		transition: 0.2s;
	}
	header .buConsultant .icon {
		width: 23px;
		height: 23px;
		margin: 0 12px 0 0;
		background-image: url(../img/common/header/icon_consultant.svg);
		background-repeat: no-repeat;
	}
	header .buAbout .icon {
		width: 25px;
		height: 26px;
		margin: -1px 12px 0 0;
		background-image: url(../img/common/header/icon_about.svg);
		background-repeat: no-repeat;
	}
	header .buSupport .icon {
		width: 29px;
		height: 27px;
		margin: 0 12px 0 0;
		background-image: url(../img/common/header/icon_support.svg);
		background-repeat: no-repeat;
	}
	header .buColumn .icon {
		width: 25px;
		height: 25px;
		margin: -1px 12px 0 0;
		background-image: url(../img/common/header/icon_column.svg);
		background-repeat: no-repeat;
	}
	header .buNews .icon {
		width: 25px;
		height: 25px;
		margin: 0 12px 0 0;
		background-image: url(../img/common/header/icon_news.svg);
		background-repeat: no-repeat;
	}

	.layer1Item {
		position: relative;
		/*cursor: pointer;*/
	}
	.layer1Item::after {
		content: "";
		position: absolute;
		display: inline-block;
		top: 18px;
		right: 0px;
		border-right: solid 1px #D9D9D9;
		height: 40px;
	}
	.layer1Item:last-child::after {
		content: "";
		border-style: none;
	}

	/* --------- 第２階層 ----------- */
	header .layer1Item .layer2Box {
		position: absolute;
		top: 76px;
		/*width: calc(1000px / 3);*/
		width: fit-content;
		background-color: #ffffff;
		border: 1px solid #006636;
		border-width: 4px 1px 1px 1px;
		border-radius: 0 0 8px 8px;
		box-shadow: 2px 2px #006636;
		opacity: 0;
		pointer-events: none;
		transition: all 0.3s ease;
		/*transform: translate(0, -100px);*/
	}

	header .layer1Item .layer2Box::before {
		content: "";
		position: absolute;
		top: -14px;
		left: 50%;
		transform: translateX(-50%);
		border-bottom: 10px solid #006636;
		border-right: 10px solid transparent;
		border-left: 10px solid transparent;
		z-index: 1;
		transition: all 0.3s linear;
		visibility: hidden;
		opacity: 0;
	}
	header .layer1Item:hover > .layer2Box::before {
		visibility: visible;
		opacity: 1;
	}

	header .layer1Item .layer2Box.consultant {
		width: 310px;
	}
	header .layer1Item .layer2Box.consultant::before {
		left: 130px;
	}
	header .layer1Item .layer2Box.about {
		width: 220px;
	}
	header .layer1Item .layer2Box.about::before {
		left: 107px;
	}
	header .layer1Item .layer2Box.support {
		width: 320px;
	}
	header .layer1Item .layer2Box.support::before {
		left: 95px;
	}
	header .layer1Item .layer2Box.column {
		width: 230px;
	}
	header .layer1Item .layer2Box.column::before {
		left: 82px;
	}
	header .layer1Item .layer2Box.news {
		width: 228px;
		margin-left: -49px;
	}
	header .layer1Item .layer2Box.news::before {
		left: 137px;
	}


	header .layer1Item:hover .layer2Box {
		opacity: 1;
		pointer-events: all;
		/*transform: translate(0, 0px);*/
	}
	header .layer1Item:hover .buGmenu {
		background: #C7F7E0;
	}
	header .layer2Box {
		display: grid;
		justify-content: left;
		gap: 25px;
		padding: 30px 0 35px 0;
		z-index: 1;
	}
	header .layer2Box li {
		margin: 0 25px 0 25px;
	}

	header .layer1Item .layer2Box .layer2Item > a {
		position: relative;
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
		padding: 0px 0px 0px 24px;
		font-size: 1.6rem;
		font-weight: var(--font-w-regular);
		line-height: 1.4;
		color: #222222;
		transition: all 0.3s ease;
	}
	header .layer1Item .layer2Box .layer2Item > a::before {
		content: "";
		position: absolute;
		top: 4px;
		left: 0px;
		width: 17px;
		height: 17px;
		background-image: url(../img/common/basic-img/arrow_green.svg);
		background-size: 17px 17px;
	}
	header .layer1Item .layer2Box .layer2Item > a:hover {
		color: #006636;
		text-decoration: underline;
	}


	/* --------- ヘッダー（Fixed） ----------- */
	.headerWrap.fixed {
		height: 110px;
		background: #fff;
		box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.2);
	}
	.headerWrap.fixed .commonBtnBox .bu {
		display: flex;
		width: 190px;
		height: 40px;
		margin: 0 0 0 2px;
		justify-content: center;
		align-items: center;
		font-size: 1.4rem;
		font-weight: var(--font-w-medium);
		color: #ffffff;
		transition: 0.2s;
	}
	.headerWrap.fixed .navMenuWrap {
		height: 44px;
		margin-top: 0px;
		background: #ffffff;
		border-style: none;
		box-shadow: none;
	}
	.headerWrap.fixed .logo a {
		position: absolute;
		top: 25px;
		left: 30px;
		display: inline-block;
		width: 326px;
		height: 61px;
		background-image: url(../img/common/header/logo_fixed.svg);
		background-repeat: no-repeat;
		background-position: top right;
		background-size: 326px 61px;
	}
	.headerWrap.fixed .buGmenu {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 44px;
		margin: 14px 10px 14px 10px;
		padding: 0 20px 0 20px;
		font-size: 1.5rem;
		font-weight: var(--font-w-bold);
		border-radius: 6px;
		background: #ffffff;
		transition: 0.2s;
	}


	.headerWrap.fixed .gsc-search-button-v2 {
		height: 40px !important;
	}
	.headerWrap.fixed .gsc-input-box {
		height: 40px !important;
	}
	.headerWrap.fixed .gsib_a {
		height: 40px !important;
	}
	.headerWrap.fixed #gsc-i-id1.gsc-input {
		height: 40px !important;
	}
	.headerWrap.fixed form.gsc-search-box {
		height: 40px !important;
		margin: 0 0 0 2px !important;
		border: 1px solid #AFAFAF;
		border-width: 0px 0px 1px 1px;
	}
	.headerWrap.fixed .gsc-input-box {
		height: 38px !important;
	}
	.headerWrap.fixed .layer1Item::after {
		content: "";
		position: absolute;
		display: inline-block;
		top: 22px;
		right: 0px;
		border-right: solid 1px #D9D9D9;
		height: 30px;
	}
	.headerWrap.fixed .layer1Item:last-child::after {
		content: "";
		border-style: none;
	}
	.headerWrap.fixed .buHome {
		width: fit-content !important;
		padding: 0 20px 0 0;
		color: #222222 !important;
		background: #fff;
	}
	.headerWrap.fixed .buHome .icon {
		width: 15px;
		height: 16px;
		margin: 0 7px 0 0;
		background-image: url(../img/common/header/icon_home_pc_fixed.svg);
		background-repeat: no-repeat;
	}

	/* --------- 第２階層 ----------- */
	.headerWrap.fixed .layer1Item:hover .layer2Box {
		opacity: 1;
		pointer-events: all;
	}
	.headerWrap.fixed .layer1Item .layer2Box {
		position: absolute;
		top: 70px;
		/*width: calc(1000px / 3);*/
		width: fit-content;
		background-color: #ffffff;
		border: 1px solid #006636;
		border-width: 1px 1px 1px 1px;
		border-radius: 0 0 8px 8px;
		box-shadow: 2px 2px #006636;
		opacity: 0;
		pointer-events: none;
		transition: all 0.3s ease;
		/*transform: translate(0, -100px);*/

	}
	.headerWrap.fixed .layer1Item .layer2Box::before {
		top: -10px;
	}
	.headerWrap.fixed .layer1Item:hover > .layer2Box::before {
		visibility: visible;
		opacity: 1;
	}
	.headerWrap.fixed .layer1Item .layer2Box.consultant {
		width: 310px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.consultant::before {
		left: 116px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.about {
		width: 220px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.about::before {
		left: 93px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.support {
		width: 320px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.support::before {
		left: 82px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.column {
		width: 230px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.column::before {
		left: 70px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.news {
		width: 228px;
		margin-left: -72px;
	}
	.headerWrap.fixed .layer1Item .layer2Box.news::before {
		left: 147px;
	}


	/*------------------------------------
		main image
	-------------------------------------*/
	main {
		padding-top: 100px;
		padding-bottom: 150px;
		letter-spacing: 0.1rem;
		overflow: hidden;
	}
	#top .variableBox {
		position: relative;
		width: 100%;
		min-width: 1280px;
		margin-bottom: 55px;
	}
	.mian {
		opacity: 0;
		transition: opacity 0.8s linear;
	}
	.mian.slick-initialized {
		display: block;
		opacity: 1;
	}
	.mainChatch.link {
		cursor: pointer;
	}


	/*------------------------------------
		ヘッダーイメージ
	-------------------------------------*/
	.headerImage {
		position: relative;
		text-align: center;
	}
	.headerImage picture img {
		width: 100%;
		height: auto;
	}
	.wrapPageTitle {
		width: 1280px;
		height: 50px;
		bottom: 0px;
		margin: -50px auto 0 auto;
		text-align: left;
	}
	.wrapPageTitle div {
		position: relative;
		display: inline-block;
		width: fit-content;
		height: 50px;
		padding: 20px 10px 0px 38px;
		border-radius: 5px 0 0 0;
		background: #fff;
	}
	.wrapPageTitle div::after {
		content: "";
		position: absolute;
		top: 0px;
		right: -110px;
		width: 110px;
		height: 65px;
		background-image: url(../img/common/basic-img/bg_page_title.svg);
		background-size: 110px 65px;
		background-position: center top;
		background-repeat: no-repeat;
	}
	.wrapPageTitle div h1 {
		position: relative;
		padding: 0 0 0 30px;
		font-size: 2.6rem;
		font-weight: var(--font-w-black);
		color: #006636;
	}
	.wrapPageTitle div h1::before {
		content: "";
		position: absolute;
		top: 6px;
		left: 0px;
		width: 17px;
		height: 17px;
		background-image: url(../img/common/basic-img/icon_page_title.svg);
		background-size: 17px 17px;
		background-position: center top;
		background-repeat: no-repeat;
	}






	/*------------------------------------
		トップページ
	-------------------------------------*/
	#top main {
		background: #F9F9F9;
	}
	#top section {
		margin: 0 0 70px 0;
	}
	#top section:last-child {
		margin: 0;
	}
	#top .txHead {
		position: relative;
		margin: 0 0 38px 0;
		padding: 98px 0 0 0;
		font-size: 3.0rem;
		font-weight: var(--font-w-bold);
		text-align: center;
	}
	#top .txHead::before {
		content: "";
		position: absolute;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 86px;
		background-size: 86px 86px;
		background-position: center top;
		background-repeat: no-repeat;
	}
	#top .txHead.news::before {
		background-image: url(../img/top/icon_news.svg);
	}
	#top .txHead.whatis::before {
		background-image: url(../img/top/icon_whatis.svg);
	}
	#top .txHead.contact::before {
		background-image: url(../img/top/icon_contact.svg);
	}

	#top .wrapBoxNews {
		display: flex;
		flex-flow: column;
		gap: 25px;
	}
	#top .boxNews {
		display: flex;
		justify-content: space-between;
		background: #fff;
		border-radius: 12px;
		border: 1px solid #E4E4E4;
	}
	#top .boxNewsInner {
		display: flex;
		gap: 35px;
		padding: 30px 30px 30px 30px;
	}
	#top .contNews {
		width: 780px;
	}
	#top .wrapCatDate {
		display: flex;
		gap: 15px;
	}
	#top .wrapCatDate .cat {
		display: flex;
		height: 28px;
		margin: 0 0 10px 0;
	}

	#top .wrapCatDate .cat .cat_left {
		width: 72px;
		height: 28px;
		font-size: 1.3rem;
		line-height: 2.5rem;
		color: #fff;
		text-align: center;
		border-radius: 5px 0 0 5px;
	}
	#top .wrapCatDate .cat .cat_right {
		width: fit-content;
		height: 28px;
		padding: 0 10px 0 10px;
		font-size: 1.3rem;
		line-height: 2.5rem;
		text-align: center;
		border-radius: 0 5px 5px 0;
	}

	.boxNews .wrapCatDate .cat .cat_a {
		background: #265CAA;
		border: 1px solid #265CAA;
	}
	.boxNews .wrapCatDate .cat .cat_a_1 {
		color: #0374BA;
		border: 1px solid #37A1E4;
		border-width: 1px 1px 1px 0px;
	}
	.boxNews .wrapCatDate .cat .cat_b {
		background: #F27500;
		border: 1px solid #F27500;
	}
	.boxNews .wrapCatDate .cat .cat_b_1 {
		color: #E06C00;
		border: 1px solid #FFB169;
		border-width: 1px 1px 1px 0px;
	}
	#top .boxNews .wrapCatDate .date {
		font-size: 1.6rem;
		font-weight: var(--font-w-bold);
		line-height: 2.7rem;
	}

	#top .wrapPic {
		width: 230px;
		height: 137px;
		border-radius: 10px;
		overflow: hidden;
	}
	#top .boxNewsInner .pic {
		width: 230px;
		height: 137px;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		transition: 0.2s;
	}
	#top .boxNews:hover .boxNewsInner .pic {
		scale: 1.1;
	}
	#top .boxNewsInner .title {
		margin: 0 0 14px 0;
		font-size: 1.8rem;
		line-height: 2.8rem;
		font-weight: var(--font-w-bold);
	}
	#top .boxNewsInner .article {
		font-size: 1.5rem;
		line-height: 2.6rem;
	}

	#top .iconBox {
		width: 80px;
		border-radius: 0 12px 12px 0;
		background-color: #E4F9EF;
		background-image: url(../img/top/arrow_right.svg);
		background-size: 35px 35px;
		background-position: center center;
		background-repeat: no-repeat;
		transition: 0.2s;
	}
	#top .boxNews:hover .iconBox {
		background-color: #72BD9A;
	}
	#top .boxNewsBottom {
		display: flex;
		gap: 25px;
		width: fit-content;
		margin: 30px auto 0 auto;
	}

	#top .boxWhatis {
		padding: 45px 45px 55px 45px;
		text-align: center;
		background: #fff;
		border-radius: 12px;
		border: 1px solid #E4E4E4;
	}
	#top .boxWhatis .buCommon.s {
		margin: 30px auto 0 auto;
	}

	#top .boxContact {
		padding: 45px 45px 45px 45px;
		text-align: center;
		background: #fff;
		border-radius: 12px;
		border: 1px solid #E4E4E4;
	}
	#top .boxList {
		margin: 30px 0 0 0;
		padding: 40px 40px 45px 40px;
		background: #E8FCF3;
		border-radius: 12px;
	}
	#top .boxList .list {
		display: flex;
		flex-wrap: wrap;
		gap: 30px 25px;
	}
	#top .boxList .list li {
		position: relative;
		width: 326px;
		padding: 0 0 0 49px;
		font-size: 2.0rem;
		font-weight: var(--font-w-bold);
		text-align: left;
	}
	#top .boxList .list li::before {
		content: "";
		position: absolute;
		top: -3px;
		left: 0px;
		width: 38px;
		height: 38px;
		background-image: url(../img/top/icon_check.svg);
		background-size: 38px 38px;
		background-position: center top;
		background-repeat: no-repeat;
	}
	#top .boxList .list li.tx {
		padding: 0;
		font-size: 1.8rem;
		font-weight: var(--font-w-regular);
	}
	#top .boxList .list li.tx::before {
		background: none;
	}
	#top .boxList .buCommonContact {
		margin: 40px auto 0 auto;
	}





	/*------------------------------------
		コラム & お知らせ
	-------------------------------------*/
	.wrapBox2Column .archiveTitle {
		position: relative;
		margin: 0 0 53px 0;
		padding: 0 0 0 24px;
		font-size: 3.2rem;
		font-weight: var(--font-w-bold);
		line-height: 4.0rem;
	}
	.wrapBox2Column .archiveTitle::before {
		content: "";
		position: absolute;
		top: -2px;
		left: 0px;
		width: 9px;
		height: 47px;
		border-radius: 2px;
		background-color: #006636;
	}

	.template .wrapArticleTitle {
		display: block;
		/*flex-wrap: wrap;*/
		margin: 0 0 70px 0;
	}
	.template .wrapArticleTitle .title {
		margin: 0 0 16px 0;
		font-size: 3.6rem;
		font-weight: var(--font-w-bold);
		line-height: 4.9rem;
	}
	.template .wrapArticleTitle .boxCatDate {
		display: flex;
		gap: 20px;
	}
	.template .wrapArticleTitle .cat {
		width: fit-content;
		height: 28px;
		padding: 0 10px 0 10px;
		font-size: 1.3rem;
		line-height: 2.5rem;
		text-align: center;
		border-radius: 5px;
	}
	.template .wrapArticleTitle .cat.cat_a {
		color: #0374BA;
		border: 1px solid #37A1E4;
	}
	.template .wrapArticleTitle .cat.cat_b {
		color: #E06C00;
		border: 1px solid #FFB169;
	}
	.template .wrapArticleTitle .date {
		position: relative;
		padding: 0 0 0 26px;
		font-size: 1.6rem;
		font-weight: var(--font-w-bold);
		line-height: 2.6rem;
	}
	.template .wrapArticleTitle .date::before {
		content: "";
		position: absolute;
		top: 5px;
		left: 0px;
		width: 17px;
		height: 17px;
		background-image: url(../img/common/basic-img/icon_date.svg);
		background-size: 17px 17px;
		background-position: center top;
		background-repeat: no-repeat;
	}


	.box2ColumnLeft .wrapBoxNews {
		display: flex;
		flex-flow: column;
		gap: 40px;
	}
	.box2ColumnLeft .wrapBoxNews li::after {
		content: "";
		display: block;
		margin: 40px 0 0 0;
		border-bottom: 1px solid #DCDCDC;
	}
	.box2ColumnLeft .wrapBoxNews li:last-child:after {
		content: none;
	}
	.box2ColumnLeft .boxNews {
		display: flex;
		justify-content: space-between;
	}
	.box2ColumnLeft .boxNewsInner {
		display: flex;
		gap: 35px;
	}
	.box2ColumnLeft .contNews {
		width: 635px;
	}
	.box2ColumnLeft .wrapCatDate {
		display: flex;
		gap: 15px;
	}
	.box2ColumnLeft .wrapCatDate .cat {
		display: flex;
		height: 28px;
		margin: 0 0 10px 0;
	}
	.box2ColumnLeft .wrapCatDate .cat .cat_left {
		width: 72px;
		height: 28px;
		font-size: 1.3rem;
		line-height: 2.5rem;
		color: #fff;
		text-align: center;
		border-radius: 5px 0 0 5px;
	}
	.box2ColumnLeft .wrapCatDate .cat .cat_right {
		width: fit-content;
		height: 28px;
		padding: 0 10px 0 10px;
		font-size: 1.3rem;
		line-height: 2.5rem;
		text-align: center;
		border-radius: 0 5px 5px 0;
	}
	.box2ColumnLeft .boxNews .wrapCatDate .date {
		font-size: 1.6rem;
		font-weight: var(--font-w-bold);
		line-height: 2.7rem;
	}
	.box2ColumnLeft .wrapPic {
		width: 230px;
		height: 137px;
		border-radius: 10px;
		overflow: hidden;
	}
	.box2ColumnLeft .boxNewsInner .pic {
		width: 230px;
		height: 137px;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		transition: 0.2s;
	}
	.box2ColumnLeft .boxNewsInner .title {
		margin: 0 0 14px 0;
		font-size: 1.8rem;
		line-height: 2.8rem;
		font-weight: var(--font-w-bold);
	}
	.box2ColumnLeft .boxNewsInner .article {
		font-size: 1.5rem;
		line-height: 2.6rem;
	}
	.box2ColumnLeft .boxNewsInner .buCommon.ss {
		margin: 15px 0 0 0;
	}



	/*------------------------------------
		お問い合わせ
	-------------------------------------*/
	.wrapContact {
		margin: 70px 0 0 0;
	}

	.contactTopText {
		font-size: 1.7rem;
		line-height: 1.6;
		text-align: center;
	}

	.contactFormWrap {
		width: 100vw;
		margin: 40px 0 -150px -50vw;
		padding: 50px 0 150px;
		position: relative;
		left: 50%;
		background: #F9F9F9;
	}

	.contactFormSection {
		width: 968px;
		margin: 0 auto;
	}

	.contactFormBox {
		margin: 0 0 50px;
		padding: 26px 20px 30px;
		background: #fff;
		text-align: center;
		border: solid 1px #D9D9D9;
		border-radius: 12px;
	}

	.contactFormBox p {
		font-size: 1.6rem;
		line-height: 1.8;
		word-break: break-all;
	}

	.contactFormBox p a {
		text-decoration: underline;
	}
	.contactFormBox p a:hover {
		text-decoration: none;
	}

	.formGroup {
		display: flex;
		flex-wrap: wrap;
		border-top: solid 1px #D9D9D9;
	}

	.formHead {
		width: 348px;
		padding: 30px 90px 30px 30px;
		position: relative;
		background: #EFEFEF;
		font-size: 1.7rem;
		font-weight: var(--font-w-bold);
	}
	.formHead.full {
		padding: 30px 30px 30px 30px;
	}

	.formHead span {
		font-size: 1.5rem;
		font-weight: var(--font-w-regular);
	}

	.formHead.required::after {
		content: "必 須";
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		width: 53px;
		/*height: 22px;*/
		padding: 4px 0px 4px 0px;
		position: absolute;
		top: 35px;
		right: 30px;
		background: #E72A2A;
		font-size: 1.3rem;
		font-weight: var(--font-w-medium);
		line-height: 1.1;
		color: #fff;
		border-radius: 4px;
	}

	.formItem {
		flex: 1;
		padding: 22px 30px;
	}
	.contactConfirm .formItem {
		padding: 30px 30px;
	}
	.formItemName {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 30px;
	}

	.formItemName div {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 15px;
	}

	.formItemName span {
		font-size: 1.7rem;
	}

	.formItemAddress {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		margin: 0 0 20px;
	}
	.formItemAddress::before {
		content: "〒";
		margin: 0 15px 0 0;
		font-size: 1.7rem;
	}
	.formItemAddress div {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.formItemAddress div:first-child::after {
		content: "-";
		margin: 0 15px;
		font-size: 1.7rem;
	}

	.formControl {
		width: 100%;
		padding: 9px 20px 11px;
		background: #fff;
		font-size: 1.7rem;
		line-height: 1.6;
		border: solid 1px #222;
		border-radius: 8px;
	}

	.formControl.w1 {
		width: 150px;
	}
	.formControl.w2 {
		width: 200px;
	}
	.formControl.w3 {
		width: 350px;
	}

	.formControl::placeholder {
		font-weight: var(--font-w-regular);
		color: #B0B0B0;
	}
	.formSelect::-webkit-input-placeholder {
		color: #B0B0B0;
	}
	.formSelect:-ms-input-placeholder {
		color: #B0B0B0;
	}
	.formSelect::-ms-input-placeholder {
		color: #B0B0B0;
	}

	.formSelectWrap {
		display: inline-block;
		/*width: 279px;*/
		position: relative;
	}

	.formSelectWrap::after {
		content: "";
		width: 11px;
		height: 7px;
		position: absolute;
		top: 25px;
		right: 18px;
		transform: translateY(-50%);
		background: url(../img/contact/form_arrow.svg) no-repeat;
		background-size: 11px 7px;
		pointer-events: none;
	}
	.contactConfirm .formSelectWrap::after {
		display: none;
	}

	.formSelect {
		/*! width: 100%; */
		padding: 14px 50px 17px 20px;
		background: #fff;
		font-size: 1.7rem;
		line-height: 1;
		border: solid 1px #222;
		border-radius: 8px;
	}

	.formTelText {
		margin: 18px 0 14px;
		font-size: 1.7rem;
		line-height: 1.6;
	}

	.formTextarea {
		min-height: 250px;
		font-weight: var(--font-w-regular);
	}

	.agreeCheckWrap {
		width: 100%;
		margin: 60px 0 0;
		text-align: center;
	}

	.agreeCheckInner {
		display: inline-block;
		padding: 0 0 0 50px;
		position: relative;
		font-size: 0;
		line-height: 1;
	}

	.agreeCheckInner.checked {
		display: none;
		padding-left: 42px;
	}
	.contactConfirm .agreeCheckInner.checked,
	.contactConfirm .agreeCheckInner > p {
		display: inline-block;
	}
	.contactConfirm .agreeCheckInner.inputCheck {
		display: none;
	}
	.agreeCheckInner.checked::before {
		content: "";
		width: 25px;
		height: 21px;
		position: absolute;
		top: 3px;
		left: 0;
		background: url(../img/contact/form_checked.svg) no-repeat;
		background-size: 25px 21px;
	}

	.agreeCheckInner p,
	.agreeCheckInner span {
		display: inline;
		font-size: 1.7rem;
		line-height: 1.5;
	}

	.agreeCheckInner input[type=checkbox] {
		display: block;
		width: 28px;
		height: 28px;
		position: absolute;
		top: 0;
		left: 0;
		background: #fff;
		border: solid 1px #222;
		border-radius: 5px;
		cursor: pointer;
	}

	.agreeCheckInner input[type=checkbox]:checked {
		background: #222;
	}

	.agreeCheckInner input[type=checkbox]:checked::after {
		content: "";
		display: block;
		width: 18px;
		height: 16px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		background: url(../img/contact/form_check.svg) no-repeat;
		background-size: 18px 16px;
	}

	.agreeCheckInner p a {
		text-decoration: underline;
	}
	.agreeCheckInner p a:hover {
		text-decoration: none;
	}

	.formButtonWrap {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 20px;
		width: 100%;
		margin: 30px 0 0;
	}

	.formButton {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		width: 250px;
		/*height: 62px;*/
		padding: 15px 30px 17px 30px;
		background: #006636;
		font-size: 2.3rem;
		font-weight: var(--font-w-bold);
		color: #fff;
		border-radius: 100px;
		transition: 0.2s;
	}
	.formButton:hover {
		background: #29AB6E;
	}

	.formButtonBack {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		width: 115px;
		/*height: 62px;*/
		padding: 14px 30px 16px 30px;
		background: #fff;
		font-size: 2.3rem;
		color: #006636;
		border: solid 1px #006636;
		border-radius: 100px;
	}

	.formErrorItem {
		display: none !important;
		margin: 20px 0 0;
	}
	.contactErr .formErrorItem {
		display: block !important;
	}
	.formErrorItemCheck {
		display: none !important;
		flex-wrap: wrap;
		justify-content: center;
	}
	.contactErr .formErrorItem {
		display: flex !important;
	}

	.formErrorItem span {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px;
		height: 50px;
		padding: 0 20px 0 13px;
		background: #FFEFAB;
		font-size: 1.7rem !important;
		font-weight: var(--font-w-bold);
		color: #FF0000 !important;
		border-radius: 6px;
	}

	.formErrorItem span::before {
		content: "";
		width: 30px;
		height: 30px;
		background: url(../img/contact/form_error.svg) no-repeat;
		background-size: 30px;
	}

	.formText {
		padding: 8px 0;
		font-size: 1.7rem;
		line-height: 1.6;
	}

	.completeHead {
		font-size: 2.5rem;
		font-weight: var(--font-w-bold);
		line-height: 1.4;
		text-align: center;
	}

	.completeTextWrap {
		margin: 48px 0 0;
	}

	.completeText {
		margin: 0 0 30px;
		font-size: 1.7rem;
		line-height: 1.8;
		text-align: center;
	}

	.completeText:last-child {
		margin-bottom: 0;
	}

	.completeButtonWrap {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		margin: 60px 0 0;
	}

	.completeButton {
		display: flex;
		align-items: center;
		gap: 18px;
		padding: 12px 30px 13px 28px;
		font-size: 1.6rem;
		color: #006636;
		font-weight: var(--font-w-medium);
		line-height: 2.5rem;
		background-color: #fff;
		border: 1px solid #006636;
		border-radius: 100px;
		box-shadow: 2px 2px 0px 0px rgba(0, 102, 54, 1);
		transition: 0.2s;
	}
	.completeButton::before {
		content: "";
		display: inline-block;
		width: 16px;
		height: 18px;
		background: url(../img/contact/complete_button_icon.svg) no-repeat;
		background-size: 16px 18px;
	}
	.completeButton:hover {
		color: #fff;
		background-color: #006636;
		border: 1px solid #006636;
		box-shadow: none;
		transform: translate(2px, 2px);
	}
	.completeButton:hover::before {
		background-image: url(../img/contact/complete_button_icon_h.svg);
	}





	/*------------------------------------
		テンプレート
	-------------------------------------*/
	.template h2:nth-child(1),
	.template h3:nth-child(1),
	.template h4:nth-child(1) {
		margin-top: 0px;
	}
	.template h2 {
		margin: 65px 0 28px 0;
		font-size: 2.8rem;
		font-weight: var(--font-w-bold);
		line-height: 3.6rem;;
	}
	.template h2::before {
		content: "";
		display: block;
		margin: 0 0 12px 0;
		border-top: 5px solid #006636;
	}
	.template h2::after {
		content: "";
		display: block;
		margin: 16px 0 0 0;
		border-bottom: 1px solid #78B579;
	}
	.template h3 {
		position: relative;
		margin: 65px 0 25px 0;
		padding: 0 0 0 22px;
		font-size: 2.5rem;
		font-weight: var(--font-w-bold);
		line-height: 3.5rem;;
	}
	.template h3::before {
		content: "";
		position: absolute;
		top: -2px;
		left: 0px;
		width: 7px;
		height: 40px;
		border-radius: 2px;
		background-color: #006636;
	}
	.template h4 {
		margin: 65px 0 26px 0;
		font-size: 2.1rem;
		font-weight: var(--font-w-bold);
		line-height: 3.2rem;;
	}
	.template h4::after {
		content: "";
		display: block;
		margin: 11px 0 0 0;
		border-bottom: 1px solid #006636;
	}
	.template table {
		margin: 40px 0 40px 0;
		border: 1px solid #006636;
		border-width: 1px 0 0 1px;
	}
	.template table th {
		padding: 12px;
		font-weight: var(--font-w-bold);
		background: #EFFCEC;
		border: 1px solid #006636;
		border-width: 0 1px 1px 0;
	}
	.template table td {
		padding: 12px;
		border: 1px solid #006636;
		border-width: 0 1px 1px 0;
	}
	.template .box2ColumnLeft ul {
		margin: 40px 0 40px 0;
	}
	.template .box2ColumnLeft ul li {
		position: relative;
		margin: 0 0 10px 0;
		padding: 0 0 0 20px;
		line-height: 2.6rem;
	}
	.template .box2ColumnLeft ul li::before {
		content: "";
		position: absolute;
		display: inline-block;
		top: 9px;
		left: 0px;
		width: 10px;
		height: 10px;
		background-image: url(../img/common/basic-img/dot_green.svg);
		background-size: 10px 10px;
		background-position: center top;
		background-repeat: no-repeat;
	}
	.template blockquote {
		margin: 40px 0 40px 0;
		padding: 25px 30px;
		background: #F7FFF5;
		border: 1px solid #B4CFAB;
		border-radius: 12px;
	}
	.template .box2ColumnLeft a {
		text-decoration: underline;
		color: #006636;
	}
	.template .box2ColumnLeft a:hover {
		text-decoration: none;
		color: #006636;
	}
	.template .box2ColumnLeft figure {
		width: fit-content;
		margin: 40px 0 40px 0;
	}
	.template .box2ColumnLeft figure img {
		max-width: 100%;
	}
	.template .box2ColumnLeft figure figcaption {
		margin: 4px 0 0 0;
		font-size: 1.4rem;
		text-align: right;
		color: #999999;
	}














	/*------------------------------------
		footer
	-------------------------------------*/
	footer {
		width: 100%;
		height: 420px;
		background-image: url(../img/common/footer/bg_footer_pc.svg);
		background-position: center top;
		/*! background-size: cover; */
		background-repeat: no-repeat;
		font-weight: var(--font-w-regular);
		color: #fff;
	}
	.footerInner {
		position: relative;
	}
	footer .footerCont {
		display: flex;
		justify-content: space-between;
		/*! margin: 45px 0 0 0; */
		padding: 45px 0 0 0;
	}
	footer .footerContLeft {
		width: 300px;
		margin-left: -40px;
		text-align: center;
	}
	footer .footerContLeft .text {
		margin: 18px 0 25px;
		font-size: 1.3rem;
	}
	footer .footerContRight {
		position: relative;
		width: 700px;
		text-align: right;
	}
	footer .footerContRight .link {
		display: flex;
		justify-content: flex-end;
		flex-flow: wrap;
		margin: 20px 0 0 0;
		gap: 27px 40px;
	}
	footer .footerContRight .link li {
		position: relative;
		display: inline-block;
		font-size: 1.6rem;
		padding-left: 25px;
	}
	footer .footerContRight .link li::before {
		content: "";
		position: absolute;
		top: 0px;
		left: 0px;
		width: 18px;
		height: 18px;
		background-image: url(../img/common/basic-img/arrow_white.svg);
		background-size: 18px 18px;
	}
	footer .footerContRight .link li a {
		color: #fff;
		transition: 0.1s;
	}
	footer .footerContRight .link li a:hover {
		color: #FFCB2F;
		/*text-decoration: underline;*/
	}
	footer .footerContRight .boxSns {
		margin: 43px 0 43px 0;
	}
	footer .footerContRight .boxSns a img {
		transition: 0s;
	}
	footer .footerContRight .boxSns a:hover img {
		filter: brightness(0) saturate(100%) invert(98%) sepia(94%) saturate(1766%) hue-rotate(324deg) brightness(97%) contrast(108%);
	}
	footer .footerContRight .menu {
		display: flex;
		justify-content: flex-end;
		flex-flow: wrap;
		margin: 20px 0 0 0;
		gap: 27px 40px;
	}
	footer .footerContRight .menu li {
		position: relative;
		display: inline-block;
		font-size: 1.6rem;
		padding-left: 17px;
	}
	footer .footerContRight .menu li::before {
		content: "";
		position: absolute;
		top: 3px;
		left: 0px;
		width: 7px;
		height: 12px;
		background-image: url(../img/common/basic-img/arrow_white_2.svg);
		background-size: 7px 12px;
	}
	footer .footerContRight .menu li a {
		color: #fff;
		transition: 0.1s;
	}
	footer .footerContRight .menu li a:hover {
		color: #FFCB2F;
	}

	.copyright {
		position: absolute;
		bottom: -5px;
		right: 0px;
		display: inline-block;
		font-size: 1.3rem;
		text-align: right;
	}

	/* --------- ページトップボタン ----------- */
	#gPagetop {
		transition: 0.3s;
		cursor: pointer;
		visibility: hidden;
	}
	#gPagetop .pagetopBtn {
		position: fixed;
		position: relative;
		right: 30px;
		display: block;
		width: 69px;
		height: 69px;
		border-radius: 100%;
		z-index: 100;
	}
	#gPagetop .pagetopBtn::after {
		content: "";
		position: absolute;
		top: 0;
		right: 0px;
		display: block;
		width: 69px;
		height: 69px;
		border-radius: 100%;
		background-image: url(../img/common/pagetop_icon.svg);
		background-position: center;
		background-size: contain;
		background-repeat: no-repeat;
		transition: all 0.2s ease;
		z-index: 100;
	}

}




