@charset "UTF-8";

html {
	overflow-y: scroll;
	height: 100%;
}

body {
	font-family: 'Noto Sans JP', 'Quicksand', 'Noto Sans', "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif !important;
	color: #333 important;
	font-size: 95% !important;
	width: 100%;
	height: 100%;
	line-height: 1.6 !important;
}

.not-scroll {
	/*モーダル表示時にスクロール不可*/
	/*
	overflow: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	touch-action: none;
	position:fixed;
	*/
}

.center {
	text-align: center;
}

/* 画面外にいる状態 */
.fadein {
	opacity: 0.1;
	transform: translate(0, 50px);
	transition: all 500ms;
}

.kv_parts_fukidashi {
	opacity: 0;
	transform: translate(0, 50px);
	transition: all 500ms;
}

/* 画面内に入った状態 */
.fadein.scrollin {
	opacity: 1;
	transform: translate(0, 0);
}

.kv_parts_fukidashi.kvscrollin {
	transition: all 1000ms;
	opacity: 1;
	transform: translate(0, 0);
}

body p {
	margin: 10px 0 20px 0;

}

body a {
	text-decoration: none;
	transition: 0.4s;
	color: #222222;
}

body a:hover {
	text-decoration: none;
	color: #ff4e50;
}

.br {
	display: block;
}

.sp_br {
	display: inline;
}

section.section {
	padding: 60px 0;
	clear: both;
}

section.section02 {
	padding: 60px 0 0 0;
	clear: both;
}

.container-fluid img {
	width: 100%;
	height: auto;
}

.container img {
	width: 100%;
	height: auto;
}

.pc_content {
	display: block !important;
}

.sp_content {
	display: none !important;
}

a.img {
	transition: 0.6s
}

a img:hover {
	opacity: 0.6;
	transition: 0.6s;
}

@media (min-width: 769px) {
	.fadein {
		opacity: 0;
		transform: translate(0, 50px);
		transition: all 500ms;
	}

	.fadein.scrollin {
		opacity: 1;
		transform: translate(0, 0);
	}

	.fadein-right {
		opacity: 0;
		transform: translate(150px, 0);
		transition: all 1000ms;
	}

	.fadein-right.scrollin {
		opacity: 1;
		transform: translate(0, 0);
		animation-delay: 1s;
	}

}

@media (max-width: 768px) {
	section.section02 {
		padding: 20px 0 0 0;
	}

	span.br {
		display: inline !important;
	}

	span.sp_br {
		display: block !important;
	}

	.pc_content {
		display: none !important;
	}

	.sp_content {
		display: block !important;
	}
}



/*header ==========================================*/
header {
	background: #fff;
	width: 100%;
	box-shadow: 0 1px 4px #dcdcdc;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
}

header nav ul {
	margin: 12px 0;
}

header nav ul li {
	float: left;
}

header nav ul li a {
	padding: 0px 12px;
	font-weight: bold;
	display: block;
	font-size: 0.85em;
	line-height: 1.4;
	text-align: center;
}

header nav ul li a span {
	font-size: 0.6rem;
	font-weight: normal;
	display: block;
	text-align: center;
	color: #999;
	letter-spacing: 1px;
	transition: 0.4s;
}

header nav ul li a span.pro_story {
	letter-spacing: -2px;
}

header nav ul li a:hover>span {
	color: rgb(243, 88, 88);
	transition: 0.4s;
}

header nav {
	float: right;
}

header nav ul li.entry_btn a {
	background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
	color: #fff;
	font-weight: normal;
	margin-left: 15px;
	width: 150px;
	text-align: center;
	padding: 11px 25px 11px 25px !important;
	line-height: 1;
	display: block;
}

header nav ul li.entry_btn a:hover {
	background: linear-gradient(90deg, rgb(64, 185, 242), rgb(61, 78, 190));
}

h1.logo {
	padding: 10px 0;
}

h1.logo img {
	max-width: 310px;
}

@media (max-width:1300px) {
	header nav ul li a {
		padding: 0px 10px;
		letter-spacing: 0;
	}
}

@media (max-width:1200px) {
	header nav ul li a {
		padding: 0px 5px;
		letter-spacing: 0;
		font-size: 0.8em;
	}

	header nav ul li.entry_btn a {
		background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
		color: #fff;
		font-weight: normal;
		margin-left: 5px;
		width: 80px;
		text-align: center;
		padding: 11px 5px 11px 5px !important;
		line-height: 1;
		display: block;
	}
}


/*KV ==========================================*/
#main-area {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

#main-area .inner-line {
	width: 100%;
	height: 100vh;
	border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4);
}



.main-catch-area {
	position: absolute;
	display: block;
	top: 53%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 300px;
	height: 300px;
	background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
}

.main-catch-area img {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 90%;
	height: auto;
	z-index: 999;
}

.scroll_line {
	position: absolute;
	display: block;
	bottom: 3%;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: 15%;
	background: #333;
}

.scroll_line p {
	position: absolute;
	display: block;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}

.parts_area div {
	position: absolute;
	display: block;
}

.parts_area div img.fukidashi {
	width: 100%;
}

img.shadow {
	position: absolute;
}

.mf_01 {
	top: -30px;
	right: 25%;
	width: 450px;
}

.mf_02 {
	bottom: 3%;
	right: 8%;
	width: 410px;
}

.mf_03 {
	top: 35%;
	left: 3%;
	width: 360px;
}

.mf_04 {
	top: 3%;
	left: 14%;
	width: 250px;
}

.mf_04 img.shadow {
	width: 140px;
	right: 20px;
	bottom: -15px;
}

.mf_01 img.shadow {
	width: 150px;
	left: 18%;
	bottom: -25px;
}

.mf_02 img.shadow {
	width: 180px;
	left: 13%;
}

.mf_03 img.shadow {
	width: 150px;
	right: 50px;
}

.mfb_01 {
	top: 5%;
	right: 2%;
	width: 200px;
}

.mfb_02 {
	top: 8%;
	left: 0%;
	width: 140px;
}

.mfb_03 {
	top: 23%;
	left: 35%;
	width: 150px;
}

.mfb_04 {
	bottom: 8%;
	left: 30%;
	width: 180px;
}

.mfb_01 img.shadow {
	width: 100px;
	right: 22%;
	bottom: -10px;
}

.mfb_02 img.shadow {
	width: 100px;
	right: 8%;
	bottom: -15px;
}

.mfb_03 img.shadow {
	width: 100px;
	right: 15%;
	bottom: -15px;
}

.mfb_04 img.shadow {
	width: 110px;
	right: 11%;
	bottom: -15px;
}

@media (max-height: 710px) {
	.scroll_line {
		bottom: 4%;
		height: 15%;
	}
}

@media (max-height: 650px) {
	.scroll_line {
		display: none !important;
	}

	.main-catch-area {
		width: 200px;
		height: 200px;
	}
}


@media (max-width:1500px) {
	.mf_02 {
		bottom: 3%;
		right: 3%;
		width: 410px;
	}

	.mfb_03 {
		top: 28%;
		left: 30%;
		width: 150px;
	}

}

