@charset "utf-8";
a:link, a:visited {
	/* color: #000; */
}
#maincontents a:hover, #maincontents a:active {
	text-decoration: underline;
}
.switch {
	visibility: hidden;
}
.en {
	font-family: 'Teko', sans-serif;
}
@media (min-width: 769px) {
/*==================================
maincontents
==================================*/
#maincontents {
	width: 100%;
}
#contents {
	margin: 0 0 40px;
	padding: 100px 0 0;
}
#maincontents .inner {
	width: 960px;
	margin: 0 auto;
}
/*==================================
header
==================================*/
/*header {
	clear: both;
	overflow: hidden;
	box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.9) none repeat scroll 0 0;
	z-index: 10000;
	margin-bottom: 3px;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
}
header .inner {
	width: 960px;
	margin: 20px auto !important;
	clear: both;
	overflow: hidden;
	position: relative;
}
header .inner h1 {
	float: left;
	width: 250px;
	height: 60px;
	background-image: url(../images/sitelogo.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
	text-indent: -9999px;
}
header .inner h1 a {
	display: block;
	height: 60px;
}
header .inner .recruit_text {
	position: absolute;
	left: 270px;
	top: 13px;
	font-size: 40px;
	font-size: 4.0rem;
	font-weight: 500;
}
header .entry_btn {
	float: right;
	margin: 5px 0 0;
}
header .entry_btn.middle {
	margin: 5px 0 0 5px;
}
header .entry_btn a {
	background-color: #0068b7;
	border-radius: 50px;
	padding: 10px 40px;
	color: #fff;
	text-align: center;
	display: block;
	transition: all 0.5s ease 0s;
}
header .entry_btn.middle a {
	background-color: #ff0000;
}
header .entry_btn a:hover {
	text-decoration: none;
	background-color: #ff9422;
}*/

.container { box-sizing: border-box; width: 100%; padding: 0 20px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .container { max-width: 1140px; margin: 0 auto; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .container { padding: 0 10px; width: 100%; } }

/* ========== end △ */
.container02 { box-sizing: border-box; width: 100%; padding: 0 20px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .container02 { max-width: 1240px; margin: 0 auto; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .container02 { width: 100%; } }
/*==================================
nav
==================================*/
nav#gmenu_sp {
	display: none;
}
#gmenu_pc ul {
	text-align: center;
	font-size: 0;
	padding: 0 0 10px;
}
#gmenu_pc ul li {
	display: inline-block;
	vertical-align: top;
	margin-right: 25px;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
}
#gmenu_pc ul li:last-child {
	margin-right: 0;
}
#gmenu_pc ul li a {
	display: block;
	padding-bottom: 5px;
	position: relative;
}
#gmenu_pc ul li a:before {
	content: '';
	width: 0;
	left: 50%;
	bottom: 0;
	transition: all 0.3s ease;
	border-bottom: 3px solid #005eae;
	position: absolute;
	display: block;
	color: #005eae;
}
#gmenu_pc ul li a:hover {
	text-decoration: none;
	color: #005eae;
}
#gmenu_pc ul li a:hover:before {
	width: 50%;
	border-bottom: 3px solid #005eae;
}
#gmenu_pc ul li a:after {
	content: '';
	width: 0;
	right: 50%;
	bottom: 0;
	transition: all 0.3s ease;
	border-bottom: 3px solid #005eae;
	position: absolute;
	display: block;
}
#gmenu_pc ul li a:hover:after {
	width: 50%;
	border-bottom: 3px solid #005eae;
}

