@charset "utf-8";

/*============================================
全般的なスタイル
==============================================*/
* {
	margin: 0;
	padding: 0;
	/*全要素のマージン・パディングをリセット*/
	box-sizing: border-box;
}

body {
	font-size: 18px;
	/* フォントサイズ */
	-webkit-text-size-adjust: 100%;

	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
	line-height: 1.5;
	/* 行の高さを1.5倍 */
	background-color: #ffffff;
	/*内容全体の背景色*/
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;

}

div#pagebody {
	width: 100%;
	height: auto;
	margin: 0 auto;
	/*内容全体をセンタリング*/
}

img {
	border: 0;
	vertical-align: bottom;
}

/*画像のボーダーを0にする*/
p {
	margin: 10px;
	/*マージン*/
	text-indent: 1em;
	/*インデント幅*/
}

.underline {
	text-decoration: underline;
	text-decoration-thickness: 1%;
	text-underline-offset: 10%;
}

.flexbox {
	display: flex;
}

img.ichiran {
	width: 186px;
	height: 43px;
}

img.shousai {
	width: 150px;
	height: 43px;
}

img.pc {
	display: inline;
}

img.sp {
	display: none;
}

.topics .box img.news_headline {
	width: 750px;
}

.topics .box img.default {
	width: initial;
}

@media screen and (max-width: 768px) {
	body {
		font-size: 14px;
	}

	.flexbox {
		flex-direction: column;
	}

	img.ichiran {
		width: 124px;
		height: 28px;
	}

	img.shousai {
		width: 100px;
		height: 28px;
	}

	img.pc {
		display: none;
	}

	img.sp {
		display: inline;
	}

	.topics .box img.news_headline {
		width: 100%;
	}

	.topics .box img.default {
		width: 100%;
		max-width: 370px;
	}
}

/*============================================
メインメニュー
============================================*/
ul#menu {
	width: 960px;
	height: 50px;
	/*メインメニュー部分の幅と高さ*/
	margin: 0px 20px;
	/*上下マージン0px、左右マージン20px*/


}

#menu li {
	list-style-type: none;
	/*リストマーカー無しにする*/
	display: inline;
	/*リスト項目をインライン表示にする*/
	float: left;
	/*リスト項目を横に並べる*/
}

#menu li a {
	background-color: #22FF66;
	/*背景色*/
	color: #ffffff;
	/*文字色*/
	display: block;
	/*リンク部分をブロック表示にする*/
	width: 240px;
	height: 35px;
	/*幅と高さ*/
	padding: 15px 0px 0px 0px;
	/*上パディング*/
	text-align: center;
	/*テキストをセンター揃えにする*/
	text-decoration: none;
	/*リンク部分を下線無しにする*/
	/*背景画像を指定*/
	background-image: url(images/bg_menu1.png);
	background-repeat: no-repeat;
	/*背景画像を繰り返さない*/
}

#menu li a:hover {
	background-color: #0000FF;
	/*リンクにマウスが乗ったら背景色を変更する*/
	/*リンクにマウスが乗ったら背景画像を変更する*/
	background-image: url(images/bg_menu2.png);
}

/*============================================
ヘッダ画像
============================================*/
#img_index {
	width: 960px;
	height: 360px;
	/*トップページのヘッダ画像の表示サイズを指定*/
	margin: 5px 20px;
	/*マージン*/
}

.infoimg_index {
	width: 200px;
	height: 150px;
	/*画像の表示サイズを指定*/
	margin: 0px 0px 20px 20px;
	/*マージン*/
	float: right;
	/*画像を右寄せにする*/
}


/*============================================
フッタ
============================================*/
div#footer {
	font-size: 14px;
	clear: both;
	/*回り込みを解除する*/
	text-align: center;
	/*センタリング*/

	color: #000;
	/*文字色*/
	/*背景色*/
	background: rgba(200, 200, 200, .7);

	padding: 5px 0;
}

@media screen and (max-width: 768px) {
	div#footer {
		font-size: 12px;
	}
}

/* =============================================
ハンバーガー
==============================================*/
html {
	font-family: sans-serif;
	scroll-behavior: smooth;

}

header {
	display: flex;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
	padding: 0 0 0 10px;
	background: rgba(255, 255, 255, .9);
	align-items: center;
}

header h1 {
	font-size: 20px;
}

a {
	text-decoration: none;
}

nav {
	margin: 0 0 0 auto;
	/* width: 150px; */
	width: 250px;
	padding: 10px;
}

.btn {
	text-align: right;
}

.btn a {
	display: inline-block;
	text-align: center;
}