@media (max-width:1200px) {
	#main-area {
		overflow: hidden;
	}

	.main-catch-area {
		width: 250px;
		height: 250px;
	}

	.mf_01 {
		top: 5%;
		right: 25%;
		width: 350px;
	}

	.mf_02 {
		bottom: 8%;
		right: 8%;
		width: 340px;
	}

	.mf_03 {
		top: 40%;
		left: 1%;
		width: 330px;
	}

	.mf_04 {
		top: 8%;
		left: 14%;
		width: 220px;
	}

	.mf_01 img.shadow {
		width: 140px;
		left: 15%;
		bottom: -30px;
	}

	.mf_02 img.shadow {
		width: 140px;
		left: 13%;
	}

	.mf_03 img.shadow {
		width: 110px;
		right: 50px;
	}

	.mf_04 img.shadow {
		width: 100px;
		right: 20px;
		bottom: -15px;
	}

	.mfb_01 {
		top: 5%;
		right: 2%;
		width: 200px;
	}

	.mfb_02 {
		top: 8%;
		left: 0%;
		width: 140px;
	}

	.mfb_03 {
		top: 23%;
		left: 35%;
		width: 110px;
	}

	.mfb_04 {
		bottom: 8%;
		left: 30%;
		width: 130px;
	}

	.mfb_01 img.shadow {
		width: 100px;
		right: 22%;
		bottom: -10px;
	}

	.mfb_02 img.shadow {
		width: 100px;
		right: 8%;
		bottom: -15px;
	}

	.mfb_03 img.shadow {
		width: 80px;
		right: 10%;
		bottom: -15px;
	}

	.mfb_04 img.shadow {
		width: 90px;
		right: 7%;
		bottom: -15px;
	}
}

@media (max-width: 991px) {
	#main-area {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow: hidden;
	}

	#main-area .inner-line {
		width: 92% !important;
		;
		margin-left: auto;
		margin-right: auto;
	}

	.mf_01 {
		top: 5%;
		right: 25%;
		width: 320px;
	}

	.mf_02 {
		bottom: 8%;
		right: 1%;
		width: 310px;
	}

	.mf_03 {
		top: 40%;
		left: 0%;
		width: 280px;
	}

	.mf_04 {
		top: 8%;
		left: 2%;
		width: 200px;
	}

	.mf_01 img.shadow {
		width: 160px;
	}

	.mf_02 img.shadow {
		width: 140px;
		left: 13%;
	}

	.mf_03 img.shadow {
		width: 110px;
		right: 50px;
	}

	.mf_04 img.shadow {
		width: 100px;
		right: 20px;
		bottom: -15px;
	}

	.mfb_01 {
		top: 18%;
		right: 2%;
		width: 160px;
	}

	.mfb_02 {
		display: none !important;
	}

	.mfb_03 {
		display: none !important;
	}

	.mfb_04 {
		bottom: 8%;
		left: 30%;
		width: 130px;
	}

	.mfb_01 img.shadow {
		width: 100px;
		right: 22%;
		bottom: -10px;
	}

	.mfb_02 img.shadow {
		width: 100px;
		right: 8%;
		bottom: -15px;
	}

	.mfb_03 img.shadow {
		width: 80px;
		right: 10%;
		bottom: -15px;
	}

	.mfb_04 img.shadow {
		width: 90px;
		right: 7%;
		bottom: -15px;
	}
}

@media (max-width: 768px) {

	.mf_01 {
		top: 5%;
		right: 25%;
		width: 280px;
	}

	.mf_02 {
		bottom: 3%;
		right: -5%;
		width: 260px;
	}

	.mf_03 {
		top: 40%;
		left: -7%;
		width: 240px;
	}

	.mf_04 {
		top: 12%;
		left: 0%;
		width: 150px;
	}

	.mf_01 img.shadow {
		width: 160px;
	}

	.mf_02 img.shadow {
		width: 110px;
		left: 11%;
	}

	.mf_03 img.shadow {
		width: 80px;
		right: 40px;
	}

	.mf_04 img.shadow {
		width: 60px;
		right: 20px;
		bottom: -15px;
	}

	.mfb_01 {
		top: 30%;
		right: 2%;
		width: 120px;
	}

	.mfb_04 {
		bottom: 10%;
		left: 30%;
		width: 100px;
	}

	.mfb_01 img.shadow {
		width: 60px;
		right: 22%;
		bottom: -10px;
	}

	.mfb_04 img.shadow {
		width: 50px;
		right: 10%;
		bottom: -15px;
	}
}

@media (max-width: 590px) {
	.scroll_line {
		display: none;
	}

	.main-catch-area {
		width: 200px;
		height: 200px;
	}

	.mf_01 {
		top: 10%;
		right: 25%;
		width: 230px;
	}

	.mf_02 {
		bottom: 8%;
		right: -5%;
		width: 200px;
	}

	.mf_03 {
		top: 60%;
		left: -7%;
		width: 200px;
	}

	.mf_04 {
		top: 30%;
		left: 0%;
		width: 150px;
	}

	.mf_01 img.shadow {
		width: 80px;
		left: 20%;
	}

	.mf_02 img.shadow {
		width: 80px;
		left: 11%;
	}

	.mf_03 img.shadow {
		width: 80px;
		right: 40px;
	}

	.mf_04 img.shadow {
		width: 60px;
		right: 20px;
		bottom: -15px;
	}

	.mfb_01 {
		top: 30%;
		right: 2%;
		width: 120px;
	}

	.mfb_02 {
		display: block !important;
		top: 8%;
		left: 0%;
		width: 100px;
	}

	.mfb_04 {
		bottom: 10%;
		left: 30%;
		width: 100px;
	}

	.mfb_01 img.shadow {
		width: 60px;
		right: 22%;
		bottom: -10px;
	}

	.mfb_02 img.shadow {
		width: 50px;
		right: 10%;
		bottom: -15px;
	}

	.mfb_04 img.shadow {
		width: 50px;
		right: 10%;
		bottom: -15px;
	}

}

@media (max-width:420px) {
	.main-catch-area {
		top: 50% !important;
	}

	.scroll_line {
		display: none;
	}

	.main-catch-area {
		width: 200px;
		height: 200px;
	}

	.mf_01 {
		top: 5%;
		right: 10%;
		width: 210px;
	}

	.mf_02 {
		bottom: 8%;
		right: -5%;
		width: 190px;
	}

	.mf_03 {
		top: 60%;
		left: -7%;
		width: 160px;
	}

	.mf_04 {
		top: 30%;
		left: -3%;
		width: 130px;
	}

	.mf_01 img.shadow {
		width: 60px;
		left: 20%;
		bottom: -15px;
	}

	.mf_02 img.shadow {
		width: 80px;
		left: 11%;
	}

	.mf_03 img.shadow {
		width: 80px;
		left: 35%;
	}

	.mf_04 img.shadow {
		width: 60px;
		right: 20px;
		bottom: -15px;
		display: block !important;
	}

	.mfb_01 {
		top: 30%;
		right: 2%;
		width: 90px;
	}

	.mfb_02 {
		display: block !important;
		top: 8%;
		left: 0%;
		width: 80px;
	}

	.mfb_04 {
		display: none !important;
	}

	.mfb_01 img.shadow {
		width: 60px;
		right: 22%;
		bottom: -10px;
	}

	.mfb_02 img.shadow {
		width: 50px;
		right: 10%;
		bottom: -15px;
	}

}


