@charset "UTF-8";
/* common
========================================== */
body {
	overflow-x: hidden;
}

body * {
	box-sizing: border-box;
}

#main,
#footer > * {
	max-width: 1500px;
	width: 78.2%;
	width: 78.2vw;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.w-full {
	width: calc(100vw - calc(100vw - 100%));
	width: 100vw;
	margin-left: -10.9vw;
	margin-left: calc((100vw - 78.2vw) / -2);
	/*overflow-x: hidden;*/
}
.w-full figure img,
img.w-full {
	width: 100%;
	margin-left: 0;
}
@media only screen and (min-width: 1918px) {
	.w-full {
		margin-left: calc((100vw - 1500px) / -2);
	}
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	body {
		background-size: 58.8vw 58vw;
		background-position: right -23vw top -22vw;
		background-position: right -86px top -86px;
		overflow-x: auto;
	}
	#footer,
	#main {
		width: 100%;
		padding-right: 9%;
		padding-left: 9%;
		position: relative;
	}
	#main {
		overflow: hidden;
	}
	.w-full {
		margin-left: -9vw;
	}
}


/* header
========================================== */
#header {
	height: 144px;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
	transition: 0.2s ease-in-out;
}
#header *,
#header *:before,
#header *:after {
	transition: 0.2s ease-in-out;
}
#header.scroll {
	height: calc(144px - 39px);
	height: 85px;
}
#header-inner {
	background-color: #fff;
	display:flex;
	align-items: flex-end;
	justify-content: space-between;
	align-items: center;
	padding: 53px 72px 46px;
	height: 100%;
	width: 100%;
	transition: 0s ease-in-out;
}
#header-inner .icon-bg {
	background-image: url(/common/images/bg-head.svg);
	background-size: 100%;
	background-position: left top;
	background-repeat: no-repeat;
	display: block;
	width: 231px;
	height: 228px;
	position: absolute;
	right: -83px;
	top: -25px;
	z-index: 2;
	transition: 0s ease-in-out;
}
#header.scroll #header-inner {
	padding: 30px 72px;
}
#header .logo {
	width: 75px;
}
#header .corp-name {
	width: 435px;
	padding-left: 70px;
}
#header #gNav {
	width: calc(100% - 75px - 435px - 20px);
	width: calc(100% - 530px);
	position: relative;
	z-index: 2;
}
#gNav .nav-level01 {
	text-align: right;
}
#gNav .nav-level01 > li {
	display: inline-block;
	margin-right: 29px;
	text-align: left;
}
#gNav .nav-level01 > li:last-child {
	margin-right: 0;
}
#gNav .nav-level01 li a {
	color: #000;
	font-size: 1.4rem;
	position: relative;
}
#gNav .nav-level01 > li > a.active,
#gNav .nav-level01 > li > a:hover {
	font-weight: 700;
	text-decoration: none;
}
#gNav .nav-level01 > li > a.active:after {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid #5AAFE1;
	border-bottom: 2px solid #5AAFE1;
	transform: rotate(45deg);
	position: absolute;
	bottom: -16px;
	left: 50%;
	margin-left: -5px;
}

#gNav .nav-level01 .sub-menu {
	color: #fff;
	background-color: #5AAFE1;
	width: 100%;
	width: 100vw;
	margin-left: calc((216px + 72px ) / -1);
	margin-left: calc((75px + 72px ) / -1);
	padding-left: calc((100vw - 78.2vw) / 2);
	display: flex;
	height: 0;
	position: absolute;
	left: 0;
	top: 82px;
	top: 56px;
  opacity: 0;
  visibility: hidden;
}
@media only screen and (min-width: 1918px) {
	#gNav .nav-level01 .sub-menu {
		padding-left: calc((100vw - 1500px) / 2);
	}
}
#header.scroll #gNav .nav-level01 .sub-menu {
	/*top: 93px;*/
}
#gNav .nav-level01 .sub-menu.open {
	padding-top: 80px;
	padding-bottom: 65px;
	height: auto;
	opacity: 1;
  visibility: visible;
}
#gNav .nav-level01 .sub-menu a {
	color: #fff;
	font-size: 1.6rem;
}
#gNav .nav-level01 .sub-menu .btn-close {
	line-height: 1;
	display: block;
	padding: 3px 0;
	padding-left: 40px;
	position: absolute;
	right: 72px;
	right: 4.5%;
	top: 40px;
}
#gNav .nav-level01 .sub-menu .btn-close:before,
#gNav .nav-level01 .sub-menu .btn-close:after {
	content: '';
	background-color: #fff;
	display: block;
	height: 24px;
	width: 1px;
	position: absolute;
	left: 10px;
	top: 0;
	transform: rotate(-45deg);
}
#gNav .nav-level01 .sub-menu .btn-close:after {
	transform: rotate(45deg);
}
#gNav .nav-level01 .sub-menu dl {
	width: 504px;
	margin-right: 100px;
}
#gNav .nav-level01 .sub-menu dl dt a {
	font-size: 4rem;
	line-height: 1.4;
}
#gNav .nav-level01 .sub-menu dl dt span {
	font-size: 2.2rem;
	display: block;
	margin-top: .2em;
	margin-top: .5em;
}
#gNav .nav-level01 .sub-menu dl dd {
	margin-top: 30px;
}
#gNav .nav-level01 .sub-menu .nav-level02 {
	padding-top: 10px;
	width: 290px;
	position: relative;
}
#gNav .nav-level01 .sub-menu .nav-level02:after {
	content: '';
	background-color: #fff;
	display: block;
	height: calc(100% - 30px);
	width: 1px;
	position: absolute;
	right: -1px;
	top: 20px;
}
#gNav .nav-level01 .sub-menu .nav-level02 li a {
	line-height: 1.2;
	display: block;
	padding: 10px 0;
	padding-right: 40px;
	position: relative;
}
#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow:hover > a:after,
#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow > a.active:after {
	content: '';
	display: block;
	height: 7px;
	width: 7px;
	border-top: solid #fff 1px;
	border-right: solid #fff 1px;
	position: absolute;
	right: 30px;
	top: 50%;
	margin-top: -5px;
	transform: rotate(45deg);
}
#gNav .nav-level01 .sub-menu .nav-level03 {
	padding-top: 10px;
	width: 500px;
	/*padding-left: 70px;*/
	position: absolute;
	left: 278px;
	top: 0;
  opacity: 0;
  visibility: hidden;
}
#gNav .nav-level01 .sub-menu .nav-level03 li a {
	padding-left: 70px;
}
#gNav .nav-level01 .sub-menu .nav-level02 > li:hover .nav-level03,
#gNav .nav-level01 .sub-menu .nav-level02 > li .nav-level03.focused {
	opacity: 1;
  visibility: visible;
}

#header .other {
	display: flex;
	width: 20px;
	justify-content: flex-end;
	align-items: flex-start;
	position: relative;
	z-index: 3;
}
/*#header .other .search-area {
	margin-right: 35px;
}*/
#header .other .search-area .search-box {
	color: #fff;
	background-color: #5AAFE1;
	text-align: center;
	width: 100vw;
	margin-left: calc((20px + 72px) - 100vw);
	position: absolute;
	left: 0;
	top: 82px;
	top: 56px;
	height: 0;
  opacity: 0;
  visibility: hidden;
}
#header .other .search-area .search-box.open {
	padding-top: 65px;
	padding-bottom: 55px;
	height: auto;
	opacity: 1;
  visibility: visible;
}
#header .search-area .search-box * {
	opacity: 0;
}
#header .search-area .search-box.open * {
	opacity: 1;
}