#open a {
	background: #eee;
	width: 30px;
	line-height: 30px;
	border: 1px solid #ccc;
	border-radius: 5px;
	transition: 1s;
}

#close a {
	color: #fff;
	background: #aaa;
	width: 30px;
	line-height: 30px;
	border-radius: 15px;
}

#g_menu li {
	list-style: none;
	/* font-size: 120%; */
	font-size: 24px;
}

/* font color */
#g_menu a {
	color: #000;
}

#g_menu {
	height: 100%;
	/* width: 150px; */
	width: 250px;
	padding: 20px;
	background: rgba(255, 255, 255, .5);
	transition: right 1s;
	position: fixed;
	top: 0;

	/* 最前列 */
	z-index: 30;
}

#g_menu:not(:target) {
	right: -100%;
	display: none;
}

#g_menu:target {
	right: 0;
	display: block;
}

article {
	padding: 20px 0;
}

section {
	margin: 0 auto;
	width: 100%;
	max-width: 800px;
}

h2 {
	border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 768px) {
	header img.header {
		width: 80%;
		height: 80%;
	}

	nav {
		padding: 5px;
	}

	#g_menu li {
		font-size: 20px;
	}

}

/* =============================================
フェードイン
==============================================*/
#stage {
	position: relative;
	/* width: 1000px; */
	height: auto;
	overflow: hidden;

}

#frame {
	/* width: 1000px;
	height: 500px; */
	height: auto;
	position: relative;
	overflow: hidden;
}

/* beforeでpadding-topを設定することで、疑似的に高さを与える */
#frame:before {
	content: '';
	display: block;
	/* padding-top: calc(100% * 9 / 16); */
	padding-top: calc(100% * 750 / 1920);
}

.pic {
	position: absolute;
	/* width: 1000px; */
	/* height: 562px; */
	top: 0;
	left: 0;
	/* 比率を16:9に */
	/* width: 16;
	height: 9; */
}

.pic img {
	opacity: 0;
	-moz-animation: imgTrans 30s infinite;
	-webkit-animation: imgTrans 30s infinite;
	animation: imgTrans 30s infinite;
	width: 100%;
	height: 100%;
}


.pic span {
	opacity: 0;

	position: absolute;
	color: white;
	font-size: 58px;
	font-weight: 575;
	-moz-animation: imgTrans 30s infinite;
	-webkit-animation: imgTrans 30s infinite;
	animation: imgTrans 30s infinite;
}

#photo1 img,
#photo1 span {
	opacity: 0;
	/* top:10%;left:16%; */

	-moz-animation-delay: 0s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
}

#photo2 img,
#photo2 span {
	opacity: 0;
	/* top:60%;left:60%; */

	-moz-animation-delay: 6s;
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
}

#photo3 img,
#photo3 span {
	opacity: 0;
	/* top:30%;left:18%; */

	-moz-animation-delay: 12s;
	-webkit-animation-delay: 12s;
	animation-delay: 12s;
}

#photo4 img,
#photo4 span {
	opacity: 0;
	/* top:55%;left:60%; */

	-moz-animation-delay: 18s;
	-webkit-animation-delay: 18s;
	animation-delay: 18s;
}

#photo5 img,
#photo5 span {
	opacity: 0;
	/* top:33%;left:12%; */

	color: black;

	-moz-animation-delay: 24s;
	-webkit-animation-delay: 24s;
	animation-delay: 24s;
}

@-webkit-keyframes imgTrans {
	0% {
		opacity: 0;
	}

	5% {
		opacity: 1;
	}

	20% {
		opacity: 1;
	}

	25% {
		opacity: 0;
	}

	100% {
		opacity: 0;
	}
}

@-moz-keyframes imgTrans {
	0% {
		opacity: 0;
	}

	5% {
		opacity: 1;
	}

	20% {
		opacity: 1;
	}

	25% {
		opacity: 0;
	}

	100% {
		opacity: 0;
	}
}

@keyframes imgTrans {
	0% {
		opacity: 0;
	}

	5% {
		opacity: 1;
	}

	20% {
		opacity: 1;
	}

	25% {
		opacity: 0;
	}

	100% {
		opacity: 0;
	}
}

#Btn_stage {
	background: url(images/back_image/P1010411.jpg);
	/*背景画像を指定*/
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	/* width: 1000px; */
	background-position: right 0px bottom -350px;
	white-space: nowrap;
}

.Bar_frame {
	position: absolute;
}

.Bar_frame img {
	width: 35px;
	height: 35px;
}

.Bar_word {
	font-size: 20px;
	padding: 0px 42px;
}

.Bar_frame2 {
	position: absolute;
	padding: 0px 100px;
}


