@charset "UTF-8";
/*
  Theme Name: atmos
  Theme URL: テーマのサイトのURI
  Description: テーマの説明
  Author: 作者の名前
  Version: テーマのバージョン
  Tags: テーマの特徴を表すタグ（カンマ区切り/オプション）
  License: テーマのライセンス
  License URI: テーマのライセンスのURI
  */
html {
		box-sizing: border-box;
		-ms-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
		/* アンチエイリアスを指定する */
		-webkit-font-smoothing: subpixel-antialiased;
		-moz-osx-font-smoothing: auto;
		/* メトリクスカーニングを指定する */
		-webkit-font-kerning: normal;
		        font-kerning: normal;
		font-feature-settings: "palt";
		font-size: 62.5%;
}

.none{
	display: none
}

*,
*:before,
*:after {
		box-sizing: inherit;
}

li > ul, li > ol {
		margin-bottom: 0;
}

dd {
		margin-left: 0;
}

table {
		width: 100%;
}

th {
		text-align: left;
}

img {
		max-width: 100%;
		height: auto;
		vertical-align: middle;
}

[src$=".svg"],
[data$=".svg"] {
		width: 100%;
}

i,
cite,
em,
address,
dfn {
		font-style: normal;
}

code,
pre {
		font-family: Consolas, Menlo, Courier, monospace;
}

code {
		padding: 0.2em;
		background-color: rgba(0, 0, 0, 0.06);
}

pre code {
		padding: 0;
		background-color: inherit;
}

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
hr,
table,
fieldset, figure,
pre {
		margin-top: 0;
		margin-bottom: 0;
}

ul, li, dl, dt, dd {
		padding: 0;
		list-style-type: none;
}

body {
		margin: 0;
		font-size: 1.6rem;
		font-family: 'Noto Serif JP', serif;
		-webkit-font-smoothing: none;
		-webkit-font-smoothing: antialiased;
		-webkit-font-smoothing: subpixel-antialiased;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
		display: block;
}

audio,
canvas,
progress,
video {
		display: inline-block;
		vertical-align: baseline;
}

audio:not([controls]) {
		display: none;
		height: 0;
}

[hidden],
template {
		display: none;
}

a {
		background-color: transparent;
		text-decoration: none;
		color: #000;
		display: block;
}

a:active,
a:focus,
a:hover {
		outline: 0;
		text-decoration: none;
}

abbr[title] {
		border-bottom: 1px dotted;
}

b,
strong {
		font-weight: bold;
}

dfn {
		font-style: italic;
}

h1 {
		font-size: 2em;
}

mark {
		background: #ff0;
		color: #000;
}

small {
		font-size: 80%;
}

sub,
sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
}

sup {
		top: -0.5em;
}

sub {
		bottom: -0.25em;
}

img {
		border: 0;
}

svg:not(:root) {
		overflow: hidden;
}

figure {
		margin: auto;
}

hr {
		box-sizing: content-box;
		height: 0;
}

pre {
		overflow: auto;
}

code,
kbd,
pre,
samp {
		font-family: monospace, monospace;
		font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
		color: inherit;
		font: inherit;
		margin: 0;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
}

button {
		overflow: visible;
}

button,
select {
		text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
		-webkit-appearance: button;
		cursor: pointer;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
}

button[disabled],
html input[disabled] {
		cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
		border: 0;
		padding: 0;
}

input {
		line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
		box-sizing: border-box;
		padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
		height: auto;
}

input[type="search"] {
		-webkit-appearance: textfield;
		box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
		-webkit-appearance: none;
}

fieldset {
		border: 1px solid #c0c0c0;
		margin: 0 2px;
		padding: 0.35em 0.625em 0.75em;
}

legend {
		border: 0;
		padding: 0;
}

textarea {
		overflow: auto;
}

optgroup {
		font-weight: bold;
}

table {
		border-collapse: collapse;
		border-spacing: 0;
}

td,
th {
		padding: 0;
}

ul,
li,
p {
		list-style: none;
		padding: 0;
		margin: 0;
}

header {
		width: 100%;
		height: 102px;
		position: fixed;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
		z-index: 9;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		background-color: white;
		font-family: "Noto Serif JP", serif;
		transition: all .8s;
}

@media screen and (max-width: 768px) {
		header {
				padding: 0;
				height: 100px;
				align-items: center;
				left: 0;
				transform: translate(0%, 0);
				line-height: 1;
		}
}

header .inner {
		max-width: 1109px;
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
}

header h1 {
		font-size: 2.2rem;
		font-weight: 600;
		letter-spacing: 0.2em;
}

@media screen and (max-width: 768px) {
		header h1 {
				margin-left: 18px;
				font-size: 2rem;
				margin-left: 1em;
		}
}

header h1 a {
		color: #434343;
}

header div.burger {
		display: none;
}

@media screen and (max-width: 768px) {
		header div.burger {
				display: block;
				position: relative;
				width: 40px;
				height: 28px;
				cursor: pointer;
				transition: all 1000ms;
				transition: all 400ms ease-out;
		}
}

@media screen and (max-width: 768px) {
		header div.burger.open {
				transform: rotate(133deg);
		}
}

header div.burger.open .y {
		width: 4px;
		height: 4px;
		background-color: #fff;
		z-index: 9;
		top: 22%;
		right: 10px;
}

header div.burger.open .x, header div.burger.open .z {
		background-color: #3E67A0;
}

header div.burger.open .x {
		transform: rotate(90deg);
		top: 25%;
		right: -8px;
}

header div.burger.open .z {
		transform: rotate(-180deg);
		top: 20%;
		right: -8px;
		width: 40px;
}

header div.x, header div.y, header div.z {
		position: absolute;
		margin: auto;
		width: 40px;
		height: 3px;
		right: 0;
		background: #3E67A0;
		transition: all 200ms ease-out;
}

header div.x {
		top: 0%;
		width: 40px;
}

header div.y {
		top: 47%;
		width: 33px;
}

header div.z {
		top: 90%;
		width: 24px;
}

header div.navbar {
		height: 73px;
}

header div.menu {
		max-width: 794px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		header div.menu {
				height: 100vh;
				width: 50%;
				background-color: rgba(65, 71, 114, 0.8);
				position: fixed;
				top: 100px;
				right: -100%;
				text-align: center;
				transition: all 1000ms;
				z-index: 99;
				transition: all 700ms cubic-bezier(0, 0.995, 0.99, 1);
				padding: 31px 31px 0 0;
		}
}

header div.menu.open {
		right: 0;
}

header div.menu ul {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		header div.menu ul {
				flex-direction: column;
				text-align: right;
		}
}

header div.menu ul li {
		list-style: none;
		text-align: center;
		font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
		header div.menu ul li {
				font-size: 1.6rem;
				text-align: right;
		}
		header div.menu ul li:not(:first-child) {
				margin-top: 40px;
		}
}

header div.menu ul li:hover::after {
		width: 100%;
}

header div.menu ul li::after {
		content: '';
		width: 0%;
		display: block;
		border-bottom: 2px solid #777777;
		transition: all .4s;
		margin-top: 8px;
}

header div.menu ul li a {
		font-weight: 600;
		text-decoration: none;
		letter-spacing: 2px;
		color: #434343;
}