#header .search-area .search-box .input-keyword {
	color: #fff;
	font-size: 2.2rem;
	line-height: 1.1;
	background-color: #5AAFE1;
	vertical-align: top;
	width: 40%;
	height: 1.4em;
	padding: 0;
	margin-left: 10px;
	position: relative;
	top: -8px;
	border: none;
}
#header .search-area .search-box .input-keyword::placeholder {
	color: #fff;
}
#header .search-area .search-box .btn-close {
	color: #fff;
	padding-left: 2.5em;
	margin-top: 30px;
	height: 1.5em;
	position: relative;
	display: block;
}
#header .search-area .search-box .btn-close:before,
#header .search-area .search-box .btn-close:after {
	content: '';
	background-color: #fff;
	display: block;
	width: 1.2em;
	height: 1px;
	position: absolute;
	top: 55%;
	left: 50%;
	margin-left: -2em;
	transform: rotate(-45deg);
}
#header .search-area .search-box .btn-close:after {
	transform: rotate(45deg);
}
#header .search-area .search-box .btn-search {
	color: #5AAFE1;
	font-size: 1.8rem;
	background-color: #fff;
	width: 10em;
	padding: .8em;
	border-radius: 2.5em;
	margin-top: 30px;
	cursor: pointer;
	z-index: 5;
}
#header #search-option .select-cat ul {
	margin-top: 20px;
	padding-top: 40px;
	/*border-top: 1px solid #fff;*/
	display: inline-block;
	position: relative;
}
#header #search-option .select-cat ul:before {
	content: '';
	display: block;
	background-color: #fff;
	height: 1px;
	width: 90%;
	position: absolute;
	top:0;
	left: 5%;
}
#header #search-option .select-cat ul li {
	display: inline-block;
}
#header #search-option .select-cat ul li + li {
	margin-left: 15px;
}
#header #search-option .select-cat li input {
	height: 0;
	width: 0;
	opacity: 0;
	visibility: hidden;
}
#header #search-option .select-cat li label {
	font-size: 1.4rem;
	display: block;
	text-align: center;
	padding: .8em 1.5em;
	padding: .8em 2em;
	border: 1px solid #fff;
	border-radius: 2.6em;
	cursor: pointer;
}
#header #search-option .select-cat li label.check {
	background-color: #000;
	background-color: rgba(255, 255, 255, 0.2);
}
#header #search-option .select-type {
	margin-top: 35px;
	position: relative;
	z-index: 1;
}
#header #search-option .select-type ul li {
	display: inline-block;
}
#header #search-option .select-type ul li + li {
	margin-left: 10px;
}
#header #search-option .select-type li label input + span:before {
	background-color: #5AAFE1;
	margin-right: 8px;
	height: 15px;
	width: 15px;
	border: 1px solid #fff;
	box-sizing: border-box;
	position: relative;
	top: -1px;
}
#header #search-option .select-type li label input:checked + span:before {
	border: 3px solid #fff;
}
#header #search-option .select-type li label input:checked + span {
	font-weight: 700;
}
#header #search-option .select-type li label input:checked + span:after {
	display: none;
}


/*PC Layout
-------------------*/
@media only screen and (min-width: 769px) {
}

/*SPLayout
-------------------*/
/*@media only screen and (max-width: 768px) {*/
@media only screen and (max-width: 1274px) {
	#header,
	#header.scroll {
		height: 80px;
	}
	#header-inner {
		display:block;
		padding: 30px 4.5% 0;
	}
	#header-inner .icon-bg {
		/*width: 235px;
		height: 232px;
		right: -123px;
		top: -89px;*/
		width: 172px;
		height: 170px;
		right: -90px;
		top: -37px;
	}
	#header.scroll #header-inner {
		padding-top: 30px;
	}
	#header .logo {
		width: 50px;
	}
	#header .corp-name {
		/*display: none;*/
		position: absolute;
		width: 60%;
		right: 90px;
		top: 40px;
	}

	#header #btn-menu {
		background-color: transparent;
		width: 28px;
		height: 12px;
		position: absolute;
		top: 40px;
		right: 5vw;
		right: 20px;
		right: 15px;
		z-index: 10;
	}
	#header #btn-menu.active {
		right: 8vw;
		right: 25px;
	}
	#header #btn-menu:before,
	#header #btn-menu:after {
		content: '';
		display: block;
		background-color: #fff;
		height: 2px;
		width: 100%;
		position: absolute;
		left: -10px;
		top: 0;
		transition: 0.2s ease-in-out;
	}
	#header #btn-menu.scroll:before,
	#header #btn-menu.scroll:after {
		background-color: #000;
	}
	#header #btn-menu:after {
		content: '';
		display: block;
		background-color: #fff;
		height: 2px;
		width: 100%;
		position: absolute;
		left: 0;
		top: 12px;
	}
	#header #btn-menu.active:before,
	#header #btn-menu.active:after {
		left: 0;
		top: 0;
		transform: rotate(45deg);
	}
	#header #btn-menu.active:after {
		left: 0;
		top: 0;
		transform: rotate(-45deg);
	}

	#header #gNav {
		color: #fff;
		background-color: #5AAFE1;
		padding: 9vw;
		position: absolute;
		top: 80px;
		right: 0;
		overflow: auto;
		max-height: calc(100vh - 80px);
		height: 0;
		width: 0;
		width: 91vw;
		opacity: 0;
		visibility: hidden;
		transition: 0.2s ease-in-out;
	}
	#header #gNav.open {
		height: auto;
		opacity: 1;
		visibility: visible;
	}
	#header .nav-level01 {
		margin-top: 9vw;
		margin-top: 30px;
	}
	#gNav .nav-level01 > li {
		display: block;
		margin-right: 0;
		margin-top: 20px;
	}
	#gNav .nav-level01 > li:first-child {
		margin-top: 0;
	}
	#gNav .nav-level01 li a {
		color: #fff;
		font-size: 1.6rem;
		display: block;
		position: relative;
	}

	#gNav .nav-level01 .sub-menu {
		width: 100%;
		margin-left: 0;
		padding-left: 9vw;
		display: block;
		position: relative;
		left: auto;
		top: auto;
		height: auto;
		opacity: 1;
		visibility: visible;
		display: none;
		transition: 0s ease-in-out;
	}
	#header.scroll #gNav .nav-level01 .sub-menu {
		top: auto;
		display: none;
	}
	#gNav .nav-level01 .sub-menu .btn-close {
		display: none;
	}
	#gNav .nav-level01 .sub-menu dl {
		display: none;
	}
	#gNav .nav-level01 .sub-menu .nav-level02 {
		padding-top: 10px;
		width: auto;
		position: relative;
	}
	#gNav .nav-level01 .sub-menu .nav-level02:after {
		display: none;
	}
	#gNav .nav-level01 .sub-menu .nav-level02 li a {
		font-size: 1.4rem;
		padding-right: 0;
		width: calc(100% - 10vw);
	}
	#gNav .nav-level01 > li.arrow,
	#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow {
		position: relative;
	}
	#gNav .nav-level01 > li.arrow .level01-trigger,
	#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow .level03-trigger {
		display: block;
		height: 15px;
		width: 15px;
		position: absolute;
		right: 0;
		top: 50%;
		margin-top: -5px;
		top: 10px;
		margin-top: -2px;
	}
	/*#gNav .nav-level01 > li.arrow > a:after,*/
	#gNav .nav-level01 > li.arrow .level01-trigger:after,
	#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow .level03-trigger:after {
		content: '';
		display: block;
		height: 7px;
		width: 7px;
		border-top: solid #fff 2px;
		border-right: solid #fff 2px;
		position: absolute;
		right: 10px;
		top: 50%;
		margin-top: -8px;
		transform: rotate(135deg);
	}
	/*#gNav .nav-level01 > li.arrow > a.active:after,*/
	#gNav .nav-level01 > li.arrow .level01-trigger.active:after,
	#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow .level03-trigger.active:after {
		border-top: solid #fff 2px;
		border-right: solid #fff 2px;
		position: absolute;
		right: 10px;
		top: 50%;
		margin-top: -5px;
		transform: rotate(-45deg);
	}
	/*#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow .level03-trigger {
		top: 10px;
		margin-top: 0;
	}*/
	#gNav .nav-level01 .sub-menu .nav-level02 > li.arrow:hover > a:after {
		transform: rotate(45deg);
		display: none;
	}
	#gNav .nav-level01 .sub-menu .nav-level03 {
		padding-top: 0px;
		width: auto;
		padding-left: 5vw;
		position: relative;
		left: auto;
		top: auto;
		opacity: 1;
		visibility: visible;
		display: none;
		transition: 0s ease-in-out;
	}
	#gNav .nav-level01 .sub-menu .nav-level03 li a {
		padding-left: .8em;
	}

	#header .search-area {
		padding-bottom: 9vw;
		padding-bottom: 40px;
	}
	#header .search-area.search-open {
		padding-bottom: 0;
	}
	#header .search-area .btn-searchbox {
		display: block;
		width: 100%;
		padding: 5px 0;
		height: 30px;
		position: relative;
	}
	#header .search-area .btn-searchbox.active {
		pointer-events: none;
	}
	#header .search-area .btn-searchbox:after {
		content: '';
		background-color: #fff;
		display: block;
		width: 50%;
		width: 100%;
		height: 1px;
		position: absolute;
		left: 0;
		bottom: -10px;
	}
	#header .search-area .btn-searchbox.active:after {
		width: 180px;
	}
	#header .search-area .search-box {
		width: calc(100% - 30px);
		width: 100%;
		margin-top: -30px;
		position: relative;
		z-index: 5;
		height: 0;
		opacity: 0;
		visibility: hidden;
		transition: 0.2s ease-in-out;
	}
	#header .search-area .search-box.open {
		height: auto;
		opacity: 1;
		visibility: visible;
		/*top: 93px;*/
	}

	#header .search-area .search-box .input-keyword {
		font-size: 1.6rem;
		width: 150px;
		margin-left: 25px;
		top: 5px;
	}
	#header .search-area .search-box .btn-close {
		padding-left: 1.5em;
		margin-top: 0;
		height: 1.5em;
		position: absolute;
		top: 0;
		right: 0;
	}
	#header .search-area .search-box .btn-close:before,
	#header .search-area .search-box .btn-close:after {
		height: 2px;
		top: 60%;
		left: 0;
		margin-left: 0;
	}
	#header .search-area .search-box .btn-search {
		color: #000;
		font-size: 1.6rem;
		width: 35%;
		padding: .5em;
		position: absolute;
		bottom: 0;
		right: 0;
		border-radius: 1.5em;
		opacity: 0;
		display: none;
	}
	#header .search-area .search-box.open .btn-search {
		opacity: 1;
		display: block;
	}
	#header #search-option {
		margin-top: 9vw;
		margin-top: 13vw;
		margin-top: 40px;
		display: flex;
		justify-content: space-between;
		position: relative;
		z-index: 1;
	}
	#header #search-option .select-cat {
		width: 55%;
	}
	#header #search-option .select-cat ul {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
		display: block;
	}
	#header #search-option .select-cat ul:before {
		display: none;
	}
	#header #search-option .select-cat ul li {
		display: block;
	}
	#header #search-option .select-cat ul li + li {
		margin-top: 15px;
		margin-left: 0;
	}
	#header #search-option .select-cat li label {
		padding: .4em 0;
		border-radius: 1.5em;
	}
	#header #search-option .select-type {
		width: 35%;
		margin-top: 0;
		position: relative;
	}
	#header #search-option .select-type ul li {
		display: block;
	}
	#header #search-option .select-type ul li + li {
		margin-left: 0;
	}
	#header #search-option .select-type li label input + span:before {
		background-color: #5AAFE1;
		margin-right: 5px;
		height: 14px;
		width: 14px;
		border: 1px solid #fff;
	}

	#header #gNav .link-en {
		color: #fff;
		font-size: 1.2rem;
		display: block;
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px solid #fff;
	}
}