.Bumon_word {
	padding: 10px 35px;
}

.Bumon_frame {
	position: absolute;
	padding: 13px 5px;
}

@media screen and (max-width: 768px) {
	#frame:before {
		padding-top: calc(100% * 1080 / 1920);
	}

	#Btn_stage {
		background-position: right 0px bottom -10px;
	}

	.Bar_frame img {
		width: 16px;
		height: 16px;
	}

	.Bar_word {
		font-size: 16px;
		padding: 0px 35px;
	}

}

/* =============================================
ニュースリスト
==============================================*/
.ttl {
	/* font-size: 125%; */
	/* font-size: 26px; */
	font-weight: bold;
	color: #000000;
	/* margin: 0 4%; */
	padding: 10px 5px;
	border-bottom: solid 2px #000066;
	background-image: linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));

}

.topics {
	/* margin: 0 4%; */
}

.topics dl {
	/* padding: 15px 0; */
	padding: 15px 40px;
	border-bottom: 1px solid #ccc;
	background: rgba(255, 255, 255, .5);

}

.topics dt {
	padding-bottom: 5px;
	padding-left: 5px;
	color: #000;
	clear: left;
	float: left;
	width: 18%;
}

.topics dd {
	color: #000;
	margin-left: 18%;
}

/*アコーディオンタイトル*/
.topics dd.title {
	position: relative;
	/*+マークの位置基準とするためrelative指定*/
	cursor: pointer;
	transition: all .5s ease;
	display: flex;
	align-items: center;
}

.topics dd.title .toggle {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-left: 10px;
}

.topics dd.title.close .toggle {
	transform: rotate(180deg);
}

/*アコーディオンで現れるエリア*/
.topics .box {
	display: none;
	/*はじめは非表示*/
	margin: 0 0 0 18%;
}

/* @media screen and (min-width: 768px) {
	.topics dt {
		clear: left;
		float: left;
		width: 18%;
	}

	.topics dd {
		margin-left: 18%;
	}
} */

@media screen and (max-width: 768px) {
	.ttl {
		padding: 5px 5px;
	}

	.topics dl {
		padding: 10px;
	}

	.topics dt {
		padding: 0;
		width: 25%;
	}

	.topics dd {
		margin-left: 25%;
	}

	.topics dd.title .toggle {
		display: inline-block;
		width: 15px;
		height: 15px;
		margin-left: 10px;
	}

}

/* =============================================
ボタン
==============================================*/
#Btn_stage .row {
	position: relative;
	/* top: 50%;
	left: 50%;
	transform: translate(-50%, -50%); */
	text-align: center;
	padding-bottom: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#Btn_stage .row:first-of-type {
	justify-content: space-between;
	padding-top: 50px;
	padding-left: calc((100% - 700px) / 2);
	padding-right: calc((100% - 700px) / 2);
}

#Btn_stage .row:last-of-type {
	padding-bottom: 50px;
}

#Btn_stage .row .interval {
	display: inline-block;
	width: 25px;
}