/*About ==========================================*/
#main-area-bottom {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

.inner-line {
	width: 100%;
	height: auto;
	overflow: auto;
	border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4);
}
#main-area-bottom .inner-line {
	padding-bottom: 140px;
}

.mf_05 {
	top: -5%;
	left: 3%;
	width: 290px;
}

.mf_06 {
	top: 20%;
	right: 2%;
	width: 330px;
}

.mf_07 {
	bottom: 8%;
	left: 2%;
	width: 260px;
}

.mf_05 img.shadow {
	width: 120px;
	right: 50px;
	bottom: -15px;
}

.mf_06 img.shadow {
	width: 150px;
	left: 40px;
	bottom: -25px;
}

.mf_07 img.shadow {
	width: 130px;
	right: 30px;
	bottom: -25px;
}

.mfb_05 {
	top: 0%;
	right: 23%;
	width: 140px;
}

.mfb_06 {
	top: 30%;
	left: 20%;
	width: 150px;
}

.mfb_07 {
	bottom: 8%;
	right: 20%;
	width: 170px;
}

.mfb_05 img.shadow {
	width: 80px;
	left: 6%;
	bottom: -10px;
}

.mfb_06 img.shadow {
	width: 100px;
	right: 15%;
	bottom: -15px;
}

.mfb_07 img.shadow {
	width: 100px;
	left: 3%;
	bottom: -15px;
}


h2.main_h2 {
	width: 490px;
	margin: 0 auto;
}

h2.main_h2 img {
	width: 100%;
}

h3.main_h3 {
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.4;
	margin: 15px 0 40px 0;
}

h3.main_about_h3_02 {
	margin-top: 100px;
}

p.about_text {
	text-align: center;
	font-size: 1.1em;
	line-height: 1.6;
	margin: 10px 0 25px 0;
}
/* 追加 */
p.about_text.about_test_last {
	margin: 10px 0 25px 0;
}
/* 追加 */
#about-area-bottom {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

#about-area-bottom .inner-line {
	padding-bottom: 150px;
}

.a-bottom-block {
	width: 33.333%;
	float: left;
}

.a-bottom-block img {
	width: 100%;
	height: auto;
	max-height: 350px;
	object-fit: cover;
}

.a-bottom-block-text {
	background: #fff;
	width: 80%;
	margin-left: 10%;
	margin-top: -50px;
	padding: 15px 30px;
	display: inline-block;
}

.a-bottom-block-text h4 {
	color: #0d4d9b;
	font-size: 1.2em;
	text-align: center;
	margin: 0px 0 20px 0;
}

@media (max-width: 1200px) {
	.mf_05 {
		top: -5%;
		left: 1%;
		width: 250px;
	}

	.mf_06 {
		top: 20%;
		right: 2%;
		width: 280px;
	}

	.mf_07 {
		bottom: 8%;
		left: 2%;
		width: 240px;
	}

	.mf_05 img.shadow {
		width: 90px;
		right: 38px;
		bottom: -15px;
	}

	.mf_06 img.shadow {
		width: 110px;
		left: 40px;
		bottom: -25px;
	}

	.mf_07 img.shadow {
		width: 110px;
		right: 30px;
		bottom: -25px;
	}

	.mfb_05 {
		top: 0%;
		right: 18%;
		width: 120px;
	}

	.mfb_06 {
		top: 30%;
		left: 8%;
		width: 130px;
	}

	.mfb_07 {
		bottom: 8%;
		right: 10%;
		width: 130px;
	}

	.mfb_05 img.shadow {
		width: 60px;
		left: 10%;
		bottom: -10px;
	}

	.mfb_06 img.shadow {
		width: 80px;
		right: 15%;
		bottom: -15px;
	}

	.mfb_07 img.shadow {
		width: 80px;
		left: 3%;
		bottom: -15px;
	}
}

@media (max-width: 991px) {
	#main-area-bottom {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0 !important;
		margin: 0;
		overflow: hidden;
	}

	.inner-line {
		width: 92% !important;
		;
		margin-left: auto;
		margin-right: auto;
		overflow: visible !important;
	}
#main-area-bottom .inner-line {
	padding-bottom: 100px;
}
	#about-area-bottom {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0 !important;
		overflow: auto;
		padding-bottom: 70px;
	}

	#about-area-bottom .inner-line {
		width: 92% !important;
		;
		margin-left: auto;
		margin-right: auto;

	}

	.a-bottom-block-text {
		background: #fff;
		width: 94%;
		margin-left: 3%;
		margin-top: -50px;
		padding: 15px 10px;
		display: inline-block;
	}

	h2.main_h2 {
		width: 70%;
		margin: 0 auto;
	}

	h3.main_h3 {
		font-size: 1.4em;
	}

	.mf_05 {
		top: -5%;
		left: -2%;
		width: 210px;
	}

	.mf_06 {
		top: 30%;
		right: -3%;
		width: 220px;
	}

	.mf_07 {
		bottom: 8%;
		left: 1%;
		width: 180px;
	}

	.mf_05 img.shadow {
		width: 70px;
		right: 35px;
		bottom: -15px;
	}

	.mf_06 img.shadow {
		width: 80px;
		left: 30px;
		bottom: -25px;
	}

	.mf_07 img.shadow {
		width: 80px;
		right: 20px;
		bottom: -25px;
	}

	.mfb_05 {
		top: 0%;
		right: 12%;
		width: 120px;
	}

	.mfb_06 {
		top: 30%;
		left: 3%;
		width: 130px;
	}

	.mfb_07 {
		bottom: 8%;
		right: 5%;
		width: 110px;
	}

	.mfb_05 img.shadow {
		width: 60px;
		left: 10%;
		bottom: -10px;
	}

	.mfb_06 img.shadow {
		width: 70px;
		right: 13%;
		bottom: -15px;
	}

	.mfb_07 img.shadow {
		width: 60px;
		left: 5%;
		bottom: -15px;
	}
}

@media (max-width: 768px) {
#main-area-bottom .inner-line {
	padding-bottom: 50px;
}
	.a-bottom-block {
		width: 100%;
		float: none;
		margin: 20px 0 50px 0;
	}

	.a-bottom-block img.title {
		height: 55px;
		width: auto;
		max-width: 100%;
		margin: 0 auto;
		display: block;
		padding: 0;
	}

	#about-area-bottom .inner-line {
		padding-bottom: 10px;
	}

	h3.main_h3 {
		text-align: left;
		margin: 0 0;
		font-size: 1.2em
	}

	h3.main_about_h3_02 {
		margin-top: 15px;
	}

	p.about_text {
		text-align: left;
	}

	.mf_05 {
		top: -8%;
		left: -4%;
		width: 180px;
	}

	.mf_06 {
		top: 22%;
		right: -3%;
		width: 160px;
	}

	.mf_07 {
		bottom: 8%;
		left: -3%;
		width: 140px;
	}

	.mf_05 img.shadow {
		width: 70px;
		right: 35px;
		bottom: -15px;
	}

	.mf_06 img.shadow {
		width: 60px;
		left: 20px;
		bottom: -10px;
	}

	.mf_07 img.shadow {
		width: 60px;
		right: 18px;
		bottom: -15px;
	}

	.mfb_05 {
		top: 5%;
		right: 5%;
		width: 90px;
	}

	.mfb_06 {
		top: 45%;
		left: 0%;
		width: 100px;
	}

	.mfb_07 {
		bottom: 12%;
		right: 2%;
		width: 90px;
	}

	.mfb_05 img.shadow {
		width: 60px;
		left: 10%;
		bottom: -10px;
	}

	.mfb_06 img.shadow {
		width: 70px;
		right: 13%;
		bottom: -15px;
	}

	.mfb_07 img.shadow {
		width: 60px;
		left: 5%;
		bottom: -15px;
	}
}