/* footer
========================================== */
#footer {
	color: #fff;
	background-color: #000;
	margin-top: 260px;
	padding-top: 160px;
	padding-bottom: 140px;
}
#footer a {
	color: #fff;
	text-decoration: none;
}
#footer a:hover {
	text-decoration: underline;
}
#footer > * {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

#footer .sitemap-row > * {
	width: calc(100% / 4);
}
#footer .sitemap-row dl dt {
	font-weight: 500;
}
#footer .sitemap-row dl * + dt {
	margin-top: 2.5em;
}
#footer .sitemap-row dl dd {
	padding-left: 1em;
	padding-top: .8em;
}
#footer .sitemap-row dl dd:empty {
	display: none;
}
#footer .sitemap-row dl dd .link-list li {
	margin-top: 1em;
}
#footer .sitemap-row .products {
	width: calc(100% / 2);
}
#footer .sitemap-row .products dd ul {
	width: 50%;
	margin-right: -4px;
	display: inline-block;
	vertical-align: top;
}

#footer .link-row {
	margin-top: 150px;
}
#footer .link-row .link-list {
	display: flex;
}
#footer .link-row .link-list li {
	margin-right: 34px;
}
#footer .link-row .link-list li:last-child {
	margin-right: 0;
}
#footer .link-row .link-list li a {
	font-size: 1.2rem;
	font-weight: 500;
}
#footer .link-row .link-sns {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
#footer .link-row .link-sns li {
	margin-right: 22px;
}
#footer .link-row .link-sns li:last-child {
	margin-right: 0;
}
#footer .last-row {
	margin-top: 135px;
	align-items: flex-end;
}
#footer .last-row .logo img {
	width: 200px;
}
#footer .last-row .copyright {
	font-size: 1.2rem;
}


/*PC Layout
-------------------*/
@media only screen and (min-width: 769px) {
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	#footer {
		color: #000;
		background-color: #fff;
		margin-top: 40px;
		padding-bottom: 70px;
		padding-top: 0;
	}
	#footer a {
		color: #000;
	}
	#footer .sitemap-row {
		display: none;
	}
	#footer .link-row,
	#footer .last-row {
		display: block;
		justify-content: space-between;
	}
	#footer .link-row {
		margin-top: 0;
		padding-top: 40px;
		border-top: 1px solid #888888;
	}
	#footer .link-row .link-list {
		display: block;
	}
	#footer .link-row .link-list li {
		margin-right: 1em;
		display: inline-block;
	}
	#footer .link-row .link-list li:nth-child(n+3) {
		margin-top: 1.5em;
	}
	#footer .link-row .link-sns {
		margin-top: 50px;
	}
	#footer .link-row .link-sns li {
		margin-right: 20px;
	}
	#footer .link-row .link-sns li img {
		width: auto;
		height: 21px;
	}

	#footer .last-row {
		margin-top: 38px;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}
	#footer .last-row .logo img {
		width: 90px;
		vertical-align: bottom;
	}
	#footer .last-row .copyright {
		font-size: 1rem;
	}
}


/* main
========================================== */
#main {
	padding-top: calc(144px + 56px);
	position: relative;
	z-index: 50;
}
#main * + section {
	margin-top: 90px;
}
#main > * > * + section {
	margin-top: 160px;
	margin-top: 150px;
}
#main section p:not([class]) {
	line-height: 2;
}
#main section * + p:not([class]) {
	margin-top: 1.5em;
	margin-top: 2em;
}
.indent-blc {
	padding-left: 90px;
}
.indent-blc02 {
	padding-left: 30px;
}

#main .foot-logo {
	margin-top: 185px;
}
#main .foot-logo img {
	width: 860px;
}

#main .breadcrumb {
	margin-top: 70px;
	margin-top: 120px;
	padding: 50px 0;
	border-top: 1px solid #888888;
	border-bottom: 1px solid #888888;
}
#main .breadcrumb ul {
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
}
#main .breadcrumb ul li {
	font-size: 1.4rem;
	display: inline-block;
	margin-right: -4px;
}
#main .breadcrumb ul li + li {
	margin-left: 1.8em;
}
#main .breadcrumb ul li + li:before {
	content: '';
	display: inline-block;
	background-color: #fff;
	width: 5px;
	height: 5px;
	margin-right: 1.8em;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
	position: relative;
	top: -2px;
	left: 0;
	transform: rotate(-135deg);
}
#main .breadcrumb ul li span {
	font-weight: 500;
}