.btn-gradient-flat1 {
	display: inline-block;
	text-align: center;
	line-height: 200px;

	width: 200px;
	height: 200px;

	/* font-size: 120%; */
	font-size: 32px;

	text-decoration: none;
	color: #FFF;
	background-image: url(images/icon_Bn.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	transition: .4s;

	/* position: relative;
	top: 50%;
	left:27%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%); */

}

.btn-gradient-flat2 {
	display: inline-block;
	text-align: center;
	line-height: 200px;


	width: 200px;
	height: 200px;

	/* font-size: 120%; */
	font-size: 32px;

	text-decoration: none;
	color: #FFF;
	background-image: url(images/icon_Tm.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	transition: .4s;

	/* position: relative;
	top: 50%;
	left: 29.5%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%); */

}

.btn-gradient-flat3 {
	display: inline-block;
	text-align: center;
	line-height: 200px;

	width: 200px;
	height: 200px;

	/* font-size: 120%; */
	font-size: 32px;

	text-decoration: none;
	color: #FFF;
	background-image: url(images/icon_Ab2.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	transition: .4s;

	/* position: relative;
	top: 50%;
	left: 32%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%); */
}

.btn-gradient-flat4 {
	display: inline-block;
	text-align: center;
	line-height: 200px;

	width: 200px;
	height: 200px;
	margin: 75 0px;

	/* font-size: 120%; */
	font-size: 32px;

	text-decoration: none;
	color: #FFF;
	background-image: url(images/icon_Re.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	transition: .4s;

	/* position: relative;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%); */
}

.btn-gradient-flat5 {
	display: inline-block;
	text-align: center;
	line-height: 200px;

	width: 200px;
	height: 200px;

	/* font-size: 120%; */
	font-size: 32px;

	text-decoration: none;
	color: #FFF;
	background-image: url(images/icon_Co.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;

	transition: .4s;

	/* position: relative;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%); */

}

.btn-gradient-flat1:hover,
.btn-gradient-flat2:hover,
.btn-gradient-flat3:hover,
.btn-gradient-flat4:hover,
.btn-gradient-flat5:hover {

	text-shadow:
		1px 1px 1px #fff,
		1px -1px 1px #fff,
		-1px 1px 1px #fff,
		-1px -1px 1px #fff,
		0 0 22px #fff;
	opacity: 0.7;

	border-radius: 100px;
	transition: background-color 1s, border-radius 2s;
}

@media screen and (max-width: 768px) {
	#Btn_stage .row {
		padding-bottom: 15px;
	}

	#Btn_stage .row:first-of-type {
		padding-top: 30px;
		padding-left: calc((100% - 330px) / 2);
		padding-right: calc((100% - 330px) / 2);
	}

	#Btn_stage .row:last-of-type {
		padding-bottom: 30px;
	}

	#Btn_stage .row .interval {
		width: 15px;
	}

	.btn-gradient-flat1 {
		line-height: 100px;
		width: 100px;
		height: 100px;
		font-size: 20px;
	}

	.btn-gradient-flat2 {
		line-height: 100px;
		width: 100px;
		height: 100px;
		font-size: 20px;
	}

	.btn-gradient-flat3 {
		line-height: 100px;
		width: 100px;
		height: 100px;
		font-size: 20px;
	}

	.btn-gradient-flat4 {
		line-height: 100px;
		width: 100px;
		height: 100px;
		font-size: 20px;
	}

	.btn-gradient-flat5 {
		line-height: 100px;
		width: 100px;
		height: 100px;
		font-size: 20px;
	}
}

/* =============================================
	lodingアニメーション
==============================================*/
/* ローディングの背景部分のCSS */
.loader {
	background: #FFF;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10;
}

/* ローディングのアニメーション部分のCSS */
.loader-animation,
.loader-animation:before,
.loader-animation:after {
	background: #44FF99;
	-webkit-animation: load1 1s infinite ease-in-out;
	animation: load1 1s infinite ease-in-out;
	width: 1em;
	height: 4em;
}

.loader-animation {
	height: 10px;
	left: 50%;
	margin: -5px 0 0 -5px;
	position: absolute;
	top: 50%;
	width: 10px;
	color: #44FF99;
	text-indent: -9999em;
	font-size: 10px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

.loader-animation:before,
.loader-animation:after {
	position: absolute;
	top: 0;
	content: '';
}

.loader-animation:before {
	left: -1.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.loader-animation:after {
	left: 1.5em;
}

@-webkit-keyframes load1 {

	0%,
	80%,
	100% {
		box-shadow: 0 0;
		height: 4em;
	}

	40% {
		box-shadow: 0 -2em;
		height: 5em;
	}
}

@keyframes load1 {

	0%,
	80%,
	100% {
		box-shadow: 0 0;
		height: 4em;
	}

	40% {
		box-shadow: 0 -2em;
		height: 5em;
	}
}

/* =============================================
アバウト_画像
==============================================*/
#stage2 {
	position: relative;
	/* width: 1000px; */
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
}

#frame2 {
	/* height: 300px; */
	position: relative;
	height: auto;
	overflow: hidden;
}

.pic2 img {
	width: 100%;
	height: 100%;
}

.pic3 img {
	width: 50%;
	height: 50%;
}

/* 会社概要・会社沿革 */
.co {
	margin-bottom: 20px;
}

.co dl {
	/* padding: 15px 0; */
	padding: 15px 40px;
	background: rgba(255, 255, 255, .5);
}

.co dt {
	padding-bottom: 5px;
	padding-left: 5px;
	color: #000;
	font-weight: bold;
	clear: left;
	float: left;
	/* width: 18%; */
	width: 20%;

}

.co dd {
	/* margin-left: 20%; */
	margin-left: 22%;
	margin-bottom: 10px;
	color: #000;
}

.co dd:last-of-type {
	margin-bottom: 0;
}

.co div.sign {
	text-align: right;
}

.co img.sign {
	width: 200px;
	height: 54px;
	vertical-align: middle;
}

.gmap_wrap {
	position: relative;
	width: 100%;
	max-width: 700px;
	aspect-ratio: 7 / 4;
	overflow: hidden;
}

.gmap_iframe {
	position: absolute;
	inset: -150px;
	width: calc(100% + 300px);
	height: calc(100% + 300px);
}

/* @media screen and (min-width: 768px) {
	.co dt {
		clear: left;
		float: left;
		width: 20%;
	}

	.co dd {
		margin-left: 22%;
		margin-bottom: 10px;
		color: #000;
	}

	.co dd:last-of-type {
		margin-bottom: 0;
	}
} */

/* 1日の流れの部分。dlのwidthを100%にして、dtとddの合計が100%に収まるようにする */
.list_1day {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.co dl.list_1day {
	padding: 0;
}

.list_1day dt {
	display: flex;
	width: 100px;
	clear: left;
	font-weight: normal;
}

.list_1day dd {
	display: flex;
	align-items: center;
	width: calc(100% - 100px);
	margin: 0;
}

.co_ttl {
	/* font-size: 125%; */
	font-weight: bold;
	color: #000000;
	padding: 10px 5px;
	background-image: linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	border-bottom: solid 2px #000066;

}

img.sign {
	vertical-align: middle;
}

.parent {
	/*親要素*/
	height: 150px;
	background: orange;
}

.parent p {
	/*上下センタリングするもの*/
	line-height: 150px;
}

@media screen and (max-width: 768px) {
	.co dl {
		padding: 10px;
	}

	.co dt {
		width: 30%;
	}

	.co dd {
		margin-left: 30%;
		margin-bottom: 10px;
	}

	.co img.sign {
		width: 156px;
		height: 42px;
	}

	.list_1day dt {
		width: 80px;
	}

	.list_1day dd {
		margin-left: 0;
	}

	.co_ttl {
		padding: 5px 5px;
	}

}

/* =============================================
Trust Mind 親ページ
==============================================*/
#MP_Top {
	/* font-size: 125%; */
	font-weight: bold;
	color: #000000;
	padding: 10px 5px;
	border-bottom: solid 2px #000066;
	background-image: linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));

}

