/* ---------------------------------------------------------------
start COMMON CSS
--------------------------------------------------------------- */

/* Akshar */
@import url('https://fonts.googleapis.com/css2?family=Akshar:wght@300..700&display=swap');

/* Jost */
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');


/* noto-sans-jp-300 - japanese */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 300;
	src: url('../fonts/noto-sans-jp-v55-japanese-300.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-jp-regular - japanese */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/noto-sans-jp-v55-japanese-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-jp-500 - japanese */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	src: url('../fonts/noto-sans-jp-v55-japanese-500.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-jp-600 - japanese */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 600;
	src: url('../fonts/noto-sans-jp-v55-japanese-600.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-jp-700 - japanese */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 700;
	src: url('../fonts/noto-sans-jp-v55-japanese-700.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

html {
	scrollbar-gutter: stable;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	width: 100%;
	margin: 0;
	padding: 0;
	color: #000;
	font-size: 15px;
	line-height: 1.7;
	font-weight: 400;
	font-family: 'Noto Sans JP', Meiryo, sans-serif;
}

@media screen and (max-width: 450px) {
	body {
		font-size: 3.74vw;
	}
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*/
	/*/
	height: auto;
	overflow: hidden;
	/**/
}

a {
	outline: none;
	color: #00b827;
	text-decoration: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	cursor: pointer;
}

a.uline {
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
	cursor: pointer;
}

a.uline:hover {
	text-decoration: none;
}

button {
	outline: none;
}

img {
	border: none;
	margin: 0;
	padding: 0;
	vertical-align: top;
	-ms-interpolation-mode: bicubic !important;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	backface-visibility: hidden;
}

p {
	margin: 0 0 1.2em 0;
	padding: 0;
}

ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0px;
}

.aligncenter {
	text-align: center;
}

.alignright {
	text-align: right;
}

.alignjust {
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}

.fleft {
	float: left;
}

.fright {
	float: right;
}

.iblock {
	display: inline-block;
}

.indent1 {
	padding-left: 1em;
	text-indent: -1em;
}

.indent1 * {
	text-indent: 0;
}

.w100 {
	width: 100%;
}

.mb10 {
	margin-bottom: 10px;
}

.mb15 {
	margin-bottom: 15px;
}

.mb20 {
	margin-bottom: 20px;
}

.indent1 {
	text-indent: -1em;
	padding-left: 1em;
}

.akshar {
	font-family: 'Akshar', sans-serif;
}

.jost {
	font-family: "Jost", sans-serif;
}

#wrap {
	width: 100%;
	padding: 0;
}

@media screen and (min-width: 701px) {
	.pc_none {
		display: none;
	}
}

@media screen and (max-width: 700px) {
	.sp_none {
		display: none;
	}
}


/* --------------- header --------------- */

#header {
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: rgba(255, 255, 255, 0.85);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}

.col_header {
	width: 97%;
	max-width: 1760px;
	margin: 0 auto;
	padding: 12px 0;
	display: flex;
	justify-content: space-between;
}

.logo_header {
	width: 192px;
	margin: 0;
	padding: 0;
	font-size: 1rem;
	align-self: center;
}

.link_header {
	width: calc(100% - 197px);
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.4;
	display: flex;
	align-items: center;
}

.link_header .navi {
	width: calc(100% - 144px);
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: flex-end;
}

.link_header .navi a {
	margin: 0 1em;
	padding: 0.2em 0.5em;
	color: #000;
	display: inline-block;
	position: relative;
	z-index: 0;
}

.link_header .navi a::after {
	content: "";
	width: 1px;
	height: 1em;
	margin: 0;
	padding: 0;
	background-color: #000;
	position: absolute;
	top: calc(50% - 0.5em);
	right: -1em;
}

.link_header .navi a.news::after {
	content: none;
}

.link_header .sp {
	display: none;
}

