@charset "utf-8";
/* ----------------------------------------------
form reset
---------------------------------------------- */
input, button, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}
input::placeholder, textarea::placeholder {
	color: #aaaaaa;
}
textarea {
	resize: vertical;
}
input[type='checkbox'], input[type='radio'] {
	display: none;
}
input[type='submit'], input[type='button'], label, button, select {
	cursor: pointer;
}
select::-ms-expand {
	display: none;
}
/* ----------------------------------------------
common
---------------------------------------------- */
* {
	margin: 0px;
	padding: 0px;
}
body {
	overflow-x: hidden;
}
h1, h2, h3, h4, h5 {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}
p, li, dt, dd, th, td, input, label, select, div {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
}
ul, dl, ol {
	list-style-type: none;
}
a {
	color: #000000;
	text-decoration: none;
}
a:hover {
	transition: all 0.3s;
	opacity: 0.5;
}
.anc {
	display: block;
	padding-top: 100px;
	margin-top: -100px;
}
/* ----------------------------------------------
index sp
---------------------------------------------- */
.indexSection01 {
	position: relative;
}
.indexSection01_box {
	width: 100%;
	height: 100vh;
	position: relative;
	overflow: hidden;
	background: #555555;
}
.indexSection01_video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.overlay::after {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(0, 0, 0, 0.4);
}
.indexSection01_catch {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.indexSection01_catch p {
	font-size: 6.5vw;
	line-height: 2;
	padding: 0 7%;
	color: #FFFFFF;
	letter-spacing: 0.14em;
	font-weight: 500;
}
.indexSection01_catch p span {
	border-bottom: solid 1px #FFFFFF;
}
.indexSection01_catch p.english {
	font-size: 2.5vw;
	margin: 5% 0 0 0;
	letter-spacing: 0.15em;
}
.indexSection01_text {
	position: absolute;
	bottom: 30px;
	left: 7%;
	color: #FFFFFF;
	font-size: 0.65rem;
	margin: 5% 0 0 0;
	letter-spacing: 0.15em;
	line-height: 2;
}
.indexSection01_scroll {
	position: absolute;
	bottom: 128px;
	right: 5%;
}
.indexSection01_scroll span {
	display: block;
	position: relative;
	color: #FFFFFF;
	font-size: 0.6rem;
	margin: 5% 0 0 0;
	letter-spacing: 0.15em;
	transform: rotate(90deg);
	text-align: right;
}
.indexSection01_scroll span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #FFFFFF;
}
@media screen and (min-width: 950px) {
	.indexSection01_catch p {
		font-size: 3.75rem;
		padding: 0 10%;
	}
	.indexSection01_catch p.english {
		font-size: 1rem;
		margin: 2% 0 0 0;
	}
	.indexSection01_text {
		font-size: 0.8rem;
		bottom: 50px;
		right: 50px;
		left: auto;
		text-align: right;
	}
	.indexSection01_scroll {
		position: absolute;
		bottom: 50%;
		top: 50%;
		right: 0px;
		-webkit-transform: translate(-50%, 0);
		-moz-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
}
.indexSection02 {
	position: relative;
}
.indexSection02 ul li {
	border-top: solid 1px #4f7ab0;
}
.indexSection02 ul li:first-of-type {
	border-top:none;
}
.indexSection02 ul li a {
	display: block;
	width: calc(100% - 14%);
	padding: 30px 7%;
	background: #0f4992;
	color: #FFFFFF;
	text-decoration: none;
	font-size: 0.8rem;
	position: relative;
}
.indexSection02 ul li a::after {
	display: block;
	content: "";
	width: 16px;
	height: 7px;
	background: url("../img/common/arrow01.png") no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 2%;
}
.indexSection02 ul li a span {
	color: #798fb7;
	display: block;
	font-size: 0.8rem;
	margin: 0 0 3px 0;
}
@media screen and (min-width: 768px) {
	.indexSection02 ul li a {
		width: calc(100% - 100px);
		padding: 30px 50px;
		font-size: 1rem;
	}
	.indexSection02 ul li a::after {
		right: 50px;
	}
	.indexSection02 ul li a span {
		width:120px;
		font-size: 1rem;
		display: inline-block;
		color: #FFFFFF;
		margin-right: 0px;
	}
}
.indexSection03 {
	padding: 10px 0 60px;
}
@media screen and (max-width: 480px) {
	.indexSection03 {
		padding: 0 0 60px;
	}	
}
.indexSection03_subtitle {
	width: 86%;
	margin: 0 auto;
	display: block;
}
.indexSection03_subtitle span {
	display: inline-block;
	position: relative;
	color: #0f4992;
	font-size: 0.8rem;
}
.indexSection03_subtitle span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #0f4992;
}
.indexSection03_title {
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 2;
	letter-spacing: 0.15em;
}
.tab-wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 30px 0 0 0;
	text-align: center;
}
.tab-content {
	width: 100%;
	display: none;
	margin: 30px 0 0 0;
}
/* アクティブなタブ */
.tab-switch:checked + .tab-label + .tab-content {
	display: block;
}
/* ラジオボタン非表示 */
.tab-switch {
	display: none;
}
.tab-label {
	max-width: 35%;
	box-sizing: border-box;
	background: #b6b6b6;
	cursor: pointer;
	flex: 1;
	order: -1;
	padding: 3px;
	position: relative;
	text-align: center;
	transition: cubic-bezier(0.4, 0, 0.2, 1) .2s;
	user-select: none;
	white-space: nowrap;
	-webkit-tap-highlight-color: transparent;
	font-size: 0.8rem;
}
.tab-label span {
	display: block;
	background: #b6b6b6;
	padding: 10px 10px;
	border-radius: 50px;
	color: #FFFFFF;
}
.tab-switch:checked + .tab-label span {
	background: #FFFFFF;
	color: #000000;
}
.tab-label:nth-of-type(1) {
	border-radius: 50px 0 0 50px;
	margin: 0 0 0 auto;
}
.tab-label:nth-of-type(2) {
	border-radius: 0 50px 50px 0;
	margin: 0 auto 0 0;
}
.tab-switch:checked ~ .tab-label span::after {
	transform: translateX(-100%);
}
.tab-switch:checked + .tab-label span::after {
	opacity: 1;
	transform: translateX(0);
}
.indexSection03_bana {
	list-style-type: none;
}
.indexSection03_bana li {
	width: 100%;
}
.indexSection03_bana li a {
	display: block;
	position: relative;
	padding-top: 44.5%;
}
.indexSection03_bana li a {
	display: block;
	position: relative;
	padding-top: 44.5%;
}
.indexSection03_bana li a::after {
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: url("../img/common/arrow01.png") no-repeat center center;
	background-size: 16px 7px;
	border: solid 1px #FFFFFF;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 20px);
	right: 7%;
}
.indexSection03_bana li a span {
	display: block;
	position: absolute;
	width: 100%;
	top: calc(50% - 12px);
	left: 0;
	z-index: 10;
	color: #FFFFFF;
	text-align: center;
}
.indexSection03_bana li a span::after {
	display: block;
	content: "";
}
.indexSection03_bana li a img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.index_more {
	width: 50%;
	margin: 30px auto 0 auto;
	border: solid 1px #333333;
	border-radius: 50px
}
.index_more a {
	display: block;
	padding: 10px 0;
	text-align: center;
	font-size: 0.8rem;
	text-decoration: none;
	color: #000000;
}
.index_more a span {
	display: inline-block;
	padding: 0 30px 0 0;
	position: relative;
}
.index_more a span::after {
	content: "";
	display: block;
	width: 16px;
	height: 7px;
	position: absolute;
	top: calc(50% - 3px);
	right: 0;
	background: url("../img/common/arrow02.png") no-repeat center center;
	background-size: 16px 7px;
}
@media screen and (max-width: 480px) {
	.index_more {
		width: 90%;
		margin: 40px auto 0;
	}
	.index_more a {
		padding: 20px 0;
	}
	.index_more a span {
		padding: 0 20px 0 0;
	}
}

.index_more_div{
	    display: flex;
	width: 95%;
    max-width: 900px;
    margin: 0 auto;
}
@media screen and (max-width: 767px){
	.index_more_div{
    flex-direction: column;
}
}

.index_more2 {
	width: 50%;
	margin: 30px auto 0 auto;
	border: solid 1px #333333;
	border-radius: 50px
}
.index_more2 a {
	display: block;
	padding: 10px 0;
	text-align: center;
	font-size: 0.8rem;
	text-decoration: none;
	color: #000000;
}
.index_more2 a span {
	display: inline-block;
	padding: 0 20px 0 0;
	position: relative;
}
.index_more2 a span::after {
	content: "";
	display: block;
	width: 17px;
	height: 13px;
	position: absolute;
	top: calc(50% - 6px);
	right: 0;
	background:url(../img/common/arrow03.png) no-repeat;
	background-size: 17px 13px;
}

@media screen and (min-width: 768px) {
	.indexSection03 {
		padding: 30px 0 90px;
	}
	.indexSection03_subtitle {
		width: 100%;
		text-align: center;
	}
	.indexSection03_subtitle span {
		font-size: 0.8rem;
	}
	.indexSection03_subtitle span::after {}
	.indexSection03_subtitle span::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: -110px;
		width: 100px;
		height: 1px;
		background: #0f4992;
	}
	.indexSection03_title {
		width: 100%;
		font-size: 1.875rem;
		text-align: center;
	}
	.indexSection03_title .br_sp {
		display: none;
	}
	.tab-wrap {
		margin: 30px 0 0 0;
	}
	.tab-content {
		margin: 90px 0 0 0;
	}
	.tab-label {
		max-width: 200px;
		font-size: 1rem;
	}
	.indexSection03_bana {
		display: flex;
		flex-wrap: wrap;
	}
	.indexSection03_bana li {
		width: 50%;
	}
	.indexSection03_bana li a span {
		top: calc(50% - 15px);
		font-size: 1.25rem;
	}
	.index_more {
		max-width: 350px;
		margin: 75px auto 0 auto;
	}
	.index_more a {
		padding: 17px 0;
		font-size: 1rem;
	}
	.index_more2 {
		max-width: 350px;
		margin: 90px auto 0 auto;
	}
	.index_more2 a {
		padding: 17px 0;
		font-size: 1rem;
	}
}
.indexSection04 {
	padding: 60px 0;
	background: #eef3f8;
}
.indexSection04_subtitle {
	width: 86%;
	margin: 0 auto;
	display: block;
}
.indexSection04_subtitle span {
	display: inline-block;
	position: relative;
	color: #0f4992;
	font-size: 0.8rem;
}
.indexSection04_subtitle span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #0f4992;
}
.indexSection04_title {
	width: 86%;
	margin: 30px auto;
	font-size: 1.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
.slide1 {
	overflow: hidden;
	margin-bottom: 25px;
}
.slide1 .swiper-container {
	width: 100%;
	height: 100%;
	padding-bottom: 40px;
	overflow: visible;
	z-index: 1;
}
.slide1_inner {
	width: 80%;
	max-width: 500px;
	margin: 0 auto;
}
.slide1_item {
	width: 70% !important;
	background: #FFFFFF;
	padding-bottom: 50px;
}
.slide1_item img {
	width: 100%;
}
.slide1_cate {
	font-size: 0.8rem;
	padding: 10px;
	color: #a6a6a6;
}

.slide1_title {
	display:inline-block;
	font-size: 0.8rem;
	position:relative;
	padding:0 25px 0 10px;
}

.slide1_title::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right:0;
	width: 17px;
	height: 13px;
	background:url(../img/common/arrow03.png) no-repeat;
	background-size:contain;
}