#MP_Main {
	/* font-size: 20px; */
	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);
	/* padding: 15px 5px; */
	padding: 15px 40px;
}

#MP_Mind1 {
	/* font-size: 125%; */
	/* font-size: 26px; */
	font-size: 20px;
	font-weight: bold;
	color: #000000;
	padding: 10px 5px;
	border-bottom: solid 2px #000066;
	background-image: linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	/* margin: 0 4%; */
}

#MP_Mind2 {
	/* font-size: 110%; */
	/* font-size: 20px; */
	/* フォントサイズ */
	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);
	/* padding: 0 10px; */
	padding: 15px 40px;
}


#MP_MindBumon {
	/* font-size: 115%; */
	/* フォントサイズ */
	font-weight: bold;

	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);
	/* margin: 0 4%; */
	padding: 0 10px;

}

#MP_Mind3 {
	/* font-size: 20px; */
	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);
	padding-left: 10px;
	/* margin: 0 4%; */
	padding: 15px 40px;
	/* margin-bottom: 20px; */
}

#MP_Link {
	/* font-size: 125%; */
	/* font-size: 26px; */
	font-size: 20px;
	/* フォントサイズ */
	font-weight: bold;
	color: #000000;
	/* 文字色：黒 */
	padding: 10px 5px;
	border-bottom: solid 2px #000066;
	background-image: linear-gradient(45deg, rgba(100, 100, 200, .4), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(100, 100, 200, .4), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(100, 100, 200, .4), rgba(160, 160, 160, 10));

}

#MP_Link2 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);
	/* text-align: center; */
	padding: 15px 40px;
}

#MP_Link2 a:hover {
	color: 0000FF;
}

#MP_ABMP1 {
	color: #000000;
	/* 文字色：黒 */
	/* background: rgba(150, 150, 150, .3); */
	/* margin: 10px 3px; */
	/*←上下5px、左右2pxのマージン指定の場合*/

	text-align: center;
	/*テキストをセンター揃えにする*/
	/* font-size: 100%; */
	/* font-size: 20px; */
	background-position: 0px 0px, center;

	/* display: inline-block; */
	/* line-height: 35px; */
	/* line-height: 1.5em; */
	/* width: 320px; */
	padding: 10px 0;
	margin-bottom: 20px;
}

#MP_ABMP1 .flexbox {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 0 10px;
	padding: 10px;
}

#MP_ABMP1 .flexitem {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	width: calc(100% / 3);
	background: rgba(150, 150, 150, .3);
	padding: 10px;
}

#MP_ABMP1 .flexitem .imagebox {
	width: 100%;
}

#MP_ABMP1 .flexitem .imagebox img {
	width: 100%;
	object-fit: cover;
	aspect-ratio: 3 / 2;
}