/*==================================
arrow_r
==================================*/
.arrow_r {
	position: relative;
	display: inline-block;
	padding-left: 20px;
}
.arrow_r::before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	margin: -10px 0 0 10px;
}
/*==================================
パンくず
==================================*/
.crumb_list {
	font-size: 0;
}
.crumb_item {
	display: inline-block;
	padding: 0 20px 0 10px;
	font-size: 16px;
	color: #2b426e;
	background-image: url(../images/crumb_arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.crumb_item:first-child {
	padding-left: 0;
}
.crumb_item:last-child {
	color: #2b426e;
	font-weight: bold;
	background-image: none;
}
.crumb_item a[href] {
	color: #2b426e;
}
/*==================================
section
==================================*/
.section {
	position: relative;
	background-color: #f4f5f8;
	margin: 50px 0 0;
	padding: 60px 0;
}
.section .section_inner {
	background-color: #fff;
	padding: 60px;
	border-radius: 10px;
}
/*==================================
page_ttl
==================================*/
h2.page_ttl {
	position: absolute;
	width: 960px;
	top: -30px;
	margin: 0 auto;
	padding: 20px 30px 15px;
	color: #fff;
	border-radius: 10px;
	font-size: 26px;
	font-size: 2.6rem;
	font-weight: bold;
	background-image: url(../images/bg_blue.gif);
	background-repeat: repeat-x;
	background-position: center center;
}
h2.page_ttl span {
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: 500;
	margin-left: 10px;
}
}
@media (max-width: 768px) {
body {
	-webkit-text-size-adjust: 100%;
	position : relative;
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
/*==================================
maincontents
==================================*/
#maincontents {
	width: 100%;
}
#contents {
	margin: 0 0 40px;
}
#maincontents .inner {
	width: 94%;
	margin: 0 auto;
}
/*==================================
header
==================================*/
header {
	clear: both;
	overflow: hidden;
	box-shadow: 0 6px 6px -6px rgba(0, 0, 0, 0.15);
	background: rgba(255, 255, 255, 0.9) none repeat scroll 0 0;
	margin-bottom: 3px;
	width: 100%;
	z-index: 1;
}
header .inner {
	width: 96% !important;
	margin: 15px auto !important;
	clear: both;
	overflow: hidden;
	position: relative;
}
header .inner h1 {
	float: left;
	width: 146px;
	height: 35px;
	background-image: url(../images/sitelogo.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
	text-indent: -9999px;
}
header .inner h1 a {
	display: block;
	height: 35px;
}
header .inner .recruit_text {
	position: absolute;
	left: 150px;
	top: 0;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: 500;
}
header .entry_btn {
	display: none;
}
/*==================================
nav
==================================*/
.open {
	position: fixed;
	width: 100%;
	height: 100%;
}
nav#gmenu_pc {
	display: none;
}
#gmenu_sp {
	position: fixed;
	top: 0;
	right: -220px;
	width: 220px;
	height: 100%;
	background: #333;
	overflow: scroll;
	z-index: 4;
}
#gmenu_sp ul li {
	border-bottom: 1px solid #fff;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.5;
}
#gmenu_sp ul li a {
	padding: 20px 5px 20px 10px;
	display: block;
	color: #fff;
}
#gmenu_sp li.entry_btn {
	background: #ff9422;
	display: block;
}
.sp_menu {
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #005eae;
	padding: 20px 15px;
}
.sp_menu_inner {
	position: relative;
	width: 100%;
	height: 25px;
}
.sp_menu_inner .active span {
	z-index: 4;
	background-color: #fff;
}
.menu-trigger, .menu-trigger span {
	display: inline-block;
	box-sizing: border-box;
	transition: all 0.4s ease 0s;
}
.menu-trigger {
	position: relative;
	width: 35px;
	height: 23px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 2px;
	background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}
.menu-trigger.active span:nth-of-type(3) {
	opacity: 0;
}