@media screen and (min-width: 768px) {
	.indexSection04 {
		padding: 90px 0;
	}
	.indexSection04_subtitle {
		width: 100%;
		text-align: center;
	}
	.indexSection04_subtitle span {
		font-size: 0.8rem;
	}
	.indexSection04_subtitle span::after {}
	.indexSection04_subtitle span::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: -110px;
		width: 100px;
		height: 1px;
		background: #0f4992;
	}
	.indexSection04_title {
		width: 100%;
		margin: 30px auto 0 auto;
		font-size: 1.875rem;
		text-align: center;
	}
	.indexSection04_title br {
		display: none;
	}
	.slide1 {
		margin: 60px 0 0 0;
	}
	.slide1 .swiper-container {
		padding-bottom: 60px;
	}
	.slide1_cate {
		font-size: 1rem;
		padding: 10px 20px;
	}
	.slide1_title {
		font-size: 1rem;
		padding: 5px 30px 5px 20px;
	}
}
.indexSection05 {
	padding: 60px 0;
}
.indexSection05_subtitle {
	width: 86%;
	margin: 0 auto;
	display: block;
}
.indexSection05_subtitle span {
	display: inline-block;
	position: relative;
	color: #0f4992;
	font-size: 0.8rem;
}
.indexSection05_subtitle span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #0f4992;
}
.indexSection05_title {
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 1.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
.indexSection05_block01 {
	margin: 30px 0 0 0;
}
.indexSection05_block01 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason01.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_block02 {
	margin: 30px 0 0 0;
}
.indexSection05_block02 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason02.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_block03 {
	margin: 30px 0 0 0;
}
.indexSection05_block03 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason03.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_block04 {
	margin: 30px 0 0 0;
}
.indexSection05_block04 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason04.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_block05 {
	margin: 30px 0 0 0;
}
.indexSection05_block05 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason05.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_block06 {
	margin: 30px 0 0 0;
}
.indexSection05_block06 a {
	display: block;
	color: #FFFFFF;
	text-decoration: none;
	background: url("../img/index/reason06.jpg")no-repeat;
	background-size: contain;
	padding: 50% 0 0 0;
}
.indexSection05_text {
	width: 93%;
	background: #004ca3;
	padding: 30px;
	color: #FFFFFF;
	font-size: 0.8rem;
	line-height: 2;
	margin: 0 0 0 auto;
	box-sizing: border-box;
}
.indexSection05_text span {
	display: inline-block;
	position: relative;
	padding: 0 22px 2px 0;
	border-bottom: solid 1px #FFFFFF;
}
.indexSection05_text span::after {
	content: "";
	display: block;
	width: 15px;
	height: 15px;
	position: absolute;
	top: 5px;
	right: 0px;
	background: url("../img/common/arrow01.png") center center no-repeat;
	background-size: contain;
}
@media screen and (min-width: 768px) {
	.indexSection05 {
		padding: 90px 0;
	}
	.indexSection05_subtitle {
		width: 100%;
		text-align: center;
	}
	.indexSection05_subtitle span {
		font-size: 0.8rem;
	}
	.indexSection05_subtitle span::after {}
	.indexSection05_subtitle span::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: -110px;
		width: 100px;
		height: 1px;
		background: #0f4992;
	}
	.indexSection05_title {
		width: 100%;
		margin: 30px auto 0 auto;
		font-size: 1.875rem;
		text-align: center;
	}
	.indexSection05_wrap {
		width: 86%;
		max-width: 1140px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
	}
	.indexSection05_block01 {
		width: 48%;
		padding: 0;
		margin: 60px 4% 0 0;
	}
	.indexSection05_block01 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_block02 {
		width: 48%;
		padding: 0;
		margin: 60px 0 0 0;
	}
	.indexSection05_block02 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_block03 {
		width: 48%;
		padding: 0;
		margin: 60px 4% 0 0;
	}
	.indexSection05_block03 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_block04 {
		width: 48%;
		padding: 0;
		margin: 60px 0 0 0;
	}
	.indexSection05_block04 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_block05 {
		width: 48%;
		padding: 0;
		margin: 60px 4% 0 0;
	}
	.indexSection05_block05 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_block06 {
		width: 48%;
		padding: 0;
		margin: 60px 0 0 0;
	}
	.indexSection05_block06 a {
		display: block;
		color: #FFFFFF;
		text-decoration: none;
		padding: 57.25% 0 0 0;
	}
	.indexSection05_text {
		width: 100%;
		min-height: 210px;
		padding: 40px;
		font-size: 1.15rem;
		margin: 0;
	}
}
.indexSection06 {
	padding: 60px 0;
	background: #eef3f8;
}
.indexSection06_subtitle {
	width: 86%;
	margin: 0 auto;
	display: block;
}
.indexSection06_subtitle span {
	display: inline-block;
	position: relative;
	color: #0f4992;
	font-size: 0.8rem;
}
.indexSection06_subtitle span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #0f4992;
}
.indexSection06_title {
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 1.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
.indexSection06_left {
	width: 86%;
	margin: 30px auto 0 auto;
}
.indexSection06_left img {
	width: 30%;
}


.indexSection06_right a {
	color:#1f4d9d;
}
.indexSection06_right {
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 0.8rem;
	line-height: 2;
}
@media screen and (min-width: 768px) {
	.indexSection06 {
		padding: 90px 0;
	}
	.indexSection06_subtitle {
		width: 100%;
		text-align: center;
	}
	.indexSection06_subtitle span {
		font-size: 0.8rem;
	}
	.indexSection06_subtitle span::after {}
	.indexSection06_subtitle span::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: -110px;
		width: 100px;
		height: 1px;
		background: #0f4992;
	}
	.indexSection06_title {
		width: 100%;
		margin: 30px auto 0 auto;
		font-size: 1.875rem;
		text-align: center;
	}
	.indexSection06_title .br_sp {
		display: none;
	}
	.indexSection06_block {
		width: 86%;
		max-width: 1140px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
	}
	.indexSection06_left {
		width: 47%;
		padding: 0;
		box-sizing: border-box;
	}
	.indexSection06_left img {
		width: 100%;
	}
	.indexSection06_right {
		width: 47%;
		line-height: 2;
		font-size: 1rem;
	}
}

.indexSection07 {
	padding: 60px 0;
}
.indexSection07_subtitle {
	width: 86%;
	margin: 0 auto;
	display: block;
}
.indexSection07_subtitle span {
	display: inline-block;
	position: relative;
	color: #0f4992;
	font-size: 0.8rem;
}
.indexSection07_subtitle span::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: -110px;
	width: 100px;
	height: 1px;
	background: #0f4992;
}
.indexSection07_title {
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 1.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
.indexSection07_block {
	display:flex;
	flex-direction: column;
}
.indexSection07_left {
	order:2;
	width: 86%;
	margin: 30px auto 0 auto;
	font-size: 0.8rem;
	line-height: 2;
}
.indexSection07_right {
	order:1;
	width: 86%;
	margin: 30px auto 0 auto;
}
.indexSection07_right img {
	width: 30%;
}
@media screen and (min-width: 768px) {
	.indexSection07 {
		padding: 90px 0;
	}
	.indexSection07_subtitle {
		width: 100%;
		text-align: center;
	}
	.indexSection07_subtitle span {
		font-size: 0.8rem;
	}
	.indexSection07_subtitle span::after {}
	.indexSection07_subtitle span::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: -110px;
		width: 100px;
		height: 1px;
		background: #0f4992;
	}
	.indexSection07_title {
		width: 100%;
		margin: 30px auto 0 auto;
		font-size: 1.875rem;
		text-align: center;
	}
	.indexSection07_title .br_sp {
		display: none;
	}
	.indexSection07_block {
		width: 86%;
		max-width: 1140px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		flex-direction:unset;
	}
	.indexSection07_left {
		order:1;
		width: 47%;
		padding: 0;
		line-height: 2;
		font-size: 1rem;
	}
	.indexSection07_right {
		order:2;
		width: 47%;
		box-sizing: border-box;
	}
	.indexSection07_right img {
		width: 100%;
	}
}
@media screen and (max-width: 480px) {
	.indexSection06_left img {
		width: 100%;
	}
	.indexSection07_right img {
		width: 100%;
	}
}
.slide2 {
	padding: 50px 0;
	border-top: solid 1px #e6e6e6;
}
.slide2 {
	overflow: hidden;
}
.slide2 .swiper-container {
	width: 100%;
	height: 100%;
	overflow: visible;
	z-index: 1;
}
.slide2_inner {
	width: 80%;
	max-width: 500px;
	margin: 0 auto;
}
.slide2_item {
	width: 70% !important;
}
.slide2_item img {
	width: 100%;
}
@media screen and (min-width: 768px) {
	.slide2 {
		padding: 90px 0;
	}
	.slide2_item {
		width: 50% !important;
	}
}
.contactArea {
	padding: 30px 7%;
	background: #004ca3
}
.contactArea_title {
	width: 86%;
	font-size: 1.2rem;
	line-height: 2;
	letter-spacing: 0.15em;
	color: #FFFFFF;
}
@media screen and (max-width: 768px) {
	.contactArea_title br {
		display: none;
	}
}
.contactArea_tel {
	border-top: solid 1px #3370b5;
	border-bottom: solid 1px #3370b5;
	margin: 30px 0 0 0;
}
.contactArea_tel a {
	display: block;
	width: 100%;
	height: 120px;
	font-size: 1.5rem;
	line-height: 0;
	letter-spacing: 0.1em;
	color: #FFFFFF;
	padding: 45px 0 0 0;
	box-sizing: border-box;
	text-decoration: none;
	position: relative;
}
.contactArea_tel a::after {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url("../img/common/icon_tel.png") no-repeat center center;
	background-size: 20px 20px;
	border: solid 1px #306eb4;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 25px);
	right: 0;
}
.contactArea_tel img {
	height: 18px;
	vertical-align: middle;
	margin: 0 10px 7px 0;
}
.contactArea_tel span {
	font-size: 0.7rem;
}
.contactArea_mail {
	border-bottom: solid 1px #3370b5;
}
.contactArea_mail a {
	display: block;
	width: 100%;
	height: 120px;
	padding: 50px 0 0 0;
	box-sizing: border-box;
	color: #FFFFFF;
	font-size: 1rem;
	letter-spacing: 0.15em;
	text-decoration: none;
	position: relative;
}
.contactArea_mail a::after {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url("../img/common/icon_mail.png") no-repeat center center;
	background-size: 21px 14px;
	border: solid 1px #306eb4;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 25px);
	right: 0;
}
.recaptcha {
	width:300px;
	margin:20px auto 0 auto;
}
@media screen and (min-width: 768px) {
	.contactArea {
		padding: 0;
	}
	.contactArea_block {
		display: flex;
		flex-wrap: wrap;
	}
	.contactArea_left {
		width: 50%;
		height: 360px;
		padding: 70px 5%;
		box-sizing: border-box;
	}
	.contactArea_right {
		width: 50%;
		border-left: solid 1px #306eb4;
		box-sizing: border-box;
	}
	.contactArea_title {
		width: 100%;
		font-size: 1.875rem;
		margin: 0;
		padding: 0;
		line-height: 1.6;
	}
	.contactArea_tel {
		border-top: none;
		border-bottom: none;
		margin: 30px 0 0 0;
	}
	.contactArea_tel a {
		height: auto;
		padding: 0;
		box-sizing: border-box;
		font-size: 2.15rem;
	}
	.contactArea_tel a::after {
		content: none;
		right: 5%;
	}
	.contactArea_tel img {
		height: 25px;
		vertical-align: middle;
		margin: 0 10px 7px 0;
	}
	.contactArea_tel a span {
		font-size: 0.8rem;
	}
	.contactArea_mail {
		border-bottom: none;
	}
	.contactArea_mail a {
		display: block;
		width: 100%;
		height: 360px;
		padding: 170px 0 0 0;
		font-size: 1.3rem;
		text-align: center;
		background: url("../img/common/mail_pc.jpg") no-repeat center center;
		background-size: cover;
	}
	.contactArea_mail a::after {
		right: 5%;
	}
	.recaptcha {
		width:300px;
		margin:40px auto 0 auto;
	}
}
.footerArea {
	padding: 60px 0;
}
.footerIcon {
	padding:45px 0 0 0;
	text-align: center;
}
.footerIcon img {
	width: 30px;
	margin: 0 10px;
	vertical-align: middle;
}
.copyright {
	font-size: 0.8rem;
	margin-top: 20px;
	padding: 12px 0;
	text-align: center;
	border-top: 1px solid #DDD;
	line-height: 1.6;
}

@media screen and (min-width: 768px) {
	.footerArea {
		padding: 90px 0;
	}
	.footerArea.second {
		border-top: solid 1px #e6e6e6;
	}
	.footerIcon {
		padding:60px 0 0 0;
		text-align: center;
	}
}