#main-col-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
* + #main-col-wrap {
	margin-top: 144px;
}
#main-col-wrap .main-col {
	width: calc(100% - 220px);
	padding-right: 8.3%;
}
#main-col-wrap .side-col {
	width: 220px;
}
#main-col-wrap .side-col .lnav-heading {
	font-size: 2.4rem;
	font-weight: 500;
	background-image: url(/common/images/icon-p01.svg);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 40px auto;
	padding-left: 68px;
}
#main-col-wrap .side-col .lnav-heading.icon02 {
	background-image: url(/common/images/icon-p02.svg);
}
#main-col-wrap .side-col .lnav-heading.icon03 {
	background-image: url(/common/images/icon-p03.svg);
}
#main-col-wrap .side-col .lnav-heading.icon-none {
	background-image: url();
	padding-left: 0;
}
#main-col-wrap .side-col .local-nav {
	margin-top: 37px;
	border-top: 3px solid #5AAFE1;
}
#main-col-wrap .side-col .local-nav dt {
	font-size: 1.8rem;
	font-weight: 700;
	margin-top: 30px;
}
#main-col-wrap .side-col .local-nav dd {
	padding: 40px 0 40px 1em;
	border-bottom: 1px solid #888888;
}
#main-col-wrap .side-col .local-nav dd ul {
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
}

#main .link-sns {
	margin-top: 1em;
	text-align: right;
}
#main .link-sns li {
	display: inline-block;
	margin-left: 1em;
}

/*PC Layout
-------------------*/
@media only screen and (min-width: 769px) {
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	#main {
		padding-top: calc(80px + 20px);
	}
	#main * + section {
		margin-top: 5em;
		margin-top: 65px;
	}
	#main > * + section {
		margin-top: 4em;
	}
	.indent-blc {
		padding-left: 0;
	}
	.indent-blc02 {
		padding-left: 0;
	}
	.indent-blc-sp {
		padding-left: 1em;
	}
	#main-col-wrap {
		flex-wrap: wrap;
	}
	* + #main-col-wrap {
		margin-top: 4em;
	}
	#main-col-wrap .main-col {
		width: 100%;
		padding-right: 0;
	}
	#main-col-wrap .side-col {
		margin-top: 4em;
		width: 100%;
	}
	#main-col-wrap .side-col .local-nav dt {
		margin-top: 20px;
	}
	#main-col-wrap .side-col .local-nav dd {
		padding: 20px 0 20px 1em;
	}

	#main .foot-logo {
		margin-top: 32vw;
	}
	#main .foot-logo img {
		width: 100%;
	}
	#main .breadcrumb ul li {
		display: block;
	}
}


/* parts
========================================== */
/* heading
-------------------------------- */
[class*="heading"] {
	font-weight: 500;
	line-height: 1.5;
}
[class*="heading"] + [class*="heading"] {	/* パーツリスト用 */
	margin-top: 90px;
	margin-top: 60px;
}
[class*="heading"] + * {
	margin-top: 2em !important;
}
.heading01 {
	font-size: 4rem;
}
h1.heading01 + * {
	margin-top: 150px;
	margin-top: 110px !important;
}
.index .heading01 {
	font-size: 7.2rem;
}
.index .heading01 span {
	font-size: 2.4rem;
	font-weight: 400;
	display: block;
}
.heading02 {
	font-size: 3.6rem;
}
.heading03 {
	font-size: 3.2rem;
}
.heading04 {
	font-size: 2.8rem;
}
.heading05 {
	font-size: 2.4rem;
}
.heading06 {
	font-size: 2rem;
}
.heading07 {
	font-size: 1.6rem;
}
[class*="underline-"] {
	padding-bottom: 1em;
	padding-bottom: .7em;
	position: relative;
}
[class*="underline-"]:after {
	content: '';
	height: 2px;
	width: 5em;
	width: 240px;
	position: absolute;
	bottom: 0;
	bottom: -2px;
	left: 0;
}
.heading01[class*="underline-"] {
	padding-bottom: .7em;
}
.heading01[class*="underline-"]:after {
	width: 5em;
}
.underline-blue {
	border-bottom: 1px solid #5AAFE1;
}
.underline-blue:after {
	background-color: #5AAFE1;
}
.underline-black {
	border-bottom: 1px solid #888888;
}
.underline-black:after {
	display: none;
}
.under-short {
	border-bottom: none;
}
.inline {
	display: inline-block;
	margin-top: 0;	/* パーツリスト用 */
}
ul.inline {
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
}
[class*="heading"].inline + .inline {
	margin-left: 58px;
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	.heading01 {
		font-size: 1.5rem;
		font-size: 2.8rem;
	}
	h1.heading01 + * {
		margin-top: 90px !important;
		margin-top: 40px !important;
	}
	.index .heading01 {
		font-size: 4rem;
	}
	.index .heading01 span {
		font-size: 1.4rem;
		margin-top: 0.5em;
	}
	.heading02 {
		font-size: 2.8rem;
	}
	.heading03 {
		font-size: 2.4rem;
	}
	.heading04 {
		font-size: 2rem;
	}
	.heading05 {
		font-size: 1.8rem;
	}
	.heading06 {
		font-size: 1.6rem;
	}
	.heading07 {
		font-size: 1.4rem;
	}
	[class*="underline-"]:after {
		width: 120px;
	}
	.inline {
		display: inline-block;
		margin-top: 0;	/* パーツリスト用 */
	}
	[class*="heading"].inline + .inline {
		margin-left: 58px;
	}
	.heading05 + *,
	.heading06 + *,
	.heading07 + * {
		margin-top: 1em !important;
	}
}


/* layout
-------------------------------- */
* + [class*="-wrap"],
[class*="-wrap"] + * {
	margin-top: 80px !important;
	margin-top: 2em !important;
}
.flex-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	align-content: flex-start;
	align-items: stretch;
}
.flex-wrap[data-col="2"] > * {
	width: calc((100% - 7.5%) / 2);
	margin-right: 7.5%;
}
.flex-wrap[data-col="3"] > * {
	width: calc((100% - 15%) / 3);
	margin-right: 7.5%;
}
.flex-wrap[data-col="4"] > * {
	width: calc((100% - 22.5%) / 4);
	margin-right: 7.5%;
}
.flex-wrap[data-col="2"] > *:nth-child(2n),
.flex-wrap[data-col="3"] > *:nth-child(3n),
.flex-wrap[data-col="4"] > *:nth-child(4n) {
	margin-right: 0;
}
.flex-wrap[data-col="2"] > *:nth-child(n+3),
.flex-wrap[data-col="3"] > *:nth-child(n+4),
.flex-wrap[data-col="4"] > *:nth-child(n+5) {
	margin-top: 7.5%;
	margin-top: 2em;
}
.col-wrap > * {
	/*background-color: chocolate;	コーディング確認*/
	width: calc((100% - 15%) / 3);
}
.col-wrap.large-l > * {
	float: left;
}
.col-wrap > *:first-child {
	width: calc(100% - ((100% - 15%) / 3) - 7.5%);
}
.col-wrap > *:nth-child(n+3) {
	margin-top: 7.3%;
}
.col-wrap.large-l > *:first-child {
	margin-right: 7.5%;
}
.col-wrap.large-r > * {
	float: right;
}
.col-wrap.large-r > *:first-child {
	margin-left: 7.5%;
}

[class*="float-"] {
	margin-bottom: 1em;
	width: auto;
	text-align: center;
}
* + [class*="float-"] {
	margin-top: 2em !important;
}
.float-r {
	float: right;
	margin-left: 3.75%;
}
.float-l {
	float: left;
	margin-right: 3.75%;
}
[class*="float-"] figcaption {
	text-align: center;
	margin-top: 1em;
}