@media (max-width: 650px) {
	.mf_05 {
		top: -8%;
		left: -4%;
		width: 140px;
	}

	.mf_06 {
		top: 22%;
		right: -5%;
		width: 130px;
	}

	.mf_07 {
		bottom: 12%;
		left: -3%;
		width: 110px;
	}

	.mf_05 img.shadow {
		width: 70px;
		right: 35px;
		bottom: -15px;
	}

	.mf_06 img.shadow {
		width: 60px;
		left: 20px;
		bottom: -10px;
	}

	.mf_07 img.shadow {
		width: 60px;
		right: 18px;
		bottom: -15px;
	}

	.mfb_05 {
		top: 5%;
		right: 1%;
		width: 70px;
	}

	.mfb_06 {
		top: 53%;
		left: 0%;
		width: 80px;
	}

	.mfb_07 {
		bottom: 15%;
		right: 2%;
		width: 75px;
	}

	.mfb_05 img.shadow {
		width: 60px;
		left: 10%;
		bottom: -10px;
	}

	.mfb_06 img.shadow {
		width: 70px;
		right: 13%;
		bottom: -15px;
	}

	.mfb_07 img.shadow {
		width: 60px;
		left: 5%;
		bottom: -15px;
	}
}

@media (max-width:580px) {
	.mf_05 {
		display: none !important;
	}

	.mf_06 {
		display: none !important;
	}

	.mf_07 {
		display: none !important;
	}

	.mfb_05 {
		display: none !important;
	}

	.mfb_06 {
		display: none !important;
	}

	.mfb_07 {
		display: none !important;
	}
}

/*仕事の魅力 ==========================================*/
.content02 {
	clear: both;
	background: #f4f4f4;
	width: 100%;
}

.content02_inner {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;

}

.content02_inner .inner-line {
	width: 100%;
	height: auto;
	overflow: visible;
	border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4);
	padding-bottom: 550px;
}

.c02_box {
	width: 50%;
	height: auto;
	position: relative;
	margin-top: -50px;
}

.c02_right_box {
	float: right;
}

.c02_left_box {
	float: left;
}

.c02_content {
	width: 100%;
	clear: both;
	margin-top: -120px;
}

.c02_right_box img.main_img {
	width: 80%;
	float: right;
}

.c02_left_box img.main_img {
	width: 80%;
}

.c02_box_text {
	clear: both;
	background: #fff;
	width: 85%;
	position: relative;
	bottom: 0;
	padding: 20px;
	float: left;
	margin-top: -50px;
	box-shadow: 0 0 18px #999;
}

.c02_left_box .c02_box_text {
	float: right !important;
}

h4.main_h4 {
	font-size: 1.08em;
	font-weight: bold;
	margin-bottom: 15px;
}

.c02_box_text img.num {
	position: absolute;
	top: -90px;
	left: 0;
	width: 115px;
}

.c02_box_text img.num02 {
	position: absolute;
	top: -85px;
	right: 0;
	width: 135px;
}

.c02_box_text img.num03 {
	position: absolute;
	top: -85px;
	left: 0;
	width: 120px;
}

h2.up_h2 {
	margin: 0;
	position: relative;
	left: 5%;
	top: 120px;
}


/*パーツ*/
.c_parts img {
	position: absolute;
}

img.c02_p01 {
	width: 220px;
	left: 0;
	top: 0;
}

img.c02_p02 {
	width: 200px;
	right: 10%;
	top: 30%;
}

img.c02_p03 {
	width: 180px;
	left: 20%;
	top: 70%;
}

img.c02_p04 {
	width: 350px;
	left: 1%;
	top: 80%;
}


@media (max-width: 991px) {
	.content02_inner {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow-x: visible;
	}

	.content02_inner .inner-line {
		width: 92% !important;
		;
		margin-left: auto;
		margin-right: auto;
		padding: 0 0px;
		padding-bottom: 550px;
	}

	h2.up_h2 {
		width: 50%;
		margin: 0;
		position: relative;
		left: 0% !important;
		top: 120px;
	}

	img.c02_p01 {
		width: 180px;
		left: 0;
		top: 0;
	}

	img.c02_p02 {
		width: 160px;
		right: 10%;
		top: 30%;
	}

	img.c02_p03 {
		width: 140px;
		left: 20%;
		top: 70%;
	}

	img.c02_p04 {
		width: 300px;
		left: -5%;
		top: 80%;
	}
}

@media (max-width: 768px) {
	.content02_inner .inner-line {
		padding-bottom: 620px;
	}

	h2.up_h2 {
		width: 70%;
		margin: 25px auto;
		position: static;
		left: 0% !important;
		top: 120px;
	}

	.c02_content {
		margin-top: 0px;
	}

	.c02_box {
		width: 100%;
		height: auto;
		position: static;
		margin-top: 20px;
		margin-bottom: 40px;
	}

	.c02_box_last {
		margin-bottom: 0;
	}

	img.c02_p01 {
		width: 140px;
		left: 0;
		top: 0;
	}

	img.c02_p02 {
		width: 130px;
		right: 0%;
		top: 30%;
	}

	img.c02_p03 {
		width: 100px;
		left: 0%;
		top: 70%;
	}

	img.c02_p04 {
		display: none;
	}
}

@media (max-width: 500px) {
	.content02_inner .inner-line {
		padding-bottom: 600px;
	}

	h2.up_h2 {
		width: 100%;
	}

	.c02_box_text {
		margin-top: -20px;
	}

	img.c02_p03 {
		top: 65%;
	}

	.c02_box_text img.num {
		position: absolute;
		top: -75px;
		left: 0;
		width: 95px;
	}

	.c02_box_text img.num02 {
		position: absolute;
		top: -75px;
		right: 0;
		width: 115px;
	}

	.c02_box_text img.num03 {
		position: absolute;
		top: -70px;
		left: 0;
		width: 100px;
	}

	img.c02_p01 {
		width: 100px;
		left: 0%;
		top: 0;
	}

	img.c02_p02 {
		width: 110px;
		right: 0%;
		top: 30%;
	}
}





/*interview ==============================================*/
.content03 {
	clear: both;
	background: #f4f4f4;
	width: 100%;
}