/* ----------------------------------------------
second common
---------------------------------------------- */
.secondTitle {
	width: 100%;
	height: 30vh;
	padding-top: calc(15vh - 10px);
	background: #a6a6a6 no-repeat center center;
	background-size: cover;
	box-sizing: border-box;
	position: relative;
}
.secondTitle::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000000;
	opacity: 0.3;
}
.secondTitle .secondTitle_txt {
	position: relative;
	color: #FFFFFF;
	font-size: 0.8rem;
	width: 86%;
	margin: 0 auto;
}
.secondTitle .secondTitle_txt span {
	display: inline-block;
	font-size: 1.5rem;
	margin: 0 0 10px 0;
	border-bottom: solid 1px #FFFFFF;
}
.secondTitle.company {
	background-image: url(../img/company/title_sp.jpg);
}
.secondTitle.business {
	background-image: url(../img/business/title_sp.jpg);
}
.secondTitle.csr {
	background-image: url(../img/csr/title_sp.jpg);
}
.secondTitle.works {
	background-image: url(../img/works/title_sp.jpg);
}
.secondTitle.reason {
	background-image: url(../img/reason/title_sp.jpg);
}
.secondTitle.recruit {
	background-image: url(../img/recruit/title_sp.jpg);
}
.secondTitle.news {
	background-image: url(../img/news/title_sp.jpg);
}
.secondTitle.youtube {
	background-image: url(../img/youtube/title_sp.jpg);
}
.secondTitle.contact {
	background-image: url(../img/contact/title_sp.jpg);
}
.secondTitle.sdgs {
	background-image: url(../img/sdgs/title_sp.jpg);
}
.secondTitle.mission {
	background-image: url(../img/mission/title_sp.jpg);
}
.secondTitle_president {
	background-image: url(../img/president/title_object_bg.jpg);
	background-size:cover;
}
.secondTitle_president_inner {
	width: 100%;
	max-width: 1140px;
	padding-top: 20px;
	position:relative;
}
.secondTitle_president_txt {
	width: 60%;
	max-width: 300px;
	margin:auto auto auto 5%;
	position:absolute;
	bottom:10%;
	line-height: 0;
}
.secondTitle_president_txt img {
	width: 100%;
}
.secondTitle_president_object {
	width: 80%;
	max-width: 400px;
	margin:0 auto;
	line-height: 0;
}
.secondTitle_president_object img {
	width:100%;
}
.breadCrumb {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	width: 86%;
	margin: 0 auto;
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 20;
}
.breadCrumb li {
	font-size: 0.7rem;
	color: #FFFFFF;
}
.breadCrumb li a {
	display: block;
	padding: 0 30px 0 0;
	text-decoration: underline;
	position: relative;
	color: #FFFFFF;
}
.breadCrumb li a::after {
	content: ">";
	display: block;
	position: absolute;
	top: 1px;
	right: 10px;
}
@media screen and (min-width: 480px) {
	.secondTitle {
		height: 50vh;
		padding-top: calc(28vh - 10px);
	}	
}
@media screen and (min-width: 768px) {
	.secondTitle .secondTitle_txt {
		font-size: 1rem;
		max-width: 1140px;
	}
	.secondTitle .secondTitle_txt span {
		font-size: 2.5rem;
	}
	.secondTitle.company {
		background-image: url(../img/company/title_pc.jpg);
	}
	.secondTitle.business {
		background-image: url(../img/business/title_pc.jpg);
	}
	.secondTitle.csr {
		background-image: url(../img/csr/title_pc.jpg);
	}
	.secondTitle.works {
		background-image: url(../img/works/title_pc.jpg);
	}
	.secondTitle.reason {
		background-image: url(../img/reason/title_pc.jpg);
	}
	.secondTitle.recruit {
		background-image: url(../img/recruit/title_pc.jpg);
	}
	.secondTitle.news {
		background-image: url(../img/news/title_pc.jpg);
	}
	.secondTitle.president {
		background-image: url("../img/president/title_bg.jpg") repeat-x repeat-y;
		background-size: auto;
	}
	.secondTitle.youtube {
		background-image: url(../img/youtube/title_pc.jpg);
	}
	.secondTitle.contact {
		background-image: url(../img/contact/title_pc.jpg);
	}
	.secondTitle.sdgs {
		background-image: url(../img/sdgs/title_pc.jpg);
	}
	.secondTitle.mission {
		background-image: url(../img/mission/title_pc.jpg);
	}
	.secondTitle_president_inner {
		padding-top: 50px;
		margin:0 auto;
	}
	.secondTitle_president_txt {
		position:absolute;
		bottom:25%;
	}
	.secondTitle_president_object {
		margin:0 auto;
	}
	.secondTitle_president_object img {
		width:100%;
	}
	.breadCrumb {
		max-width: 1140px;
	}
}
@media screen and (min-width: 1140px) {
	.secondTitle_president_txt {
		margin:auto auto auto 0%;
	}
}
/* ----------------------------------------------
404 not found
---------------------------------------------- */
.notfoundWrap {
	width:86%;
	margin:30px auto;
	border:solid 1px #e6e6e6;
	border-radius: 7px;
	padding:40px 7% 80px 7%;
	box-sizing: border-box;
}
.notfoundTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.notfoundTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.notfoundTxt1 {
	font-size: 0.8rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
@media screen and (min-width: 768px) {
	.notfoundWrap {
		max-width:600px;
		margin:90px auto;
		padding:40px 40px 140px 40px;
	}
	.notfoundTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.notfoundTxt1 {
		font-size: 1rem;
		line-height: 2;
		letter-spacing: 0.15em;
	}
}
/* ----------------------------------------------
business
---------------------------------------------- */
.businessTitle2 {
	font-size: 1.4rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.businessTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.businessTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.businessTitle3 {
	width: 100%;
	font-size: 1.2rem;
	padding: 0 0 15px;
	margin: 0 0 20px 0;
	border-bottom: 1px solid #CCC;
}
.businessTitle4 {
	width: 100%;
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 20px;
	padding: 8px 15px;
	border-left: solid 3px #004ca3;
}

@media screen and (min-width: 768px) {
	.businessTitle2 {
		font-size: 1.4rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.businessTitle3 {
		margin: 0 0 30px 0;
	}
	.businessTitle4 {
		margin: 0 0 30px;
	}
}
.businessTxt1 {
	font-size: 0.8rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
.businessBtn1{
	width:80%;
	margin:20px auto 0 auto;
}
.businessBtn1 a{
	display:block;
	font-size: 0.8rem;
	letter-spacing: 0.15em;
	color:#1f4d9d;
	padding:15px 20px;
	background:#e8edf6;
	position:relative;
}
.businessBtn1 a::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right:20px;
	width: 17px;
	height: 13px;
	background:url(../img/common/arrow04.png) no-repeat;
	background-size:contain;
}
@media screen and (min-width: 768px) {
	.businessTxt1 {
		font-size: 1rem;
	}
	.businessBtn1{
		min-width: 290px;
		margin: 20px 0 0;
		width: calc(50% - 10px);
	}
	.businessBtn1 a{
		font-size: 1rem;
	}
}
.businessContent {
	width: 86%;
	margin: 0 auto;
	padding: 0 0 60px 0;
	display: flex;
	flex-direction: column;
}
.businessContent2 {
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
}
.businessContent_left {
	order: 2;
}
.businessContent_right {
	margin: 0 0 20px 0;
	order: 1;
}
.businessContent_right img {
	width: 100%;
}
@media screen and (min-width: 768px) {
	.businessContent {
		max-width: 1140px;
		padding: 0;
		margin: 0 auto 90px auto;
		flex-wrap: wrap;
		flex-direction: row;
	}
	.businessContent2 {
		max-width: 1140px;
		flex-wrap: wrap;
		flex-direction: row;
	}
	.businessContent_left {
		order: 1;
		width: 60%;
		display: flex;
		flex-wrap: wrap;
		column-gap: 20px;
	}
	.businessContent_right {
		order: 2;
		width: 35%;
		margin: 0 0 0 5%;
		padding: 70px 0 0 0;
	}
}

.businessMedia {
	width: 100%;
	margin: 0 auto;
	padding:0 0 45px 0;
	box-sizing:border-box;
}

.businessMedia * {
	box-sizing:border-box;
}

.businessMedia img {
	width: 100%;
}

.businessMedia li {
	border:solid 1px #e9edf6;
	padding: 10px;
	margin-bottom: 30px;
	position:relative;
	box-shadow: 0px 0px 20px 5px rgba(0, 0, 0, 0.05);
}

.businessMedia_logo {
	margin: 5px auto 0;
}
.businessMedia_logo.oz {
	width: 90%;
	margin: 14px auto;
}	
.businessMedia_logo.new_eco {
	width: 70%;
	margin: 17px auto 15px;
}	

.businessMedia_txt {
	margin:0 auto 20px;
	font-size: 0.8rem;
	line-height: 2;
}
.businessMedia_btn {
	position:relative;
	display: block;
	width: 100%;
	font-size: 0.8rem;
	font-weight: 700;
	color:#1f4d9d;
	margin: auto auto 0;
	padding: 15px 12px;
	text-align: center;
	background:#e8edf6;
	letter-spacing: 0.6px;
	line-height: 1.6;
}
.businessMedia_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right:20px;
	width: 17px;
	height: 13px;
	background:url(../img/common/arrow04.png) no-repeat;
	background-size:contain;
}
.businessMedia a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 768px) {
	.businessMedia {
		display: flex;
		flex-wrap: wrap;
		max-width: 1140px;
		margin: 0 auto;
		padding:0 0 30px;
	}
	.businessMedia li {
		display: flex;
		flex-direction: column;
		width: calc((100% - 40px) / 3);
		padding: 10px;
		margin:0 20px 30px 0;
	}
	.businessMedia li:hover {
		opacity: 0.5;
		transition: all 0.3s;
	}
	.businessMedia li:nth-of-type(3n) {
		margin-right: 0;
	}
	.businessMedia_logo {
		margin: 6px auto;
	}	
	.businessMedia_logo.oz {
		margin: 18px auto;
	}	
	.businessMedia_txt {
		width: 100%;
		margin: 0 auto 15px;
		font-size: 0.875rem;
		line-height: 1.8;
	}
	.businessMedia_btn {
		font-size: 0.85rem;
	}
}

.businessMedia_img.shiryo {
	position: relative;
	width: 100%;
	height: auto;
}
.businessMedia_img.shiryo::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
.businessMedia_img.shiryo img {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	max-width: 100%;
	max-height: 100%;
	object-fit: cover;
}

/* ----------------------------------------------
csr
---------------------------------------------- */

.csrTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 5% 15px 5%;
	position: relative;
	margin: 0 0 45px 0;
}
.csrTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.csrTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.csrTitle3 {
	font-size: 1rem;
	padding: 0 0 0 10px;
	margin: 0 0 20px 0;
	line-height: 2;
	border-left: solid 3px #004ca3;
}
.csrTitle4 {
	font-size: 0.8rem;
	margin: 0 0 10px 0;
}

@media screen and (min-width: 768px) {
	.csrTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.csrTitle3 {
		font-size: 1.45rem;
		padding: 0 0 0 10px;
		margin: 0 0 30px 0;
		line-height: 2;
		border-left: solid 3px #004ca3;
	}
	.csrTitle4 {
		font-size: 1rem;
		margin: 0 0 15px 0;
	}
}

.csrTxt1 {
	font-size: 0.8rem;
	line-height: 2;
	letter-spacing: 0.15em;
	margin:0 0 20px 0;
}

@media screen and (min-width: 768px) {
	.csrTxt1 {
		font-size: 1rem;
		margin:0 0 30px 0;
	}
}

.csrContent {
	width: 86%;
	margin: 0 auto;
	padding:0 0  45px 0;
}

@media screen and (min-width: 768px) {
	.csrContent {
		max-width: 1140px;
		padding: 0;
		margin: 90px auto;
	}
}

.csrMovie {
	text-align: center;
	margin:0 0 20px 0;
}

.csrMovie iframe {
	width:100%;
	height:300px;
	max-width:800px;
	margin:0 auto;
}

@media screen and (min-width: 768px) {

	.csrMovie {
		margin:0 0 30px 0;
	}

	.csrMovie iframe {
		height:600px;
		max-width:1140px;
		margin:0 auto;
	}
}