/*==================================
arrow_r
==================================*/
.arrow_r {
	position: relative;
	display: inline-block;
	padding-left: 20px;
}
.arrow_r::before {
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 0;
	margin: -10px 0 0 10px;
}
/*==================================
パンくず
==================================*/
.crumb_list {
	font-size: 0;
	padding: 10px 0 0;
}
.crumb_item {
	display: inline-block;
	padding: 0 20px 0 10px;
	font-size: 12px;
	font-size: 1.2rem;
	color: #999;
	background-image: url(../images/crumb_arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.crumb_item:first-child {
	padding-left: 0;
}
.crumb_item:last-child {
	color: #005eae;
	font-weight: bold;
	background-image: none;
}
.crumb_item a[href] {
	color: #999;
}
/*==================================
section
==================================*/
.section {
	position: relative;
	background-color: #f4f5f8;
	margin: 40px 0 0;
	padding: 50px 0 4%;
}
.section .section_inner {
	background-color: #fff;
	padding: 5%;
	border-radius: 10px;
}
/*==================================
page_ttl
==================================*/
h2.page_ttl {
	position: absolute;
	width: 94%;
	top: -30px;
	margin: 0 auto;
	padding: 20px 20px 15px;
	color: #fff;
	border-radius: 10px;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	background-image: url(../images/bg_blue.gif);
	background-repeat: repeat-x;
	background-position: center center;
}
h2.page_ttl span {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: 500;
	margin-left: 10px;
}
}
@media (max-width: 360px) {
header .inner .recruit_text {
	display: none;
}
}

.page-visual {
	padding: 85px 20px 85px;
	text-align: center;
}
.page-visual .page-ttl {
	text-align: center;
}
.page-visual .page-ttl .ttljp {
	color: #2b426e;
	font-size: 50px;
	font-weight: bold;
	display: block;
	line-height: 1.3;
	letter-spacing: 0.05em;
}
.page-visual .page-ttl .ttlen {
	line-height: 1;
	display: block;
	margin: 10px 0 0;
}
.page-visual .page-ttl .ttlen img {
	width: auto;
	max-height: 17px;
}
.re-container {
	width: 100%;
	max-width: 1240px;
	padding: 0 20px;
	margin: 0 auto;
}
.c-rettl01 {
	text-align: center;
	margin-bottom: 45px;
}
.c-rettl01 .ttlen{
	margin-bottom: -18px;
	line-height: 1;
	display: block;
}
.c-rettl01 .ttlen img {
	width: auto;
	max-height: 65px;
}
.c-rettl01 .ttljp {
	color: #384355;
	font-size: 33px;
	font-weight: bold;
	display: block;
	line-height: 1.3;
	letter-spacing: 0em;
}
.c-rettl01 .ttljp {
	position: relative;
	display: block;
	padding-bottom: 28px;
}
.c-rettl01 .ttljp:after {
	position: absolute; content: "";
	left: 0; right: 0; bottom: 0;
	background: #ffc174;
	margin: 0 auto;
	height: 3px; width: 185px;
}

@media only screen and (max-width: 767px) {
  	.page-visual {
		padding: 30px 10px 30px;
	}
	.page-visual .page-ttl .ttljp {
		font-size: 24px;
	}
	.page-visual .page-ttl .ttlen {
		margin: 3px 0 0;
	}
	.page-visual .page-ttl .ttlen img {
		max-height: 13px;
	}
	.re-container {
		padding: 0 15px;
	}
	.c-rettl01 {
		margin-bottom: 25px;
	}
	.c-rettl01 .ttlen {
		margin-bottom: -8px;
	}
	.c-rettl01 .ttlen img {
		max-height: 40px;
	}
	.c-rettl01 .ttljp {
		font-size: 25px;
	}
	.c-rettl01 .ttljp {
		padding-bottom: 10px;
	}
	.c-rettl01 .ttljp:after {
		width: 85px;
	}

}
@media only screen and (max-width: 420px) {
	.c-rettl01 .ttlen img {
		max-height: 32px;
	}
	.c-rettl01 .ttljp {
		font-size: 22px;
	}
	.c-rettl01 .ttljp:after {
		width: 80px;
	}
}
@media only screen and (max-width: 375px) {
	.c-rettl01 .ttlen img {
		max-height: 28px;
	}
	.c-rettl01 .ttljp {
		font-size: 21px;
	}
}



/* ==================================================
	footer
================================================== */
.footer { position: relative; }

.footer .fblock01 { background: #214D7E; padding: 82px 0 125px; }

.footer .fblock01 .fmenu li { margin-bottom: 15px; }

.footer .fblock01 .fmenu li:last-child { margin-bottom: 0; }

.footer .fblock01 .fmenu li a { display: inline-block; color: #fff; font-size: 16px; line-height: 1.5; letter-spacing: 0.01em; font-weight: 400; text-decoration: none !important; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock01 .fmenu li a:hover { opacity: 0.6; text-decoration: underline !important; } }

/* ========== end △ */
.footer .fblock01 .fmenu .fmenu__ttl { color: #fff; font-size: 16px; line-height: 1.5; letter-spacing: 0.01em; font-weight: bold; border-bottom: 1px solid #fff; padding: 0 0 5px 0; margin-bottom: 17px; }

.footer .fblock01 .fmenu .fmenu__box { margin-bottom: 15px; }

.footer .fblock01 .fmenu .fmenu__box ul { margin: 9px 0 0 32px; list-style: disc; color: #fff; }

.footer .fblock01 .fmenu .fmenu__box ul li { list-style-type: disc; }

.footer .fblock01 .fmenu .fmenu__box ul li::marker { font-size: 18px; line-height: 1.33333; letter-spacing: 0.01em; font-weight: 400; }

.footer .fblock01 .fmenu .fmenu__box ul li a { color: #fff; font-size: 16px; line-height: 1.5; letter-spacing: 0.01em; font-weight: 400; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock01 .fmenu .fmenu__box ul li a:hover { opacity: 0.6; text-decoration: underline !important; } }

/* ========== end △ */
.footer .fblock01 .fmenu .box__ttl { color: #fff; font-size: 16px; line-height: 1.5; letter-spacing: 0.01em; font-weight: bold; }

.footer .fblock01 .fmenu .fmenu01 { width: 7%; }

.footer .fblock01 .fmenu .fmenu01 a { padding: 0 10px 5px 10px; border-bottom: 1px solid #fff; font-weight: bold; }

.footer .fblock01 .fmenu .fmenu02 { width: 25%; padding-left: 20px; }

.footer .fblock01 .fmenu .fmenu03 { width: 27%; padding-left: 20px; }

.footer .fblock01 .fmenu .fmenu04 { width: 30%; padding-left: 20px; }

.footer .fblock01 .fmenu .fmenu05 { width: 10%; padding-left: 20px; }

.footer .fblock01 .fbox01 { margin: 28px 0 0; }

.footer .fblock01 .fbox01 .fbox01_link a { padding: 5px 10px 5px; border: 1px solid #fff; color: #fff; display: block; text-align: left; font-size: 16px; line-height: 1.5; letter-spacing: 0.01em; font-weight: 400; text-decoration: none !important; margin-bottom: 10px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock01 .fbox01 .fbox01_link a:hover { background: #fff; color: #214D7E; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock01 .container { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }
  .footer .fblock01 .fmenu { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 0 0 0 15px; width: calc(100% - 200px); }
  .footer .fblock01 .fbox01 { width: 188px; } }

/* ========== end △ */
.footer .fblock02 { background: #fff; padding: 20px 0 20px; }

.footer .fblock02 .fblock02_box { width: 45%; }

.footer .fblock02 .fblock02_box a { text-align: center; font-size: 16px; line-height: 1.5; letter-spacing: 0.06em; font-weight: 400; padding: 7px 30px; display: inline-block; text-decoration: none !important; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock02 .fblock02_box a:hover { opacity: 0.6; } }

/* ========== end △ */
.footer .fblock02 .fblock02_box:nth-of-type(1) { padding-left: 20px; }

.footer .fblock02 .fblock02_box:nth-of-type(2) { width: 54%; }

.footer .fblock02 .fblock02_box:nth-of-type(2) a { background-color: #caa97e; border-radius: 50px; color: #fff; width: 100%; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock02 .container { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; max-width: 820px; } }

/* ========== end △ */
.footer .fblock03 { background: #214D7E; padding: 20px 20px 20px; position: relative; }

.footer .fblock03 .fblock03__cpr { font-size: 15px; line-height: 1.6; letter-spacing: 0.06em; font-weight: 400; color: #fff; right: 5px; position: absolute; }

.footer .fblock03 .fblock03_pp a { display: inline-block; text-decoration: none !important; font-size: 16px; line-height: 1.5; letter-spacing: 0.06em; font-weight: 400; color: #fff; margin: 0 28px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock03 .fblock03_pp a:hover { opacity: 0.6; text-decoration: underline !important; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .footer .fblock03 .container { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; max-width: 1230px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .footer .fblock01 { padding: 45px 25px 15px; }
  .footer .fblock01 .fmenu li { margin-bottom: 18px; }
  .footer .fblock01 .fmenu li:last-child { margin-bottom: 0; }
  .footer .fblock01 .fmenu li a { font-size: 14px; line-height: 1.57143; }
  .footer .fblock01 .fmenu .fmenu__ttl { font-size: 14px; line-height: 1.57143; margin-bottom: 10px; }
  .footer .fblock01 .fmenu .fmenu__box { margin-bottom: 18px; }
  .footer .fblock01 .fmenu .fmenu__box ul { margin: 5px 0 0 25px; }
  .footer .fblock01 .fmenu .fmenu__box ul li { margin-bottom: 0; }
  .footer .fblock01 .fmenu .fmenu__box ul li::marker { font-size: 16px; line-height: 1.4375; }
  .footer .fblock01 .fmenu .fmenu__box ul li a { font-size: 14px; line-height: 1.57143; }
  .footer .fblock01 .fmenu .box__ttl { font-size: 14px; line-height: 1.57143; }
  .footer .fblock01 .fmenu .fmenu01 { width: 100%; padding-left: 0px; margin-bottom: 18px; }
  .footer .fblock01 .fmenu .fmenu01 a { display: block; }
  .footer .fblock01 .fmenu .fmenu02 { width: 100%; padding-left: 0px; margin-bottom: 18px; }
  .footer .fblock01 .fmenu .fmenu03 { width: 100%; padding-left: 0px; margin-bottom: 18px; }
  .footer .fblock01 .fmenu .fmenu04 { width: 100%; padding-left: 0px; margin-bottom: 18px; }
  .footer .fblock01 .fmenu .fmenu05 { width: 100%; padding-left: 0px; margin-bottom: 18px; }
  .footer .fblock01 .fbox01 { margin: 28px 0 0; }
  .footer .fblock01 .fbox01 .fbox01_link { max-width: 250px; margin: 0 auto; }
  .footer .fblock01 .fbox01 .fbox01_link a { padding: 5px 10px 5px; font-size: 14px; line-height: 1.57143; }
  .footer .fblock02 { padding: 20px 0 20px; text-decoration: center; }
  .footer .fblock02 .fblock02_box { width: 100%; }
  .footer .fblock02 .fblock02_box a { font-size: 14px; line-height: 1.57143; }
  .footer .fblock02 .fblock02_box:nth-of-type(1) { padding-left: 0px; }
  .footer .fblock02 .fblock02_box:nth-of-type(2) { width: 100%; }
  .footer .fblock03 { padding: 10px 0 20px; }
  .footer .fblock03 .fblock03__cpr { font-size: 15px; line-height: 1.6; right: 0; left: 0; text-align: center; position: relative; }
  .footer .fblock03 .fblock03_pp { text-align: center; }
  .footer .fblock03 .fblock03_pp a { font-size: 14px; line-height: 1.71429; margin: 0 10px 10px; } }

/* ========== end △ */
/*====================================================================================
■02.CLEAR FLOAT
====================================================================================*/
.clearfix:after { clear: both; display: block; content: " "; height: 0px; visibility: hidden; }

.clearfix { display: inline-block; }

/* Hide these rules from IE-mac \*/
* html .clearfix { height: 1%; }

.clearfix { display: block; }

/*====================================================================================
■03.MARGIN DEFAULT
====================================================================================*/
/* margin */
.mat { margin: auto !important; }

.m00 { margin: 0px !important; }

.m05 { margin: 5px !important; }

.m10 { margin: 10px !important; }

.m15 { margin: 15px !important; }

.m20 { margin: 20px !important; }

.m25 { margin: 25px !important; }

.m30 { margin: 30px !important; }

.m35 { margin: 35px !important; }

.m40 { margin: 40px !important; }

.m45 { margin: 45px !important; }

.m50 { margin: 50px !important; }

.m55 { margin: 55px !important; }

.m60 { margin: 60px !important; }

.m65 { margin: 65px !important; }

.m70 { margin: 70px !important; }

.m75 { margin: 75px !important; }

.m80 { margin: 80px !important; }

.m85 { margin: 85px !important; }

.m90 { margin: 90px !important; }

.mt00 { margin-top: 0px !important; }

.mt05 { margin-top: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mt55 { margin-top: 55px !important; }

.mt60 { margin-top: 60px !important; }

.mt65 { margin-top: 65px !important; }

.mt70 { margin-top: 70px !important; }

.mt75 { margin-top: 75px !important; }

.mt80 { margin-top: 80px !important; }

.mt85 { margin-top: 85px !important; }

.mt90 { margin-top: 90px !important; }

.mr00 { margin-right: 0px !important; }

.mr05 { margin-right: 5px !important; }

.mr10 { margin-right: 10px !important; }

.mr15 { margin-right: 15px !important; }

.mr20 { margin-right: 20px !important; }

.mr25 { margin-right: 25px !important; }

.mr30 { margin-right: 30px !important; }

.mr35 { margin-right: 35px !important; }

.mr40 { margin-right: 40px !important; }

.mr45 { margin-right: 45px !important; }

.mr50 { margin-right: 50px !important; }

.mr55 { margin-right: 55px !important; }

.mr60 { margin-right: 60px !important; }

.mr65 { margin-right: 65px !important; }

.mr70 { margin-right: 70px !important; }

.mr75 { margin-right: 75px !important; }

.mr80 { margin-right: 80px !important; }

.mr85 { margin-right: 85px !important; }

.mr90 { margin-right: 90px !important; }

.mb00 { margin-bottom: 0px !important; }

.mb05 { margin-bottom: 5px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb15 { margin-bottom: 15px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb25 { margin-bottom: 25px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb35 { margin-bottom: 35px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb45 { margin-bottom: 45px !important; }

.mb50 { margin-bottom: 50px !important; }

.mb55 { margin-bottom: 55px !important; }

.mb60 { margin-bottom: 60px !important; }

.mb65 { margin-bottom: 65px !important; }

.mb70 { margin-bottom: 70px !important; }

.mb75 { margin-bottom: 75px !important; }

.mb80 { margin-bottom: 80px !important; }

.mb85 { margin-bottom: 85px !important; }

.mb90 { margin-bottom: 90px !important; }

.ml00 { margin-left: 0px !important; }

.ml05 { margin-left: 5px !important; }

.ml10 { margin-left: 10px !important; }

.ml15 { margin-left: 15px !important; }

.ml20 { margin-left: 20px !important; }

.ml25 { margin-left: 25px !important; }

.ml30 { margin-left: 30px !important; }

.ml35 { margin-left: 35px !important; }

.ml40 { margin-left: 40px !important; }

.ml45 { margin-left: 45px !important; }

.ml50 { margin-left: 50px !important; }

.ml55 { margin-left: 55px !important; }

.ml60 { margin-left: 60px !important; }

.ml65 { margin-left: 65px !important; }

.ml70 { margin-left: 70px !important; }

.ml75 { margin-left: 75px !important; }

.ml80 { margin-left: 80px !important; }

.ml85 { margin-left: 85px !important; }

.ml90 { margin-left: 90px !important; }

/* margin */
/* padding */
.p00 { padding: 0px !important; }

.p05 { padding: 5px !important; }

.p10 { padding: 10px !important; }

.p15 { padding: 15px !important; }

.p20 { padding: 20px !important; }

.p25 { padding: 25px !important; }

.p30 { padding: 30px !important; }

.p35 { padding: 35px !important; }

.p40 { padding: 40px !important; }

.p45 { padding: 45px !important; }

.p50 { padding: 50px !important; }

.p55 { padding: 55px !important; }

.p60 { padding: 60px !important; }

.p65 { padding: 65px !important; }

.p70 { padding: 70px !important; }

.p75 { padding: 75px !important; }

.p80 { padding: 80px !important; }

.p85 { padding: 85px !important; }

.p90 { padding: 90px !important; }

.pt00 { padding-top: 0px !important; }

.pt05 { padding-top: 5px !important; }

.pt10 { padding-top: 10px !important; }

.pt15 { padding-top: 15px !important; }

.pt20 { padding-top: 20px !important; }

.pt25 { padding-top: 25px !important; }

.pt30 { padding-top: 30px !important; }

.pt35 { padding-top: 35px !important; }

.pt40 { padding-top: 40px !important; }

.pt45 { padding-top: 45px !important; }

.pt50 { padding-top: 50px !important; }

.pt55 { padding-top: 55px !important; }

.pt60 { padding-top: 60px !important; }

.pt65 { padding-top: 65px !important; }

.pt70 { padding-top: 70px !important; }

.pt75 { padding-top: 75px !important; }

.pt80 { padding-top: 80px !important; }

.pt85 { padding-top: 85px !important; }

.pt90 { padding-top: 90px !important; }

.pr00 { padding-right: 0px !important; }

.pr05 { padding-right: 5px !important; }

.pr10 { padding-right: 10px !important; }

.pr15 { padding-right: 15px !important; }

.pr20 { padding-right: 20px !important; }

.pr25 { padding-right: 25px !important; }

.pr30 { padding-right: 30px !important; }

.pr35 { padding-right: 35px !important; }

.pr40 { padding-right: 40px !important; }

.pr45 { padding-right: 45px !important; }

.pr50 { padding-right: 50px !important; }

.pr55 { padding-right: 55px !important; }

.pr60 { padding-right: 60px !important; }

.pr65 { padding-right: 65px !important; }

.pr70 { padding-right: 70px !important; }

.pr75 { padding-right: 75px !important; }

.pr80 { padding-right: 80px !important; }

.pr85 { padding-right: 85px !important; }

.pr90 { padding-right: 90px !important; }

.pb00 { padding-bottom: 0px !important; }

.pb05 { padding-bottom: 5px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb15 { padding-bottom: 15px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb25 { padding-bottom: 25px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb35 { padding-bottom: 35px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb45 { padding-bottom: 45px !important; }

.pb50 { padding-bottom: 50px !important; }

.pb55 { padding-bottom: 55px !important; }

.pb60 { padding-bottom: 60px !important; }

.pb65 { padding-bottom: 65px !important; }

.pb70 { padding-bottom: 70px !important; }

.pb75 { padding-bottom: 75px !important; }

.pb80 { padding-bottom: 80px !important; }

.pb85 { padding-bottom: 85px !important; }

.pb90 { padding-bottom: 90px !important; }

.pl00 { padding-left: 0px !important; }

.pl05 { padding-left: 5px !important; }

.pl10 { padding-left: 10px !important; }

.pl15 { padding-left: 15px !important; }

.pl20 { padding-left: 20px !important; }

.pl25 { padding-left: 25px !important; }

.pl30 { padding-left: 30px !important; }

.pl35 { padding-left: 35px !important; }

.pl40 { padding-left: 40px !important; }

.pl45 { padding-left: 45px !important; }

.pl50 { padding-left: 50px !important; }

.pl55 { padding-left: 55px !important; }

.pl60 { padding-left: 60px !important; }

.pl65 { padding-left: 65px !important; }

.pl70 { padding-left: 70px !important; }

.pl75 { padding-left: 75px !important; }

.pl80 { padding-left: 80px !important; }

.pl85 { padding-left: 85px !important; }

.pl90 { padding-left: 90px !important; }

/* padding */
/* font */
.f10 { font-size: 10px !important; }

.f11 { font-size: 11px !important; }

.f12 { font-size: 12px !important; }

.f13 { font-size: 13px !important; }

.f14 { font-size: 14px !important; }

.f15 { font-size: 15px !important; }

.f16 { font-size: 16px !important; }

.f17 { font-size: 17px !important; }

.f18 { font-size: 18px !important; }

.f19 { font-size: 19px !important; }

.f20 { font-size: 20px !important; }

.f21 { font-size: 21px !important; }

.f22 { font-size: 22px !important; }

.f23 { font-size: 23px !important; }

.f24 { font-size: 24px !important; }

.mg-top01 { margin-top: 12rem !important; }

.mg-top02 { margin-top: 11rem !important; }

.mg-top03 { margin-top: 10rem !important; }

.mg-top04 { margin-top: 9rem !important; }

.mg-top05 { margin-top: 8rem !important; }

.mg-top06 { margin-top: 7rem !important; }

.mg-top07 { margin-top: 6rem !important; }

.mg-top08 { margin-top: 5rem !important; }

.mg-top09 { margin-top: 4rem !important; }

.mg-top10 { margin-top: 3rem !important; }

.mg-top11 { margin-top: 2rem !important; }

.mg-top12 { margin-top: 2rem !important; }

@media only screen and (max-width: 767px) { .mg-top01 { margin-top: 5rem !important; }
  .mg-top02 { margin-top: 4.5rem !important; }
  .mg-top03 { margin-top: 5rem !important; }
  .mg-top04 { margin-top: 4.5rem !important; }
  .mg-top05 { margin-top: 4rem !important; }
  .mg-top06 { margin-top: 3.5rem !important; }
  .mg-top07 { margin-top: 3rem !important; }
  .mg-top08 { margin-top: 2.5rem !important; }
  .mg-top09 { margin-top: 2rem !important; }
  .mg-top10 { margin-top: 1.5rem !important; }
  .mg-top11 { margin-top: 1.5rem !important; }
  .mg-top12 { margin-top: 1rem !important; } }

/*■05.FLEX*/
.flex { display: flex; display: -webkit-flex; /* Safari */ display: -moz-flex; /* Firefox */ display: -ms-flex; /* IE */ }

/*justify-content*/
.flex_jus_start { justify-content: flex-start; -webkit-justify-content: flex-start; -moz-justify-content: flex-start; -ms-justify-content: flex-start; }

.flex_jus_end { justify-content: flex-end; -webkit-justify-content: flex-end; -moz-justify-content: flex-end; -ms-justify-content: flex-end; }

.flex_jus_center { justify-content: center; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; }

.flex_jus_between { justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; -ms-justify-content: space-between; }

.flex_jus_around { justify-content: space-around; -webkit-justify-content: space-around; -moz-justify-content: space-around; -ms-justify-content: space-around; }

.flex_jus_ini { justify-content: initial; -webkit-justify-content: initial; -moz-justify-content: initial; -ms-justify-content: initial; }

/*align-items*/
.flex_align_item_start { align-items: flex-start; -webkit-align-items: flex-start; -moz-align-items: flex-start; -ms-align-items: flex-start; }

.flex_align_item_end { align-items: flex-end; -webkit-align-items: flex-end; -moz-align-items: flex-end; -ms-align-items: flex-end; }

.flex_align_item_stretch { align-items: stretch; -webkit-align-items: stretch; -moz-align-items: stretch; -ms-align-items: stretch; }

.flex_align_item_baseline { align-items: baseline; -webkit-align-items: baseline; -moz-align-items: baseline; -ms-align-items: baseline; }

.flex_align_item_center { align-items: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; }

.flex_align_item_ini { align-items: initial; -webkit-align-items: initial; -moz-align-items: initial; -ms-align-items: initial; }

.flex_container { -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

/*====================================================================================
■06.OTHER
====================================================================================*/
.text-normal { font-weight: normal; }

.text-bold { font-weight: bold; }

.text-left { text-align: left; }

.text-right { text-align: right; }

.text-center { text-align: center; }

.text-underline { text-decoration: underline; }

.text-none-underline { text-decoration: none !important; }

.font14 { font-size: 14px; }

.font11 { font-size: 11px; }

.add_font { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", "ヒラギノ角ゴシック ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.add_font2 { font-family: 'Oswald', sans-serif; }

.pull-left { float: left; }

.pull-right { float: right; }

.media, .media-body { overflow: hidden; }

.media > .pull-left { margin-right: 20px; }

.media > .pull-right { margin-left: 20px; }

.media-text:after { clear: both; display: block; content: ""; height: 0px; visibility: hidden; }

/*====================================================================================
■07.PAGE UP
====================================================================================*/
footer .page_up { position: fixed; bottom: 120px; z-index: 999; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { footer .page_up { width: 15%; bottom: 3% !important; }
  footer .page_up a { display: block; } }

/* ========== end △ */
/*==========================================
■8.Title cm
====================================================================================*/
h2, h3, h4, h5, h6 { font-weight: bold; }

/*# sourceMappingURL=maps/base.css.map */


/* Recruit footer policy link */
.site-footer__link {
  display: block;
  padding: 0 20px 18px;
  color: inherit;
  font-size: 14px;
  line-height: 1.7;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.site-footer__link:hover { text-decoration: none; }