@media screen and (max-width: 768px) {
		header div.menu ul li a {
				letter-spacing: 0.08em;
				color: #fff;
		}
}

header div.menu ul li a:hover {
		opacity: .6;
}

header div.menu ul li.current {
		position: relative;
}

header div.menu ul li.current::after {
		content: '';
		width: 100%;
		display: block;
		border-bottom: 2px solid #3E67A0;
		transition: all .1s;
		margin-top: 8px;
}

@media screen and (max-width: 768px) {
		header div.menu ul li.current::after {
				display: none;
		}
}

@media screen and (max-width: 768px) {
		header div.menu nav {
				position: relative;
				height: 100vh;
		}
}

@media screen and (max-width: 768px) {
		header div.menu nav ul {
				margin-top: 167px;
				padding-right: 24px;
				box-sizing: border-box;
				width: 100%;
		}
}

@media screen and (max-width: 768px) {
		header div.menu nav ul {
				width: 100%;
				padding-right: 0;
				margin-top: 0;
		}
}

.buger_box {
		z-index: 999;
		position: fixed;
		top: 25px;
		right: 29px;
}

.buger_box .menu_ttl {
		display: block;
		font-size: 1.1rem;
		letter-spacing: 0.08em;
		font-weight: 700;
		margin-top: 12px;
}

header.scroll_small {
		height: 60px;
}

header.scroll_small li.current::after {
		bottom: 12px !important;
}

footer {
		width: 100%;
		text-align: center;
		background-color: #3E447D;
		padding: 50px 0 24px;
		font-family: "Noto Serif JP", serif;
		color: #fff;
}

@media screen and (max-width: 768px) {
		footer {
				margin-top: 0;
				padding: 21px 0 10px;
		}
}

footer .inner .footer_nav {
		display: flex;
		flex-direction: row;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		footer .inner .footer_nav {
				display: none;
		}
}

footer .inner .footer_nav li {
		font-size: 1.6rem;
		font-weight: 500;
}

footer .inner .footer_nav li:not(:last-child) {
		border-right: 1px solid #fff;
		padding-right: 1em;
}

footer .inner .footer_nav li:not(:first-child) {
		padding-left: 1em;
}

footer .inner .footer_nav li a {
		color: #fff;
		display: block;
}

footer .inner .footer_company {
		margin-top: 44px;
		text-align: center;
		font-family: "Noto Serif JP", serif;
}

@media screen and (max-width: 768px) {
		footer .inner .footer_company {
				margin-top: 0;
		}
}

footer .inner .footer_company h2 {
		font-weight: 600;
		font-size: 1.8rem;
}

@media screen and (max-width: 768px) {
		footer .inner .footer_company h2 {
				font-size: 1.4rem;
		}
}

footer .inner .footer_company p {
		margin-top: 18px;
		font-size: 1.8rem;
		font-weight: 600;
		padding: 0;
}

@media screen and (max-width: 768px) {
		footer .inner .footer_company p {
				font-size: 1.4rem;
				line-height: 1.57;
				text-align: center;
		}
}

footer .inner .footer_company p a {
		color: #fff;
		display: inline-block;
}

@media screen and (max-width: 768px) {
		footer .inner .footer_company p a {
				display: block;
		}
}

footer .copy_r {
		margin-top: 40px;
		text-align: center;
		font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
		footer .copy_r {
				font-size: 1rem;
				margin-top: 20px;
		}
}

@media screen and (max-width: 768px) {
		.about footer {
				margin-top: 0;
		}
}

@media screen and (max-width: 768px) {
		.fleet footer {
				margin-top: 0px;
		}
}

.recruit footer {
		margin-top: 129px;
}

@media screen and (max-width: 768px) {
		.recruit footer {
				margin-top: 74px;
		}
}

.business footer {
		margin-top: 90px;
}

@media screen and (max-width: 768px) {
		.business footer {
				margin-top: 48px;
		}
}

.access footer {
		margin-top: 113px;
}

@media screen and (max-width: 768px) {
		.access footer {
				margin-top: 88px;
		}
}

.contact footer {
		margin-top: 93px;
}

@media screen and (max-width: 768px) {
		.contact footer {
				margin-top: 60px;
		}
}

img {
		max-width: 100%;
		height: auto;
		vertical-align: middle;
}

ul {
		overflow: hidden;
}

a {
		transition: all .8s;
		color: #3E67A0;
}

a:hover {
		text-decoration: none !important;
}

.sp {
		display: none;
}

@media screen and (max-width: 768px) {
		.sp {
				display: block;
		}
}

@media screen and (max-width: 768px) {
		.pc {
				display: none;
		}
}

.flexslider .slides img.sp {
		display: none;
}

@media screen and (max-width: 768px) {
		.flexslider .slides img.sp {
				display: block;
		}
}

.flexslider .slides img.pc {
		display: block;
}

@media screen and (max-width: 768px) {
		.flexslider .slides img.pc {
				display: none;
		}
}

#page-top {
		position: fixed;
		right: 40px;
		bottom: 20px;
		width: 50px;
		cursor: pointer;
}

@media screen and (max-width: 768px) {
		#page-top {
				width: 10%;
				right: 16px;
				bottom: 16px;
		}
}

#page-top a:hover {
		opacity: 0.6;
		text-decoration: none;
}

body {
		font-family: 'Caladea', serif;
		overflow-x: hidden;
}

.is-fixed {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 2;
		width: 100%;
		background-color: #fff;
}

.is-hide {
		transform: translateY(-100%);
}

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

.fadein2 {
		opacity: 0;
		transform: translate(200px, 0);
		transition: all 1000ms;
}

.fadein3 {
		opacity: 0;
		transform: translate(0px, 100px);
		transition: all 1000ms;
}

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

.fadein2.scrollin {
		opacity: 1;
		-webkit-transform: translate(0, 0) rotate(0deg);
		-webkit-transform-transform: translate(0, 0) rotate(0deg);
}

#arrow {
		display: none;
}

@media screen and (max-width: 768px) {
		#arrow {
				height: 150px;
				overflow: hidden;
				display: flex;
				flex-direction: row;
		}
		#arrow::after {
				content: "";
				display: block;
				width: 1px;
				border-left: 1px #fff solid;
				-webkit-animation: scroll 2s ease 0s infinite normal;
				        animation: scroll 2s ease 0s infinite normal;
				margin: 0 auto 0;
		}
}

@-webkit-keyframes scroll {
		0% {
				height: 0;
		}
		50% {
				height: 150px;
				margin-top: 0;
		}
		100% {
				margin-top: 150px;
				height: 150px;
		}
}

@keyframes scroll {
		0% {
				height: 0;
		}
		50% {
				height: 150px;
				margin-top: 0;
		}
		100% {
				margin-top: 150px;
				height: 150px;
		}
}

#is-loading {
		display: block;
		position: fixed;
		width: 100vw;
		height: 100%;
		top: 0px;
		left: 0px;
		background: #FFF;
		z-index: 12;
}

#loading {
		display: none;
		position: fixed;
		top: 50%;
		left: 50%;
		color: #fff;
		z-index: 13;
		transform: translate(-42%, -14%);
		width: 200px;
		height: 200px;
}

#loading img {
		width: 166px;
		-webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
		        animation: sk-scaleout 1.0s infinite ease-in-out;
}