/* ----------------------------------------------
works archive
---------------------------------------------- */
.worksArchiveWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.worksArchiveMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.worksArchiveMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.worksArchiveMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.worksArchiveMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.worksArchiveWrap_inner {
	width: 86%;
	margin: 0 auto;
}
.worksArchiveWrap_box {
	background: #FFFFFF;
	padding: 0 0 50px 0;
	margin: 30px 0 0 0;
}
.worksArchiveWrap_img {
	display: block !important;
	height: 200px;
	overflow: hidden;
	position:relative;
}
.worksArchiveWrap_img img {
	width: 100%;
	min-height: 200px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
.worksArchiveWrap_cate {
	display: block !important;
	font-size: 0.8rem;
	color: #969696;
	padding: 10px 20px;
}
.worksArchiveWrap_title {
	display: block !important;
	font-size: 0.8rem;
	padding: 0 20px 10px 20px;
}
.pager {
	width: 86%;
	margin: 40px auto 0 auto;
	text-align: center;
}
.pager a {
	display: inline-block;
	background: #FFFFFF;
	border: solid 1px #e6e6e6;
	color: #000000;
	padding: 2px 8px;
	font-size: 0.8rem;
	margin: 0 0 10px 0;
}
.pager span {
	display: inline-block;
	background: #ababab;
	color: #FFFFFF;
	padding: 2px 8px;
	font-size: 0.8rem;
}
@media screen and (min-width: 768px) {
	.worksArchiveWrap {
		padding: 60px 0;
	}
	.worksArchiveMenu {
		max-width: 1140px;
		padding: 50px;
		text-align: center;
	}
	.worksArchiveMenu_btn {
		max-width: 300px;
		margin: 0 20px;
	}
	.worksArchiveMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.worksArchiveWrap_inner {
		max-width: 1140px;
		display: flex;
		flex-wrap: wrap;
	}
	.worksArchiveWrap_box {
		width: 30%;
		padding: 0 0 50px 0;
		margin: 5% 5% 0 0;
	}
	.worksArchiveWrap_box:nth-of-type(3n) {
		margin: 5% 0 0 0;
	}
	.pager {
		max-width: 1140px;
		margin: 60px auto 0 auto;
	}
	.pager a {
		padding: 5px 10px;
		font-size: 1rem;
		margin: 0 0 10px 0;
	}
	.pager span {
		padding: 5px 10px;
		font-size: 1rem;
		margin: 0 0 10px 0;
	}
	.worksArchiveWrap_cate {
		font-size: 1rem;
	}
	.worksArchiveWrap_title {
		font-size: 1rem;
	}
}
/* ----------------------------------------------
works single
---------------------------------------------- */
.worksSingleWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.worksSingleMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.worksSingleMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.worksSingleMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.worksSingleMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.worksSingleWrap_inner {
	width: 86%;
	margin: 30px auto 0 auto;
	background: #FFFFFF;
	padding: 7%;
	box-sizing: border-box;
}
.worksSingleWrap_date {
	color: #0f4992;
	font-size: 0.8rem;
}
.worksSingleWrap_cate {
	color: #0f4992;
	border: solid 1px #0f4992;
	border-radius: 50px;
	padding: 1px 15px;
	font-size: 0.7rem;
}
.worksSingleTitle1 {
	font-size: 1rem;
	margin: 0 0 30px 0;
	padding: 10px 0;
	border-bottom: solid 1px #e6e6e6;
}
.worksSingleTitle2 {
	font-size: 0.9rem;
	margin: 0 0 10px 0;
	color: #0f4992;
}
.worksSinglePhoto_main {
	margin: 0 0 10px 0;
}
.worksSinglePhoto_main img {
	width: 100%;
}
.worksSingleTxt1 {
	font-size: 0.8rem;
	line-height: 2;
}
.worksSinglePhoto_area img {
	width: 100%;
}
.worksSinglePhoto_area p {
	font-size: 0.8rem;
	margin: 0 0 15px 0;
	line-height: 2;
}
@media screen and (min-width: 768px) {
	.worksSingleWrap {
		padding: 60px 0;
	}
	.worksSingleMenu {
		max-width: 1140px;
		padding: 50px;
		text-align: center;
	}
	.worksSingleMenu_btn {
		max-width: 300px;
		margin: 0 20px;
	}
	.worksSingleMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.worksSingleWrap_inner {
		max-width: 1140px;
		margin: 60px auto 0 auto;
		padding: 80px;
	}
	.worksSingleWrap_box {
		width: 30%;
	}
	.worksSingleWrap_img img {
		width: 100%;
	}
	.worksSinglePhoto_area {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.worksSinglePhoto_area p {
		width: 49%;
		margin: 0 0 2% 0;
		line-height: 1;
	}
	.worksSinglePhoto_area p:nth-of-type(2n) {
		margin: 0 0 2% 2%;
	}
	.worksSingleWrap_date {
		font-size: 1rem;
	}
	.worksSingleWrap_cate {
		font-size: 0.8rem;
	}
	.worksSingleTitle1 {
		font-size: 1.2rem;
	}
	.worksSingleTitle2 {
		font-size: 1.1rem;
	}
	.worksSingleTxt1 {
		font-size: 1rem;
	}
	.worksSingle_article p {
		font-size: 1rem;
	}
}
/* ----------------------------------------------
reason
---------------------------------------------- */
.reasonTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 0 0 15px 0;
	position: relative;
	margin: 30px 0;
}
.reasonTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.reasonTitle3 {
	font-size: 1rem;
	padding: 0 0 0 10px;
	margin: 0 0 20px 0;
	line-height: 2;
	border-left: solid 3px #004ca3;
}
.reasonTitle4 {
	font-size: 1rem;
	margin: 0 0 20px 0;
	line-height: 2;
	color: #004ca3;
}
@media screen and (min-width: 768px) {
	.reasonTitle2 {
		font-size: 1.65rem;
		padding: 0 0 30px 0;
		margin: 0 0 90px 0;
	}
	.reasonTitle3 {
		font-size: 1.45rem;
		padding: 0 0 0 10px;
		margin: 0 0 30px 0;
		line-height: 2;
		border-left: solid 3px #004ca3;
	}
	.reasonTitle4 {
		font-size: 1.2rem;
		margin: 0 0 40px 0;
		line-height: 2;
		color: #004ca3;
	}
}
.reasonTxt1 {
	font-size: 0.8rem;
	line-height: 2;
	letter-spacing: 0.15em;
}
@media screen and (min-width: 768px) {
	.reasonTxt1 {
		font-size: 1rem;
	}
}
.reasonContent {
	width: 86%;
	margin: 0 auto;
	padding: 60px 0;
	border-top: solid 1px #e6e6e6;
}
.reasonContent:nth-of-type(1) {
	border-top: none;
}
.reasonImg1 {
	margin: 0 0 30px 0;
}
.reasonImg1 img {
	width: 100%;
}
@media screen and (min-width: 768px) {
	.reasonContent {
		max-width: 1140px;
		padding: 90px 0;
	}
}
/* ----------------------------------------------
news archive
---------------------------------------------- */
.newsArchiveWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.newsArchiveMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.newsArchiveMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.newsArchiveMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.newsArchiveMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.newsArchiveWrap_inner {
	width: 86%;
	margin: 0 auto;
}
.newsArchiveWrap_box {
	background: #FFFFFF;
	padding: 0 0 50px 0;
	margin: 30px 0 0 0;
}
.newsArchiveWrap_img {
	display: block !important;
	height: 200px;
	overflow: hidden;
	position:relative;
}
.newsArchiveWrap_img img {
	width: 100%;
	min-height: 200px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}
.newsArchiveWrap_cate {
	display: block !important;
	font-size: 0.8rem;
	color: #969696;
	padding: 10px 20px;
}
.newsArchiveWrap_title {
	display: block !important;
	font-size: 0.8rem;
	padding: 0 20px 10px 20px;
}
@media screen and (min-width: 768px) {
	.newsArchiveWrap {
		padding: 60px 0;
	}
	.newsArchiveMenu {
		max-width: 1140px;
		padding: 50px;
		text-align: center;
	}
	.newsArchiveMenu_btn {
		max-width: 300px;
		margin: 0 20px;
	}
	.newsArchiveMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.newsArchiveWrap_inner {
		max-width: 1140px;
		display: flex;
		flex-wrap: wrap;
	}
	.newsArchiveWrap_box {
		width: 30%;
		padding: 0 0 50px 0;
		margin: 5% 5% 0 0;
	}
	.newsArchiveWrap_box:nth-of-type(3n) {
		margin: 5% 0 0 0;
	}
	.newsArchiveWrap_cate {
		font-size: 1rem;
	}
	.newsArchiveWrap_title {
		font-size: 1rem;
	}
}
/* ----------------------------------------------
news single
---------------------------------------------- */
.newsSingleWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.newsSingleMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.newsSingleMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.newsSingleMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.newsSingleMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.newsSingleWrap_inner {
	width: 86%;
	margin: 30px auto 0 auto;
	background: #FFFFFF;
	padding: 7%;
	box-sizing: border-box;
}
.newsSingleWrap_inner a {
	color: #0f4992;
}
.newsSingleWrap_date {
	color: #0f4992;
	font-size: 0.8rem;
}
.newsSingleWrap_cate {
	color: #0f4992;
	border: solid 1px #0f4992;
	border-radius: 50px;
	padding: 1px 15px;
	font-size: 0.7rem;
}
.newsSingleTitle1 {
	font-size: 1rem;
	margin: 0 0 30px 0;
	padding: 10px 0;
	border-bottom: solid 1px #e6e6e6;
}
.newsSingleTitle2 {
	font-size: 0.9rem;
	margin: 0 0 10px 0;
	color: #0f4992;
}
.newsSingleTxt1 {
	font-size: 0.8rem;
	line-height: 2;
}
.newsSingle_article p {
	font-size: 0.8rem;
	margin: 0 0 15px 0;
	line-height: 2;
}
.newsSingle_article h3 {
	font-size: 0.8rem;
	margin: 30px 0 15px 0;
	line-height: 2;
}
.newsSingle_article p.pdf {
	padding:0 0 0 50px;
	position:relative;
}
.newsSingle_article p.pdf::before {
	content:"";
	display:block;
	width:30px;
	height: 30px;
	background:url("../pdf/pdf.png");
	position:absolute;
	left:0px;
	top:0px;
	background-size: contain;
}
@media screen and (min-width: 768px) {
	.newsSingleWrap_inner {
		padding: 60px 0;
	}
	.newsSingleMenu {
		max-width: 1140px;
		padding: 50px;
		text-align: center;
	}
	.newsSingleMenu_btn {
		max-width: 300px;
		margin: 0 20px;
	}
	.newsSingleMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.newsSingleWrap_inner {
		max-width: 1140px;
		margin: 60px auto 0 auto;
		padding: 80px;
	}
	.newsSingleWrap_box {
		width: 30%;
	}
	.newsSinglePhoto_area {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.newsSinglePhoto_area p {
		width: 49%;
		margin: 0 0 2% 0;
		line-height: 1;
	}
	.newsSinglePhoto_area p:nth-of-type(2n) {
		margin: 0 0 2% 2%;
	}
	.newsSingleWrap_date {
		font-size: 1rem;
	}
	.newsSingleWrap_cate {
		font-size: 0.8rem;
	}
	.newsSingleTitle1 {
		font-size: 1.2rem;
	}
	.newsSingleTitle2 {
		font-size: 1.1rem;
	}
	.newsSingleTxt1 {
		font-size: 1rem;
	}
	.newsSingle_article h3 {
		font-size: 1rem;
	}
	.newsSingle_article p {
		font-size: 1rem;
	}
}
/* ----------------------------------------------
president archive
---------------------------------------------- */
.presidentArchiveWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.presidentArchiveMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.presidentArchiveMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.presidentArchiveMenu_btn:nth-of-type(1) {
	margin:0 0 10px 0;
}
.presidentArchiveMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.presidentArchiveMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.presidentArchiveWrap_inner {
	width: 86%;
	margin: 0 auto;
}
.presidentArchiveWrap_box {
	background: #FFFFFF;
	padding: 0 0 50px 0;
	margin: 30px 0 0 0;
}
.presidentArchiveWrap_img {
	display: block !important;
	height: 200px;
	overflow: hidden;
	position:relative;
}
.presidentArchiveWrap_img img {
	width: 100%;
	min-height: 200px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.presidentArchiveWrap_cate {
	display: block !important;
	font-size: 0.8rem;
	color: #969696;
	padding: 10px 20px;
}
.presidentArchiveWrap_title {
	display: block !important;
	font-size: 0.8rem;
	padding: 0 20px 10px 20px;
}
@media screen and (min-width: 768px) {
	.presidentArchiveWrap {
		padding: 60px 0;
	}
	.presidentArchiveMenu {
		max-width: 1140px;
		padding: 50px 10px;
		text-align: center;
	}
	.presidentArchiveMenu_btn {
		max-width: 300px;
	}
	.presidentArchiveMenu_btn:nth-of-type(1) {
		margin: 0 20px 0 0;
	}
	.presidentArchiveMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.presidentArchiveWrap_inner {
		max-width: 1140px;
		display: flex;
		flex-wrap: wrap;
	}
	.presidentArchiveWrap_box {
		width: 30%;
		padding: 0 0 50px 0;
		margin: 5% 5% 0 0;
	}
	.presidentArchiveWrap_box:nth-of-type(3n) {
		margin: 5% 0 0 0;
	}
	.presidentArchiveWrap_cate {
		font-size: 1rem;
	}
	.presidentArchiveWrap_title {
		font-size: 1rem;
	}
}
/* ----------------------------------------------
president single
---------------------------------------------- */
.presidentSingleWrap {
	width: 100%;
	background: #eef3f8;
	padding: 30px 0;
}
.presidentSingleMenu {
	width: 86%;
	margin: 0 auto;
	padding: 7%;
	background: #d3dde6;
	box-sizing: border-box;
	text-align: left;
}
.presidentSingleMenu_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.presidentSingleMenu_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	background: #1f4d9d;
	color: #FFFFFF;
	font-size: 0.8rem;
}
.presidentSingleMenu_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #FFFFFF #FFFFFF;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.presidentSingleWrap_inner {
	width: 86%;
	margin: 30px auto 0 auto;
	background: #FFFFFF;
	padding: 7%;
	box-sizing: border-box;
}
.presidentSingleWrap_date {
	color: #0f4992;
	font-size: 0.8rem;
}
.presidentSingleWrap_cate {
	color: #0f4992;
	border: solid 1px #0f4992;
	border-radius: 50px;
	padding: 1px 15px;
	font-size: 0.7rem;
}
.presidentSingleTitle1 {
	font-size: 1rem;
	margin: 0 0 30px 0;
	padding: 10px 0;
	border-bottom: solid 1px #e6e6e6;
}
.presidentSingleTitle2 {
	font-size: 0.9rem;
	margin: 0 0 10px 0;
	color: #0f4992;
}
.presidentSingleTxt1 {
	font-size: 0.8rem;
	line-height: 2;
}
.presidentSingle_article p {
	margin: 0 0 20px 0;
	line-height: 2;
}
.presidentSingle_article figure {
	text-align: center;
	margin: 30px 0;
}
.foot_s_pagenav {
	margin-top: 30px;
	padding-top: 25px;
	border-top: 1px dashed #CCC;
}
.foot_s_pagenav ul {
	display: flex;
	justify-content: space-between;
}

@media screen and (min-width: 768px) {
	.presidentSingleWrap {
		padding: 60px 0;
	}
	.presidentSingleMenu {
		max-width: 1140px;
		padding: 50px;
		text-align: center;
	}
	.presidentSingleMenu_btn {
		max-width: 300px;
		margin: 0 20px;
	}
	.presidentSingleMenu_btn select {
		width: 300px;
		font-size: 1rem;
	}
	.presidentSingleWrap_inner {
		max-width: 1140px;
		margin: 60px auto 0 auto;
		padding: 80px;
	}
	.presidentSingleWrap_box {
		width: 30%;
	}
	.presidentSingleWrap_img img {
		width: 100%;
	}
	.presidentSinglePhoto_area {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.presidentSinglePhoto_area p {
		width: 49%;
		margin: 0 0 2% 0;
		line-height: 1;
	}
	.presidentSinglePhoto_area p:nth-of-type(2n) {
		margin: 0 0 2% 2%;
	}
	.presidentSingleWrap_date {
		font-size: 1rem;
	}
	.presidentSingleWrap_cate {
		font-size: 0.8rem;
	}
	.presidentSingleTitle1 {
		font-size: 1.2rem;
	}
	.presidentSingleTitle2 {
		font-size: 1.1rem;
	}
	.presidentSingleTxt1 {
		font-size: 1rem;
	}
	.presidentSingle_article p {
		font-size: 1rem;
	}
	.presidentSingle_article figure {
		text-align: center;
		margin: 50px 0;
	}
}
/* ----------------------------------------------
recruit
---------------------------------------------- */
.recruitTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.recruitTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.recruitTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
	.recruitTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
}
.recruitContent {
	width: 86%;
	margin: 0 auto;
	padding: 0 0 60px 0;
}
.recruitContent:nth-of-type(1) {
	border-top: none;
}
.recruitTxt1 {
	margin: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}
.recruitTxt2 {
	text-align: center;
	margin: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}
.recruitPhoto_box {
	margin: 20px 0 0 0;
}
.recruitPhoto_box:nth-of-type(1) {
	margin: 0;
}
.recruitPhoto_box img {
	width: 100%;
}
.recruitTable {
	width: 100%;
	border-top: solid 1px #e6e6e6;
	border-left: solid 1px #e6e6e6;
	border-collapse: collapse;
}
.recruitTable th {
	display: block;
	border-right: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	background: #eff3f7;
	line-height: 2;
}
.recruitTable td {
	display: block;
	border-right: solid 1px #e6e6e6;
	border-bottom: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	line-height: 2;
}
@media screen and (min-width: 768px) {
	.recruitContent {
		max-width: 1140px;
		padding: 0 0 90px 0;
	}
	.recruitTxt1 {
		margin: 0 0 60px 0;
		font-size: 1rem;
	}
	.recruitTxt2 {
		margin: 0 0 60px 0;
		font-size: 1rem;
	}
	.recruitPhoto {
		display: flex;
		flex-wrap: wrap;
	}
	.recruitPhoto_box {
		width: 32%;
		margin: 0 0 0 2%;
	}
	.recruitPhoto_box:nth-of-type(1) {
		margin: 0;
	}
	.recruitTable th {
		display: table-cell;
		border-bottom: solid 1px #e6e6e6;
		padding: 25px;
		font-size: 1rem;
		width: 200px;
	}
	.recruitTable td {
		display: table-cell;
		padding: 25px;
		font-size: 1rem;
	}
}
/* ----------------------------------------------
company
---------------------------------------------- */
.companyTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.companyTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.companyTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.companyTitle2_white {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 30px 0;
	color:#ffffff;
}
.companyTitle2_white::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #ffffff;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.companyTitle3 {
	font-size: 1rem;
	margin: 0 0 20px 0;
	line-height: 2;
}
.companyTitle4 {
	font-size: 1rem;
	padding: 0 0 0 10px;
	margin: 0;
	line-height: 2;
	border-left: solid 3px #004ca3;
}
.companyTitle5 {
	font-size: 0.875rem;
	margin: 0 0 20px 0;
	line-height: 2;
	color:#ffffff;
}