.content03_inner {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

.content03_inner .inner-line {
	width: 100%;
	height: auto;
	overflow: visible;
	border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4);
	padding-top: 100px;
	/* padding-bottom: 180px; */
	padding-bottom: 40px;
}

.interview_block {
	width: 100%;
	height: auto;
	margin: 50px 0 80px 0;
	position: relative;
}

.interview_block:after {
	content: "";
	position: static;
	display: block;
	clear: both;
}

.interview_block img {
	width: 50%;
	float: right;
}

.interview_block02 {
	width: 100%;
	height: auto;
	margin: 70px 0 100px 0;
	position: relative;
}

.interview_block02:after {
	content: "";
	position: static;
	display: block;
	clear: both;
}

.interview_block02 img {
	width: 50%;
	float: left;
}

.interview_text_area {
	width: 50%;
	position: absolute;
	top: 0;
	left: -50px;
}

.interview_text_area02 {
	width: 50%;
	position: absolute;
	top: 0;
	right: -50px;
}

.interview_block .more_btn {
	display: block;
	border: 2px solid #152b80;
	color: #152b80;
	text-align: center;
	background: #fff;
	width: 30rem;
	font-weight: bold;
	padding: 15px 0;
	position: absolute;
	bottom: -10px;
	left: 38%;
	transform: translateX(-50%);
	clear: both;
	transition: 0.6s;
}

.interview_block .more_btn:hover {
	color: #fff;
	background: #152b80;
	transition: 0.6s;
}

.interview_block02 .more_btn02 {
	display: block;
	border: 2px solid #152b80;
	color: #152b80;
	text-align: center;
	background: #fff;
	width: 30rem;
	font-weight: bold;
	padding: 15px 0;
	position: absolute;
	bottom: -10px;
	right: 38%;
	transform: translateX(50%);
	clear: both;
}

.interview_block02 .more_btn02:hover {
	color: #fff;
	background: #152b80;
	transition: 0.6s;
}

.interview_block .more_btn {
	cursor: pointer;
}

.interview_block .more_btn02 {
	cursor: pointer;
}



span.interview_icon {
	background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
	display: inline;
	padding: 3px 15px;
	font-size: 0.7em;
	color: #fff;
	font-style: italic;
	letter-spacing: 2px;
	float: right;
	margin-bottom: 10px;
}

span.interview_icon02 {
	background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
	display: inline;
	padding: 3px 15px;
	font-size: 0.7em;
	color: #fff;
	font-style: italic;
	letter-spacing: 2px;
	float: left;
	margin-bottom: 10px;
}

h3.interview_h3 {
	margin: 10px 0 10px 0 !important;
	text-align: right !important;
	clear: both;
}

.interview_block02 h3.interview_h3 {
	margin: 10px 0 10px 0 !important;
	text-align: left !important;
	clear: both;
}

p.i_pro_text {
	text-align: right;
	float: right;
}

.interview_block02 p.i_pro_text {
	text-align: left;
	float: left;
}

a.in_entry_btn {
	position: absolute;
	width: 480px;
	bottom: 50px;
	left: 50%;
	transform: translateX(-50%);
	display: block;
}

a.in_entry_btn img {
	width: 100%;
}


/*パーツ*/
img.c03_p01 {
	width: 200px;
	right: 5%;
	/* top: 33%; */
	top: 26%;
}

img.c03_p02 {
	width: 180px;
	left: 2%;
	/* top: 77%; */
		top: 63%;
}

@media (max-width:1200px) {
	.interview_block_last {
		margin: 50px 0 40px 0;
	}

	.interview_block .more_btn {
		bottom: -10px;
		left: 35%;
	}

	.interview_block02 .more_btn02 {
		bottom: -10px;
		right: 35%;
	}

	img.c03_p01 {
		width: 130px;
		right: 10%;
		/* top: 33%; */
			top: 26%;
	}

	img.c03_p02 {
		width: 140px;
		left: 7%;
		/* top: 77%; */
			top: 63%;
	}

	a.in_entry_btn {
		position: absolute;
		width: 360px !important;
	}
}

@media (max-width: 991px) {
	.content03_inner {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow: hidden;
	}

	.content03_inner .inner-line {
		width: 92% !important;
		margin-left: auto;
		margin-right: auto;
		padding: 0 0px;
		padding-top: 0px;
		/* padding-bottom: 180px; */
			padding-bottom: 0;
	}

	h2.interview_h2 {
		width: 50%;
	}

	.interview_block img {
		margin-bottom: 20px;
	}

	.interview_block .more_btn {
		margin: 20px auto;
		position: static;
		transform: translateX(0%);
		clear: both;
	}

	.interview_block02 .more_btn02 {
		margin: 20px auto;
		position: static;
		transform: translateX(0%);
		clear: both;
	}

	img.c03_p01 {
		width: 110px;
		right: 0%;
		/* top: 33%; */
					top: 26%;
	}

	img.c03_p02 {
		width: 110px;
		left: 0%;
		/* top: 77%; */
			top: 65%;
	}
}

@media (max-width: 768px) {
	h2.interview_h2 {
		width: 70%;
	}

	.interview_block,
	.interview_block02 {
		margin: 30px 0 80px 0;
	}

	.content03_inner .inner-line {
		/* padding-bottom: 70px; */
					padding-bottom: 0;
	}

	.interview_block img {
		width: 100%;
		float: none;
	}

	span.interview_icon {
		float: none;
	}

	h3.interview_h3 {
		text-align: center !important;
	}

	p.i_pro_text {
		text-align: center !important;
		float: none;
	}

	.interview_text_area02 {
		text-align: center !important;
	}

	.interview_block02 h3.interview_h3 {
		text-align: center !important;
		s
	}

	.interview_block02 p.i_pro_text {
		text-align: center !important;
		width: 100%;
	}

	.interview_block .more_btn,
	.interview_block02 .more_btn02 {
		width: 75%;
		margin: 20px auto;
		position: static;
		transform: translateX(0%);
		clear: both;
	}

	.interview_text_area,
	.interview_text_area02 {
		clear: both;
		width: 100%;
		position: static;
		top: 0;
		left: 0px;
		text-align: center;
	}

	img.c03_p01 {
		width: 90px;
		right: -2%;
		/* top: 22%; */
							top: 26%;
	}

	img.c03_p02 {
		width: 80px;
		left: -2%;
		/* top: 84%; */
		top: 71%;
	}

	a.in_entry_btn {
		transform: translateX(0);
		position: static;
		width: 100% !important;
		display: block;
		margin: 0 auto;
	}

	a.in_entry_btn img {
		position: static;
		display: block;
		margin-top: 80px;
	}

	span.interview_icon02 {
		float: none;
	}

}

@media (max-width: 500px) {
	h2.interview_h2 {
		margin: 30px 0 0 0;
		width: 100%;
	}
}


/*Project ==========================================*/
#content04 {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

#content04 .inner-line {
	width: 100%;
	height: auto;
	border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4);
	padding-bottom: 0px;
	padding-top: 130px;
}

.project_area {
	background: url(../img/project_bg.jpg)no-repeat center 15%;
	background-size: cover;
	padding: 30px 20px 50px 20px;
	text-align: center;
	color: #fff;
	margin: 40px 0 60px 0;
}