#MP_ABMP1 .flexitem .textbox {
	text-align: center;
	margin: 20px 0;
}

#MP_ABMP1 .flexitem .linkbox {
	text-align: center;
}

@media screen and (max-width: 768px) {
	#MP_Top {
		padding: 5px 10px;
	}

	#MP_Main {
		/* font-size: 20px; */
		padding: 5px 10px;
	}

	#MP_Mind1 {
		font-size: 16px;
		padding: 5px 10px;
	}

	#MP_Mind2 {
		/* font-size: 16px; */
		padding: 5px 10px;
	}

	#MP_Mind3 {
		/* font-size: 16px; */
		padding: 5px 10px;
	}

	#MP_Link {
		font-size: 16px;
		padding: 5px 10px;
	}

	#MP_ABMP1 .flexbox {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 0;
	}

	#MP_ABMP1 .flexitem {
		width: 100%;
		max-width: 480px;
		min-width: 320px;
	}

	#MP_ABMP1 .flexitem:nth-child(2) {
		margin: 10px 0;
	}

}

/* =============================================
Trust Mind 子ページ
==============================================*/
.tm dl {
	padding: 15px 0;
	padding-bottom: 20px;

	background: rgba(255, 255, 255, .5);
}

.tm dt {
	padding: 5px;
	color: #000;
	margin-left: 2%;
	clear: left;
	float: left;
	width: 55%;
}

.tm dd {
	margin-left: 58%;
	color: #000;
	padding: 0 10px;
}

/* 画像のスタイル調整 */
.swiper-slide {
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;

	position: relative;
	overflow: hidden;
}

.tm dd>div {
	width: 100%;
	max-width: 400px;
	height: auto;
	aspect-ratio: 300 / 750;
	margin: 0 auto;
}

/* スライダーのスタイル調整 */
.swiper-container {
	/* width: 400px;
	height: 1000px; */
	width: 100%;
	height: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.tm dl {
		padding: 15px 0;
		padding-bottom: 20px;
	}

	.tm dt {
		margin: 0 0 20px 0;
		padding: 5px 10px;
		width: 100%;
	}

	.tm dd {
		margin-left: 0;
		width: 100%;
	}

	.tm dd>div {
		max-width: initial;
		aspect-ratio: 12 / 3;
	}

}

/* =============================================
ビジネス_画像
==============================================*/
#BN_Word1 {
	color: #000000;
	/* 文字色：黒 */
	font-weight: bold;
	background: rgba(255, 255, 255, .5);
	padding: 0 50px;

	/* font-size: 115%; */
	color: #000098;
	/* margin: 0 4%; */


}

/* 会社概要・会社沿革 */
.bn dl {
	background-image: linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160));
	background-image: -ms-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));
	background-image: -webkit-linear-gradient(45deg, rgba(200, 200, 200, .5), rgba(160, 160, 160, 10));

}

.bn dt {
	padding-bottom: 5px;
	color: #000;
	width: 67%;
	padding-left: 5px;

}

.Bnimg_index {
	width: 310px;
	height: 210px;
	/*画像の表示サイズを指定*/
	margin: 0px 10px 0px 0px;
	/*マージン*/
	float: left;
	/*画像を右寄せにする*/
}


/* スライダーのスタイル調整 */
.swiper-container2 {

	width: 310px;
	height: 210px;
	margin: 0px 10px 0px 0px;
	/*マージン*/
	float: left;
}



#BN_Guide {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(255, 255, 255, .5);

	display: -ms-grid;
	display: grid;
	/* グリッドレイアウト */

	-ms-grid-rows: 355px 385px 355px 355px;
	-ms-grid-columns: 332px 332px 332px;

	/* grid-template-rows: 355px 385px 355px 355px; */
	/* grid-template-columns: 332px 332px 332px; */
	grid-template-rows: 355px 385px 355px 355px;
	grid-template-columns: 320px 320px 320px;
	gap: 10px;
}

#VT_Base {

	-ms-grid-row: 1;
	-ms-grid-row-span: 1;

	-ms-grid-column: 1;
	-ms-grid-column-span: 2;

	grid-row: 1 / 2;
	grid-column: 1 / 3;

}

#UT_Base {
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;

	-ms-grid-column: 3;
	-ms-grid-column-span: 1;

	grid-row: 1 / 3;
	grid-column: 3 / 4;
}

#RT_Base {
	-ms-grid-row: 2;
	-ms-grid-row-span: 1;

	-ms-grid-column: 1;
	-ms-grid-column-span: 1;

	grid-row: 2 / 3;
	grid-column: 1 / 2;

}