.companyTitle6 {
	padding:20px 5%;
	font-size: 0.8rem;
	line-height: 2;
	text-align: center;
	font-weight: bold;
}

@media screen and (min-width: 768px) {
	.companyTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.companyTitle2_white {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 45px 0;
	}
	.companyTitle3 {
		font-size: 1.4rem;
		line-height: 2;
	}
	.companyTitle4 {
		font-size: 1.45rem;
		padding: 0 0 0 10px;
		line-height: 2;
		border-left: solid 3px #004ca3;
	}
	.companyTitle5 {
		font-size: 1.2rem;
		margin: 0 0 30px 0;
		line-height: 2;
	}

	.companyTitle6 {
		padding:30px 5%;
		font-size: 1.18rem;
	}
}
.companyContent {
	width: 86%;
	margin: 0 auto;
	padding: 0 0 30px 0;
}
.companyContent2 {
	width: 86%;
	margin: 0 auto;
	padding: 0 0 60px 0;
}
.companyContent3 {
	width: 86%;
	margin: 0 auto 30px auto;
	padding: 30px 0;
	border-radius: 10px;
	background: #FFFFFF;
}
.companyWrap {
	background: #eef3f8 url("../img/company/company02.jpg") no-repeat left center;
	background-size: cover;
	padding: 0 0 30px 0;
}
.companyContent:nth-of-type(1) {
	border-top: none;
}
.companyTxt1 {
	margin: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}
.companyTxt2 {
	margin: 0 0 10px 0;
	font-size: 0.8rem;
	line-height: 2;
	text-align: right;
}
.companyTxt1_white {
	margin: 0 0 20px 0;
	font-size: 0.8rem;
	line-height: 2;
	color:#ffffff;
}
.companyTxt3 {
	padding:0 5%;
	font-size: 0.8rem;
	line-height: 2;
	text-align: center;
}
.companyImg1 {
	margin: 0 0 30px 0;
}
.companyImg1 img {
	width: 100%;
}
.companyTable {
	width: 100%;
	border-top: solid 1px #e6e6e6;
	border-left: solid 1px #e6e6e6;
	border-collapse: collapse;
}
.companyTable th {
	display: block;
	border-right: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	background: #eff3f7;
	line-height: 2;
}
.companyTable td {
	display: block;
	border-right: solid 1px #e6e6e6;
	border-bottom: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	line-height: 2;
}
.companyTable td img {
	width: 100%;
}
.companyList {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.companyList li {
	width: 49%;
	font-size:0.8rem;
	border:solid 1px #cccccc;
	padding:3%;
	box-sizing: border-box;
	color:#ffffff;
	text-align: center;
	margin:0 0 2% 0;
}
.companyList li:nth-of-type(2n) {
	margin-left:2%;
}
.companyList .ento {
	margin:5px 0 0 0;
}
.companyList .anto {
	font-size:0.7rem;
}
.companyList .anto span {
	font-weight: bold;
	font-size:0.8rem;
}
.companyGray {
	background:#333333 url(../img/company/company_bg2-sp.jpg) no-repeat center bottom;
	background-size: cover;
}

@media screen and (min-width: 768px) {
	.companyContent {
		max-width: 1140px;
		padding: 0 0 90px 0;
		position: relative;
	}
	.companyContent2 {
		max-width: 1140px;
		padding: 0 0 90px 0;
	}
	.companyContent3 {
		max-width: 1140px;
		padding: 60px 0 90px 0;
		margin: 0 auto 60px auto;
	}
	.companyWrap {
		padding: 0 0 60px 0;
	}
	.companyImg1 {
		width: 55%;
		position: absolute;
		top: 0;
		left: 0;
		margin: 0;
		z-index: 1;
	}
	.companyBlock1 {
		width: 55%;
		position: relative;
		z-index: 10;
		margin: 0 0 0 45%;
		padding: 70px 0 0 0;
	}
	.companyImg1 img {
		width: 100%;
	}
	.companyTxt1 {
		margin: 0 0 60px 0;
		font-size: 1rem;
	}
	.companyTxt2 {
		/* 		margin: 0 0 60px 0; */
		font-size: 1rem;
	}
	.companyTxt1_white {
		margin: 0 0 30px 0;
		font-size: 1rem;
	}
	.companyTxt3 {
		font-size: 1.18rem;
	}
	.companyTable th {
		display: table-cell;
		border-bottom: solid 1px #e6e6e6;
		padding: 25px;
		font-size: 1rem;
		width: 200px;
	}
	.companyTable td {
		display: table-cell;
		padding: 25px;
		font-size: 1rem;
	}
	.companyList li {
		width: 23.5%;
		font-size:1rem;
		padding:2%;
		margin:0 2% 2% 0;
	}
	.companyList li:nth-of-type(2n) {
		margin-left:0;
	}
	.companyList li:nth-of-type(4n) {
		margin-right:0;
	}
	.companyList .ento {
		margin:10px 0 0 0;
	}
	.companyList .anto {
		font-size:0.8rem;
	}
	.companyList .anto span {
		font-weight: bold;
		font-size:1rem;
	}	.companyGray {
		background:url(../img/company/company_bg2-pc.jpg) no-repeat;
		background-size: cover;
	}
}



/* ----------------------------------------------
sdgs
---------------------------------------------- */
.sdgsTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.sdgsTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.sdgsTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.sdgsTitle3 {
	font-size: 1rem;
	padding: 0 0 0 30px;
	margin: 0 0 20px 0;
	line-height: 2;
	position:relative;
}
.sdgsTitle5 {
	font-size: 1rem;
	padding: 0 0 0 10px;
	margin: 0 0 20px 0;
	line-height: 2;
	border-left: solid 3px #004ca3;
}

.color07 {margin-bottom:0px !important;}

.sdgsTitle4 {
	font-size: 1rem;
	margin: 0 0 10px 0;
	line-height: 2;
	border-top:solid 1px #e6e6e6;
	padding:30px 0 0 0;
}

.sdgsBlock {
	border:solid 3px #e6e6e6;
	padding:40px 5% 0 5%;
	margin:20px 0 0 0;
}

@media screen and (min-width: 768px) {
	.sdgsTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.sdgsTitle2 br {
		display:none;
	}
	.sdgsTitle3 {
		font-size: 1.45rem;
		padding: 0 0 0 40px;
		margin: 0 0 30px 0;
		line-height: 2;
	}
	.sdgsTitle4 {
		font-size: 1.2rem;
		margin: 0 0 20px 0;
		line-height: 2;
		padding:60px 0 0 0;
	}
	.sdgsTitle5 {
		font-size: 1.45rem;
		padding: 0 0 0 10px;
		margin: 0 0 30px 0;
		line-height: 2;
		border-left: solid 3px #004ca3;
	}

	.sdgsBlock {
		border:solid 5px #e6e6e6;
		padding:40px 5% 0 5%;
		margin:40px 0 0 0;
	}

}
.sdgsContent {
	width: 86%;
	margin: 0 auto;
	padding: 0 0 60px 0;
}
.sdgsContent:nth-of-type(1) {
	border-top: none;
}
.sdgsTxt1 {
	margin: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}
.sdgsTxt2 {
	text-align: center;
	margin: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}
.sdgsTxt3 {
	margin: 0;
	font-size: 0.8rem;
	line-height: 2;
}
.sdgsImg1{
	margin: 45px 0 30px 0;
}
.sdgsImg1 img{
	width:100%;
}
.sdgsImg2{
	margin: 0 0 20px 0;
	text-align: center;
}
.sdgsImg2 img{
	width:70%;
	margin:0 0 10px 0;
}
.sdgsImg3{
	margin: 20px 0 0 0;
	text-align: center;
}
.sdgsImg3 img{
	width:70%;
	margin:0 0 10px 0;
}
@media screen and (min-width: 768px) {
	.sdgsContent {
		max-width: 1140px;
		padding: 0 0 90px 0;
	}
	.sdgsTxt1 {
		margin: 0 0 60px 0;
		font-size: 1rem;
	}
	.sdgsTxt2 {
		margin: 0 0 60px 0;
		font-size: 1rem;
	}
	.sdgsTxt3 {
		margin: 0;
		font-size: 1rem;
	}
	.sdgsImg1{
		margin: 90px 0 60px 0;
	}
	.sdgsImg2 img{
		width:30%;
		margin:0 10px 0 0;
	}
	.sdgsImg3{
		margin:30px 0;
		text-align: left;
	}
	.sdgsImg3 img{
		width:30%;
		margin:0 10px 0 0;
	}
}
.sdgsBtn1{
	width:80%;
	margin:15px auto 30px auto;
}
.sdgsBtn1 a{
	display:block;
	font-size: 0.8rem;
	letter-spacing: 0.15em;
	color:#1f4d9d;
	padding:15px 20px;
	background:#e8edf6;
	position:relative;
}
.sdgsBtn1 a::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right:20px;
	width: 17px;
	height: 13px;
	background:url(../img/common/arrow04.png) no-repeat;
	background-size:contain;
}
@media screen and (min-width: 768px) {

	.sdgsBtn1{
		width:300px;
		margin:30px 0 60px 0;
	}
	.sdgsBtn1 a{
		font-size: 1rem;
	}
}



/* ----------------------------------------------
sdgs2
---------------------------------------------- */

.sdgsWrap {
	width:90%;
	margin:0 auto 60px auto;
}

.sdgsBox {
	margin:30px 0 0 0;
	padding:5%;
	border:solid 5px #e6e6e6;
}
.sdgsBox_left img {
	width:35%;
}

.sdgsBox_right {

}
.sdgsTitle6 {
	font-size:1.2rem;
	font-weight:bold;
	padding: 0 0 0 10px;
	margin:20px 0 0 0;
	border-left: 4px solid #000;
}

.sdgsTitle7 {
	margin:20px 0 0 0;
	padding:20px 0 0 0;
	border-top:solid 1px #e6e6e6;
}

.sdgsTitle7 span {
	font-size:1rem;
	font-weight:bold;
	border-bottom:solid 1px #000000;
	line-height: 1.5;
}

.sdgsTxt5 {
	font-size:0.8rem;
	line-height: 2;
	margin:20px 0 0 0;
}