h4.pro_h4 {
	font-size: 1.8em;
	font-weight: bold;
	margin: 30px 0 20px 0;
}

.project_area p {
	font-weight: bold;
}

.pro_more_btn {
	border: 2px solid #fff;
	text-align: center;
	width: 25rem;
	font-weight: bold;
	padding: 10px 30px;
	color: #fff;
	margin: 70px auto 30px auto;
	display: block;
	background: transparent;
	transition: 0.6s;
}

.pro_more_btn:hover {
	cursor: pointer;
	background: #fff;
	color: #F15858;
	transition: 0.6s;
}

a.entry_btn {
	width: 480px;
	display: block;
	margin: 50px auto;
}

a.entry_btn img {
	width: 100%;
}



@media (max-width: 1600px) {
	#content04 {
		overflow: hidden;
	}
}

@media (max-width: 991px) {
	#content04 {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow: hidden;
	}

	#content04 .inner-line {
		padding-top: 30px;
	}

	/*パーツ*/
	img.c04_p01,
	img.c04_p02 {
		display: none;
	}
}

@media (max-width: 768px) {
	.project_area {
		margin: 0 0 30px 0;
		padding: 50px 0 40px 0;
	}

	.project_area h2.main_h2 {
		width: 100%;
		margin: 0 auto;
	}

	.sp_content h4.pro_h4 {
		font-size: 1.1rem;
		margin: 15px 0 5px 0;
		text-align: center;
	}

	p.project_area_bottom_text {
		text-align: center;
		color: rgb(243, 88, 88);
		margin: 0px 0 15px 0;
	}

	.pro_more_btn {
		display: block;
		border: 2px solid #152b80;
		color: #152b80;
		text-align: center;
		background: #fff;
		width: 75%;
		font-weight: bold;
		margin: 10px auto 50px auto;
		padding: 15px 0;
		clear: both;
	}

	a.entry_btn {
		width: 100%;
		display: block;
		margin: 0px auto;
	}

	a.entry_btn img {
		width: 100%;
	}
}



/*制度 ========================================================*/
#content04_2 {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

#content04_2 .inner-line {
	width: 100%;
	height: auto;
	/* border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4); */
	padding-bottom: 0px;
}

.wl_box {
	display: block !important;
	background: #f4f4f4;
	margin-bottom: 30px;
	padding: 20px 15px;
	box-sizing: border-box !important;
	height: 310px;
}

@media (max-width: 991px) {
	.wl_box {
		height: 270px !important;
	}

}

@media (max-width: 768px) {
	.wl_box {
		height: auto !important;
	}
}


.wl_box img.wl_icon {
	width: 60%;
	display: block;
	margin: 0 auto;
}

.wl_box h4 {
	color: #0d4d9b;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
}

/*パーツ*/
img.c04_p01 {
	width: 160px;
	right: -3%;
	top: -1%;
}

img.c04_p02 {
	width: 110px;
	right: 7%;
	top: -1%;
}

img.c04_p03 {
	width: 180px;
	left: 1%;
	bottom: 7%;
}

@media (max-width: 1600px) {
	#content04_2 {
		overflow: hidden;
	}
}

@media (max-width: 991px) {
	#content04_2 {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow: hidden;
	}

	/*パーツ*/
	img.c04_p01,
	img.c04_p02 {
		display: none;
	}
}

@media (max-width: 768px) {

	img.c04_p01,
	img.c04_p02,
	img.c04_p03 {
		display: none !important;
	}
}



/*募集要項 ========================================================*/
.contents05 {
	background: url(../img/recruit_bg.jpg)no-repeat 0 0;
	background-size: cover;
}

.contents05_inner {
	padding: 30px 0;
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
}

.table_box {
	margin: 30px 0;
	background: #fff;
	padding: 30px 40px;
}

table {
	margin: 40px 0;
}

table th {
	color: #0d4d9b;
	border-bottom: 1px solid #646464;
	padding: 15px;
	text-align: center;
	width: 20%;
	vertical-align: middle;
}

table th.last {
	border-bottom: none !important;
}

table td {
	border-bottom: 1px solid #646464;
	padding: 15px;
}

table td.last {
	border-bottom: none !important;
}

table.company_table {
	width: 100%;
	margin-top: 40px;
	margin-bottom: 40px;
}

table.company_table td span.yakuin {
	display: flex;
	width: 100%;
	margin-bottom: 10px;
}

table.company_table td span.yakusyoku {
	width: 135px;
}

table.company_table td span.name {
	width: calc(100% - 135px);
}


/*パーツ*/
img.c05_p01 {
	width: 160px;
	right: 7%;
	top: 20%;
}

img.c05_p02 {
	width: 110px;
	right: -1%;
	top: 22%;
}


@media (max-width: 768px) {
	h2.main_h2 {
		width: 90%;
		/* margin: 0 auto; */
	}

	img.c05_p01,
	img.c05_p02 {
		display: none !important;
	}

	.wl_box h4 {
		color: #0d4d9b;
		text-align: center;
		font-weight: bold;
		font-size: 1em;
	}

	.wl_box img.wl_icon {
		width: 30%;
		display: block;
		margin: 0 auto;
	}

	.table_box {
		margin: 30px 0;
		background: #fff;
		padding: 10px 10px;
	}

	table th {
		text-align: left;
		width: 100%;
		display: block;
	}

	table th.last {
		border-bottom: 1px solid #646464 !important;
	}

	table td {
		text-align: left;
		width: 100%;
		display: block;
	}
}




/*footer =================================== */
.footer {
	width: 100%;
	max-width: 1600px;
	min-width: 1200px;
	position: relative;
	padding: 0 50px;
	margin: 0 auto;
}

.footer .inner-line {
	width: 100%;
	height: auto;
	/* border-left: 1px solid rgba(180, 180, 180, 0.4);
	border-right: 1px solid rgba(180, 180, 180, 0.4); */
	border: none;
	padding-bottom: 0px;
}

img.foot_logo {
	width: 20rem;
	display: block;
	margin: 50px auto;
}

p.copy {
	text-align: center;
	font-size: 0.8em;
	margin: 40px 0;
}

p.gotop {
	position: fixed;
	right: 15px;
	bottom: 15px;
	z-index: 99999;
}

p.gotop a {
	width: 70px;
	display: block;
}

p.gotop a img {
	width: 100%;
}

.foot_bottom {
	background-color: #f5f5f5;
	width: 100%;
	padding: 15px 50px;
	display: flex;
	justify-content: flex-end;
}

.foot_bottom img {
	width: 100%;
	max-width: 300px;
}

@media (max-width: 768px) {
	.foot_bottom {
		padding: 10px 0px;
		justify-content: center;
	}

	.foot_bottom img {
		width: 100%;
		max-width: 250px;
	}
}

