/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

/* ここまでリセットcss */

/* 共通項目 */
body {
	font-family: "游明朝体 Pr6N";
	font-weight: bold;
	width: 100%;
	max-width: 1920px;
	margin: auto;
}

/* .openbtn1 {
  display: none;
} */

/* ヘッダー */
header {
	width: 100%;
	max-width: 1920px;
	margin: auto;
	font-family: sans-serif 'Noto serif';
}

.top-banner li img::before {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background-color: transparent;
	background-image: -webkit-radial-gradient(#00648f 25%, transparent 20%), -webkit-radial-gradient(#00648f 25%, transparent 20%);
	background-image: -o-radial-gradient(#00648f 25%, transparent 20%), -o-radial-gradient(#00648f 25%, transparent 20%);
	background-image: radial-gradient(#00648f 25%, transparent 20%), radial-gradient(#00648f 25%, transparent 20%);
	background-size: 4px 4px;
	/* background-position: 0 0, 2px 2px; */
	opacity: .35;
	z-index: 999999999999999999999999999999;
	content: '';
}

/* ヘッダートップ  */
.header_top {
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	height: 100px;
	max-width: 1920px;
	margin: auto;
}

.logo {
	margin-left: 20px;
	flex-basis: 20%;
	display: flex;
}

/* ハンバーガメニュー */
/*　ハンバーガーボタン　*/
/*----------------------------
* メニュー開閉ボタン
*----------------------------*/
.menu-btn {
	position: fixed;
	margin-right: 10%;
	top: 1px;
	z-index: 2;
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
}

/*----------------------------
* メニュー本体
*----------------------------*/
.menu {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99999;
	width: 100vw;
	height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: #ffffff;
}

.menu__item {
	width: 100%;
	height: auto;
	padding: 6px 0;
	text-align: center;
	color: #fff;
	box-sizing: border-box;
	font-size: 1.5rem;
}

.menu__item:nth-of-type(2) {
	margin: 0 0 1px;
	width: 150px;
}

.menu__item:nth-of-type(7) {
	margin: 10px 0 1px;
	width: 150px;
}

.menu__item:nth-of-type(15) {
	margin: 10px 0 1px;
	width: 150px;
}

.menu__item a {
	text-decoration: none;
	color: #000;
}

.menu__item a:hover {
	opacity: 0.2;
	transition: all 0.2s;
}

.mini {
	font-size: 0.8rem;
}

/*----------------------------
* アニメーション部分
*----------------------------*/
/* アニメーション前のメニューの状態 */
.menu {
	transform: translateX(100vw);
	transition: all .3s linear;
}

/* アニメーション後のメニューの状態 */
.menu.is-active {
	transform: translateX(0);
}

/* ナビ開いてる時のボタン */
/* ハンバーガメニューの三本線 */
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn1 {
	position: relative;
	/*ボタン内側の基点となるためrelativeを指定*/
	background: #000000;
	cursor: pointer;
	width: 50px;
	height: 50px;
	border-radius: 5px;
	z-index: 999999;
}

/*ボタン内側*/
.openbtn1 span {
	display: inline-block;
	transition: all .4s;
	/*アニメーションの設定*/
	position: absolute;
	left: 14px;
	height: 3px;
	border-radius: 2px;
	background: #fff;
	width: 45%;
}

.openbtn1 span:nth-of-type(1) {
	top: 15px;
}

.openbtn1 span:nth-of-type(2) {
	top: 23px;
}

.openbtn1 span:nth-of-type(3) {
	top: 31px;
}

/*activeクラスが付与されると線が回転して×に*/
.openbtn1.active span:nth-of-type(1) {
	top: 18px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

.openbtn1.active span:nth-of-type(2) {
	opacity: 0;
	/*真ん中の線は透過*/
}

.openbtn1.active span:nth-of-type(3) {
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}

/* ここまでハンバーガメニューの三本線 */

/* 最初表示しない */
.openbtn1 {
	display: none;
}

/* ここまでハンバーガメニュー */

/* ヘッダーナビ */
.header_top nav {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	/* flex-basis: 40%; */
	margin-right: 5%;
}

header nav ul {
	display: flex;
	justify-content: space-around;
}

/* header nav ul li {
  border-right: 2px solid #000000;
} */

header nav ul li a {
	margin: 0 28px;
	text-decoration: none;
	color: #000;
	font-size: 1.0625rem;
	padding: 10px 0;
}

header nav ul a {
	color: #000;
	font-size: 1.0625rem;
	text-decoration: none;
	margin: 0 30px;
}

header nav ul .current {
	/* background: #000000; */
	text-decoration: none;
	color: #080808;
	transition: all 0.5s;
}

.gb_nav ul li .line-right {
	display: block;
	position: absolute;
	top: 12px;
	right: 0;
	width: 1px;
	height: 30px;
	background-color: #000;
}

/*2階層目以降は横並びにしない*/
nav ul ul {
	display: block;
}

/*下の階層のulや矢印の基点にするためliにrelativeを指定*/
nav ul li {
	position: relative;
	margin-left: 11px;
}

/*下の階層を持っているulの指定*/
nav li.has-child ul {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	/*絶対配置で位置を指定*/
	position: absolute;
	left: -15px;
	top: 35px;
	z-index: 999999999999999;
	/*形状を指定*/
	background: #ffffff;
	width: 170px;
	height: auto;
	/*はじめは非表示*/
	visibility: hidden;
	opacity: 0s;
	/*アニメーション設定*/
	transition: all .2s;
}

nav li.has-child ul li {
	margin: 10px 0 10px 0;
	border-right: 0;
	/* border-bottom: 2px solid #000; */
	width: 100%;
	height: auto;
	font-size: 0.9rem;
}

nav li.has-child ul li:last-child a {
	font-size: 0.92rem;
}



/*hoverしたら表示*/
nav li.has-child:hover>ul,
nav li.has-child ul li:hover>ul,
nav li.has-child:active>ul,
nav li.has-child ul li:active>ul {
	visibility: visible;
	opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a {
	height: 100%;
	font-size: 1.0625rem;
	color: #000000;
	/* border-bottom:solid 1px rgba(255,255,255,0.6); */
}

nav li.has-child ul li:last-child a {
	border-bottom: none;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active {
	background: #000000;
	color: #fff;
	transition: all 0.5s;
}

/* ヘッダーナビ２ */
nav li.has-child-2 ul {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: -26px;
	top: 35px;
	z-index: 999999999999999;
	background: #fff;
	width: 205px;
	height: auto;
	visibility: hidden;
	opacity: 0s;
	transition: all .3s;
}


nav li.has-child-2 ul li {
	margin: 10px 0 10px 0;
	border-right: 0;
	/* border-bottom: 2px solid #000; */
	padding: 10px 0 10px 0;
	font-size: 0.8rem;
	word-break: break-all;
}

nav li.has-child-2 ul li:last-child a {
	font-size: 0.92rem;
}

/*hoverしたら表示*/
nav li.has-child-2:hover>ul,
nav li.has-child-2 ul li:hover>ul,
nav li.has-child-2:active>ul,
nav li.has-child-2 ul li:active>ul {
	visibility: visible;
	opacity: 1;
}

/*ナビゲーションaタグの形状*/
nav li.has-child-2 ul li a {
	height: 100%;
	font-size: 1.0625rem;
	color: #000000;
	/* border-bottom:solid 1px rgba(255,255,255,0.6); */
}

nav li.has-child-2 ul li:last-child a {
	border-bottom: none;
}

nav li.has-child-2 ul li a:hover,
nav li.has-child-2 ul li a:active {
	background: #000000;
	color: #fff;
	transition: all 0.5s;
}

/* has-child-3 */
.has-child-3 ul {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 999999999999999;
	background: #fff;
	right: 30px;
	width: 280px;
	height: auto;
	visibility: hidden;
	opacity: 0s;
	transition: all .3s;
	list-style: none;
}

.has-child-3 ul li {
	margin: 10px 0 10px 0;
	border-right: 0;
	padding: 10px 0 10px 0;
	font-size: 1rem;
	word-break: break-all;
	color: #000;
}

/*hoverしたら表示*/
.has-child-3:hover>ul,
.has-child-3 ul li:hover>ul,
.has-child-3:active>ul,
.has-child-3 ul li:active>ul {
	visibility: visible;
	opacity: 1;
}

/*ナビゲーションaタグの形状*/
.has-child-3 ul li a {
	height: 100%;
	font-size: 1.0625rem;
	color: #000000;
	/* border-bottom:solid 1px rgba(255,255,255,0.6); */
}

.has-child-3 ul li:last-child a {
	border-bottom: none;
}

.has-child-3 ul li a:hover,
.has-child-3 ul li a:active {
	background: #000000;
	color: #fff;
	transition: all 0.5s;
}

li.has-child-3 {
	width: 200px;
	height: 65px;
	border: 2px solid #000;
	list-style: none;
	text-align: center;
	font-size: 1.125rem;
}


.has-child-3 .current_b:hover {
	background-color: #002F79;
	height: auto;
	color: #f1f1f1;
}

.has-child-3 ul li:hover {
	color: #fff;
}


/* ここまでhas-child-3 */

/* ここまでヘッダーナビ２ */


.arrow-down.icon:before {
	content: '';
	position: absolute;
	left: 67px;
	top: 30px;
	width: 10px;
	height: 10px;
	border-top: solid 3px #000;
	border-right: solid 3px #000;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

/* 新卒採用、エントリ */
.link {
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	flex-basis: 40%;
	align-items: center;
	margin-right: 20px;
}

.link .link_d1,
.link_d2,
.link_d3 {
	width: 150px;
	height: 45px;
	border: 2px solid #000;
	text-align: center;
}

.link .link_d1 p {
	font-size: 1rem;
}

.link .link_d3 {
	margin-left: 25px;
}

.link .link_d3 p {
	font-size: 1rem;
}

.link .link_d2 {
	margin-left: 25px;
	background-color: #002F79;
}

.link .link_d2 p {
	color: #f1f1f1;
}

.header_top .link a {
	width: 100%;
	height: 100%;
	text-decoration: none;
}

.link p {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 1.125rem;
	color: #000000;
}

.link .link_d1 p:hover {
	background: #000000;
	color: #fff;
	transition: all 0.5s;
}

.link .link_d3 p:hover {
	background: #000000;
	color: #fff;
	transition: all 0.5s;
}

.link .link_d2 p:hover {
	background: #ffffff;
	color: #000000;
	transition: all 0.5s;
}

/* ヘッダーミドル */
.header_middle {
	width: 100%;
	height: 60%;
	position: relative;
}

/* スマホ画像消しとく */
.header_middle .sp {
	display: none;
}

.top-banner {
	display: flex;
	flex-wrap: wrap;
}

.top-banner li {
	width: calc(100%/1);
	/*←画像を横に4つ並べる場合*/
	box-sizing: border-box;
	list-style: none;
}

.top-banner li img {
	max-width: 100%;
	/*画像のはみだしを防ぐ*/
	height: auto;
	/*画像の縦横比を維持 */
	width: 100%;
}

.header_middle img {
	max-height: 100%;
}

table {
	border-collapse: collapse;
	width: 60%;
	margin: 0 20%;
	font-size: 1.1rem;
}

th {
	width: 18%;
	background-color: azure;
	border: 3px solid #333;
	text-align: center;
}

td {
	text-align: start;
	width: 70%;
	padding: 20px;
	border: 3px solid #333;
	line-height: 21px;
}

/* .fade-left {
  width: 100%;
  opacity: 0;
  animation-name: sample02;
  animation-duration: 5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
} */

@keyframes sample02 {
	0% {
		opacity: 0;
		transform: translateX(-10px);
	}

	50% {
		opacity: 1;
		transform: translateX(0);
	}

	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}


.fade-right {
	width: 100%;
	opacity: 0;
	animation-name: sample01;
	animation-duration: 5s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}

@keyframes sample01 {
	0% {
		opacity: 0;
		transform: translateX(10px);
	}

	50% {
		opacity: 1;
		transform: translateX(0);
	}

	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}

/* 一緒に踏み出そう新しい未来へ */
.top_title {
	position: absolute;
	top: 36%;
	line-height: 117px;
	font-size: 3.25rem;
	z-index: 99;
	list-style: none;
	color: #ffffff;
	text-align: center;
	font-size: 5.3125rem;
}

.top_title {
	width: 100%;
	opacity: 0;
	animation-name: sample03;
	animation-duration: 8s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	text-shadow: 1px 3px 9px #4848485e;
}

@keyframes sample03 {
	0% {
		opacity: 0;
		transform: translateX(0px);
	}

	50% {
		opacity: 1;
		transform: translateX(0);
	}

	100% {
		opacity: 1;
		transform: translateX(0px);
	}
}

/* ここまで一緒に踏み出そう新しい未来へ */

/* ヘッダーボトム */
.header_bottom {
	position: relative;
	width: 100%;
	height: 60px;
	background-color: #ffffff;
}


/* スクロール */
.scrolldown4 {
	/*描画位置※位置は適宜調整してください*/
	position: absolute;
	bottom: 1%;
	right: 50%;
	/*矢印の動き1秒かけて永遠にループ*/
	animation: arrowmove 1s ease-in-out infinite;
}

/*下からの距離が変化して全体が下→上→下に動く*/
@keyframes arrowmove {
	0% {
		bottom: 10%;
	}

	50% {
		bottom: 20%;
	}

	100% {
		bottom: 10%;
	}
}

/*Scrollテキストの描写*/
.scrolldown4 span {
	/*描画位置*/
	position: absolute;
	left: -20px;
	bottom: 20px;
	/*テキストの形状*/
	color: #000000;
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	/*縦書き設定*/
	/* -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl; */
}

/* 矢印の描写 */
/* .scrolldown4:before { */
/* content: ""; */
/*描画位置*/
/* position: absolute;
  top: 20px;
  bottom: 0;
  right: -6px; */
/*矢印の形状*/
/* width: 1px;
  height: 20px;
  background: #000000;
  transform: skewX(-31deg); */
/* } */

.scrolldown4:after {
	content: "";
	/*描画位置*/
	position: absolute;
	top: -13px;
	bottom: 0;
	right: 0;
	/*矢印の形状*/
	width: 1px;
	height: 50px;
	background: #000000;
}

/* タイトル */
.title {
	margin-top: 100px;
	height: 250px;
	width: 100%;
	display: flex;
	align-items: center;
	flex-direction: column;
	text-align: center;
}

.title h2 {
	text-align: center;
	font-size: 2.5rem;
	line-height: 70px;
	font-family: "游明朝体 Pr6N", 'Noto Sans JP', sans-serif;
	font-weight: bold;
	width: 90%;
	margin: 0 5%;
}

.title p {
	margin-top: 20px;
	text-align: center;
	font-size: 1.625rem;
	line-height: 50px;
	font-family: "游明朝体 Pr6N", 'Noto Sans JP', sans-serif;
	font-weight: bold;
	width: 90%;
	margin: 0 5%;
}

/* 代表メッセージ */
.message {
	width: 100%;
	text-align: center;
}

.message .p1 {
	font-size: 2.5rem;
	font-family: "Italianno", "Adobe Handwriting Ernie", sans-serif;
	opacity: 20%;
}

.m1_d1 p {
	font-size: 2.5rem;
	font-family: "游明朝体 Pr6N", 'Noto Sans JP', sans-serif;
}

.m1_d2 {
	width: 100%;
	display: flex;
	justify-content: center;
}

.m1_d2 img {
	width: 80%;
	max-width: 1400px;
	margin: 5% 5%;
}

/* ボタン共通設定 */
.btn04 {
	/*線の基点とするためrelativeを指定*/
	position: relative;
	/*ボタンの形状*/
	display: inline-block;
	padding: 30px 251px;
	background-color: #ffffff;
	color: #000000;
	font-size: 1.6875rem;
	border: 3px solid #000000;
	text-decoration: none;
	outline: none;
	/*はみ出す背景色を隠す*/
	overflow: hidden;
}

/*hoverした際のボタンの形状*/
.btn04:hover {
	color: #ffffff;
	border-color: transparent;
	/*色の変化を遅らせる*/
	transition: all 1s;
}

/*線の設定*/
.btn04 span {
	display: block;
	z-index: 2;
}

.btn04 {
	background: transparent;
	position: relative;
	z-index: 1;
	transition: .3s;
	display: inline-block;
	padding: 30px 251px;
	background-color: #ffffff;
	color: #000000;
	font-size: 1.6875rem;
	border: 3px solid #000000;
	text-decoration: none;
	outline: none;
	/*はみ出す背景色を隠す*/
	overflow: hidden;
}

.btn04::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transform-origin: 100% 50%;
	transform: scaleX(0);
	transition: transform ease .3s;
}

.btn04:hover {
	color: #fff;
}

.btn04:hover::before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}

/*== 線から塗に変化（左から右） */

/*線の設定*/
.borderleft span::before,
.borderleft span::after {
	content: '';
	/*絶対配置で線の位置を決める*/
	position: absolute;
	width: 0;
	height: 1px;
	/*線の形状*/
	background: #000000;
	/*アニメーションの設定*/
	transition: all .3s;
}

/*左上線*/
.borderleft span::before {
	left: 0;
	top: 0;
}

/*左下線*/
.borderleft span::after {
	left: 0;
	bottom: 0;
}

/*hoverをすると線が伸びる*/
.borderleft:hover span::before,
.borderleft:hover span::after {
	width: 100%;
}

/*背景の設定*/
.borderleft::before {
	content: '';
	/*絶対配置で線の位置を決める*/
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: -1;
	/*背景の形状*/
	height: 100%;
	width: 0;
	background: #002F79;
	/*アニメーションの設定*/
	transition: all .3s;
}

/*hoverをすると背景が伸びる*/
.borderleft:hover::before {
	width: 100%;
	/*0.4秒遅れてアニメーション*/
	transition-delay: .4s;
}

/* セクション */
section {
	width: 100%;
	height: auto;
}

/* セクション１ */
.section_1 {
	margin-top: 200px;
	width: 100%;
	display: flex;
	/* justify-content: space-around; */
	/* background-color: #002F79; */
}

.s1_d3 {
	width: 25.4%;
	height: 440px;
	background-color: #002F79;
	position: relative;
	left: 0;
}

/*==================================================
ふわっ
===================================*/
/* fadeleft */

.fadeleft {
	animation-name: fadeleftAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes fadeleftAnime {
	from {
		opacity: 0;
		transform: translateX(-150px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/

.fadeleftTrigger {
	opacity: 0;
}

/* faderight */

.faderight {
	animation-name: faderightAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes faderightAnime {
	from {
		opacity: 0;
		transform: translateX(150px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/

.faderightTrigger {
	opacity: 0;
}

/* fadeup */

.fadeup {
	animation-name: fadeupAnime;
	animation-duration: 2s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes fadeupAnime {
	from {
		opacity: 0;
		transform: translateY(30px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/

.fadeupTrigger {
	opacity: 0;
}

.header_middle {
	animation-name: fadein;
	animation-duration: 2s;
}

@keyframes fadein {
	from {
		opacity: 0;
		transform: translatey(50px);
	}

	to {
		opacity: 1;
		transform: translatey(0);
	}
}


/* ここまでふわっと出るコード　*/

.s1_d1 {
	width: 45.6%;
	margin-left: -9%;
	margin-right: -7.4%;
}

.s1_d1 img {
	position: relative;
	top: 93px;
	width: 100%;
	/* left: 16.5%; */
	max-width: 700px;
}

.s1_d2 {
	background-color: #002F79;
	width: 45.4%;
	height: 826px;
	z-index: -99;
}

.s1_d2 .p1 {
	font-size: 7.125rem;
	font-family: "Italianno", "Adobe Handwriting Ernie", 'BIZ UDPGothic', sans-serif;
	color: #ffffff;
	opacity: 20%;
	padding-top: 175px;
	margin-left: 26.2%;
}

.s1_d2 h2 {
	margin-left: 20.6%;
	font-size: 4.375rem;
	font-family: "游明朝体 Pr6N", 'Noto Sans JP', sans-serif;
	color: #ffffff;
}

.s1_d2 p {
	margin-left: 20.6%;
	font-family: "游明朝体 Pr6N", 'Noto Sans JP', sans-serif;
	font-size: 1.5rem;
	color: #ffffff;
	line-height: 57px;
	margin-top: 20px;
}

/* セクション２ */
.section_2 {
	width: 100%;
	margin-top: 70px;
	display: flex;
	justify-content: space-between;
}

.s2_d1 {
	background-image: url("../img/background_color.webp");
	width: 20%;
}

.s2_d1_1 img {
	width: 100%;
	/* height: 328px; */
	height: auto;
	margin: 5%;
}


/* ボタン */
.title_h1 {
	color: #000;
	font-size: 1.875rem;
}

.title_p {
	font-size: 5rem;
}

a.btn_12 {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: center;
	text-align: center;
	text-decoration: none;
	width: 600px;
	margin: auto;
	padding: 2rem 10rem 4rem 10rem;
	font-weight: bold;
	background: #ffffff;
	color: #000000;
	position: relative;
	transition: 0.5s;
	border-bottom: 2px solid #000;
}

a.btn_12::before {
	content: '';
	width: 7px;
	height: 7px;
	border-top: 2px solid #000000;
	border-right: 2px solid #000000;
	transform: rotate(45deg);
}

a.btn_12:hover {
	background: #44c6f2;
	color: #fff;
}

.s2_d2 {
	padding: 5%;
	width: 80%;
}

.s2_d2_1 {
	width: 100%;
	padding: auto;
}

.s2_d2 a {
	margin-top: 10px;
	text-decoration: none;
	color: #000;
	display: flex;
	height: 100%;
	align-items: center;
}

.btn2 {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
}

.btn img2 {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}


#comshiro {
	display: none;
	/*  visibility: hidden;*/
}

.btn:hover img:nth-of-type(2) {
	-webkit-transform: translate(-50%, -50%) scale(1.15) !important;
	transform: translate(-50%, -50%) scale(1.15) !important;
	opacity: 0;
}

.s2_d2_a h1 {
	font-family: "游明朝体 Pr6N";
	font-size: 5rem;
}

.s2_d2_a p {
	font-size: "游明朝体 Pr6N";
	font-size: 2.5rem;
}

.s2_d2_a .sub {
	font-size: "游明朝体 Pr6N";
	font-size: 1.875rem;
	margin-top: 45px;
	border-bottom: 3px solid #000;
}

.s2_d2_p {
	height: 128px;
	line-height: 47px;
	font-size: 1.625rem;
	margin: 22px 0 0 20px;
	/* word-break: keep-all; */
}

/* セクション3 */
.section_3 {
	width: 100%;
	margin-top: 70px;
	display: flex;
	justify-content: center;
}

.s2_d1 {
	background-image: url("../img/background_color.webp");
	width: 100%;
}

.s2_d1_1 img {
	width: 80%;
}

.s2_d2_1 {
	padding: auto;
	width: 100%;
}

.s2_d2 a {
	margin-top: 10px;
	text-decoration: none;
	color: #000;
	display: flex;
	height: 100%;
	align-items: center;
	max-width: 500px;
}

.btn2 {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
}

.btn img2 {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	display: block;
	-webkit-transition: .4s ease-in-out;
	transition: .4s ease-in-out;
}

#comshiro {
	display: none;
	/*  visibility: hidden;*/
}

.btn:hover img:nth-of-type(2) {
	-webkit-transform: translate(-50%, -50%) scale(1.15) !important;
	transform: translate(-50%, -50%) scale(1.15) !important;
	opacity: 0;
}

.s2_d2_a h1 {
	font-family: "游明朝体 Pr6N";
	font-size: 5rem;
}

.s2_d2_a p {
	font-size: "游明朝体 Pr6N";
	font-size: 2.5rem;
}

.s2_d2_a .sub {
	font-size: "游明朝体 Pr6N";
	font-size: 1.875rem;
	margin-top: 45px;
	border-bottom: 3px solid #000;
}

.s2_d2_a img {
	width: 100%;
}

.s2_d2_p {
	height: 128px;
	line-height: 47px;
	font-size: 1.25rem;
	margin-top: 22px;
}


/* セクション４ */
.section_4 {
	width: 100%;
	margin-top: 70px;
	display: flex;
	justify-content: space-between;
}

.section_4 .s2_d1 {
	background-image: none;
}

/* セクション５ */
.section_5 {
	width: 100%;
	margin-top: 70px;
}

.s5_d1 {
	width: 100%;
	height: 320px;
	background-color: #002F79;
	color: #fff;
	z-index: -999;
}

.s5_d1 h1 {
	font-size: 3.5rem;
	padding-top: 4%;
	text-align: center;
}

.s5_d1 p {
	font-size: 2rem;
	padding-top: 1%;
}

.s5_d2 {
	width: 100%;
	text-align: center;
}

.s5_d2 img {
	width: 90%;
	margin: -130px 5% 0;
	max-width: 1141px;
}

.s5_d3 {
	max-width: 1141px;
	margin: 0 auto;
	display: flex;
	justify-content: right;
}

.s5_d3 a {
	margin-top: 30px;
	text-decoration: none;
	color: #000;
	display: flex;
	height: 100%;
	align-items: center;
	height: 100%;
}

.senior div a img {
	margin-top: 2%;
	max-width: 300px;
}

/* レスポンシブ用画像 */
.interview {
	display: none;
}

/* セクション6 */
.section_6 {
	margin: 300px auto 0;
	width: 100%;
	color: #fff;
	text-align: center;
}

.section_6 img {
	width: 100%;
}

/* 斜め配置 clip-path */
.Block2 {
	position: relative;
	z-index: 0;
	width: 100vw;
}

.Block2::after {
	content: '';
	position: absolute;
	left: 0;
	top: -270px;
	/*四角形を傾けます*/
	transform: skewY(-10deg);
	transform-origin: top right;
	z-index: -999;
	width: 100%;
	height: 800px;
	background: #002F79;
}

.s6_d1 {
	position: relative;
	z-index: 99;
	display: flex;
	flex-direction: column;
	margin: 0 0 100px 50px;
}

.s6_d2 .Block2 {
	width: 100%;
}

.s6_d2 img {
	width: 300px;
	height: 64px;
	margin-top: 90px;
}

.section_6 .p7_b {
	font-size: 4.375rem;
	color: #000;
	text-align: left;
}

.section_6 .p2_b {
	font-size: 1.625rem;
	color: #000;
	text-align: left;
	margin-top: 50px;
	line-height: 42px;
	text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
		-1px 1px 0 #FFF, 1px -1px 0 #FFF,
		0px 1px 0 #FFF, 0-1px 0 #FFF,
		-1px 0 0 #FFF, 1px 0 0 #FFF;
}

/* 斜め文字 */
.s6_d2 .p0 {
	padding-right: 45px;
	font-size: 4.375rem;
	font-family: "Italianno", "Adobe Handwriting Ernie", 'BIZ UDPGothic', sans-serif;
	transform: rotate(-10deg);
	-moz-transform: rotate(-10deg);
	-webkit-transform: rotate(-10deg);
	display: flex;
	justify-content: flex-end;
}

.section_6 .p3 {
	font-size: 1.875rem;
	line-height: 43px;
	margin: 0 5%;
}

.section_6 .p5 {
	font-size: 2.5rem;
	margin-bottom: 50px;
}

.section_6 .p6 {
	font-size: 2rem;
	margin-bottom: 20px;
}

.section_6 .p8 {
	font-size: 2.5rem;
	font-family: "Italianno", "Adobe Handwriting Ernie", 'BIZ UDPGothic', sans-serif;
	margin-bottom: 40px;
}

/* フッター */
/* フッターナビ */
footer {
	height: auto;
	width: 100%;
	margin-top: 400px;
}

.f1_d1 {
	display: flex;
	justify-content: space-between;
	max-width: 1140px;
	margin: auto;
}

.f1_d1 img {
	max-width: 300px;
}

.f1_d1 a {
	margin: auto;
	text-align: center;
}

.f2_d1 {
	margin-top: 150px;
	text-align: center;
}

.f2_d1 .sns {
	margin: 60px 0 100px;
}

.f2_d1 .sns img {
	width: 75px;
	height: 75px;
}

.header_top nav ul .current_a:hover {
	background-color: #002F79;
	width: 180px;
	height: auto;
	color: #f1f1f1;
}

.header_top nav ul .current_b:hover {
	background-color: #002F79;
	width: 210px;
	height: auto;
	color: #f1f1f1;
}

.height_fix1 {
	margin-top: -10px;
	padding-top: 10px;
}

.height_fix2 {
	margin-top: -90px;
	padding-top: 90px;
}