.flex-menu[class*="border-top"] > * {
	padding: 2em 0;
	border-bottom: 2px #5AAFE1 solid;
	margin-top: 0 !important;
}
.flex-menu[class*="border-top"][data-col="2"] > *:nth-child(-n+2),
.flex-menu[class*="border-top"][data-col="3"] > *:nth-child(-n+3),
.flex-menu[class*="border-top"][data-col="4"] > *:nth-child(-n+4) {
	border-top: 2px #5AAFE1 solid;
}
[class*="underline-"] + .flex-menu[class*="border-top"][data-col="2"] > *:nth-child(-n+2),
[class*="underline-"] + .flex-menu[class*="border-top"][data-col="3"] > *:nth-child(-n+3),
[class*="underline-"] + .flex-menu[class*="border-top"][data-col="4"] > *:nth-child(-n+4) {
	border-top: none;
}
.flex-menu.border-top02 > * {
	padding-top: 70px;
	padding: 70px 0;
}
.flex-menu.border-top03 > * {
	padding-top: 107px;
	padding: 107px 0;
}
.flex-menu.thumb > * {
	padding-top: 0;
	border-top: none;
}
.flex-menu.thumb[data-col="2"] > *:nth-child(n+3),
.flex-menu.thumb[data-col="3"] > *:nth-child(n+4),
.flex-menu.thumb[data-col="4"] > *:nth-child(n+5) {
	margin-top: 3em;
}
.flex-menu .menu-title {
	display: table;
	min-height: 48px;
	width: 100%;
}
.flex-menu .menu-title a {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.3;
	background-image: url(/common/images/icon-newwin.svg);
	background-image: url(/common/images/icon-p01.svg);
	background-size: 48px auto;
	background-repeat: no-repeat;
	background-position: left -5px center;
	display: table-cell;
	vertical-align: middle;
	padding: 0 40px 0 70px;
	position: relative;
}
.flex-menu .menu-title a.icon02 {
	background-image: url(/common/images/icon-p02.svg);
	background-position: left center;
}
.flex-menu .menu-title a.icon03 {
	background-image: url(/common/images/icon-p03.svg);
	background-position: left center;
}
.flex-menu.icon-none .menu-title {
	min-height: inherit;
}
.flex-menu.icon-none .menu-title a {
	background-image: url();
	padding-left: 0;
	vertical-align: top;
}
.flex-menu .menu-title a:after {
	content: '';
	display: block;
	height: 6px;
	width: 6px;
	border-top: solid #5AAFE1 2px;
	border-right: solid #5AAFE1ff 2px;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -5px;
	transform: rotate(45deg);
}
.flex-menu.thumb .menu-title {
	display: block;
	min-height: inherit;
	margin-top: 1.5em;
}
.flex-menu.thumb .menu-title a {
	background-image: url();
	display: block;
	padding: 0;
}
.flex-menu.thumb .menu-title a:after {
	display: none;
}
.flex-menu .sub-title {
	font-size: 2rem;
	line-height: 1.3;
	margin-top: 1em;
}
.flex-menu .sub-title + p {
	margin-top: 1.25em !important;
}