/* ローディングアニメーション */
@-webkit-keyframes sk-scaleout {
		0% {
				transform: rotate(0);
		}
		100% {
				transform: rotate(360deg);
				opacity: 0;
		}
}
@keyframes sk-scaleout {
		0% {
				transform: rotate(0);
		}
		100% {
				transform: rotate(360deg);
				opacity: 0;
		}
}

.flexslider {
		border: none;
}

.top main {
		margin-top: 102px;
}

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

.top main .flexslider {
		position: relative;
		margin: 0;
}

.top main .flexslider::before {
		content: '';
		width: 40%;
		height: 100%;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		background: linear-gradient(to right, #3e67a0 0%, #3e67a0 58%, #3e67a0 59%, rgba(62, 103, 160, 0) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3e67a0', endColorstr='#003e67a0',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.top main .flexslider::before {
				background: linear-gradient(to bottom, #3e67a0 0%, rgba(62, 103, 160, 0.8) 25%, rgba(62, 103, 160, 0.77) 26%, rgba(62, 103, 160, 0) 56%);
				filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3e67a0', endColorstr='#003e67a0',GradientType=0 );
				width: 100%;
				height: 100%;
		}
}

.top main .flexslider .inner_text {
		position: absolute;
		top: 140px;
		left: 75px;
		z-index: 4;
		color: #fff;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text {
				top: 34px;
				left: 35px;
		}
}

.top main .flexslider .inner_text h2 {
		font-family: "Noto Serif JP", serif;
		font-weight: 700;
		letter-spacing: 0.2rem;
		line-height: 1;
		margin-top: 56px;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text h2 {
				margin-top: 35px;
				font-weight: 600;
				color: #fff;
		}
}

.top main .flexslider .inner_text h2 .font_big {
		font-size: 6.5rem;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text h2 .font_big {
				font-size: 3.6rem;
		}
}

.top main .flexslider .inner_text h2 .font_middle {
		font-size: 5.3rem;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text h2 .font_middle {
				font-size: 2.9rem;
		}
}

.top main .flexslider .inner_text h3 {
		font-size: 2.3rem;
		font-weight: 700;
		letter-spacing: 1px;
		line-height: 1;
		margin-top: 24px;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text h3 {
				margin-top: 16px;
				font-size: 1.4rem;
		}
}

.top main .flexslider .inner_text h4 {
		font-size: 3.6rem;
		line-height: 1.9;
		font-family: "Gelasio", serif;
		font-weight: 400;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .inner_text h4 {
				font-size: 2rem;
				color: #fff;
		}
}

.top main .flexslider .inner_text h4 span {
		display: block;
}

.top main .flexslider .inner_text h4 .font_white {
		color: #fff;
		font-weight: 600;
}

.top main .flexslider .scroll_under {
		display: none;
}

@media screen and (max-width: 768px) {
		.top main .flexslider .scroll_under {
				position: absolute;
				bottom: 0;
				left: 50%;
				z-index: 2;
				display: flex !important;
				flex-direction: row;
		}
		.top main .flexslider .scroll_under .scroll_text {
				font-size: 1.2rem;
				letter-spacing: 0.1em;
				writing-mode: vertical-rl;
				-webkit-writing-mode: vertical-rl;
				-ms-writing-mode: vertical-rl;
				color: #fff;
		}
}

.top main .wrap {
		max-width: 1280px;
		width: 100%;
		margin: 0 auto;
}

.top main .wrap .inner_up {
		background: url("common/images/top/top_bg_01.jpg") no-repeat top center;
		background-size: 84%;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up {
				background-size: 100%;
				background: url("common/images/top/top_bg_01_sp.jpg") no-repeat top center;
		}
}

.top main .wrap .inner_up .box1 {
		display: flex;
		flex-direction: row;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 {
				flex-direction: column;
				margin-top: 69px;
		}
}

.top main .wrap .inner_up .box1 figure {
		max-width: 809px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 figure {
				width: 89.8%;
				margin-left: 0;
				margin-right: auto;
				margin-top: -37px;
		}
}

.top main .wrap .inner_up .box1 .text_box {
		max-width: 625px;
		width: 100%;
		align-self: flex-start;
		padding: 36px 0 58px 66px;
		margin-left: -154px;
		background: linear-gradient(to right, rgba(255, 255, 255, 0.8) 0%, white 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccffffff', endColorstr='#ffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box {
				background: none;
				margin: 0 auto;
				padding: 0;
				width: 79.7%;
		}
}

.top main .wrap .inner_up .box1 .text_box h2 {
		color: #3E67A0;
		font-weight: 700;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box h2 {
				font-weight: 600;
				color: #fff;
		}
}

.top main .wrap .inner_up .box1 .text_box h2 .font_big {
		font-size: 6.5rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box h2 .font_big {
				font-size: 3.7rem;
		}
}

.top main .wrap .inner_up .box1 .text_box h2 .font_middle {
		font-size: 4.6rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box h2 .font_middle {
				font-size: 2.7rem;
		}
}

.top main .wrap .inner_up .box1 .text_box p {
		color: #434343;
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		line-height: 2;
		margin-top: 37px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box p {
				font-size: 1.6rem;
				margin-top: 10px;
				color: #fff;
		}
}

.top main .wrap .inner_up .box1 .text_box .link_btn {
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box .link_btn {
				font-size: 1.6rem;
				color: #fff;
		}
}

.top main .wrap .inner_up .box1 .text_box .link_btn:hover::after {
		margin-left: 8px;
}

.top main .wrap .inner_up .box1 .text_box .link_btn::after {
		content: '';
		width: 220px;
		height: 13px;
		margin-top: -11px;
		display: block;
		background: url("common/images/top/arrow.svg") no-repeat top left;
		background-size: 83.5%;
		transition: all .4s;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box .link_btn::after {
				width: 297px;
				height: 18px;
				background: url("common/images/top/arrow_sp.svg") no-repeat top left;
		}
}

.top main .wrap .inner_up .box1 .text_box .link_btn a {
		color: #3E67A0;
		display: block;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box1 .text_box .link_btn a {
				color: #fff;
		}
}