.sdgsImg5 {
	margin:25px 0 0 0;
	text-align: center;
}

.sdgsImg5 img {
	width:100%;
}

.sdgsImg6 {
	margin:25px 0 0 0;
	text-align: center;
}

.sdgsImg6 img {
	width:100%;
}

.sdgsBtn5{
	width:80%;
	margin:20px 0 0 0;
}
.sdgsBtn5 a{
	display:block;
	font-size: 0.8rem;
	letter-spacing: 0.15em;
	color:#1f4d9d;
	padding:15px 20px;
	background:#e8edf6;
	position:relative;
}
.sdgsBtn5 a::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right:20px;
	width: 17px;
	height: 13px;
	background:url(../img/common/arrow04.png) no-repeat;
	background-size:contain;
}


.color03{
	border-color: #4c9446;
}

.color07{
	border-color: #f4bd41;
}
.color13{
	border-color: #50773e;
}

.color11{
	border-color: #e8a53c;
}

.color17{
	border-color: #123063;
}

@media screen and (min-width: 768px) {

	.sdgsWrap {
		max-width:1140px;
		margin:0 auto 90px auto;
	}

	.sdgsBox {
		display:table;
	}
	.sdgsBox_left {
		display:table-cell;
		vertical-align: top;
		width:27%;
		padding:0 5% 0 0;
	}

	.sdgsBox_right {
		display:table-cell;
		vertical-align: top;
		width:68%;
	}
	.sdgsBox_left img {
		width:100%;
	}

	.sdgsImg6 {
		margin:35px 0 0 0;
		text-align: center;
	}

	.sdgsImg6 img {
		width:50%;
	}

	.sdgsTitle6 {
		font-size:1.4rem;
		padding: 0 0 0 15px;
		margin:20px 0 0 0;
	}

	.sdgsBox_right .noMargin {
		margin:0;
	}

	.sdgsTitle7 {
		margin: 40px 0 0 0;
		padding:40px 0 0 0;
	}

	.sdgsTitle7 span {
		font-size:1.2rem;
	}


	.sdgsTxt5 {
		font-size:1rem;
		margin: 20px 0 0 0;
	}


	.sdgsBtn5{
		width:300px;
		margin:20px 0 0 0;
	}
	.sdgsBtn5 a{
		font-size: 1rem;
	}
}




/* ----------------------------------------------
contact
---------------------------------------------- */
.contactTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 0 0 15px 0;
	position: relative;
	margin: 30px 0;
}
.contactTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.contactTitle3 {
	font-size: 1rem;
	padding: 0 0 0 10px;
	margin: 0 0 20px 0;
	line-height: 2;
	border-left: solid 3px #004ca3;
}
.contactTitle4 {
	font-size: 0.8rem;
	margin: 0 0 20px 0;
}

@media screen and (min-width: 768px) {
	.contactTitle2 {
		font-size: 1.65rem;
		padding: 0 0 30px 0;
		margin: 0 0 90px 0;
	}
	.contactTitle3 {
		font-size: 1.45rem;
		padding: 0 0 0 10px;
		margin: 0 0 30px 0;
		line-height: 2;
		border-left: solid 3px #004ca3;
	}
	.contactTitle4 {
		font-size: 1rem;
		margin: 0 0 30px 0;
	}
}
.contactContent {
	width: 86%;
	margin: 0 auto;
	padding: 60px 0;
	border-top: solid 1px #e6e6e6;
}
.contactContent:nth-of-type(1) {
	border-top: none;
}
.contactTxt1 {
	margin: 0 0 30px 0;
	line-height: 2;
	font-size: 0.8rem;
}
.contactTxt1 a {
	color: #0f4992;
	text-decoration: underline;
}
.contactTxt2 {
	margin: 30px 0 0 0;
	line-height: 2;
	font-size: 0.8rem;
	text-align: center;
}
.contactTxt2 a {
	color: #0f4992;
	text-decoration: underline;
}
.contactList1 {
	margin: 0 0 30px 0;
}
.contactList1 li{
	line-height: 2;
	font-size: 0.8rem;
	list-style-type: disc;
	margin:0 0 0 20px;
}
.contactTable {
	width: 100%;
	border-top: solid 1px #e6e6e6;
	border-left: solid 1px #e6e6e6;
	border-collapse: collapse;
}
.contactTable th {
	display: block;
	border-right: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	background: #eff3f7;
	line-height: 2;
	box-sizing: border-box;
	text-align: left;
	vertical-align: top;
}
.contactTable td {
	display: block;
	border-right: solid 1px #e6e6e6;
	border-bottom: solid 1px #e6e6e6;
	padding: 15px;
	font-size: 0.8rem;
	line-height: 2;
	box-sizing: border-box;
}
.contactTable td .your-post {
	display: inline-block;
	width: 80%;
	margin: 0 0 10px 0;
}
.contactTable th span.required {
	display: inline-block;
	font-size: 0.7rem;
	background: #c51f1f;
	padding: 2px 10px;
	color: #FFFFFF;
	margin: 0 10px 0 0;
}
.contactTable th span.optional {
	display: inline-block;
	font-size: 0.7rem;
	background: #a6a6a6;
	padding: 2px 10px;
	color: #FFFFFF;
	margin: 0 10px 0 0;
}
.contactSelect_btn {
	width: 100%;
	display: inline-block;
	position: relative;
}
.contactSelect_btn select {
	width: 100%;
	display: block;
	padding: 15px 30px;
	font-size: 0.8rem;
}
.contactSelect_btn::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 6px);
	right: 20px;
	width: 6px;
	height: 6px;
	border: 2px solid;
	border-color: transparent transparent #000000 #000000;
	transform: rotate(-45deg);
	z-index: 100;
	pointer-events: none;
}
.contactBtn {
	width:100%;
	margin: 30px 0 0 0;
}
.contactBtn input {
	display:block;
	padding: 10px 60px;
	background: #004ca3;
	color: #FFFFFF;
	font-size: 0.8rem;
	margin:0 auto;
}
@media screen and (min-width: 768px) {
	.contactContent {
		max-width: 1140px;
		padding: 90px 0;
	}
	.contactTxt1 {
		margin: 0 0 30px;
		font-size: 1rem;
	}
	.contactList1 {
		margin: 0 0 60px 0;
	}
	.contactList1 li{
		font-size: 1rem;
	}
	.contactTable th {
		display: table-cell;
		border-bottom: solid 1px #e6e6e6;
		padding: 32px 25px 25px;
		font-size: 1rem;
		width: 300px;
	}
	.contactTable td {
		display: table-cell;
		padding: 25px;
		font-size: 1rem;
	}
	.contactTable th span.required {
		font-size: 0.8rem;
		padding: 3px 15px;
		margin: 0 15px 0 0;
	}
	.contactTable th span.optional {
		font-size: 0.8rem;
		padding: 3px 15px;
		margin: 0 15px 0 0;
	}
	/*テキストエリアの横幅*/
	.contactTable td .your-name {
		display: inline-block;
		width: 70%;
		min-width: 340px;
	}
	.contactTable td .your-kana {
		display: inline-block;
		width: 70%;
		min-width: 340px;
	}
	.contactTable td .your-post {
		display: inline-block;
		width: 50%;
		min-width: 300px;
	}
	.contactTable td .your-address {
		display: inline-block;
		width: 100%;
		min-width: 340px;
	}
	.contactTable td .your-email {
		display: inline-block;
		width: 70%;
		min-width: 340px;
	}
	.contactTable td .your-tel {
		display: inline-block;
		width: 70%;
		min-width: 340px;
	}
	.contactTable td .your-message {
		display: inline-block;
		width: 100%;
		min-width: 340px;
	}
	.contactSelect_btn {
		width: 70%;
		display: inline-block;
		position: relative;
	}
	.contactBtn {
		text-align: center;
		margin: 45px 0 0 0;
	}
	.contactBtn input {
		padding: 20px 150px;
		font-size: 1rem;
	}
}
.contactTable input {
	width: 100%;
	padding: 5px 10px;
	font-size: 0.8rem;
	border: solid 1px #e6e6e6;
	box-sizing: border-box;
	margin: 10px 0 0 0;
}
.contactTable input:first-of-type {
	margin: 0;
}
.contactTable input.zipcode {
	width: 20%;
	margin: 0 0 6px;
}
.contactTable select {
	width: 100%;
	padding: 5px;
	font-size: 0.8rem;
	border: solid 1px #e6e6e6;
	box-sizing: border-box;
}
.contactTable textarea {
	width: 100%;
	padding: 5px 10px;
	font-size: 0.8rem;
	border: solid 1px #e6e6e6;
	box-sizing: border-box;
}
@media screen and (min-width: 768px) {
	.contactTable input {
		padding: 5px;
		font-size: 1rem;
	}
	.contactTable select {
		padding: 5px 10px;
		font-size: 1rem;
	}
	.contactTable textarea {
		padding: 5px;
		font-size: 1rem;
	}
}

/*--thanks--*/
.thanks_wrap {
	margin: 60px auto;
	padding: 0 15px;
	box-sizing: border-box;
}
.thanks_title {
	position: relative;
	font-size: 1.4rem;
	margin: 0 0 30px;
	padding: 0 0 25px;
	text-align: center;
}
.thanks_title::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	width: 50px;
	height: 3px;
	bottom: 0;
	background: #004ca3;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
.thanks_txt {
	text-align: left;
}
.thanks_txt p {
	line-height: 1.6;
}
.thanks_txt p:not(:last-of-type) {
	margin-bottom: 15px;
}
.thanks_tel {
	text-align: center;
	font-weight: 700;
}
.thanks_tel a {
	display: block;
	font-size: 1.2rem;
	color: #1A82EA;
	margin: 30px 0 0;
}
.thanks_tel span {
	display: block;
	font-size: 0.8rem;
}
.thanks_link {
	margin-top: 40px;
	text-align: center;
}
.thanks_link a {
	display: block;
	color: #1A82EA;
	text-decoration: underline;
}
.thanks_link a:hover {
	text-decoration: none;
}
@media screen and (min-width: 768px) {
	.thanks_wrap {
		max-width: 700px;
		margin: 80px auto;
	}
	.thanks_title {
		font-size: 1.65rem;
		padding: 0 0 30px;
		margin: 0 0 30px;
	}
	.thanks_txt {
		font-size: 1rem;s
		line-height: 2;
	}
}
@media screen and (min-width: 480px) {
	.thanks_txt {
		text-align: center;
	}
	.thanks_txt a {
		pointer-events: none;
	}
}

/* ----------------------------------------------
global menu
---------------------------------------------- */
#navi {
	position: fixed;
	top: 0;
	left: 0;
	height: 70px;
	width: 100%;
	z-index: 100;
	transition: all 0.3s;
}
.navi_white {
	background: #FFFFFF;
	transition: all 0.3s;
}
.navi_white2 {
	background: #FFFFFF;
	transition: all 0.3s;
}
/* チェックボックスを非表示 */
#navi input {
	display: none;
}
/* 左上ロゴ */
.menu-left {
	float: left;
}
.menu-left img {
	vertical-align: middle;
}
.companylogo {
	display:inline-block;
	font-size:1rem;
}
.logo30th {
	display:inline-block;
}


@keyframes logo30th {
	0% {
		filter: brightness(100%);
	}
	80% {
		filter: brightness(100%);
	}
	81% {
		filter: brightness(200%);
	}
	100% {
		filter: brightness(100%);
	}
}
.logo30th {
	animation: logo30th 3s infinite;
}


/* 上部メニュー */
#menu {
	float: right;
}
#menu li {
	position: relative;
	white-space: nowrap;
}
#menu li a {
	display: block;
	text-decoration: none;
}
#menu > li {
	float: left;
	margin: 0;
	font-size: 0.85rem;
}
/* パソコンでは V を非表示 */
#menu-navibtn {
	display: none;
	cursor: pointer;
}