.link_header a.btn_contact {
	width: 144px;
	margin: 0;
	padding: 0.6em 0 0.7em;
	color: #fff;
	text-align: center;
	background: linear-gradient(0deg, #036b37, #59b320);
	border-radius: 8px;
	display: block;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.link_header a.btn_contact::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: linear-gradient(0deg, #59b320, #036b37);
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.col_header .sp_contact,
#menubtn {
	display: none;
}

@media screen and (max-width: 1200px) {
	.link_header .navi a {
		margin: 0 0.5em;
		padding: 0.2em 0.4em;
	}

	.link_header .navi a::after {
		right: -0.5em;
	}
}

@media screen and (max-width: 1080px) {
	.link_header {
		font-size: 15px;
	}

	.link_header .navi {
		width: calc(100% - 126px);
	}

	.link_header .navi a {
		margin: 0 0.3em;
	}

	.link_header .navi a::after {
		right: -0.3em;
	}

	.link_header a.btn_contact {
		width: 126px;
	}
}

@media screen and (min-width: 981px) {
	.link_header .navi a {
		transition: all .4s;
	}

	.link_header .navi a:hover {
		color: #00b827;
	}

	.link_header a.btn_contact::before {
		transition: opacity .4s;
	}

	.link_header a.btn_contact:hover::before {
		opacity: 1;
	}
}

@media screen and (max-width: 980px) {
	.col_header {
		justify-content: flex-start;
	}

	.link_header {
		width: 100%;
		height: calc(100vh - 75px);
		background-color: #00b827;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: 100%;
		left: 0;
	}

	.link_header .sp {
		display: inline;
	}

	.link_header .navi {
		width: 94%;
		max-width: 560px;
		margin: 0 auto;
		padding: 0 0 10px;
		justify-content: center;
		flex-wrap: wrap;
	}

	.link_header .navi a {
		width: calc(8em + 26px);
		margin: 0 1em 2em 0;
		padding: 0 0 0 26px;
		color: #fff;
	}

	.link_header .navi a::before {
		content: "";
		width: 4px;
		height: 4px;
		margin: 0;
		padding: 0;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		transform: rotate(45deg);
		position: absolute;
		top: calc(50% - 2px);
		left: 6px;
	}

	.link_header .navi a::after {
		width: 18px;
		height: 18px;
		background-color: transparent;
		border: solid 1px #fff;
		border-radius: 50%;
		top: calc(50% - 9px);
		left: 0;
		right: auto;
	}

	.link_header .navi a.news::after {
		content: "";
	}

	.link_header a.btn_contact {
		width: 70%;
		max-width: 300px;
		margin: 0 auto 1.6em;
		padding: 0.9em 0 1em;
		background: none;
		background-color: transparent;
		border: solid 1px #fff;
		border-radius: 10px;
		position: relative;
	}

	.link_header a.btn_contact::before {
		content: "";
		width: 4px;
		height: 4px;
		margin: 0;
		padding: 0;
		background: none;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		opacity: 1;
		transform: rotate(45deg);
		position: absolute;
		top: calc(50% - 2px);
		left: auto;
		right: 18px;
	}

	.link_header a.btn_contact::after {
		content: "";
		width: 18px;
		height: 18px;
		background-color: transparent;
		border: solid 1px #fff;
		border-radius: 50%;
		display: inline-block;
		position: absolute;
		top: calc(50% - 9px);
		right: 10px;
	}

	.link_header a.btn_contact .sp {
		display: inline;
	}

	.link_header a.privacy {
		margin: 0 0 3em;
		color: #fff;
		text-decoration: underline;
		display: inline-block;
	}

	.link_header .sp.btn_close {
		width: 60px;
		margin: 0 auto;
		padding: 50px 0 0;
		color: #fff;
		text-align: center;
		display: block;
		position: relative;
		z-index: 0;
	}

	.link_header .sp.btn_close::before,
	.link_header .sp.btn_close::after {
		content: "";
		width: 50px;
		height: 1px;
		margin: 0;
		padding: 0;
		background-color: #fff;
		transform-origin: center center;
		position: absolute;
		top: 25px;
		left: calc(50% - 25px);
	}

	.link_header .sp.btn_close::before {
		transform: rotate(45deg);
	}

	.link_header .sp.btn_close::after {
		transform: rotate(-45deg);
	}

	.col_header .sp_contact {
		width: 40px;
		height: 40px;
		margin: 0 10px 0 auto;
		padding: 0;
		text-align: center;
		background: linear-gradient(0deg, #036b37, #59b320);
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.col_header .sp_contact img {
		width: 54%;
	}

	#menubtn {
		width: 40px;
		height: 40px;
		margin: 0;
		padding: 0;
		background: linear-gradient(0deg, #036b37, #59b320);
		border-radius: 50%;
		display: block;
		position: relative;
		z-index: 0;
	}

	#menubtn span {
		width: 52%;
		height: 1px;
		margin: 0;
		padding: 0;
		background-color: #fff;
		border-radius: 2px;
		display: inline-block;
		position: absolute;
		left: 24%;
	}

	#menubtn span:nth-child(1) {
		top: calc(50% - 8px);
	}

	#menubtn span:nth-child(2) {
		top: calc(50% - 1px);
	}

	#menubtn span:nth-child(3) {
		top: calc(50% + 6px);
	}

	#menubtn span:nth-of-type(1) {
		-webkit-animation: menu-bar01 .75s forwards;
		animation: menu-bar01 .75s forwards;
	}

	@-webkit-keyframes menu-bar01 {
		0% {
			-webkit-transform: translateY(7px) rotate(45deg);
		}

		50% {
			-webkit-transform: translateY(7px) rotate(0);
		}

		100% {
			-webkit-transform: translateY(0) rotate(0);
		}
	}

	@keyframes menu-bar01 {
		0% {
			transform: translateY(7px) rotate(45deg);
		}

		50% {
			transform: translateY(7px) rotate(0);
		}

		100% {
			transform: translateY(0) rotate(0);
		}
	}

	#menubtn span:nth-of-type(2) {
		transition: all .25s .25s;
		opacity: 1;
	}

	#menubtn span:nth-of-type(3) {
		-webkit-animation: menu-bar02 .75s forwards;
		animation: menu-bar02 .75s forwards;
	}

	@-webkit-keyframes menu-bar02 {
		0% {
			-webkit-transform: translateY(-7px) rotate(-45deg);
		}

		50% {
			-webkit-transform: translateY(-7px) rotate(0);
		}

		100% {
			-webkit-transform: translateY(0) rotate(0);
		}
	}

	@keyframes menu-bar02 {
		0% {
			transform: translateY(-7px) rotate(-45deg);
		}

		50% {
			transform: translateY(-7px) rotate(0);
		}

		100% {
			transform: translateY(0) rotate(0);
		}
	}

	.open #menubtn span:nth-of-type(1) {
		-webkit-animation: active-menu-bar01 .75s forwards;
		animation: active-menu-bar01 .75s forwards;
	}

	@-webkit-keyframes active-menu-bar01 {
		0% {
			-webkit-transform: translateY(0) rotate(0);
		}

		50% {
			-webkit-transform: translateY(7px) rotate(0);
		}

		100% {
			-webkit-transform: translateY(7px) rotate(45deg);
		}
	}

	@keyframes active-menu-bar01 {
		0% {
			transform: translateY(0) rotate(0);
		}

		50% {
			transform: translateY(7px) rotate(0);
		}

		100% {
			transform: translateY(7px) rotate(45deg);
		}
	}

	.open #menubtn span:nth-of-type(2) {
		opacity: 0;
	}

	.open #menubtn span:nth-of-type(3) {
		-webkit-animation: active-menu-bar03 .75s forwards;
		animation: active-menu-bar03 .75s forwards;
	}

	@-webkit-keyframes active-menu-bar03 {
		0% {
			-webkit-transform: translateY(0) rotate(0);
		}

		50% {
			-webkit-transform: translateY(-7px) rotate(0);
		}

		100% {
			-webkit-transform: translateY(-7px) rotate(-45deg);
		}
	}

	@keyframes active-menu-bar03 {
		0% {
			transform: translateY(0) rotate(0);
		}

		50% {
			transform: translateY(-7px) rotate(0);
		}

		100% {
			transform: translateY(-7px) rotate(-45deg);
		}
	}
}