.flex-menu[data-col="1"] > * {
	margin-top: 80px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.flex-menu[data-col="1"] > *:first-child {
	margin-top: calc(80px - 2em);
}
.flex-menu[data-col="1"] > * figure {
	width: 36.8%;
	width: 324px;
	margin-right: 7.5%;
}
.flex-menu[data-col="1"] > * .text-col {
	width: calc(100% - 7.5% - 324px);
}
.flex-menu.thumb[data-col="1"] .menu-title {
	margin-top: 0;
}

.flex-menu.thumb.w-full .col > *:not([class]) {
	margin-top: 1.5em;
}
.flex-menu.thumb.w-full.margin-r {
	padding-right: 12.5%;
}
.flex-menu.thumb.w-full.margin-r .col > *:not(figure) {
	padding-left: 12%;
}
.flex-menu.thumb.w-full.margin-l {
	padding-left: 12.5%;
}
.flex-menu.thumb.w-full.margin-l .col > *:not(figure) {
	padding-right: 12%;
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	* + [class*="-wrap"],
	[class*="-wrap"] + * {
		margin-top: 50px !important;
	}
	.flex-wrap[data-spcol="1"] > * {
		width: 100%;
		margin-right: 0;
	}
	.flex-wrap[data-spcol="1"] > * + * {
		margin-top: 3em;
	}

	.flex-menu[data-spcol="1"] > * {
		flex-wrap: wrap;
		margin-top: 40px;
	}
	.flex-menu[data-spcol="1"] > *:first-child {
		margin-top: calc(40px - 2em);
	}
	.flex-menu[data-spcol="1"] > * figure {
		margin-right: 0;
		width: 100%;
	}
	.flex-menu[data-col="1"] > * .text-col {
		margin-top: 1.5em;
		width: 100%;
	}

	.col-wrap > * {
		width: 100%;
	}
	.col-wrap.large-l > *,
	.col-wrap.large-r > * {
		float: none;
	}
	.col-wrap > *:first-child {
		width: 100%;
	}
	.col-wrap > *:nth-child(n+3),
	.col-wrap > * + *  {
		margin-top: 2em;
	}
	.col-wrap.large-l > *:first-child {
		margin-right: 0;
	}
	.col-wrap.large-r > *:first-child {
		margin-left: 0;
	}

	.flex-menu[class*="border-top"][data-col="2"] > *:nth-child(n+2):nth-child(-n+2),
	.flex-menu[class*="border-top"][data-col="3"] > *:nth-child(n+2):nth-child(-n+3),
	.flex-menu[class*="border-top"][data-col="4"] > *:nth-child(n+2):nth-child(-n+4) {
		border-top: none;
	}

	[class*="heading"] + .flex-menu.border-top02,
	[class*="heading"] + .flex-menu.border-top03 {
		margin-top: 0 !important;
	}
	.flex-menu.border-top02 > *,
	.flex-menu.border-top03 > * {
		padding: 20px 0;
	}
	.flex-menu .menu-title a {
		font-size: 1.6rem;
		background-size: 21px auto;
		padding: 0 20px 0 40px;
	}
	.flex-menu .menu-title + p {
		display: none;
	}

	[class*="float-"] {
		margin-bottom: 1em;
		width: auto;
	}
	* + [class*="float-"] {
		margin-top: 2em !important;
	}
	.float-r,
	.float-l  {
		float: none;
		margin-left: 0;
	}
}


/* contact-area
-------------------------------- */
.contact-area {
	justify-content: space-between;
	margin-top: 100px !important;
}
.contact-area > *:nth-child(1) {
	width: 61%;
}
.contact-area > *:nth-child(2) {
	width: 31%;
	padding-top: .7em;
}

.contact-area .heading01 {
	font-size: 2.8rem;
}

@media only screen and (max-width: 768px) {
	.contact-area .heading01 {
		font-size: 2.2rem;
	}
	.contact-area > *:nth-child(1),
	.contact-area > *:nth-child(2) {
		width: 100%;
	}
	.contact-area > *:nth-child(2) {
		padding-top: 50px;
	}
}


/* list parts
-------------------------------- */
body {counter-reset: numList;}
.start01 {counter-reset: numList 0 !important;}
.start02 {counter-reset: numList 1 !important;}
.start03 {counter-reset: numList 2 !important;}
.start04 {counter-reset: numList 3 !important;}
.start05 {counter-reset: numList 4 !important;}
.start06 {counter-reset: numList 5 !important;}
.start07 {counter-reset: numList 6 !important;}
.start08 {counter-reset: numList 7 !important;}
.start09 {counter-reset: numList 8 !important;}
.start10 {counter-reset: numList 9 !important;}

[class*="normal-list"],
[class*="normal-list"] > li > ul,
.number-list01 {
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
	line-height: 2;
}
.normal-list01 > li {
	padding: 0 0 0 1em;
	position: relative;
}
.normal-list01 > li:before {
	content: "・";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}
.normal-list01 > li {
	padding-left: 15px;
}
.normal-list01 > li > * {
	padding-left: 1em;
	margin-top: .5em;
}

* + .normal-list02 {
	margin-top: 2em;
}
.normal-list02 > li {
	padding-left: 1em;
	position: relative;
}
.normal-list02 > li:before {
	content: "";
	background-color: #707070;
	display: block;
	width: .4em;
	height: 1px;
	position: absolute;
	left: 0;
	top: 1.2em;
}
@media only screen and (max-width: 768px) {
	* + .normal-list02 {
		margin-top: 1em;
	}
}

.tag-list {
	margin-top: 0em;
	width: calc(100% + 15px);
	padding-top: .5em;
	padding-inline-start: 0;
	position: relative;
}
.tag-list li {
	margin-top: 1em;
	margin-right: 10px;
	display: inline-block;
}
.tag-list li > * {
	display: block;
	padding: .4em 1.3em;
	border: 1px #888888 solid;
	border-radius: 1.5em;
}
.tag-list li.tag-ttl > * {
	color: #fff;
	background-color: #888888;
	margin-right: 27px;
}
@media only screen and (max-width: 768px) {
	.tag-list {
		width: auto;
	}
	.tag-list li > * {
		font-size: 1.1rem;
	}
}

.menu-list {
	margin-top: -15px;
	width: calc(100% + 30px);
	padding-top: 2em;
	padding-inline-start: 0;
	position: relative;
}
.menu-list li {
	/*margin-top: 1em;*/
	margin-top: 15px;
	margin-right: 15px;
	display: inline-block;
	vertical-align: middle;
}
.menu-list li a {
	border: 1px solid #888;
	border-radius: 50px;
	color: #000;
	font-size: 1.4rem;
	display: block;
	padding: 8px 20px;
	text-align: center;
}
.menu-list li.link-btn02 {
	margin-right: 35px;
}
.menu-list li.link-btn02 a {
	background-color: #888888;
	font-size: 1.6rem;
	color: #fff;
}
@media only screen and (max-width: 768px) {
	.menu-list {
		margin-top: -10px;
		padding-top: 1em;
		width: auto;
	}
	.menu-list li {
		margin-top: 10px;
		margin-right: 10px !important;
	}
	.menu-list li a {
		font-size: 1.1rem;
	}
	.menu-list li.link-btn02 a {
		font-size: 1.4rem;
	}
}

[class*="number-list"] {
	counter-reset: numList;
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
}
[class*="number-list"] > li {
	padding: 0 0 0 1.8em;
	padding: 0 0 0 2.2em;
	position: relative;
}
[class*="number-list"] > li:before {
	font-size: 1.8rem;
	font-weight: 500;
	content: "";
	content: counter(numList,decimal) "．";
	counter-increment: numList;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}
[class*="number-list"].lower-roman > li:before {
	font-size: 1.8rem;
	font-weight: 500;
	content: "";
	content: counter(numList,lower-roman) "．";
	counter-increment: numList;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}
[class*="number-list"] > li > [class*="number-list01"] {
	margin-top: 0.5em;
}
[class*="number-list"] > li > * {
	margin-left: -.5em;
	margin-left: -.8em;
}
[class*="number-list"] > li .heading {
	font-size: 1.8rem;
	font-weight: 500;
	margin-left: -.3em;
}
.number-list02 > li .heading,
.number-list02 > li:before {
	font-size: 1.6rem;
}
[class*="number-list"] > li:nth-child(n+2),
[class*="number-list"] > li:nth-child(n+2) {
	margin-top: 1.5em;
}
[class*="number-list"].mt-none > li:nth-child(n+2),
[class*="number-list"].mt-none > li:nth-child(n+2) {
	margin-top: 0;
}
.notice {
	padding-left: 1em;
	text-indent: -1em;
}
.notice:before {
	content: '※';
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	.normal-list01 > li:before {
		left: -5px;
	}
	.normal-list01 > li {
		padding-left: 15px;
	}
	.normal-list01 > li > * {
		padding-left: 1em;
		margin-top: .5em;
	}

	[class*="number-list"] > li {
		padding: 0 0 0 2.2em;
		padding: 0 0 0 1.8em;
	}
	.number-list01 > li {
		font-size: 1.7rem;
	}
	.number-list01 > li > * {
		margin-left: -1.2em;
		margin-left: -1em;
		/*margin-top: .5em;*/
	}
	[class*="number-list"] > li .heading {
		font-size: 1.7rem;
		margin-left: 0;
	}
	.normal-list01 > li:nth-child(n+2),
	.number-list01 > li:nth-child(n+2) {
		margin-top: 1.5em;
	}
	.normal-list01.mt-none > li:nth-child(n+2),
	.number-list01.mt-none > li:nth-child(n+2) {
		margin-top: 0;
	}
}


/* definition list
-------------------------------- */
[class*="definition-list"] dt {
	font-weight: 500;
}
.definition-list01 dd {
	font-size: 1.4rem;
	background-color: #FAFAFA;
	border: 1px solid #707070;
	padding: 20px;
	margin-top: 1em;
}
.definition-list02 {
	border: solid 3px #EDEDED;
	padding: 25px 30px;
}
/*.definition-list02 dt,
.definition-list02 dd {
	font-size: 1.4rem;
}*/

@media only screen and (max-width: 768px) {
	.definition-list01 dt {
		font-size: 1.7rem;
	}
	.definition-list01 dd {
		font-size: 1.6rem;
		padding: 30px;
	}
}


/* link
-------------------------------- */
.link-more {
	font-size: 1.6rem;
	font-weight: 500;
	margin-top: 2em;
	margin-top: 45px;
	text-align: right;
}
.link-more a {
	background-repeat: no-repeat;
	background-image: url(/common/images/arrow02.svg);
	background-size: 92px 92px;
	background-position: right center;
	display: inline-block;
	line-height: 92px;
	padding-right: 138px;
	position: relative;
	z-index: 1;
}
.link-rss {
	margin-left: 35px;
	position: relative;
	top: .7em;
}
* + .link-btn01 {
	margin-top: 2em;
}
.link-btn01 > * {
	color: #000;
	font-size: 1.8rem;
	text-align: center;
	background-color: #fff;
	display: inline-block;
	padding: 1.5em 5em;
	border-radius: 3em;
	border: 1px #888888 solid;
	cursor: pointer;
	transition: 0.2s ease-in-out;
}
.link-btn01 > *:hover {
	opacity: .8;
}
@media only screen and (max-width: 768px) {
	* + .link-btn01 {
		margin-top: 1em;
	}
	.link-btn01 > * {
		font-size: 1.6rem;
		padding: 1em 5em 1em 2.5em;
		border-radius: 50px;
		position: relative;
		text-align: left;
		width: 100%;
	}
	.link-btn01 > *:after {
		content: '';
		display: block;
		height: 6px;
		width: 6px;
		border-top: solid #000 2px;
		border-right: solid #000 2px;
		position: absolute;
		right: 2.5em;
		top: 50%;
		margin-top: -5px;
		transform: rotate(45deg);
	}
}

.link-btn02 a {
	background-color: #BBBBBB;
	background-color: rgba(187, 187, 187, 0.2);
	display: inline-block;
	padding: .5em 2em;
	border-radius: 1.5em;
}

.link-ancher {
	margin-top: 90px;
	text-align: right;
}
.link-ancher li {
	font-size: 2rem;
	display: inline-block;
	margin-left: 2em;
	position: relative;
}
.link-ancher li:hover:after,
.link-ancher li.current:after {
	content: '';
	background-color: #5AAFE1;
	display: block;
	width: 100%;
	height: 3px;
	position: absolute;
	bottom: -.5em;
	left: 0;
}
.heading01 + .link-ancher {
	margin-top: 0 !important;
	position: absolute;
	right: 0;
	top: calc(144px + 80px);
}
.link-ancher.arrow li a {
	display: inline-block;
}
.link-ancher.arrow li a:after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	margin-left: 15px;
	position: relative;
	top: -4px;
	transform: rotate(-45deg);
}
.link-ancher.arrow li:hover:after {
	display: none;
}

@media only screen and (max-width: 768px) {
	.link-more {
		font-size: 1.4rem;
		margin-top: 3em;
	}
	.link-more:before {
		background-size: auto 100%;
		background-position: bottom right;
		width: 44px;
		height: 7px;
		margin-right: 20px;
	}
	.link-more a {
		background-size: 61px 61px;
		line-height: 61px;
		padding-right: 80px;
	}
	.link-rss {
		margin-left: 20px;
		top: .6em;
	}
}