/* スマホ用 */
@media screen and (max-width: 1080px) {
	/* 基本非表示 */
	#navi {
		height: 70px;
	}
	.menu-left {
		line-height: 70px;
	}
	.menu-left img {
		margin: 0 0 0 20px;
		height: 40px;
	}
	.logo30th img {
		margin: -5px 0 0 10px;
		height: 40px;
	}	
	#menu {
		display: block;
		overflow-y: hidden;
		height: 0;
		opacity: 0;
		padding: 20px 0;
		width:100%;
	}
	#menu li {
		width: 100%;
	}
	/* V を表示 */
	#menu > li .pd {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 50px;
	}
	/* V を表示 */
	#menu > li .pd::after {
		content: "";
		display: block;
	}
	/* V を表示 */
	#menu > li .ib {
		position: relative;
		z-index: 10;
		display: inline-block;
		height: 50px;
		padding: 14px 7% 0 7%;
		box-sizing: border-box;
	}
	#menu li a {
		display: inline-block;
	}
	#menu li:first-child {}
	/* メニューを移動させないため */
	#menu-navibtn:checked ~ #navi {
		position: fixed;
		overflow-y: scroll;
		overflow-x: hidden;
		height: 100%;
	}
}
/* ドロップダウンメニュー */
#menu li ul {
	position: absolute;
	padding: 0 7%;
	box-sizing: border-box;
}
/* 子メニュー */
#menu > li > ul li {
	font-size: 0.8rem;
	display: block;
	overflow-y: hidden;
	height: 0;
	opacity: 0;
}
#menu > li > ul li a {
	font-size: 0.8rem;
	padding: 5px 5%;
	height: auto;
}
/* パソコン用 */
@media screen and (min-width: 1080px) {
	.menu-left {
		line-height: 70px;
	}
	.menu-left img {
		margin: 0 0 0 40px;
		height: 50px;
		transition: all 0.3s;
	}
	.logo30th img {
		margin: -5px 0 0 15px;
		height: 46px;
	}

	#menu li {}
	#menu li a {
		display: block;
		height: 70px;
		padding: 25px 30px 0 0px;
		box-sizing: border-box;
		color: #ffffff;
	}
	.navi_white #menu li a {
		color: #000000;
	}
	#menu li ul li a {
		color: #FFFFFF !important
	}
	#navi:hover #menu li a {
		color: #000000;
	}
	#navi:hover {
		background: #FFFFFF;
		transition: all 0.3s;
	}
	/* 子メニュー */
	#menu > li > ul li {
		display: block;
		overflow-y: hidden;
		height: 0;
		opacity: 0;
	}
	#menu > li > ul li a {
		font-size: 0.8rem;
		padding: 5px 5%;
		color: #FFFFFF;
		height: auto;
	}
	#menu > li:hover > ul, #menu li ul li:hover > ul {
		padding: 20px !important;
		background: #004ca3;
	}
	#menu > li:hover > ul > li, #menu li ul li:hover > ul > li {
		display: block !important;
		height: auto !important;
		opacity: 1;
		transition: all 0.3s;
		padding: 0 !important;
		margin: 0 !important;
	}
	#menu > li:hover > ul > li > a, #menu li ul li:hover > ul > li > a {
		display: block !important;
		width: 200px !important;
	}
}
/* スマホ用 */
@media screen and (max-width: 1000px) {
	/* ハンバーガーメニューがクリックされた時 */
	#menu-navibtn:checked ~ * #menu {
		height: auto;
		opacity: 1;
		transition: all 0.3s;
	}
	#menu-navibtn:checked ~ * #menu > li {
		max-height: inherit;
		overflow-y: visible;
	}
	#menu > li > label:hover {
		cursor: pointer;
	}
	#menu li ul {
		position: static;
	}
	/* 子メニューがクリックされた時 */
	#menu input[type="checkbox"]:checked ~ label ~ ul > li {
		height: auto;
		opacity: 1;
		transition: all 0.2s;
	}
	.angletoggle::before {
		position: absolute;
		top: calc(50% - 8px);
		right: calc(7% + 8px);
		content: "";
		width: 1px;
		height: 17px;
		background-color: #367bf6;
		transition: all 0.2s;
	}
	#navi input[type="checkbox"]:checked ~ label .pd .angletoggle::before {
		transform: rotate(-90deg);
		-webkit-transform: rotate(-90deg);
		transition: all 0.2s;
	}
	.angletoggle::after {
		position: absolute;
		top: 50%;
		right: 7%;
		content: "";
		width: 17px;
		height: 1px;
		background-color: #367bf6;
		transition: all 0.2s;
	}
}
/* ハンバーガー */
#navi #navibtn {
	display: none;
}
@media screen and (max-width: 1080px) {
	#navi #navibtn {
		display: block;
		position: absolute;
		top: 10px;
		right: 10px;
	}
	#navibtn span {
		display: block;
		width: 50px;
		height: 50px;
	}
	#navibtn span::before, #navibtn span::after {
		position: absolute;
		left: 10px;
		content: "";
		width: 30px;
		height: 1px;
		background-color: #FFFFFF;
		transition: all 0.3s;
	}
	.navi_white span::before, .navi_white span::after {
		background-color: #000000 !important;
	}
	.navi_white2 span::before, .navi_white2 span::after {
		background-color: #000000 !important;
	}
	/* 上の棒 */
	#navibtn span::before {
		top: 20px;
		transition: all 0.3s;
	}
	#menu-navibtn:checked ~ #navi label#navibtn span::before {
		top: 25px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transition: all 0.3s;
	}
	/* 下の棒 */
	#navibtn span::after {
		bottom: 20px;
	}
	#menu-navibtn:checked ~ #navi label#navibtn > span::after {
		bottom: 24px;
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
		transition: all 0.3s;
	}
}
/* ----------------------------------------------
footer menu
---------------------------------------------- */
/* スマホ用 */
@media screen and (max-width: 768px) {
	/* チェックボックスを非表示 */
	#menu2 input {
		display: none;
	}
	/* 上部メニュー */
	#menu2 {}
	#menu2 li {
		position: relative;
		white-space: nowrap;
	}
	#menu2 li a {
		display: block;
		text-decoration: none;
	}
	#menu2 > li, #menu2 div > li {
		margin: 0;
		font-size: 0.9rem;
	}
	/* 基本非表示 */
	#menu2 {
		display: block;
		padding: 0;
	}
	#menu2 li {
		width: 100%;
	}
	/* V を表示 */
	#menu2 > li .pd2, #menu2 div > li .pd2 {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		width: 100%;
		height: 50px;
	}
	/* V を表示 */
	#menu2 > li .pd2::after, #menu2 div > li .pd2::after {
		content: "";
		display: block;
	}
	/* V を表示 */
	#menu2 > li .ib2, #menu2 div > li .ib2 {
		position: relative;
		z-index: 10;
		display: inline-block;
		padding: 10px 7%;
		box-sizing: border-box;
	}
	#menu2 li a {
		display: inline-block;
		font-size:0.9rem;
	}
	#menu2 li:first-child {}
	/* ドロップダウンメニュー */
	#menu2 li ul {
		position: relative;
		padding: 0 7%;
		box-sizing: border-box;
	}
	/* 子メニュー */
	#menu2 > li > ul li, #menu2 div > li > ul li {
		font-size: 0.8rem;
		display: block;
		overflow-y: hidden;
		height: 0;
		opacity: 0;
	}
	#menu2 > li > ul li a, #menu2 div > li > ul li a {
		font-size: 0.8rem;
		padding: 5px 5%;
		height: auto;
	}
	#menu2 > li > label:hover, #menu2 div > li > label:hover {
		cursor: pointer;
	}

	/* 子メニューがクリックされた時 */
	#menu2 input[type="checkbox"]:checked ~ label ~ ul > li {
		height: auto;
		opacity: 1;
		transition: all 0.2s;
	}
	.angletoggle2::before {
		position: absolute;
		top: calc(50% - 12px);
		right: calc(7% + 26px);
		content: "";
		width: 1px;
		height: 17px;
		background-color: #367bf6;
		transition: all 0.2s;
	}
	#menu2 input[type="checkbox"]:checked ~ label .pd2 .angletoggle2::before {
		transform: rotate(-90deg);
		-webkit-transform: rotate(-90deg);
		transition: all 0.2s;
	}
	.angletoggle2::after {
		position: absolute;
		top: calc(50% - 4px);
		right: calc(7% + 18px);
		content: "";
		width: 17px;
		height: 1px;
		background-color: #367bf6;
		transition: all 0.2s;
	}
	#menu3 > li .ib2, #menu3 div > li .ib2 {
		position: relative;
		z-index: 10;
		display: inline-block;
		padding: 10px 7%;
		box-sizing: border-box;
	}
	#menu3 li a {
		display: inline-block;
		font-size:0.9rem;
	}

}
@media screen and (min-width: 769px) {
	/* チェックボックスを非表示 */
	#menu2 input {
		display: none;
	}
	#menu2 > li ul li, #menu2 > li {
		width: 100%;
		font-size: 0.875rem;
	}
	#menu2 li ul, #menu2 li {
		padding: 0 0 10px 0
	}
	#menu2 li ul, #menu2 li ul {
		padding: 10px 0 0 0
	}
	#menu2 > li ul li, #menu2 li ul li {
		font-size: 0.875rem;
	}
	#menu2 > li ul li, #menu2 li ul li a {
		font-size: 0.875rem;
		padding:0 0 5px 5px;
	}
	#menu3 > li ul li, #menu3 > li {
		width: 100%;
		font-size: 0.875rem;
	}
	#menu3 li ul, #menu3 li {
		padding: 0 0 10px 0
	}

}


/* ----------------------------------------------
footer menu 2021.4.16
---------------------------------------------- */

.footer-title {
	width: calc(100% - 14%);
	padding:20px 7% 10px 7%;
	display: block;
	position: relative;
	color:#0f4992;
	font-weight: 500;
}

@media screen and (min-width: 1140px) {
	.grid-container {
		-webkit-column-count: 3;
		-webkit-column-gap: 15px;
		-webkit-column-fill: auto;
		-moz-column-count: 3;
		-moz-column-gap: 15px;
		-moz-column-fill: balance !important;
		column-count: 3;
		column-gap: 15px;
		column-fill: auto;
	}

	.grid-container2 {
		-webkit-column-count: 2;
		-webkit-column-gap: 15px;
		-webkit-column-fill: auto;
		-moz-column-count: 2;
		-moz-column-gap: 15px;
		-moz-column-fill: balance !important;
		column-count: 2;
		column-gap: 15px;
		column-fill: auto;
	}
}

@media screen and (min-width: 769px) {
	.footer-title {
		width: 100%;
		margin:0 0 20px 0;
		padding:0;
	}
	.footer-nav {
		max-width:1140px;
		margin:0 auto;
		padding:60px 0 0 0;
	}
	.footer-nav::after {
		content:"";
		display:block;
		clear: both;
	}

	.grid-container3 {
		/* 		-webkit-column-count: 3; */
		-webkit-column-gap: 15px;
		-webkit-column-fill: auto;
		/* 		-moz-column-count: 3; */
		-moz-column-gap: 15px;
		-moz-column-fill: balance !important;
		/* 		column-count: 3; */
		column-gap: 15px;
		column-fill: auto;
	}
}

.grid {
	display: inline-block;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	column-break-inside: avoid;
}

/* Google Chorome BugFix */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
	.grid {
		display: block !important;
	}
}

/* 2021.09追記 メディア掲載 */

.indexMedia {
	display: flex;
	flex-wrap: wrap;
	background: #FFFFFF;
	border-radius: 5px;
	padding: 5%;
	margin: 0 0 30px 0;
}

.indexMedia img {
	width: 25%;
	margin: 4%;
	box-shadow: none;
}

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

	.indexMedia img {
		width: 17%;
		margin: 4%;
		box-shadow: none;
	}

}



/* ----------------------------------------------
mission
---------------------------------------------- */
.missionTitle2 {
	font-size: 1.15rem;
	text-align: center;
	padding: 45px 0 15px 0;
	position: relative;
	margin: 0 0 45px 0;
}
.missionTitle2.border {
	border-top: solid 1px #e6e6e6;
}
.missionTitle2::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #004ca3;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
	.missionTitle2 {
		font-size: 1.65rem;
		padding: 90px 0 30px 0;
		margin: 0 0 90px 0;
	}
	.missionTitle2 br {
		display:none;
	}

}

.missionCon1 {
	padding: 0 0 60px 0;
	font-size: 0.8rem;
	line-height: 2;
}

.missionCon1 img {
	width:100%;
}

.missionCon1_area {
	width: 86%;
	margin: 0 auto;
}

.missionCon1_text {
	width: 86%;
	margin: 0 auto;
}

.missionCon1_block {
	margin:30px 0 0 0;
}

.missionCon1_title {
	margin:10px 0 0 0;
	text-align:center;
	font-size:1rem;
}

.missionCon1_text2 {
	margin:5px 0 0 0;
	text-align: center;
}

@media screen and (min-width: 768px) {
	.missionCon1 {
		margin:0 auto;
		padding: 0 0 90px 0;
		font-size:1rem;
	}

	.missionCon1_text {
		text-align: center;
		font-size:1.2rem;
	}
	.missionCon1_area {
		max-width: 1140px;
		display: flex;
		margin-top: 60px;
	}
	.missionCon1_block {
		width:32%;
		margin:0 2% 0 0;
	}
	.missionCon1_block:nth-of-type(3) {
		margin:0;
	}
	.missionCon1_title {
		font-size:1.2rem;
	}

}



.missionCon2 {
	padding: 0 0 60px 0;
	font-size: 0.8rem;
	line-height: 2;
	background:#e6e6e6;
}

.missionCon2 img {
	width:100%;
}

.missionCon2_list {
	width: 86%;
	margin: 0 auto;
	list-style-type: disc;
}

.missionCon2_list li {
	margin:0 0 0 20px;
}

@media screen and (min-width: 768px) {
	.missionCon2 {
		padding: 0 0 90px 0;
		font-size:1rem;
	}
	.missionCon2_list {
		max-width: 1140px;
		display: flex;
		flex-wrap: wrap;
	}
	.missionCon2_list li {
		width:calc(50% - 20px);
		line-height: 3;
	}

}

.missionCon3 {
	padding: 0 0 60px 0;
	font-size: 0.8rem;
	line-height: 2;
}

.missionCon3 img {
	width:100%;
}

.missionCon3_area {
	width: 86%;
	margin: 0 auto;
}

.missionCon3_area2 {
	width: 86%;
	margin: 0 auto;
}
.missionCon3_block {
	margin:10px 0 0 0;
}
.missionCon3_title {
	font-size:1rem;
}