@media (max-width: 991px) {
	.footer {
		max-width: 100% !important;
		min-width: 100% !important;
		padding: 0;
		margin: 0;
		overflow: hidden;
	}

	.footer .inner-line {
		width: 92% !important;
		;
		margin-left: auto;
		margin-right: auto;
		padding: 0 0px;
		padding-bottom: 0px;
	}

	p.gotop {
		position: fixed;
		right: 10px;
		bottom: 15px;
		margin: 0;
	}

	p.gotop a {
		width: 60px;
		display: block;
	}

	.footer .inner-line {
		padding: 15px 0 10px 0px;
	}

	p.copy {
		padding: 10px 0 25px 0;
		font-size: 0.6em;
		margin: 0;
	}

	h2.main_h2 {
		width: 100%;
		/* margin: 0 auto; */
	}
}


@media (max-width: 768px) {
	img.foot_logo {
		width: 80%;
		display: block;
		margin: 0px auto;
	}

	table.company_table {
		margin-top: 10px;
		margin-bottom: 40px;
	}
}




.menu-trigger {
	display: none;
}

/*レスポンシブメニュー　=================================*/
@media (max-width: 991px) {
	h1.logo {
		padding: 15px 0 8px 0;
	}

	header ul li a {
		text-align: center;
		font-size: 1em !important;
	}

	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .2s;
		box-sizing: border-box;
	}

	.menu-trigger {
		display: block;
		position: fixed;
		width: 25px;
		height: 26px;
		top: 13px !important;
		right: 25px;
		z-index: 999;
		background: transparent;
		border-style: none;
	}

	.menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 3px;
		background-color: #292b2c;
		border-radius: 4px;
	}

	.menu-trigger span:nth-of-type(1) {
		top: 2px;
	}

	.menu-trigger span:nth-of-type(2) {
		top: 11px;
	}

	.menu-trigger span:nth-of-type(3) {
		bottom: 2px;
	}

	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}

	.menu-trigger.active span:nth-of-type(2) {
		left: 50%;
		opacity: 0;
		-webkit-animation: active-menu-bar02 .8s forwards;
		animation: active-menu-bar02 .8s forwards;
	}

	@-webkit-keyframes active-menu-bar02 {
		100% {
			height: 0;
		}
	}

	@keyframes active-menu-bar02 {
		100% {
			height: 0;
		}
	}

	.menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}

	.gblnv_block {
		transition: 0;
		width: 100%;
		background-color: #fff;
		height: 0;
		position: fixed;
		left: 0;
		top: 0;
	}

	.gblnv_block nav {
		width: 100%;
	}

	.gblnv_block ul {
		padding: 50px 10px 10px 10px;
		float: none;
		display: none;
		width: 100%;
	}

	.gblnv_block ul li {
		float: none;
		display: block;
	}

	.gblnv_block ul li a {
		padding: 7px 8px;
	}

	.onanimation {
		position: fixed;
		left: 0;
		top: 0;
		z-index: -10;
		width: 100%;
		height: 100vh;
	}

	.onanimation ul {
		display: block;
	}

	header.is-fixed .menu-trigger {
		top: 10px;
	}

	header.is-fixed ul li a {
		padding: 25px 20px;
		font-size: 1.3em;
		text-align: center;
	}

	header.is-fixed li.entry_btn {
		padding: 20px 20px;
	}

	header nav ul li.entry_btn a {
		background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
		color: #fff;
		font-weight: normal;
		margin-left: 0px;
		width: 100% !important;
		text-align: center;
		padding: 20px 25px 20px 25px !important;
		line-height: 1;
		display: block;
		margin-top: 10px;
	}
}



/* モーダル=================================================== */
.modal-mask {
	position: fixed;
	z-index: 99999 !important;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh !important;
	background-color: rgba(0, 0, 0, .75);
	display: table;
	transition: opacity .3s ease;
	box-sizing: border-box;
}

.modal-wrapper {
	display: table-cell;
	vertical-align: middle;
}

.modal-container {
	width: 900px;
	overflow: hidden;
	max-height: 80%;
	min-height: 400px;
	max-height: 80vh !important;
	overflow-y: auto;
	margin: 0px auto;
	background-color: #fff;
	border-radius: 2px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .75);
	transition: all .3s ease;
	font-family: Helvetica, Arial, sans-serif;
	position: relative;
}

/*Vue.js transition アニメーション*/
.modal-enter {
	opacity: 0;
}

.modal-leave-active {
	opacity: 0;
}

.modal-enter .modal-container,
.modal-leave-active .modal-container {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.modal-header {
	height: 300px;
	position: relative;
	background: url(../img/modal-kato-header.jpg)center -5px no-repeat;
	background-position: contain;
	margin-bottom: 50px;
}

.modal-header-name-area {
	position: absolute;
	background: url(../img/modal-kato-header.-name-bgjpg.png)center center no-repeat;
	background-size: 100%;
	color: #fff;
	top: -30px;
	left: -30px;
	width: 350px;
	height: 400px;

}

.modal-header-text-area {
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	font-size: 1.05rem;
}

span.name-text {
	font-weight: bold;
	font-size: 1.2rem;
}

.modal-inner-content {
	padding: 20px 30px;
	position: static;
}

h3.modal-h3 {
	font-size: 1.2rem;
	font-weight: bold;
	margin: 30px 0 15px 0;
}

.modal-pos-content {
	position: relative;
	width: 100%;
	margin: 30px 0;
	height: auto;
}

.modal-pos-content img {
	width: 60%;
	float: none;
}

.modal-pos-content-text {
	position: absolute;
	width: 50%;
	right: 0;
	top: 10%;
	background: #f4f4f4;
	display: block;
	box-sizing: border-box;
	padding: 20px;
}

.modal-inner-content02 {
	clear: both;
	width: 100%;
	position: static;
}

.modal-inner-content02 img {
	float: none !important;
	width: 100%;
	margin: 30px 0 0 0;
}

.modal-inner-content03 {
	width: 100%;
	padding: 0px 30px 20px 30px;
	position: static;
	margin-bottom: 40px;
}

.modal-inner-content03:after {
	content: "";
	clear: both;
	width: 100%;
	height: 10px;
	position: static;
	display: block;
}

.modal-pos-content img.right {
	width: 60%;
	float: right;
}

.modal-pos-content-text02 {
	position: absolute;
	width: 50%;
	left: 0;
	margin-top: 10%;
	background: #f4f4f4;
	display: block;
	box-sizing: border-box;
	padding: 20px;
}

h3.sche_title {
	clear: both;
	position: static;
	margin-top: 30px 0;
	text-align: center;
	padding: 20px 0 30px 0;
}

.modal-inner-content04 {
	width: 100%;
	padding: 0px 30px 20px 30px;
	position: static;
	margin-bottom: 0px;
	margin-top: 100px;
}

ul.schedule_list li {
	position: relative;
	display: block;
	height: 5rem;
	padding: 0 0 0 20px;
	line-height: 1.5;
}

ul.schedule_list li::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	width: 14px;
	height: 14px;
	background: #0d4d9b;
	display: block;
	border-radius: 50%;
}

ul.schedule_list li::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 7px;
	width: 1px;
	height: 5rem;
	background: #0d4d9b;
	display: block;
}

ul.schedule_list li.last::after {
	display: none;
}

img.sche_img {
	width: 100%;
}

ul.schedule_list li span.time {
	color: #0d4d9b;
	font-weight: bold;
	font-size: 1.1rem;
	display: block;
}