@media screen and (max-width: 450px) {
	.link_header {
		font-size: 3.74vw;
	}
}


/* --------------- footer --------------- */

#footer {
	width: 100%;
	margin: 0;
	padding: 0;
}

.col_footer {
	width: 97%;
	max-width: 1760px;
	margin: 0 auto;
	padding: 40px 0;
	display: flex;
	flex-wrap: wrap;
}

.col_footer .logo_footer {
	width: 246px;
	margin: 0 10px 0 0;
	padding: 0;
}

.col_footer ul.list_fotterlink {
	width: calc(100% - 256px);
	margin: 0 0 80px;
	padding: 0;
	display: flex;
	justify-content: flex-end;
}

.col_footer ul.list_fotterlink li {
	margin: 0;
	padding: 0 1.5em;
	position: relative;
	z-index: 0;
}

.col_footer ul.list_fotterlink li:last-child {
	padding-right: 0;
}

.col_footer ul.list_fotterlink li::after {
	content: "";
	width: 1px;
	height: 1em;
	background-color: #000;
	position: absolute;
	top: calc(50% - 0.5em);
	right: 0;
}

.col_footer ul.list_fotterlink li:last-child::after {
	content: none;
}

.col_footer ul.list_fotterlink li a {
	color: #000;
}

@media screen and (min-width: 961px) {
	.col_footer ul.list_fotterlink li a {
		transition: all .4s;
	}

	.col_footer ul.list_fotterlink li a:hover {
		color: #00b827;
	}
}