#MT_Base {
	-ms-grid-row: 2;
	-ms-grid-row-span: 1;

	-ms-grid-column: 2;
	-ms-grid-column-span: 1;

	grid-row: 2 / 3;
	grid-column: 2 / 3;

}

#TT_Base {
	-ms-grid-row: 3;
	-ms-grid-row-span: 2;

	-ms-grid-column: 1;
	-ms-grid-column-span: 1;

	grid-row: 3 / 5;
	grid-column: 1 / 2;

}

#PT_Base {
	-ms-grid-row: 3;
	-ms-grid-row-span: 1;

	-ms-grid-column: 2;
	-ms-grid-column-span: 2;

	grid-row: 3 / 4;
	grid-column: 2 / 4;

}

#CAD_Base {
	-ms-grid-row: 4;
	-ms-grid-row-span: 1;

	-ms-grid-column: 2;
	-ms-grid-column-span: 1;

	grid-row: 4 / 5;
	grid-column: 2 / 3;

}

#AMIS_Base {
	-ms-grid-row: 4;
	-ms-grid-row-span: 1;

	-ms-grid-column: 3;
	-ms-grid-column-span: 1;

	grid-row: 4 / 5;
	grid-column: 3 / 4;

}

#BN_Guide a:hover {
	color: 0000FF;
}

#BN_ABMPW320 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 320px;

}

#BN_ABMPW300 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 100%;
	min-width: 300px;
	height: 100%;
}

#BN_ABMPW300 img {
	width: 100%;
	min-width: 300px;
}

/* 写真一覧アイコン */
#BN_ABMPW300 img.ichiran {
	width: 186px;
	min-width: initial;
	height: 43px;
}

#BN_ABMPW640 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	/* width: 652px; */
	width: 650px;

}

#BN_ABMPW600 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 100%;
	min-width: 610px;
	/* gapの分をプラス */
	height: 100%;
}

#BN_ABMPW600 img {
	width: 100%;
	min-width: 610px;
	/* gapの分をプラス */
}

/* 写真一覧アイコン */
#BN_ABMPW600 img.ichiran {
	width: 186px;
	min-width: initial;
	height: 43px;
}

#BN_ABMPW320H {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 320px;
	position: absolute;
	top: 0%;

}

#BN_ABMPW300H {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 100%;
	min-width: 300px;
	height: 100%;
	/* position: absolute;
	top: 0%; */

}

#BN_ABMPW300H img {
	width: 100%;
	min-width: 300px;
}

/* 写真一覧アイコン */
#BN_ABMPW300H img.ichiran {
	width: 186px;
	min-width: initial;
	height: 43px;
}

#BN_ABMPW1000 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 1000px;

}

#BN_ABMPW920 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 100%;
	min-width: 920px;
	height: 100%;

}

#BN_ABMPW920 img {
	width: 100%;
	min-width: 920px;
}

/* 写真一覧アイコン */
#BN_ABMPW920 img.ichiran {
	width: 186px;
	min-width: initial;
	height: 43px;
}

#BN_ABMP_Dummy {
	color: #000000;
	/* 文字色：黒 */

	text-align: center;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 320px;

}

#BN_ABMPW320H2 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 320px;
	position: absolute;

}

#BN_ABMPW300H2 {
	color: #000000;
	/* 文字色：黒 */
	background: rgba(150, 150, 150, .3);

	text-align: left;
	/*テキストをセンター揃えにする*/
	font-size: 75%;
	background-position: 0px 0px, center;
	font-weight: normal;

	width: 100%;
	min-width: 300px;
	height: 100%;
	/* position: absolute; */

}

#BN_ABMPW300H2 img {
	width: 100%;
	min-width: 300px;
}

/* 写真一覧アイコン */
#BN_ABMPW300H2 img.ichiran {
	width: 186px;
	min-width: initial;
	height: 43px;
}

#BN_Board {
	position: relative;
	/* width: 1000px; */
	width: 100%;
	/* height: 1500px; */
	height: auto;
	margin: 0 auto 20px;

	/* max-width: 1000px;
	min-width: 1000px; */
	/* min-width: 920px; */

}

#BN_Board2 {
	position: relative;
	/* width: 1000px; */
	width: 100%;
	/* height: 400px; */
	height: auto;
	margin: 0 auto 20px;

	/* max-width: 1000px;
	min-width: 1000px; */
	/* min-width: 920px; */

}

#BN_Word1 .flexbox {
	margin-bottom: 1.5em;
}

#BN_Word1 .flexbox .left {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	width: auto;
}

#BN_Word1 .flexbox .left .title {
	color: #000;
	font-weight: bold;
	font-size: 24px;
	text-indent: initial;
	padding-left: 5px;
	margin-bottom: 5px;
}