.modal-message-area {
	width: 100%;
	height: 350px;
}

.modal-message-block {
	width: 50%;
	margin: 0;
	float: left;
	height: 100%;
	display: block;
}

.modal-message-block img.left-img {
	margin: 0;
	width: 100;
	object-fit: cover;
	height: 350px;
}

.modal-message-right-area {
	width: 50%;
	float: right;
	color: #fff;
	background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
	padding: 20px;
}

h2.modal-message-h2 {
	width: 60%;
	margin: 20px 0 20px 0;
	padding: 0;
}

h2.modal-message-h2 img {
	width: 100%;
	margin: 0;
}

img.modal-close-btn {
	position: absolute;
	top: 5%;
	right: 5%;
	z-index: 999;
	width: 60px !important;
	height: auto;
	display: block;
}

img.modal-close-btn:hover {
	cursor: pointer;
}

/*インタビュー亀山さん*/
.modal-kameyama-header {
	background: url(../img/modal-kameyama-header.jpg)center -5px no-repeat !important;
	background-position: 100%;
}

/*インタビュー丸山さん*/
.modal-maruyama-header {
	background: url(../img/modal-maruyama-header.jpg)center -5px no-repeat !important;
	background-position: 100%;
}

/*インタビュー佐藤さん*/
.modal-sato-header {
	background: url(../img/modal-saato-header.jpg)center -5px no-repeat !important;
	background-position: 100%;
}

/*インタビュー新井さん*/
/* .modal-arai-header {
	background: url(../img/modal-arai-header.jpg)center -5px no-repeat !important;
	background-position: 100%;
} */

/*project story*/
.modal-project-header {
	background: url(../img/project-header.jpg)center top no-repeat !important;
	background-position: 100% 100%;
	padding: 40px 0 100px 0;
	color: #fff;
	position: relative;
}

img.pjs_title {
	display: block;
	width: 24rem;
	margin: 20px auto 30px auto;
}

img.pjs_sub_title {
	display: block;
	width: 18rem;
	margin: 20px auto;
}

.profile-left {
	position: absolute;
	left: 5%;
	bottom: 5%;
}

.profile-right {
	position: absolute;
	right: 5%;
	bottom: 5%;
}

.profile-head-text {
	text-align: center;
}

.profile-head-text span {
	font-size: 20px;
	font-weight: bold;
}

p.ps-main-text {
	text-align: center;
	line-height: 1.8;
}

.modal-inner-content_left {
	padding-right: 20px;
	width: 100%;
}

.modal-inner-content_left img {
	width: 100%;
}

.modal-inner-content_right {
	padding-left: 20px;
	width: 100%;
}

.modal-inner-content_left img {
	width: 100%;
}

.modal-inner-content_right img {
	width: 100%;
}

.talk-block {
	margin: 30px 0 30px 0;
}

.talk-block p {
	margin-top: 0;
}



@media (max-width: 768px) {
	.modal-container {
		width: 90%;
	}

	img.modal-close-btn {
		top: 10px;
		right: 10px;
	}

	img.sp_psimg {
		width: 100%;
	}

	.profile-left {
		position: static;
	}

	.profile-right {
		position: static;
	}

	.profile-head-text span {
		font-size: 16px;
		font-weight: bold;
	}

	img.pjs_sub_title {
		display: block;
		width: 13rem;
		margin: 20px auto;
	}

	p.ps-main-text {
		text-align: left;
		line-height: 1.8;
	}

}

@media (max-width: 991px) {
	.modal-pos-content img {
		width: 60%;
		float: none;
		margin: 0 auto;
		display: block;
	}

	.modal-pos-content img.right {
		width: 60%;
		float: none;
		margin: 0 auto;
		display: block;
	}

	.modal-pos-content-text {
		position: static;
		width: 100%;
		margin: 20px 0 0 0;
		padding: 10px;
	}

	.modal-pos-content-text02 {
		position: static;
		width: 100%;
		margin: 20px 0 0 0;
		padding: 10px;
	}

	.modal-inner-content03 {
		width: 100%;
		padding: 0px 15px 0px 15px;
		position: static;
		margin-bottom: 0px;
	}

	.modal-inner-content04 {
		width: 100%;
		padding: 0px 15px 0px 15px;
		position: static;
		margin-bottom: 0px;
		margin-top: 10px;
	}

	.modal-inner-content {
		padding: 20px 15px;
		position: static;
	}

	h3.sche_title {
		margin-top: 0px;
		padding: 0px 0 30px 0;
	}

	/*project story*/
	.modal-project-header {
		background-size: contain;

	}
}

@media (max-width: 768px) {

	.modal-pos-content img {
		width: 100%;
		float: none;
		margin: 0 auto;
		display: block;
	}

	.modal-pos-content img.right {
		width: 100%;
		float: none;
		margin: 0 auto;
		display: block;
	}

	img.sche_img {
		display: none;
	}

	ul.schedule_list li {
		height: 7.2rem;
	}

	ul.schedule_list li::after {
		height: 7.2rem;
	}

	.modal-message-block-left {
		display: none;
	}

	.modal-message-block-left img {
		display: none;
	}

	.modal-message-right-area {
		width: 100%;
		float: none;
		color: #fff;
		background: linear-gradient(90deg, rgb(243, 88, 88), rgb(239, 112, 38));
		padding: 20px;
		height: auto;
	}

	.modal-message-area {
		width: 100%;
		height: auto;
	}

	.sp-text-area {
		text-align: center;
	}

	.sp-text-area img {
		width: 100%;
	}

	span.name-text {
		color: rgb(243, 88, 88);
	}




}

figure {
	position: relative;
	overflow: hidden;
	width: 50%;
	float: right
}



figure img {
	width: 100% !important;
	height: auto;
}

figcaption {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .6);
	-webkit-transition: .3s;
	transition: .3s;
	opacity: 0;
}

@media (max-width: 768px) {
	figure img {
		margin-bottom: 0 !important;
		height: 100% !important;
	}

	figure {
		width: 100%;

	}

	figcaption {
		padding: 0;
		height: 99.9%;
	}
}

figure:hover figcaption {
	opacity: 1;
}

figcaption h3 {
	font-size: 18px;
	letter-spacing: 1px;
	position: absolute;
	color: #fff;
	text-align: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.project_area {
	position: relative;
}

.project_area_inner {
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .7);
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: 0.6s;
}

.project_area_inner h3 {
	color: #fff;
	font-size: 20px;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

}

.project_area:hover>.project_area_inner {
	opacity: 1;
	transition: 0.6s;
}

/*オープンアニメーション*/
.anime {
	width: 100vw;
	height: 100vh;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	overflow: hidden;
}

.anime_logo {
	width: 600px;
	position: absolute;
	top: 45%;
	left: 50%;
	width: 600px;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.anime img {
	display: block;
	width: auto;
	position: absolute;
	top: 45%;
	left: 50%;
	width: 600px;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.mainSite {
	width: 100%;
	height: 100vh;
	padding: 0;
	margin: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}




@media (max-width: 768px) {
	.anime_logo {
		width: 80%;
	}
}

@media (max-width: 1200px) {}

@media (max-width: 991px) {}

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