.cont_info_footer {
	width: calc(100% - 226px);
	margin: 0 10px 0 0;
	padding: 0;
	align-self: flex-end;
}

.cont_info_footer dl.management {
	width: 100%;
	margin: 0 0 20px;
	padding: 0;
	line-height: 1;
	display: flex;
	align-items: flex-end;
}

.cont_info_footer dl.management dt {
	margin: 0;
	padding: 0 0 0 20px;
	font-size: 12px;
	position: relative;
	z-index: 0;
}

.cont_info_footer dl.management dt::before,
.cont_info_footer dl.management dt::after {
	content: "";
	width: 12px;
	height: 10px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	position: absolute;
}

.cont_info_footer dl.management dt::before {
	border: solid 2px #000;
	top: 0;
	left: 0;
}

.cont_info_footer dl.management dt::after {
	border-right: solid 2px #000;
	border-bottom: solid 2px #000;
	top: 3px;
	left: 3px;
}

.cont_info_footer dl.management dd {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: 800;
	display: flex;
	align-items: flex-end;
}

.cont_info_footer dl.management dd a {
	display: flex;
	align-items: flex-end;
	color: #000;
}

.cont_info_footer dl.management dd a:hover {
	opacity: 0.8;
}

.cont_info_footer dl.management dd .logo_ncs {
	display: block;
	width: min(12.4vw, 57px);
	margin: 0;
	padding: 0 2px;
}

.cont_info_footer .copyright {
	margin: 0;
	padding: 0;
	font-size: 12px;
}

.cont_link_footer {
	width: 216px;
	margin: 0;
	padding: 0;
	text-align: right;
	order: 1;
}

.cont_link_footer a.btn_contact_footer {
	width: 100%;
	margin: 0 0 18px;
	padding: 0;
	color: #fff;
	text-align: left;
	background: linear-gradient(0deg, #036b37, #59b320);
	border-radius: 10px;
	display: block;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.cont_link_footer a.btn_contact_footer::before {
	content: "";
	width: 4px;
	height: 4px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 2px);
	right: 18px;
	z-index: 1;
}

.cont_link_footer a.btn_contact_footer::after {
	content: "";
	width: 14px;
	height: 14px;
	margin: 0;
	padding: 0;
	border: solid 1px #fff;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 7px);
	right: 12px;
	z-index: 1;
}

.cont_link_footer a.btn_contact_footer .bg {
	width: 100%;
	margin: 0;
	padding: 0.6em 1em;
	display: block;
	position: relative;
	z-index: 0;
}

.cont_link_footer a.btn_contact_footer .bg::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: linear-gradient(0deg, #59b320, #036b37);
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.cont_link_footer a:not(.btn_contact_footer) {
	margin: 0 0 0 auto;
	color: #000;
	font-size: 12px;
	text-decoration: underline;
}

@media screen and (min-width: 961px) {
	.cont_link_footer a.btn_contact_footer .bg::before {
		transition: opacity .4s;
	}

	.cont_link_footer a.btn_contact_footer:hover .bg::before {
		opacity: 1;
	}

	.cont_link_footer a:not(.btn_contact_footer):hover {
		text-decoration: none;
	}
}

@media screen and (max-width: 1080px) {
	.col_footer ul.list_fotterlink li {
		padding: 0 0.8em;
		transition: all .4s;
	}
}

@media screen and (max-width: 960px) {
	.col_footer {
		padding: 40px 0 25px;
		display: block;
	}

	.col_footer .logo_footer {
		width: 53.8%;
		max-width: 261px;
		margin: 0 auto 30px;
	}

	.col_footer ul.list_fotterlink {
		display: none;
	}

	.cont_info_footer {
		width: 100%;
		margin: 0;
	}

	.cont_info_footer dl.management {
		justify-content: center;
	}

	.cont_info_footer .copyright {
		text-align: center;
	}

	.cont_link_footer {
		width: 100%;
		margin: 0 0 25px;
		text-align: center;
	}

	.cont_link_footer a.btn_contact_footer {
		width: 70%;
		max-width: 260px;
		margin: 0 auto 10px;
		text-align: center;
	}

	.cont_link_footer a.btn_contact_footer .bg {
		padding: 0.8em 1em;
	}
}

@media screen and (max-width: 450px) {
	.cont_info_footer dl.management dt {
		font-size: 3.333vw;
	}

	.cont_info_footer dl.management dt::before,
	.cont_info_footer dl.management dt::after {
		width: 1em;
		height: 0.833em;
	}

	.cont_info_footer dl.management dd {
		font-size: 3.333vw;
	}

	.cont_info_footer dl.management dd .logo_ncs {
		padding: 0;
	}

	.cont_info_footer .copyright {
		font-size: 2.64vw;
	}
}


/* --------------- common --------------- */

.scrlevent {
	opacity: 0;
	transition: all 1s;
	position: relative;
	z-index: 0;
	top: 15px;
}

.scrlevent.active {
	opacity: 1;
	top: 0;
}

.link_fix_contact {
	margin: 0;
	padding: 0;
	filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.2));
	display: inline-block;
	position: fixed;
	right: 10px;
	top: 30%;
	z-index: 100;
}