.missionCon3_text {
	margin:10px 0 0 0;
}

.missionCon3_list {
	list-style-type: disc;
	margin:10px 0 0 0;
}

.missionCon3_list li {
	margin:0 0 0 20px;
}

@media screen and (min-width: 768px) {
	.missionCon3 {
		padding: 0 0 90px 0;
		font-size:1rem;
	}
	.missionCon3_img {
		text-align: center;
		border:solid 1px #e6e6e6;
	}
	.missionCon3 img {
		max-width: 900px;
	}

	.missionCon3_area {
		max-width: 1140px;
	}
	.missionCon3_area2 {
		max-width: 1140px;
	}
	.missionCon3_title {
		font-size:1.2rem;
		margin-top:30px;
	}
	.missionCon3_list {
		max-width: 1140px;
		display: flex;
		flex-wrap: wrap;
	}
	.missionCon3_list li {
		width:calc(50% - 20px);
	}

}

.missionCon4 {
	padding: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}

.missionCon4 img {
	width:100%;
}

.missionCon4_area {
	width: 86%;
	margin: 0 auto;
}
.missionCon4_block {
	margin: 0 0 30px 0;
}

.missionCon4_img {
	width:50%;
	margin:0 auto;
}
.missionCon4_title {
	font-size:1rem;
}
.missionCon4_text {
	margin:10px 0 0 0;
}


@media screen and (min-width: 768px) {
	.missionCon4 {
		padding: 0 0 60px 0;
		font-size:1rem;
	}
	.missionCon4_area {
		max-width: 1140px;
	}
	.missionCon4_title {
		font-size:1.2rem;
	}
	.missionCon4_block::after {
		content:"";
		display:block;
		clear: both;
	}

	.missionCon4_img {
		float:left;
		width:200px;
	}
	.missionCon4_title {
		margin-left:250px;
	}
	.missionCon4_text {
		margin-left:250px;
	}
}

.missionCon5 {
	padding: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}

.missionCon5 img {
	width:100%;
}

.missionCon5_area {
	width: 86%;
	margin: 0 auto;
}
.missionCon5_block {
	margin: 0 0 30px 0;
}
.missionCon5_block2 {
	margin: 0 0 30px 0;
}
.missionCon5_title {
	margin:10px 0 0 0;
	font-size:1rem;
}
.missionCon5_title2 {
	margin:10px 0 0 0;
	font-size:1rem;
}
.missionCon5_text {
	margin:10px 0 0 0;
}
.missionCon5_text2 {
	margin:10px 0 0 0;
}

@media screen and (min-width: 768px) {
	.missionCon5 {
		padding: 0 0 40px 0;
		font-size:1rem;
	}
	.missionCon5_area {
		max-width: 1140px;
	}
	.missionCon5_block {
		margin:0 0 50px 0;
	}
	.missionCon5_block2 {
		margin:0 0 50px 0;
	}

	.missionCon5_block::after {
		content:"";
		display:block;
		clear: both;
	}
	.missionCon5_block2::after {
		content:"";
		display:block;
		clear: both;
	}

	.missionCon5_img {
		width:350px;
		padding:20px 0 0 50px;
		float:right;
	}
	.missionCon5_img2 {
		width:350px;
		padding:20px 50px 0 0;
		float:left;
	}
	.missionCon5_title {
		font-size:1.2rem;
	}
	.missionCon5_title2 {
		margin:10px 0 0 0;
		font-size:1.2rem;
		margin:0 0 0 400px;
	}
	.missionCon5_text2 {
		margin:0 0 0 400px;
	}
}

.missionCon6 {
	padding: 0 0 30px 0;
	font-size: 0.8rem;
	line-height: 2;
}

.missionCon6 img {
	width:100%;
}

.missionCon6_area {
	width: 86%;
	margin: 0 auto;
}

.missionCon6_block {
	margin:0 0 30px 0;
}
.missionCon6_title {
	margin:10px 0 0 0;
	font-size:1rem;
}
.missionCon6_text {
	margin:10px 0 0 0;
}

.missionCon6_block2 {
	margin:0 0 30px 0;
}
.missionCon6_title2 {
	margin:10px 0 0 0;
	font-size:1rem;
}
.missionCon6_text2 {
	margin:10px 0 0 0;
}

@media screen and (min-width: 768px) {
	.missionCon6 {
		padding: 0 0 40px 0;
		font-size:1rem;
	}
	.missionCon6_area {
		max-width: 1140px;
	}
	.missionCon6_title {
		font-size:1.2rem;
	}
	.missionCon6_block {
		margin:0 0 50px 0;
	}
	.missionCon6_block2 {
		margin:0 0 50px 0;
	}
	.missionCon6_block::after {
		content:"";
		display:block;
		clear: both;
	}
	.missionCon6_block2::after {
		content:"";
		display:block;
		clear: both;
	}

	.missionCon6_img {
		width:350px;
		padding:10px 0 0 50px;
		float:right;
	}
	.missionCon6_img2 {
		width:350px;
		padding:10px 50px 0 0;
		float:left;
	}
	.missionCon6_title {
		font-size:1.2rem;
	}
	.missionCon6_title2 {
		margin:10px 0 0 0;
		font-size:1.2rem;
		margin:0 0 0 400px;
	}
	.missionCon6_text2 {
		margin:0 0 0 400px;
	}

}

/* reCapcha v3 */
.grecaptcha-badge { visibility: hidden; }

/* 言語対応 */
.country {
	display:flex !important;
	align-items: center;
	justify-content: space-evenly;
	width: 120px;
	padding: 0 !important;
	margin-right: 20px;
}
.country img{
	width:40px;
	height:auto;
	border: 1px solid lightgray;
}
.pc{
	display:block;
}
.sp{
	display:none;
}



.languagebtn{
	right:0;
}
.languagebtn span{
	cursor:pointer
}

.jpcountry {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	/*     padding: 0 !important; */
	margin-bottom: 10px;
}
.languagebtn li{
	display:flex;
}
.jpcountry img{
	width:30px;
	height:auto;
	border: 1px solid lightgray;
	margin-right:10px;
}
@media screen and (max-width: 768px){
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}

	.ch-naviflex{
		display: flex;
		align-items: center;
		justify-content: flex-start;
		font-size: 8pt;
	}
	.country {
		width: 90px;
		margin-right: 10px;
	}
	.country img{
		width:30px;
		margin-right:10px;}
}

/* 紹介動画設定 */
.videoresp {
	width: 70%;
	aspect-ratio: 16 / 9;
	margin: -40px auto;
}
.videoresp iframe {
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px){
	.videoresp {
		width: 100%;
		margin: -20px auto -30px;
	}
}

.downloadBook {
	margin:30px 0 0 0;
}

.downloadBook_list {
	margin:20px 0 0 20px;
}

.downloadBook_list li {
	list-style-type:disc;
}
.companyVideo{
	/*     background: #fff; */
	padding: 90px 40px;
	margin:0 auto;
	text-align:center;
	max-width: 1140px;
}
@media screen and (min-width: 768px){
	.downloadBook {
		display:flex;
		width:60%;
		margin:0 auto;
	}
	.downloadBook_left {
		width:45%;
	}
	.downloadBook_right {
		width:45%;
		margin:0 0 0 5%;
	}
	.sp_br{
		display:none;
	}}

/*2023/02/23*/
.ishibashibook {
	width:100%;
	max-width:600px;
	margin:0 auto;
}
.ishibashibook img {
	width:100%;
}

/*20230927*/
.ColumnTitle2{ font-size: 1.2rem; margin: 0 0 20px;}
.ColumnTitle3{
	font-size: 1.1rem;
	margin: 20px 0 10px;
	padding: 10px 0 5px;
	border-bottom: solid 1px #e6e6e6;
}
.ColumnTitle4{
	font-size: 1.0rem;
	margin: 40px 0 5px;
}
.ColumnIMG{ width: 80%; margin: 40px auto;}
.ColumnIMG img{ width: 100%;}
@media screen and (min-width: 768px){
	.ColumnTitle2{ font-size: 1.2rem;}
	.ColumnTitle3{font-size: 1.1rem;}
	.ColumnTitle4{font-size: 1.0rem;}
}

/* ----------------------------------------------
2024.01.18追加
---------------------------------------------- */
.mainbana {
	position: relative;
	width:86%;
	max-width: 1140px;
	margin: 40px auto;
}
.mainbana img {
	width:100%;
	margin-bottom: 15px;
}

.bana_pc { display: block; }
.bana_sp { display: none; }

@media only screen and (max-width: 768px) {
	.bana_pc { display: none; }
	.bana_sp { display: block; }
}
.mainbana .swiper-pagination {
	left: 50%;
	bottom: -15px;
	transform: translate(-50%, 0);
}
.swiper-pagination-bullet {
	margin: 0 4px;;
}
.swiper-button-prev {
	left: -26px;
}
.swiper-button-next {
	right: -26px;
}

.company_bana {
	margin:0 auto;
	text-align: center;
}
.company_bana a {
	display: inline-block;
	margin-bottom: 15px;
}
@media screen and (max-width: 480px) {
}
.company_bana a:last-of-type {
	margin: 0 auto;
}
.company_bana img {
	width:100%;
	max-width:600px;
}

.jyumin_alert {
	font-weight: 700;
	color: #F00;
}

/* ----------------------------------------------
2024.10 sp用固定フッターボタン
---------------------------------------------- */

.footTEL{
	position: fixed;
	bottom: 0;
	width: 100%;
	background: #FFF;
	border-top: 1px solid #0f4992;
	z-index: 9999;
	opacity: 0.9;
}
.footTEL ul{
	display: flex;
	height: 60px;
}
.footTEL ul li {
	width: 33.33%;
	border-right: 1px solid #0f4992;
}
.footTEL ul li:last-of-type {
	border-right: none;
}
.footTEL ul li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	text-align: center;
}
.footTEL ul li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	text-align: center;
}
.footTEL ul li a:hover {
	opacity: 1;
}
.footTEL ul li img {
	width: auto;
	height: 60px;
	margin: 0;
}

.footTEL ul li:nth-child(1) a{background: #ffffff;}
.footTEL ul li:nth-child(2) a{background: #ffffff;}
.footTEL ul li:nth-child(3) a{background: #ffffff;}

/* ISO */
.badgeArea {
	background:#333;
	padding: 30px 15px;
	text-align: center;
}
.badgeArea .badgeArea_txt {
	display: block;
	font-size: 0.8rem;
	color: #FFF;
	margin: 0 0 15px 0;
	line-height: 1.6;
}
.badgeArea .badgeArea_txt p:not(:last-of-type) {
	margin: 0 0 8px;
	line-height: 1.4;
}
.badgeArea .badgeArea_txt span:first-of-type {
	margin-left: 5px;
}
.badgeArea ul.badgeArea_list {
	display: flex;
	justify-content: center;
	list-style: none;
	margin: 0;
}
.badgeArea ul.badgeArea_list li:not(:last-of-type) {
	margin-right: 8px;
}
.badgeArea ul.badgeArea_list li img {
	width: auto;
	max-width: 100%;
	max-height: 60px;
}
@media only screen and (max-width: 768px) {
	.badgeArea {
		padding: 30px 15px 120px;
	}
}
@media only screen and (max-width: 480px) {
	.badgeArea {
		padding: 30px 15px 130px;
	}
	.badgeArea .badgeArea_txt span {
		display: block;
	}
	.badgeArea .badgeArea_txt span:first-of-type {
		display: inline-block;
	}
}

/* reCATCH */
.grecaptcha-badge {
	visibility: hidden;
}
.recaptcha_alert {
	font-size: 0.8rem;
	padding: 15px;
	text-align: center;
	line-height: 1.6;
	border-top: 1px solid #DDD;
}
@media only screen and (max-width: 768px) {
	.recaptcha_alert {
		text-align: left;
	}
}
.recaptcha_alert a {
	text-decoration: underline;
}
.recaptcha_alert a:hover {
	text-decoration: none;
}

.nav_foot {
	display: flex;
	justify-content: center;
}

.nav_foot>div{
	width:33%;
}
@media only screen and (max-width: 768px) {
	.nav_foot {
		flex-direction: column;
	}
	.nav_foot>div{
		width:100%;
	}
}

/* 協力店一覧・英語・中国版 */
.map_img_other {
	display: block;
	width: 80% !important;
	margin: 20px auto;
}

/* フッターサイト一覧 */
.footer_sitelist {
	border-top: 1px solid #CCC !important;
}
@media screen and (max-width: 768px) {
	.footer_sitelist {
		padding: 20px 15px 0 !important;
	}
}
.footer_sitelist .inner_wrap .accordion-header {
	font-size: 15px !important;
	color: #000 !important;
}
.footer_sitelist .inner_wrap .accordion-content-inner li .accordion-content-title {
	color: #000 !important;
}
.footer_sitelist .inner_wrap .accordion-content-inner li p a {
	color: #000 !important;
}

/* -- SNSボタン(フッター) --*/
.sns_list {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 40px 0 -5px;
	padding: 0;
}

.sns_list li:not(:last-of-type) {
	margin-right: 10px;
}
.sns_list li a {
	display: block;
}
.sns_list li a img {
	width: auto;
	height: 34px;
}