#BN_Board .flexbox .left .title {
	border-left: 5px solid #007722;
}

#BN_Board2 .flexbox .left .title {
	border-left: 5px solid #95c777;
}

#BN_Word1 .flexbox .left .text {
	font-weight: normal;
	/* font-size: 20px; */
	color: #000000;
	text-indent: 1em;
	padding-left: 10px;
	margin-bottom: 5px;
	flex-shrink: 0;
}

#BN_Word1 .flexbox .left .text ul {
	margin: 1em 1em;
}

#BN_Word1 .flexbox .left .detail a {
	display: block;
	width: fit-content;
}

#BN_Word1 .flexbox .left .detail img {
	display: block;
	/* margin-left: auto; */
}

#BN_Word1 .flexbox .left .detail img.tool_icon {
	/* max-height: 240px; */
	max-height: 150px;
}

#BN_Word1 .flexbox .right {
	flex-shrink: 0;
	width: 40%;
	max-width: 640px;
	min-width: 300px;
	margin-left: 20px;
}

#BN_Word1 .flexbox .right img {
	display: block;
	margin-top: auto;
	object-fit: contain;
	width: 100%;
}

#Dev_Results {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0 10px 10px 10px;
}

#Dev_Results .subtitle {
	color: #000;
	font-weight: bold;
	font-size: 24px;
	text-indent: initial;
	width: fit-content;
	padding-top: 10px;
	margin-bottom: 10px;
}

#Dev_Results .flexbox {
	background-color: #eee;
	padding: 10px;
}

#Dev_Results .education .flexbox .left .title {
	border-left: 5px solid #f08080;
}

#Dev_Results .company .flexbox .left .title {
	border-left: 5px solid #5f9ea0;
}


.it_assist {
	font-size: 16px;
	color: #fff;
	background-color: #a267bf;
	padding: 1px 5px;
	margin: 2px 0;
	vertical-align: text-bottom;
	width: fit-content;
	display: inline-block;
}

@media screen and (max-width: 768px) {
	#BN_Word1 {
		padding: 0 10px;
	}

	#BN_Word1 .flexbox {
		margin-bottom: 2em;
	}

	#BN_Word1 .flexbox .left .title {
		font-size: 16px;
		padding-left: 5px;
		margin-bottom: 10px;
	}

	#BN_Board .flexbox .left .title {
		border-left: 5px solid #007722;
	}

	#BN_Board2 .flexbox .left .title {
		border-left: 5px solid #95c777;
	}

	#BN_Word1 .flexbox .left .text {
		text-indent: 1em;
		padding-left: 10px;
		margin-bottom: 10px;
	}

	#BN_Word1 .flexbox .left .detail img.tool_icon {
		max-height: 100px;
	}

	#BN_Word1 .flexbox .right {
		width: 100%;
		margin-top: 5px;
		margin-left: 0;
	}

	#Dev_Results .subtitle {
		font-size: 16px;
	}

	.it_assist {
		font-size: 10px;
		padding: 1px 4px;
	}

}

.tabs {
	display: flex;
	flex-wrap: wrap;
	background-color: #fff;
	margin-top: -50px;
}

.tab_item {
	width: calc(100%/2 - 10px);
	height: 50px;
	background-color: #e0e0e0;
	line-height: 50px;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	color: #707070;
	position: relative;
	z-index: 1;
	cursor: pointer;
	margin: 0 5px;
	opacity: 0.75;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease 0s;
}

.tab_item img.m {
	margin-right: 0.5em;
}

.tab_item span {
	letter-spacing: 0.5em;
}

.tab_item:hover {
	opacity: 1;
}

.tab_item img {
	width: 25px;
	height: 25px;
	margin-right: 0.2em;
}

.tab_content {
	width: 100%;
	display: none;
	overflow: hidden;
	margin-top: 30px;
}

input[name="tab_item"] {
	display: none;
}

.tabs input:checked+.tab_item {
	background-color: #fff;
	color: #000;
	opacity: 1;
}

#inspection:checked~#Inspection_Department,
#informationsystem:checked~#InformationSystem_Department,
#philosophy:checked~#Corporate_Philosophy,
#training:checked~#Philosophy_Training {
	display: block;
}

@media screen and (max-width: 768px) {
	.tabs {
		margin-top: -30px;
	}

	.tab_item {
		width: calc(100%/2 - 10px);
		height: 30px;
		line-height: 30px;
		font-size: 16px;
	}

	.tab_item img {
		width: 16px;
		height: 16px;
	}

	.tab_content {
		margin-top: 20px;
	}

}