/* news-list
-------------------------------- */
[class*="news-list"] {
	list-style: none;
	padding-inline-start: 0;
	margin-block-start: 0;
    margin-block-end: 0;
}
* + [class*="news-list"] {
	margin-top: 60px;
}
.archive-link + [class*="news-list"] {
	margin-top: 30px;
}
/*[class*="news-list"] li {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}*/
[class*="news-list"] li a {
	text-decoration: none;
}
[class*="news-list"] li a:hover {
	text-decoration: underline;
}
[class*="news-list"] li .entry-title a {
	font-weight: 500;
	padding-left: 2em;
	display: block;
}
[class*="news-list"] li > * {
	margin-top: 0 !important;
}
[class*="news-list"] li > *:first-child {
	color: #777777;
	/*width: 15.5em;*/
}
[class*="news-list"] li > *:first-child span,
[class*="news-list"] li .txt-col span[class*="entry-"] {
	display: inline-block;
	margin-right: 2em;
}
[class*="news-list"] li > *:first-child span:last-child,
[class*="news-list"] li .txt-col span[class*="entry-"]:last-child {
	color: #000;
	font-weight: 600;
	margin-right: 0;
}
[class*="news-list"] li > *:first-child span.entry-corp {
	font-weight: 500;
}
[class*="news-list"] li > *:first-child span.entry-cat,
[class*="news-list"] li .txt-col span.entry-cat {
	color: #5AAFE1;
	font-weight: 500;
}
/*[class*="news-list"] li > *:nth-child(2) {
	width: calc(100% - 15.5em);
}*/
.news-list01 * + li  {
	margin-top: 60px;
	margin-top: 45px;
}
/*.news-list02 {
	border-bottom: 1px solid #707070;
}*/
.news-list02 > li {
	padding: 30px 0;
	border-bottom: 1px solid #DCDCDC;
}
.news-list02 * + li {
	margin-top: 0;
}
.news-list02.flex {
	border-top: 1px solid #DCDCDC;
}
.news-list02.flex > li {
	display: flex;
	flex-wrap: nowrap;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.news-list02.flex > li p:first-child{
	width: 9em;
}
.news-list02.flex > li p:last-child{
	width: calc(100% - 9em);
}
.news-list02.flex > li p.entry-title a {
	padding-left: 0;
}
.news-list02.flex > li p.entry-title span {
	display: inline-block;
}
.news-list02.flex > li p.entry-title * + span {
	margin-left: 2.5em;
}
.past-list dd .entry-title a {
	font-weight: 500;
}
[class*="news-list"] .is-hide {
	display: none !important;
}

.icon-pdf,
.icon-win {
	font-size: 1rem;
	font-weight: 500;
	font-style: normal;
	line-height: 2rem;
	padding: 0 .4em;
	display: inline-block;
	margin-left: 1em;
	border: #000 solid 1px;
	position: relative;
	top: -2px;
}
.icon-win {
	border: none;
}
a:hover .icon-pdf {
	text-decoration: none;
}

.yearly-archive dt {
	display: none;
}
.yearly-list {
	padding-bottom: 35px;
	border-bottom: 1px solid #5AAFE1;
}
.yearly-list li {
	display: inline-block;
}
.yearly-list li + li {
	margin-left: 2em;
}
.yearly-list li .current {
	font-weight: 700;
}

.pagenate-list {
	margin-top: 120px;
	margin-top: 80px;
	text-align: center;
}
.pagenate-list li {
	display: inline-block;
}
.pagenate-list li + li {
	margin-left: 30px;
	margin-bottom: 10px;
}
.pagenate-list li a,
.pagenate-list li button {
	text-align: center;
	display: block;
	line-height: 60px;
	border: 1px solid #888888;
	width: 60px;
	text-decoration: none;
}
.pagenate-list li a:hover,
.pagenate-list li button:hover {
	text-decoration: underline;
}
.pagenate-list li.current a {
	border: 1px solid #5AAFE1;
	pointer-events: none;
}
.pagenate-list li.prev a,
.pagenate-list li.next a,
.pagenate-list li button {
	font-size: 1.6rem;
	width: auto;
	border: none;
	cursor: pointer;
}
.pagenate-list li.disabled a,
.pagenate-list li.disabled button,
.pagenate-list li.current + .next {
	opacity: .5;
	pointer-events: none;
}

.pagenate-list li.prev a:after,
.pagenate-list li.next a:before,
.pagenate-list li.prev button:after,
.pagenate-list li.next button:before {
	content: '';
	background-repeat: no-repeat;
	background-image: url(/common/images/arrow01.svg);
	background-size: contain;
	display: inline-block;
	width: 73px;
	height: 7px;
	margin-right: 35px;
	position: relative;
	top:0;
}
.pagenate-list li.prev a:after,
.pagenate-list li.prev button:after {
	margin-right: 0;
	margin-left: 35px;
	transform: scale(-1, 1);
}

.tab-wrap .tab-menu {
	position: relative;
	margin-top: 65px;
}
.tab-wrap .tab-menu li {
	display: inline-block;
}
.tab-wrap .tab-menu li + li {
	margin-left: 20px;
	margin-left: 70px;
}
.tab-wrap .tab-menu li a {
	color: #C8C8C8;
	font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	display: block;
	padding-bottom: 20px;
	border-bottom: 2px solid #C8C8C8;
}
.tab-wrap .tab-menu li.select a {
	color: #000;
	border-bottom: 4px solid #5AAFE1;
}
.tab-wrap .tab-contents {
	transition: 0.2s ease-in-out;
	display: none;
	margin-top: 100px;
	margin-top:70px;
	margin-top:36px;
}
.tab-wrap .tab-contents.select {
	display: block;
}

.tab-wrap .archive-link {
	min-width: 11em;
	display: inline-block;
	margin-top: 65px;
	margin-top: 40px;
	position: relative;
}
.tab-wrap .archive-link +  .archive-link {
	margin-left: 35px;
}
.tab-wrap .archive-link dt {
	font-size: 2rem;
	font-weight: 500;
	cursor: pointer;
}
.tab-wrap .archive-link dt:after {
	content: '';
	display: inline-block;
	background-color: #fff;
	width: 8px;
	height: 8px;
	margin-left: 1em;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	position: relative;
	top: -4px;
	left: 0;
	transform: rotate(-45deg);
}*/
.tab-wrap .archive-link dt.active:after {
	transform: rotate(135deg);
	top: 0px;
}
.tab-wrap .archive-link dd {
	background-color: #fff;
	min-width: 100%;
	padding: 25px 23px;
	position: absolute;
	top: 2.5em;
	left: 2px;
	box-shadow: 5px 5px 10px 0px rgba(0,0,0,0.16);
	z-index: 99;
}
.archive-link.accordion-menu > dd {
	display: none;
}
.tab-wrap .archive-link dd ul li + li {
	margin-top: .7em;
}
.tab-wrap .archive-link dd ul li a {
	display: block;
	/*padding: 5px 0;*/
}
.tab-wrap .archive-link dd input[type=radio] {
	visibility: hidden;
	width: 0;
	padding:0;
}
.tab-wrap .archive-link dd label {
	display: block;
	cursor: pointer;
	white-space: nowrap;
}
.tab-wrap .archive-link dd label.checked {
	text-decoration: underline;
	opacity: .8;
}
.tab-wrap .archive-link dd label:hover {
	text-decoration: underline;
}

/*SPLayout
-------------------*/
@media only screen and (max-width: 768px) {
	* + [class*="news-list"] {
		margin-top: 60px;
	}
	[class*="news-list"] li {
		display: block;
	}
	[class*="news-list"] li > *:nth-child(2) {
		width: 100%;
		margin-top: 1em;
	}
	.news-list01 * + li  {
		margin-top: 3em;
	}

	.yearly-archive {
		position: relative;
	}
	.yearly-archive + * {
		margin-top: 2em;
	}
	.yearly-archive dt {
		font-size: 1.8rem;
		font-weight: 500;
		display: block;
		position: relative;
	}
	.yearly-archive dt:after {
		content: '';
		display: inline-block;
		background-color: #fff;
		width: 12px;
		height: 12px;
		margin-left: 1em;
		border-left: 1px solid #000;
		border-bottom: 1px solid #000;
		position: relative;
		top: -4px;
		left: 0;
		transform: rotate(-45deg);
		pointer-events: none;
	}
	.yearly-archive dt.active:after {
		transform: rotate(135deg);
		top: 5px;
	}
	.yearly-archive dd {
		background-color: #fff;
		padding: 5px 15px 10px 0;
		position: absolute;
		top: 2em;
		left: 0;
		display: none;
	}
	.yearly-list {
		padding-bottom: 0;
		border-bottom: none;
	}
	.yearly-list li {
		display: block;
	}
	.yearly-list li + li {
		margin-left: 0;
		margin-top: .5em;
	}

	.pagenate-list {
		margin-top: 5em;
		padding: 0 0 64px;
		position: relative;
	}
	.pagenate-list li {
		width: calc((100% - 26.8%) / 5);
		margin-right: -4px;
	}
	.pagenate-list li + li {
		margin-left: 6.7%;
		margin-left: calc(6.7% - 2px);
	}
	.pagenate-list li:nth-child(2),
	.pagenate-list li:last-child {
		margin-left: 0;
	}
	.pagenate-list li a {
		font-size: 1.4rem;
		line-height: 45px;
		width: 100%;
	}
	.pagenate-list li.current a {
		border: 1px solid #5AAFE1;
	}
	.pagenate-list li.prev,
	.pagenate-list li.next {
		width: 40%;
		width: auto;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.pagenate-list li.next {
		left: auto;
		right: 0;
		right: 6px;
	}
	.pagenate-list li.prev a:after,
	.pagenate-list li.next a:before,
	.pagenate-list li.prev button:after,
	.pagenate-list li.next button:before {
		background-size: auto 100%;
		background-position: bottom right;
		width: 44px;
		height: 7px;
		margin-right: 20px;
		position: relative;
		top:0;
	}
	.pagenate-list li.prev a:after {
		margin-right: 0;
		margin-left: 20px;
	}

	.tab-wrap .tab-menu {
		margin-top: 3em;
	}
	.tab-wrap .tab-menu li {
		display: block;
		padding-right: 35px;
		height: 0;
		opacity: 0;
		visibility: hidden;
		transition: 0.2s ease-in-out;
	}
	.tab-wrap .tab-menu li.select,
	.tab-wrap .tab-menu.active li {
		height: auto;
		opacity: 1;
		visibility: visible;
	}
	.tab-wrap .tab-menu li + li {
		margin-left: 0;
	}
	.tab-wrap .tab-menu li a {
		color: #000;
		text-align: left;
		padding: 0;
		min-width:initial;
		display: block;
		border-bottom: none !important;
	}
	.tab-wrap .tab-menu li.select a:after,
	.tab-wrap .archive-link dt:after {
		content: '';
		display: inline-block;
		background-color: #fff;
		width: 12px;
		height: 12px;
		margin-left: 1em;
		border-left: 1px solid #000;
		border-bottom: 1px solid #000;
		position: relative;
		top: -4px;
		left: 0;
		transform: rotate(-45deg);
		pointer-events: none;
	}
	.tab-wrap .tab-menu.active li.select a:after {
		transform: rotate(135deg);
		top: 5px;
	}
	.tab-wrap .tab-contents {
		margin-top: 2em;
	}

	.tab-wrap .archive-link {
		margin-top: 35px;
	}
	.tab-wrap .archive-link +  .archive-link {
		margin-left: 35px;
	}
	.tab-wrap .archive-link dt {
		font-size: 1.8rem;
	}
}

/* btn
-------------------------------- */
.btn-list.flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.btn-list.flex > .btn-link {
	margin-top: 65px;
	margin-right: 40px;
}
.btn-link {
	border: 1px solid #000;
	display: table;
}
* + .btn-link {
	margin-top: 65px;
}
.btn-link a {
	display: flex;
	font-size: 1.8rem;
	padding: 28px 130px 28px 36px;
	position: relative;
}
.btn-link a:after {
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100% auto;
	content: "";
	position: absolute;
	top: 50%;
	right: 36px;
	transform: translateY(-50%);
}
/*.btn-link a[target="_blank"]:after {
	background-image: url(/common/images/icon-blank.svg);
	height: 15px;
	width: 18px;
}
.btn-link a[href$=".pdf"]:after {
	background-image: url(/common/images/icon-pdf.svg);
	height: 23px;
	width: 28px;
}*/

.btn-link a .icon-pdf,
.btn-link a .icon-win {
	height: 2.2em;
	top: 5px;
	left: 9.5em;
	margin-left: -3em;
}
.btn-link a .icon-win {
	top: 10px;
}
.btn-link a:hover .icon-pdf {
	text-decoration: none;
}

@media only screen and (max-width: 768px) {
	.btn-list.flex {
		display: block;
	}
	.btn-list.flex > .btn-link {
		margin-top: 30px;
		margin-right: 0;
	}
	* + .btn-link {
		margin-top: 30px;
	}
	.btn-link a {
		font-size: 1.4rem;
		padding: 14px 60px 14px 18px;
	}
	.btn-link a:after {
		right: 18px;
	}
	.btn-link a[target="_blank"]:after {
		height: 11px;
		width: 11px;
	}
	.btn-link a[href$=".pdf"]:after {
		height: 17px;
		width: 20px;
	}

}


/* index
-------------------------------- */
/*.index .first-row .col:nth-child(2) {
	margin-top: 220px;
}*/
.index .first-row {
	flex-wrap: nowrap;
}
.index .flex-wrap figcaption {
	font-size: 2.8rem;
	font-weight: 500;
	text-align: center;
	margin-top: 2em;
}

@media only screen and (max-width: 768px) {
	.index .first-row .col:nth-child(2) {
		margin-top: 50px;
	}
	.index .flex-wrap figcaption {
		font-size: 1.8rem;
		margin-top: .8em;
	}
}

/* margin
-------------------------------- */
* + .number-list01 {
	margin-top: 4em;
}
[class*="number-list"] > li .heading + * {
	margin-top: .5em !important;
}
* + [class*="definition-list"] {
	margin-top: 1em;
}
* + .notice {
	margin-top: 1em;
}

[class*="heading"] + * {
	margin-top: 2em !important;
}

@media only screen and (max-width: 768px) {}


/* Clearfix
========================================== */
.col-wrap:after,
.img-wrap:after {
	content: "";
	display: block;
	clear: both;
}


/* Color utility
========================================== */
.primary {
	color: #FFF;
	background-color: #5AAFE1;
}

.secondary {
	color: #333;
	background-color: #EEE;
}

.link-btn01 .primary,
.link-btn01 .secondary {
	border: none;
}

/* Main SNS Button
========================================== */

main .link-sns a img {
	background-color: #000;
	color: #FFF;
	border: 2px solid #000;
	border-radius: 4px;
}

/* CMS Editor CSS
========================================== */

/* overwrite base.css */
main em {
	font-style: italic;
}

/* overwrite reset.css */
main table {
	border: 1px solid #AAA;
}

main table th,
main table td {
	padding: 0.5em;
	border: 1px solid #AAA;
}

main blockquote {
	margin: 1em;
	border-left: 2px solid #CCC;
	padding-left: 1em;
}

main ul {
	display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 2em;
}

main ol {
    display: block;
    list-style-type: decimal;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 2em;	
}

main hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;	
}

main h1 { font-size: 2em; }
main h2 { font-size: 1.5em; }
main h3 { font-size: 1.17em; }
main h4 { font-size: 1em; }
main h5 { font-size: 0.83em; }
main h6 { font-size: 0.67em; }

main .arrow-link,
main .news-list02,
main .accordion-menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

main .news-list02 .entry-subtitle {
	margin-left: 2em;
}