.link_fix_contact .icon {
	width: 82px;
	height: 82px;
	margin: 0;
	padding: 0;
	text-align: center;
	background: linear-gradient(0deg, #036b37, #59b320);
	border: solid 5px #fff100;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: all .4s;
	position: relative;
	z-index: 1;
}

a.link_fix_contact:hover .icon {
	background-color: #fff100;
}

.link_fix_contact .icon::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background: linear-gradient(0deg, #59b320, #036b37);
	opacity: 0;
	transition: opacity .4s;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.link_fix_contact:hover .icon::before {
	opacity: 1;
}

.link_fix_contact .icon img {
	width: 52.22%;
}

.link_fix_contact .txt {
	margin: 0 auto;
	padding: 10px 5px 16px;
	color: #00b827;
	font-size: 21px;
	font-weight: 700;
	writing-mode: vertical-rl;
	transition: all .4s;
	position: relative;
	z-index: 0;
}

.link_fix_contact .txt::before {
	content: "";
	width: 100%;
	height: calc(100% + 15px);
	margin: 0;
	padding: 0;
	background-color: #fff100;
	border-radius: 0 0 10px 10px;
	transition: background .4s;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
}

@media screen and (max-width: 960px) {
	.link_fix_contact {
		display: none;
	}
}

.bg_sub {
	margin: 0;
	padding: 65px 0 130px;
	background-color: #efefef;
	overflow: hidden;
}

@media screen and (max-width: 550px) {
	.bg_sub {
		padding: 65px 0 20vw;
	}
}

ul#breadcramb {
	width: 97%;
	max-width: 1760px;
	margin: 0 auto;
	padding: 0.2em 0 0;
	display: flex;
	position: relative;
	z-index: 1;
}

ul#breadcramb li {
	margin: 0 0.7em 0 0;
	padding: 0;
}

ul#breadcramb li::after {
	content: ">";
	margin: 0 0 0 0.8em;
	padding: 0;
	display: inline-block;
}

ul#breadcramb li:last-child::after {
	content: none;
}

ul#breadcramb li a {
	text-decoration: underline;
}

@media screen and (max-width: 850px) {
	ul#breadcramb {
		display: none;
	}
}

.col_sub {
	width: 90%;
	max-width: 1800px;
	margin: 0 auto;
	padding: 0;
	position: relative;
	z-index: 0;
}

.col_sub .deco1 {
	width: 426px;
	height: 287px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -145px;
	right: 75%;
	right: min(67.5vw, 1116.44px);
	z-index: -1;
}

.bg_sub .deco1 .bgcrop {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: rotate(-35deg);
	overflow: hidden;
}

.bg_sub .deco1 .bgcrop::before {
	content: "";
	width: 150%;
	height: 150%;
	background-image: url(../img/top/bg_dotwhite1.svg);
	background-repeat: repeat;
	background-size: 16px auto;
	transform: rotate(35deg);
	display: block;
}

.bg_sub .deco2 {
	width: 304px;
	height: 205px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -6%;
	left: 63%;
	top: max(-14.6614vw, -111.969px);
	left: min(56.6989vw, 937.812px);
	z-index: -1;
}

.bg_sub .deco2 .border {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: solid 2px #fff;
	transform: rotate(-35deg);
}