.top main .wrap .inner_up .box2 {
		display: flex;
		flex-direction: row;
		justify-content: center;
		margin-top: 123px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 {
				flex-direction: column-reverse;
				margin-top: 82px;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 h2 {
				font-weight: 600;
				color: #3E67A0;
				order: 1;
				width: 88.7%;
				margin-left: auto;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 h2 .font_big {
				font-size: 3.7rem;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 h2 .font_middle {
				font-size: 2.7rem;
		}
}

.top main .wrap .inner_up .box2 figure {
		max-width: 809px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 figure {
				width: 89.8%;
				margin-left: auto;
				margin-right: 0;
				margin-top: 16px;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 figure figcaption {
				font-size: 2rem;
				color: #3E67A0;
				margin-top: 16px;
				text-align: center;
		}
}

.top main .wrap .inner_up .box2 .text_box {
		max-width: 625px;
		width: 100%;
		position: relative;
		z-index: 1;
		align-self: flex-end;
		padding: 36px 0 58px 106px;
		margin-right: -154px;
		background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0.8) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ccffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box {
				background: none;
				margin: 0 auto;
				padding: 0;
				width: 79.7%;
		}
}

.top main .wrap .inner_up .box2 .text_box h2 {
		color: #3E67A0;
		font-weight: 700;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box h2 {
				font-weight: 600;
		}
}

.top main .wrap .inner_up .box2 .text_box h2 .font_big {
		font-size: 6.5rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box h2 .font_big {
				font-size: 3.7rem;
		}
}

.top main .wrap .inner_up .box2 .text_box h2 .font_middle {
		font-size: 4.6rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box h2 .font_middle {
				font-size: 2.7rem;
		}
}

.top main .wrap .inner_up .box2 .text_box p {
		color: #434343;
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		line-height: 2;
		margin-top: 37px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box p {
				font-size: 1.6rem;
				margin-top: 19px;
				color: #707070;
		}
}

.top main .wrap .inner_up .box2 .text_box .link_btn {
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box .link_btn {
				font-size: 1.6rem;
				color: #707070;
		}
}

.top main .wrap .inner_up .box2 .text_box .link_btn:hover::after {
		margin-left: 8px;
}

.top main .wrap .inner_up .box2 .text_box .link_btn::after {
		content: '';
		width: 220px;
		height: 13px;
		margin-top: -11px;
		display: block;
		background: url("common/images/top/arrow.svg") no-repeat top left;
		background-size: 83.5%;
		transition: all .4s;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box .link_btn::after {
				width: 297px;
				height: 18px;
				background: url("common/images/top/arrow_sp_black.svg") no-repeat top left;
		}
}

.top main .wrap .inner_up .box2 .text_box .link_btn a {
		color: #3E67A0;
		display: block;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_up .box2 .text_box .link_btn a {
				color: #707070;
		}
}

.top main .wrap .middle_copy {
		font-size: 5.4rem;
		font-weight: 600;
		font-family: "Noto Serif JP", serif;
		color: #3E67A0;
		margin: 55px auto;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.top main .wrap .middle_copy {
				display: none;
		}
}

.top main .wrap .inner_bottom {
		background: url("common/images/top/top_bg_02_sp.jpg") no-repeat top center;
		background-size: 84%;
}

.top main .wrap .inner_bottom .box1 {
		display: flex;
		flex-direction: row;
		justify-content: center;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 {
				flex-direction: column;
				margin-top: 69px;
		}
}

.top main .wrap .inner_bottom .box1 figure {
		max-width: 809px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 figure {
				width: 89.8%;
				margin-left: 0;
				margin-right: auto;
				margin-top: -37px;
		}
}

.top main .wrap .inner_bottom .box1 .text_box {
		max-width: 625px;
		width: 100%;
		align-self: flex-start;
		padding: 36px 0 58px 66px;
		margin-left: -154px;
		background: linear-gradient(to right, rgba(255, 255, 255, 0.8) 0%, white 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccffffff', endColorstr='#ffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box {
				background: none;
				margin: 0 auto;
				padding: 0;
				width: 79.7%;
		}
}

.top main .wrap .inner_bottom .box1 .text_box h2 {
		color: #3E67A0;
		font-weight: 700;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box h2 {
				font-weight: 600;
				color: #fff;
		}
}

.top main .wrap .inner_bottom .box1 .text_box h2 .font_big {
		font-size: 6.5rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box h2 .font_big {
				font-size: 3.7rem;
		}
}

.top main .wrap .inner_bottom .box1 .text_box h2 .font_middle {
		font-size: 4.6rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box h2 .font_middle {
				font-size: 2.7rem;
		}
}

.top main .wrap .inner_bottom .box1 .text_box p {
		color: #434343;
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		line-height: 2;
		margin-top: 37px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box p {
				font-size: 1.6rem;
				margin-top: 10px;
				color: #fff;
		}
}

.top main .wrap .inner_bottom .box1 .text_box .link_btn {
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box .link_btn {
				font-size: 1.6rem;
				color: #fff;
		}
}

.top main .wrap .inner_bottom .box1 .text_box .link_btn:hover::after {
		margin-left: 8px;
}

.top main .wrap .inner_bottom .box1 .text_box .link_btn::after {
		content: '';
		width: 220px;
		height: 13px;
		margin-top: -11px;
		display: block;
		background: url("common/images/top/arrow.svg") no-repeat top left;
		background-size: 83.5%;
		transition: all .4s;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box .link_btn::after {
				width: 297px;
				height: 18px;
				background: url("common/images/top/arrow_sp_black.svg") no-repeat top left;
		}
}

.top main .wrap .inner_bottom .box1 .text_box .link_btn a {
		color: #3E67A0;
		display: block;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box1 .text_box .link_btn a {
				color: #fff;
		}
}

.top main .wrap .inner_bottom .box2 {
		display: flex;
		flex-direction: row;
		justify-content: center;
		margin-top: 123px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 {
				flex-direction: column-reverse;
				margin-top: 82px;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 h2 {
				font-weight: 600;
				color: #3E67A0;
				order: 1;
				width: 88.7%;
				margin-left: auto;
		}
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 h2 .font_middle {
				font-size: 2.3rem;
		}
}

.top main .wrap .inner_bottom .box2 figure {
		max-width: 809px;
		width: 100%;
		position: relative;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 figure {
				width: 89.8%;
				margin-left: auto;
				margin-right: 0;
				margin-top: 16px;
		}
}

.top main .wrap .inner_bottom .box2 figure figcaption {
		position: absolute;
		right: 103px;
		bottom: 32px;
		color: #fff;
		font-size: 5.4rem;
		line-height: 1.314;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 figure figcaption {
				font-size: 2.2rem;
				right: 16px;
				bottom: 13px;
		}
}

.top main .wrap .inner_bottom .box2 .text_box {
		max-width: 625px;
		width: 100%;
		position: relative;
		z-index: 1;
		align-self: flex-end;
		padding: 36px 0 58px 106px;
		margin-right: -154px;
		background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0.8) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ccffffff',GradientType=1 );
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 .text_box {
				background: none;
				margin: 0 auto;
				padding: 0;
				width: 79.7%;
		}
}

.top main .wrap .inner_bottom .box2 .text_box h2 {
		color: #3E67A0;
		font-weight: 700;
}

.top main .wrap .inner_bottom .box2 .text_box h2 .font_middle {
		font-size: 3.8rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 .text_box h2 .font_middle {
				font-weight: 600;
		}
}

.top main .wrap .inner_bottom .box2 .text_box h2 .font_middle .font_middle {
		font-size: 4.6rem;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 .text_box h2 .font_middle .font_middle {
				font-size: 2.3rem;
		}
}

.top main .wrap .inner_bottom .box2 .text_box p {
		color: #434343;
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		line-height: 2;
		margin-top: 37px;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 .text_box p {
				font-size: 1.6rem;
				margin-top: 19px;
				color: #707070;
		}
}

.top main .wrap .inner_bottom .box2 .text_box .link_btn {
		font-size: 1.8rem;
		font-weight: 600;
		letter-spacing: 0.08em;
}

.top main .wrap .inner_bottom .box2 .text_box .link_btn:hover::after {
		margin-left: 8px;
}

.top main .wrap .inner_bottom .box2 .text_box .link_btn::after {
		content: '';
		width: 220px;
		height: 13px;
		margin-top: -11px;
		display: block;
		background: url("common/images/top/arrow.svg") no-repeat top left;
		background-size: 83.5%;
		transition: all .4s;
}

@media screen and (max-width: 768px) {
		.top main .wrap .inner_bottom .box2 .text_box .link_btn::after {
				width: 297px;
				height: 18px;
				background: url("common/images/top/arrow_sp_black.svg") no-repeat top left;
		}
}

.top main .wrap .inner_bottom .box2 .text_box .link_btn a {
		color: #3E67A0;
		display: block;
		color: #707070;
}

.page main {
		margin-top: 102px;
}

@media screen and (max-width: 768px) {
		.page main {
				margin-top: 100px;
		}
}

.page main .page_header {
		width: 100%;
		position: relative;
}

.page main .page_header::after {
		content: '';
		width: 100%;
		height: 166px;
		display: block;
		background: #3E67A0;
		position: absolute;
		background-size: cover;
		top: 0;
		left: 0;
		z-index: -1;
}

@media screen and (max-width: 768px) {
		.page main .page_header::after {
				height: 100px;
		}
}

.page main .page_header .page_header_text {
		max-width: 893px;
		width: 100%;
		margin: 0px auto 0;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
}

@media screen and (max-width: 768px) {
		.page main .page_header .page_header_text {
				margin-top: 0px;
				padding: 0px 31px 0 20px;
				overflow: hidden;
				width: 100%;
		}
}

.page main .page_header .page_header_text h2 {
		margin-top: 66px;
		font-family: "Noto Serif JP", serif;
		font-size: 3.2rem;
		font-weight: 700;
		letter-spacing: 0.2rem;
		color: #fff;
		line-height: 1;
}

@media screen and (max-width: 768px) {
		.page main .page_header .page_header_text h2 {
				font-size: 1.8rem;
				margin-top: 40px;
		}
}

.page main .page_header .page_header_text h3 {
		font-size: 2rem;
		line-height: 1.5;
		letter-spacing: 1px;
		background-color: #3E447D;
		padding: 23px 0 23px 59px;
		box-sizing: border-box;
		position: relative;
		z-index: 1;
		font-weight: 400;
}

@media screen and (max-width: 768px) {
		.page main .page_header .page_header_text h3 {
				font-size: 1.4rem;
				line-height: 1.57;
				padding: 9px 0 6px 23px;
		}
}

.page main .page_header .page_header_text h3 .font_blue {
		color: #3E67A0;
}

.page main .page_header .page_header_text h3 .font_white {
		color: #fff;
}

@media screen and (max-width: 768px) {
		.page main .page_header .page_header_text h3 .font_white_sp {
				color: #fff;
		}
}

.page main .page_header .page_header_text h3::after {
		content: '';
		width: 400%;
		height: 100%;
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		background-color: #3E447D;
		z-index: -1;
}

.page main .page_ttl {
		margin: 92px auto 0;
		max-width: 893px;
		width: 100%;
		font-family: "Noto Serif JP", serif;
}

@media screen and (max-width: 768px) {
		.page main .page_ttl {
				margin-top: 32px;
				width: 100%;
		}
}

.page main .page_ttl .ttl {
		font-size: 3.6rem;
		font-weight: 600;
		color: #434343;
		letter-spacing: 0.2rem;
}

@media screen and (max-width: 768px) {
		.page main .page_ttl .ttl {
				font-size: 2.4rem;
				padding-left: 20px;
		}
}

.page main .page_ttl .sub_ttl {
		font-size: 3.5rem;
		font-weight: 600;
		color: #434343;
		margin-top: 46px;
		letter-spacing: 1px;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.page main .page_ttl .sub_ttl {
				font-size: 2.2rem;
				margin-top: 32px;
				line-height: 1.54;
				letter-spacing: 0.06em;
				text-align: left;
				padding-left: 20px;
		}
}

.page main .page_ttl .en_text {
		font-family: "Gelasio", serif;
		font-style: italic;
		font-weight: 400;
		font-size: 5.4rem;
		text-align: left;
		color: #D9D8D8;
		margin-top: 35px;
}

@media screen and (max-width: 768px) {
		.page main .page_ttl .en_text {
				font-size: 2.1rem;
				margin-top: 27px;
				text-align: center;
		}
}

.page main .page_ttl p {
		font-size: 2.2rem;
		font-weight: 500;
		color: #434343;
		letter-spacing: 0.08em;
		margin-top: 46px;
		line-height: 2;
}

@media screen and (max-width: 768px) {
		.page main .page_ttl p {
				max-width: 334px;
				margin: 30px auto 0;
				font-size: 1.6rem;
				font-weight: 600;
				line-height: 1.625;
		}
}

.page main .page_content {
		font-family: "Noto Serif JP", serif;
		color: #434343;
}

.about .page_content {
		font-family: "Noto Serif JP", serif;
		color: #434343;
}

.about .box1 {
		max-width: 893px;
		width: 100%;
		margin: 72px auto 0;
}

@media screen and (max-width: 768px) {
		.about .box1 {
				margin-top: 26px;
		}
}

.about .box1 h2 {
		font-size: 2.6rem;
		font-weight: 600;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.about .box1 h2 {
				font-size: 1.8rem;
				font-weight: 700;
				padding-left: 20px;
		}
}

.about .box1 h2::after {
		content: '';
		width: 200%;
		height: 2px;
		display: block;
		background-color: #3E67A0;
		transform: translateX(-92.7%);
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.about .box1 h2::after {
				transform: translateX(-72%);
				margin-top: 8px;
				width: 100%;
		}
}

.about .box1 .caption {
		font-size: 2.2rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		margin-top: 38px;
}

@media screen and (max-width: 768px) {
		.about .box1 .caption {
				font-size: 1.6rem;
				font-weight: 700;
				margin-top: 24px;
				padding: 0 20px;
		}
}

.about .box1 .ceo_box {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		margin-top: 38px;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box {
				margin-top: 16px;
				flex-direction: column;
		}
}

.about .box1 .ceo_box .ceo_box_text {
		font-size: 1.8rem;
		font-weight: 500;
		letter-spacing: 0.08em;
		line-height: 2;
		max-width: 483px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box .ceo_box_text {
				font-size: 1.6rem;
				line-height: 1.625;
				padding: 0 20px;
		}
}

.about .box1 .ceo_box .ceo_box_text h4 {
		font-family: "Gelasio", serif;
		font-size: 2.3rem;
		margin: 30px 0;
		color: #3E67A0;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box .ceo_box_text h4 {
				font-size: 1.8rem;
				margin: 16px 0 26px;
		}
}

.about .box1 .ceo_box .ceo_box_text .sign {
		display: flex;
		flex-direction: row;
		align-items: center;
		margin-top: 17px;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box .ceo_box_text .sign {
				margin-left: 21px;
				justify-content: flex-end;
		}
}

.about .box1 .ceo_box .ceo_box_text .sign dt {
		margin-right: 24px;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box .ceo_box_text .sign dt {
				margin-right: 11px;
				font-weight: 500;
				font-size: 1.6rem;
		}
}

.about .box1 .ceo_box .ceo_box_text .sign dd {
		max-width: 250px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box .ceo_box_text .sign dd {
				max-width: 156px;
		}
}

.about .box1 .ceo_box figure {
		margin: 0;
		max-width: 366px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.about .box1 .ceo_box figure {
				display: flex;
				flex-direction: row;
				align-items: center;
				margin-top: 24px;
				text-align: center;
				max-width: 100%;
				background-color: #3E447D;
		}
		.about .box1 .ceo_box figure img {
				max-width: 159px;
				width: 100%;
				height: auto;
		}
}

@media screen and (max-width: 768px) and (max-width: 768px) {
		.about .box1 .ceo_box figure img {
				max-width: 100%;
				width: 50%;
		}
}

.about .box1 .ceo_box figure figcaption {
		width: 50%;
		height: 100%;
		text-align: center;
		color: #fff;
		box-sizing: border-box;
}

.about .box1 .ceo_box figure figcaption h3 {
		text-align: left;
		font-family: "Gelasio", serif;
		font-weight: 400;
		line-height: 1.55;
		display: inline-block;
}

.about .box1 .ceo_box figure figcaption h3 span {
		font-size: 1.8rem;
}

.about .box2 {
		width: 100%;
		background-color: #3E67A0;
		margin: 111px auto 0;
		box-sizing: border-box;
		padding: 100px 92px 108px;
}

@media screen and (max-width: 768px) {
		.about .box2 {
				margin-top: 57px;
				padding: 49px 20px 47px;
		}
}

.about .box2 ul {
		max-width: 890px;
		width: 100%;
		margin: 0 auto;
}

.about .box2 ul li {
		background-color: #fff;
		color: #434343;
		font-size: 1.6rem;
		letter-spacing: 0.08em;
		line-height: 86px;
		font-weight: 600;
		height: 86px;
}

@media screen and (max-width: 768px) {
		.about .box2 ul li {
				height: 60px;
				line-height: 60px;
				font-size: 1.1rem;
		}
}

.about .box2 ul li:not(:first-child) {
		margin-top: 19px;
}

@media screen and (max-width: 768px) {
		.about .box2 ul li:not(:first-child) {
				margin-top: 10px;
		}
}

.about .box2 ul li dl {
		display: flex;
		flex-direction: row;
		align-items: center;
}

.about .box2 ul li dl dt {
		min-width: 157px;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.about .box2 ul li dl dt {
				min-width: 92px;
		}
}

.about .box2 ul li dl dd {
		max-width: 584px;
		width: 100%;
		line-height: 2;
		margin-left: 27px;
}

@media screen and (max-width: 768px) {
		.about .box2 ul li dl dd {
				margin-left: 8px;
				line-height: 1.6;
		}
}

.business .page_ttl > p {
		margin-top: 33px;
}

@media screen and (max-width: 768px) {
		.business .page_ttl > p {
				margin-top: 27px;
		}
}

.business .page_content {
		max-width: 100%;
		width: 100%;
		margin: 44px auto 0;
}

.business .page_content figure {
		max-width: 1118px;
		width: 100%;
		margin: 0;
}

.business .page_content figure figcaption {
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-size: 2rem;
		color: #fff;
		background-color: #3E67A0;
		margin-top: -34px;
		position: relative;
		z-index: 1;
		display: inline-block;
		padding: 28px 58px 29px 62px;
}

@media screen and (max-width: 768px) {
		.business .page_content figure figcaption {
				font-size: 1.4rem;
				margin-top: -48px;
				padding: 21px 34px 30px 29px;
				max-width: 311px;
				text-align: left;
				line-height: 1.78;
				letter-spacing: 0.044em;
				font-weight: 400;
		}
}

.business .page_content figure:first-of-type {
		margin-left: auto;
		text-align: right;
		max-width: 100%;
}

.business .page_content figure:last-of-type {
		margin-right: auto;
		margin-top: 36px;
		max-width: 100%;
}

@media screen and (max-width: 768px) {
		.business .page_content figure:last-of-type {
				margin-top: 67px;
		}
}

.business .page_content figure:last-of-type img {
		max-width: 1118px;
}

.business .page_content .text_02 {
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-size: 2rem;
		color: #fff;
		background-color: #3E67A0;
		padding: 34px 60px 28px 52px;
		max-width: 782px;
		width: 100%;
		line-height: 1.8;
		letter-spacing: 0.08em;
		text-align: left;
		margin-top: -25px;
		margin-left: auto;
		position: relative;
		z-index: 1;
}

@media screen and (max-width: 768px) {
		.business .page_content .text_02 {
				font-size: 1.4rem;
				margin-top: -21px;
				padding: 20px;
				max-width: 311px;
				text-align: left;
				line-height: 1.78;
				letter-spacing: 0.144em;
				font-weight: 400;
		}
}

.business .page_content .inner_text {
		margin-top: 35px;
		letter-spacing: 0.08em;
		width: 100%;
}

.business .page_content .inner_text ul {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
}

@media screen and (max-width: 768px) {
		.business .page_content .inner_text ul {
				flex-direction: column;
		}
}

.business .page_content .inner_text ul li {
		width: 48.5%;
}

@media screen and (max-width: 768px) {
		.business .page_content .inner_text ul li {
				width: 100%;
		}
}

.business .page_content .inner_text ul li img {
		width: 100%;
}

@media screen and (max-width: 768px) {
		.business .page_content .inner_text ul li:last-child {
				margin-top: -37px;
		}
}

.business .page_content .inner_text ul li.sp {
		font-family: "Noto Serif JP", serif;
		font-weight: 400;
		font-size: 1.4rem;
		padding: 20px;
		max-width: 311px;
		width: 100%;
		text-align: left;
		line-height: 1.78;
		letter-spacing: 0.144em;
		color: #fff;
		background-color: #3E67A0;
		margin-right: auto;
		margin-top: -62px;
		position: relative;
		z-index: 1;
}

.business .page_content .inner_text p.text_01 {
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-size: 2rem;
		color: #fff;
		background-color: #3E67A0;
		padding: 34px 60px 28px 52px;
		margin-right: auto;
		margin-top: -80px;
		max-width: 782px;
		width: 100%;
		line-height: 1.8;
		letter-spacing: 0.08em;
}

.business h4 {
		font-size: 5.4rem;
		font-family: "Gelasio", serif;
		text-align: center;
		color: #3E67A0;
		margin-top: 84px;
}

@media screen and (max-width: 768px) {
		.business h4 {
				font-size: 2rem;
				margin: 33px 0;
		}
}

@media screen and (max-width: 768px) {
		.fleet .page_ttl p {
				font-size: 1.4rem !important;
				font-weight: 700 !important;
				margin-top: 26px !important;
		}
}

.fleet .wrap {
		margin-top: 82px;
		width: 100%;
		box-sizing: border-box;
}

@media screen and (max-width: 768px) {
		.fleet .wrap {
				margin-top: 40px;
				overflow-x: hidden;
		}
}

.fleet .wrap .page_content {
		max-width: 1074px;
		width: 100%;
		margin: 0 auto;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content {
				position: relative;
		}
}

.fleet .wrap .page_content .inner_wrapper {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper {
				flex-direction: column-reverse;
		}
}

.fleet .wrap .page_content .inner_wrapper figure {
		max-width: 644px;
		width: 100%;
		margin: 0;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper figure {
				padding: 0 20px;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text {
		max-width: 479px;
		width: 100%;
		margin-right: -49px;
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		color: #fff;
		background-color: #3E67A0;
		padding: 41px 60px 60px;
		text-align: center;
		position: relative;
		z-index: 1;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text {
				width: 76.8%;
				margin: -41px auto 0;
				padding: 18px 24px 24px;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text h2 {
		font-size: 2.6rem;
		font-weight: 500;
		letter-spacing: 0.08em;
		text-align: center;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text h2 {
				font-size: 1.8rem;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text p {
		font-size: 1.8rem;
		line-height: 1.77;
		letter-spacing: 0.08em;
		margin-top: 29px;
		display: inline-block;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text p {
				font-size: 1.4rem;
				margin-top: 13px;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text ul {
		margin-top: 34px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		max-width: 359px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text ul {
				margin-top: 19px;
				display: inline-block;
				width: auto;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text ul li {
		font-size: 1.6rem;
		letter-spacing: 0.08em;
		font-weight: 500;
		width: 50%;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text ul li {
				font-size: 1.4rem;
				text-align: left;
				width: 100%;
		}
}

.fleet .wrap .page_content .inner_wrapper .inner_text ul li:nth-child(n+3) {
		margin-top: 1em;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .page_content .inner_wrapper .inner_text ul li:nth-child(n+3) {
				margin-top: 0;
		}
}

.fleet .wrap .box2 {
		background-color: #3E67A0;
		max-width: 100%;
		padding: 100px 0 127px;
		margin-top: 100px;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .box2 {
				margin-top: 51px;
				padding: 50px 20px 54px;
		}
}

.fleet .wrap .box2 .inner_wrapper {
		max-width: 1074px;
		margin: 0 auto;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .box2 .inner_wrapper {
				flex-direction: column;
		}
}

.fleet .wrap .box2 .inner_wrapper .inner_text {
		background-color: #fff;
		color: #434343;
		margin-right: 0;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .box2 .inner_wrapper .inner_text {
				margin: -41px auto 0;
				width: 85.97%;
		}
}

.fleet .wrap .box2 .inner_wrapper figure {
		margin-right: -49px;
}

@media screen and (max-width: 768px) {
		.fleet .wrap .box2 .inner_wrapper figure {
				margin-right: 0;
				padding: 0;
		}
}

@media screen and (max-width: 768px) {
		.recruit .page_ttl .ttl {
				font-size: 2.3rem !important;
				letter-spacing: 0.1em !important;
		}
}

.recruit .page_ttl h4 {
		font-size: 5.4rem;
		text-align: left;
		color: #D9D8D8;
		margin-top: 60px;
		font-weight: 400;
		font-style: italic;
		font-family: "Gelasio", serif;
}

@media screen and (max-width: 768px) {
		.recruit .page_ttl h4 {
				font-size: 2.2rem;
				margin-top: 26px;
				padding-left: 20px;
		}
}

.recruit .page_ttl p {
		font-size: 3.5rem !important;
		font-weight: 600 !important;
		color: #5A5A5A !important;
		margin-top: 52px;
}

@media screen and (max-width: 768px) {
		.recruit .page_ttl p {
				font-size: 2rem !important;
				margin-top: 26px;
		}
}

.recruit .wrap .page_content {
		max-width: 900px;
		width: 100%;
		margin: 92px auto 0;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content {
				margin-top: 36px;
		}
}

.recruit .wrap .page_content h2 {
		font-size: 2.6rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		color: #434343;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content h2 {
				font-size: 1.8rem;
				font-weight: 700;
				padding-left: 20px;
		}
}

.recruit .wrap .page_content h2::after {
		content: '';
		width: 200%;
		height: 2px;
		display: block;
		background-color: #3E67A0;
		transform: translateX(-94%);
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content h2::after {
				transform: translateX(-72%);
				margin-top: 8px;
				width: 100%;
		}
}

.recruit .wrap .page_content .inner_wrapper {
		margin-top: 62px;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper {
				margin-top: 50px;
				padding: 0 20px;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li {
		color: #3E67A0;
}

.recruit .wrap .page_content .inner_wrapper > ul > li:not(:first-child) {
		margin-top: 71px;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li:not(:first-child) {
				margin-top: 60px;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li:not(:first-child) dl {
		text-align: right;
}

.recruit .wrap .page_content .inner_wrapper > ul > li:not(:first-child) dl::before {
		right: 0;
		left: auto;
}

.recruit .wrap .page_content .inner_wrapper > ul > li:not(:first-child) dl dt {
		text-align: right;
		margin-right: 0;
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl {
		position: relative;
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl::before {
		content: '';
		width: 3px;
		height: 347px;
		display: block;
		background-color: #414772;
		position: absolute;
		top: 50px;
		left: 0;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl::before {
				top: 30px;
				height: 224px;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl dt {
		font-size: 2.7rem;
		font-weight: 600;
		margin-right: 16px;
		font-family: "Gelasio", serif;
		border-bottom: 3px solid #414772;
		padding: 0 8px 0px;
		letter-spacing: 0.02em;
		display: inline-block;
		line-height: 1;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl dt {
				font-size: 1.5rem;
				margin-right: 0;
				border-bottom: 2px solid #414772;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl dt .number {
		font-size: 5rem;
		vertical-align: baseline;
		line-height: 1;
		font-weight: 600;
		font-style: italic;
		margin-left: 0.1em;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl dt .number {
				-webkit-text-orientation: upright;
				        text-orientation: upright;
				margin-top: 7px;
				font-size: 2.9rem;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl dd {
		padding-left: 59px;
		margin-top: 28px;
		font-size: 2.6rem;
		font-weight: 700;
		letter-spacing: 0.08em;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl dd {
				margin-left: 0px;
				padding-left: 17px;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl dd h4 {
		font-family: "Noto Serif JP", serif;
		font-weight: 700;
		font-size: 2.6rem;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl dd h4 {
				font-size: 1.8rem;
				line-height: 1.77;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li dl dd p {
		margin-top: 17px;
		font-size: 2rem;
		font-weight: 600;
		line-height: 2;
		letter-spacing: 0.08em;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li dl dd p {
				margin-top: 9px;
				font-size: 1.4rem;
				line-height: 1.87;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li ul {
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: end;
		max-width: 716px;
		width: 100%;
		margin: 0px auto 0;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li ul {
				margin: -22px auto 0;
				justify-content: center;
				align-items: flex-end;
		}
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li ul li {
				max-width: 252px;
				width: 100%;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li ul li:last-child {
		max-width: 105px;
		width: 100%;
		margin-left: 25px;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li ul li:last-child {
				margin-left: 0;
				max-width: 53px;
				width: 100%;
		}
}

.recruit .wrap .page_content .inner_wrapper > ul > li ul .small {
		max-width: 580px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .inner_wrapper > ul > li ul .small {
				max-width: 261px;
				width: 100%;
		}
}

.recruit .wrap .page_content .contact_link {
		max-width: 512px;
		width: 100%;
		background-color: #3E67A0;
		border-radius: 5px;
		text-align: center;
		padding: 22px 0;
		margin: 148px auto 0;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .contact_link {
				max-width: 281px;
				padding: 13px 0;
				margin-top: 75px;
		}
}

.recruit .wrap .page_content .contact_link a {
		color: #fff;
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 2.9rem;
		line-height: 1;
		display: block;
}

@media screen and (max-width: 768px) {
		.recruit .wrap .page_content .contact_link a {
				font-size: 1.7rem;
				font-weight: 600;
		}
}

.access .wrap {
		margin-top: 49px;
}

@media screen and (max-width: 768px) {
		.access .wrap {
				margin-top: 20px;
		}
}

.access .wrap .page_content {
		max-width: 866px;
		width: 100%;
		margin: 0px auto 0;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content {
				margin-top: 0px;
		}
}

.access .wrap .page_content h2 {
		font-size: 2.6rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		color: #434343;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content h2 {
				font-size: 1.8rem;
				font-weight: 700;
				padding-left: 42px;
				text-align: left;
		}
}

.access .wrap .page_content h2::after {
		content: '';
		width: 200%;
		height: 2px;
		display: block;
		background-color: #3E67A0;
		transform: translateX(-94%);
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content h2::after {
				transform: translateX(-72%);
				margin-top: 8px;
				width: 100%;
		}
}

.access .wrap .page_content .inner_wrapper {
		margin-top: 64px;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content .inner_wrapper {
				margin-top: 23.5px;
				text-align: center;
		}
}

.access .wrap .page_content .inner_wrapper ul {
		max-width: 866px;
		width: 100%;
		margin: 40px auto 0;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content .inner_wrapper ul {
				display: inline-block;
				width: auto;
		}
}

.access .wrap .page_content .inner_wrapper ul li {
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		font-size: 2.6rem;
		letter-spacing: 0.08em;
		color: #5A5A5A;
		text-align: left;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content .inner_wrapper ul li {
				font-size: 1.4rem;
				font-weight: 700;
		}
}

.access .wrap .page_content .inner_wrapper ul li a {
		color: #5A5A5A;
		display: inline-block;
}

.access .wrap .page_content .inner_wrapper .map {
		max-width: 866px;
		width: 100%;
		margin: 53px auto 0;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content .inner_wrapper .map {
				max-width: 335px;
				width: 100%;
				height: 233px;
				margin-top: 28px;
		}
}

.access .wrap .page_content .inner_wrapper .map iframe {
		width: 100%;
}

@media screen and (max-width: 768px) {
		.access .wrap .page_content .inner_wrapper .map iframe {
				height: 233px;
		}
}

.contact .wrap {
		margin-top: 45px;
}

@media screen and (max-width: 768px) {
		.contact .wrap {
				margin-top: 20px;
		}
}

.contact .wrap .page_content {
		max-width: 893px;
		width: 100%;
		margin: 0px auto 0;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content {
				margin-top: 0px;
		}
}

.contact .wrap .page_content h2 {
		font-size: 2.6rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		color: #5A5A5A;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content h2 {
				font-size: 1.8rem;
				font-weight: 700;
				padding-left: 20px;
		}
}

.contact .wrap .page_content h2::after {
		content: '';
		width: 200%;
		height: 2px;
		display: block;
		background-color: #3E67A0;
		transform: translateX(-86%);
		margin-top: 26px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content h2::after {
				transform: translateX(-44%);
				margin-top: 8px;
				width: 100%;
		}
}

.contact .wrap .page_content .inner_wrapper {
		margin: 84px auto 0;
		max-width: 815px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper {
				margin-top: 22.5px;
				text-align: center;
				padding: 0 20px;
		}
}

.contact .wrap .page_content .inner_wrapper form ul li:not(:first-child) {
		margin-top: 40px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form ul li:not(:first-child) {
				margin-top: 33.5px;
		}
}

.contact .wrap .page_content .inner_wrapper form ul li label {
		display: flex;
		flex-direction: row;
		align-items: center;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form ul li label {
				flex-direction: column;
				align-items: flex-start;
		}
}

.contact .wrap .page_content .inner_wrapper form ul li label[for="comment"] {
		align-items: flex-start;
}

.contact .wrap .page_content .inner_wrapper form ul li label .label_name {
		font-size: 1.6rem;
		font-family: "Noto Serif JP", serif;
		font-weight: 500;
		letter-spacing: 0.08em;
		color: #707070;
		text-align: right;
		min-width: 120px;
		margin-right: 16px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form ul li label .label_name {
				text-align: left;
		}
}

.contact .wrap .page_content .inner_wrapper form ul li label input {
		border: none;
		border: 1px solid #707070;
		box-shadow: none;
		max-width: 680px;
		width: 100%;
		height: 60px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form ul li label input {
				margin-top: 4px;
		}
}

.contact .wrap .page_content .inner_wrapper form ul li label textarea {
		border: none;
		border: 1px solid #707070;
		box-shadow: none;
		max-width: 680px;
		width: 100%;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form ul li label textarea {
				margin-top: 5px;
		}
}

.contact .wrap .page_content .inner_wrapper form .submit {
		font-family: "Noto Serif JP", serif;
		font-weight: 700;
		font-size: 2.2rem;
		margin-top: 54px;
		margin-left: 136px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form .submit {
				margin-top: 29px;
				font-size: 1.6rem;
				text-align: left;
				margin-left: 0;
		}
}

.contact .wrap .page_content .inner_wrapper form .submit input {
		width: 100%;
		color: #fff;
		border: none;
		background-color: #3E67A0;
		width: 163px;
		height: 54px;
		line-height: 54px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .inner_wrapper form .submit input {
				width: 115px;
				height: 38px;
				line-height: 38px;
		}
}

.contact .wrap .page_content .content_tel {
		max-width: 740px;
		width: 100%;
		margin-top: 70px;
		border-top: 1px solid #2E2E2E;
		border-bottom: 1px solid #2E2E2E;
		padding: 42px 0;
		font-family: "Noto Serif JP", serif;
		margin-left: auto;
		padding-left: 22px;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .content_tel {
				padding: 14px 1em 19px;
				text-align: center;
				width: 89.33%;
				margin: 31.5px auto 0;
		}
}

.contact .wrap .page_content .content_tel h3 {
		font-size: 2.4rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		color: #707070;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .content_tel h3 {
				font-size: 1.8rem;
		}
}

.contact .wrap .page_content .content_tel p {
		margin-top: 1em;
		font-size: 3.2rem;
		color: #707070;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .content_tel p {
				font-size: 2.2rem;
				margin-top: 8px;
		}
}

.contact .wrap .page_content .content_tel p a {
		color: #707070;
		display: inline-block;
		line-height: 1;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .content_tel p a {
				display: block;
		}
}

.contact .wrap .page_content .content_tel p span {
		font-size: 2.2rem;
		margin-left: 1em;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content .content_tel p span {
				font-size: 1.6rem;
				margin-left: 0;
		}
}

.contact .wrap .page_content > p {
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-size: 2.4rem;
		letter-spacing: 0.08em;
		color: #707070;
		margin-top: 43px;
		padding-left: 22px;
		max-width: 740px;
		width: 100%;
		margin-left: auto;
}

@media screen and (max-width: 768px) {
		.contact .wrap .page_content > p {
				padding-left: 1em;
				font-size: 1.8rem;
				margin-top: 24px;
				color: #707070;
				text-align: center;
		}
}