.col_sub .deco3 {
	width: 178px;
	height: 120px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -2.8%;
	left: 71.7%;
	top: max(-6.84vw, -52.25px);
	left: min(64.53vw, 1067.31px);
	z-index: -1;
}

.bg_sub .deco3 .bgcrop {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: rotate(-35deg);
	overflow: hidden;
}

.bg_sub .deco3 .bgcrop::before {
	content: "";
	width: 150%;
	height: 150%;
	background-image: url(../img/top/bg_dotwhite1.svg);
	background-repeat: repeat;
	background-size: 15px auto;
	transform: rotate(35deg);
	display: block;
}

.col_sub .deco4 {
	width: 314px;
	height: 212px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 5%;
	left: 90%;
	top: min(12.22vw, 93.3125px);
	left: min(81vw, 1339.73px);
	z-index: -1;
}

.bg_sub .deco4 .bgcrop {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: rotate(-35deg);
	overflow: hidden;
}

.bg_sub .deco4 .bgcrop::before {
	content: "";
	width: 150%;
	height: 150%;
	background-image: url(../img/top/bg_dotwhite1.svg);
	background-repeat: repeat;
	background-size: 15px auto;
	transform: rotate(35deg);
	display: block;
}

.bg_sub .deco5 {
	width: 314px;
	height: 212px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 2.5%;
	left: 88.5%;
	top: min(6.11vw, 46.6562px);
	left: min(79.65vw, 1317.39px);
	z-index: -1;
}

.bg_sub .deco5 .border {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: solid 2px #fff;
	transform: rotate(-35deg);
}

.col_sub .deco6 {
	width: 242px;
	height: 140px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 13.5%;
	left: -16%;
	top: 246.33px;
	left: -14.40vw;
	z-index: -1;
}

.bg_sub .deco6 .bgcrop {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: rotate(-35deg);
	overflow: hidden;
}

.bg_sub .deco6 .bgcrop::before {
	content: "";
	width: 150%;
	height: 150%;
	background-image: url(../img/top/bg_dotwhite1.svg);
	background-repeat: repeat;
	background-size: 15px auto;
	transform: rotate(35deg);
	display: block;
}

.bg_sub .deco7 {
	width: 232px;
	height: 160px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 7.5%;
	left: -8.5%;
	top: 230.906px;
	left: -7.65vw;
	z-index: -1;
}

.bg_sub .deco7 .border {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: solid 2px #fff;
	transform: rotate(-35deg);
}

@media screen and (max-width: 850px) {
	.col_sub .deco1 {
		width: 59.18vw;
		height: 39.88vw;
		top: -29.7vw;
		right: 39.5%;
	}

	.bg_sub .deco1 .bgcrop::before {
		background-size: 2.29vw auto;
	}

	.bg_sub .deco2 {
		width: 42.33vw;
		height: 28.52vw;
		top: 4.478vw;
		left: 80.3%;
	}

	.col_sub .deco3 {
		width: 24.79vw;
		height: 16.7vw;
		top: 16.86vw;
		left: 89.65%;
	}

	.bg_sub .deco3 .bgcrop::before {
		background-size: 2.153vw auto;
	}

	.col_sub .deco4 {
		width: 29.525vw;
		height: 19.897vw;
		top: 23.11vw;
		left: auto;
		right: 88.27%;
	}

	.bg_sub .deco5 {
		width: 29.525vw;
		height: 19.897vw;
		top: 24.5vw;
		left: auto;
		right: 78.677%;
	}

	.bg_sub .deco6 {
		display: none;
	}

	.bg_sub .deco7 {
		display: none;
	}

	.bg_sub .deco4 .bgcrop::before {
		background-size: 1.666vw auto;
	}


}

.col_pagettl {
	margin: 0;
	padding: 110px 0 67px;
}

.col_pagettl .pagettl {
	margin: 0;
	padding: 0 0 0.3em;
	font-size: min(6.2vw, 34px);
	font-weight: 500;
	text-align: center;
	position: relative;
	z-index: 0;
}

.col_pagettl .pagettl::before {
	content: "";
	width: 63px;
	height: 5px;
	margin: 0;
	padding: 0;
	background: linear-gradient(90deg, #00b827 21px, #fff100 22px, #fff100 42px, #00b827 43px);
	display: block;
	transform: translateX(-50%);
	position: absolute;
	left: 50%;
	bottom: 0;
}

@media screen and (max-width: 850px) {
	.col_pagettl {
		padding: 15.4vw 0 14.166vw;
	}
}