@charset "UTF-8";
/*==============================================================================
>>> TABLE OF CONTENTS:
サイドバー読み込みの場合
@import url(layouts/content-sidebar.css); 右カラム
@import url(layouts/sidebar-content.css); 左カラム
.............................................................

# base setting/初期設定
  ┣ スマホのとき、PCのとき表示非表示
  ┣ ブレイクポイント
  ┣ fontサイズ
  ┣ コンテンツ幅
  ┣ footerを一番下に固定
  ┣ ヘッダー
  ┗ move コンテンツに動きをつける

.............................................................





==============================================================================*/
/*--------------------------------------------------------------
# base setting｜スマホのとき、PCのとき表示非表示
-------------------------------------------------------------- */
/* スマホのとき、PCのとき表示非表示 */
.pc-only {
		display: block !important;
}

.sp-only {
		display: none !important;
}

@media (max-width: 767px) {
		.pc-only {
				display: none !important;
		}
		.sp-only {
				display: block !important;
		}
}

/*--------------------------------------------------------------
# base setting｜ブレイクポイント
-------------------------------------------------------------- */
#primary {
		overflow: hidden;
}

/*--------------------------------------------------------------
# base setting｜fontサイズ
-------------------------------------------------------------- */
body {
		font-size: 16px;
		font-size: 1.6rem;
		/* 16px*/
		line-height: 2;
		font-family: "Noto Sans JP";
		font-weight: 300;
		margin-bottom: 0 !important;
}

h1 {
		font-size: 50px;
		/* IE8以下とAndroid4.3以下用フォールバック */
		font-size: calc(3rem + ((1vw - 0.64rem) * 3.57782));
		/* 50px〜30pxで可変*/
		line-height: 1.3;
		margin-bottom: 1rem;
}

h2 {
		font-size: 35px;
		/* IE8以下とAndroid4.3以下用フォールバック */
		font-size: calc(2rem + ((1vw - 0.64rem) * 2.68336));
		/* 35px〜20pxで可変*/
		line-height: 1.3;
}

h3 {
		font-size: 20px;
		/* IE8以下とAndroid4.3以下用フォールバック */
		font-size: calc(1.8rem + ((1vw - 0.64rem) * 0.35778));
		/* 20px〜18xで可変*/
		line-height: 1.3;
}

@media (min-width: 1200px) {
		h1 {
				font-size: 50px;
				font-size: 5rem;
		}
		h2 {
				font-size: 35px;
				font-size: 3.5rem;
		}
		h3 {
				font-size: 20px;
				font-size: 2rem;
		}
}

@media screen and (max-width: 640px) {
		body {
				line-height: 2;
		}
		h1 {
				font-size: 30px;
				font-size: 3rem;
		}
		h2 {
				font-size: 20px;
				font-size: 2rem;
		}
		h3 {
				font-size: 18px;
				font-size: 1.8rem;
		}
}

a {
		color: #333;
		text-decoration: none;
		transition: all .3s ease-in-out;
}

a:hover {
		color: #333;
}

a:visited {
		color: #333;
}

/*--------------------------------------------------------------
# base setting｜コンテンツ幅
-------------------------------------------------------------- */
#content {
		width: 100%;
}

/*--------------------------------------------------------------
# base setting｜footerを一番下に固定
-------------------------------------------------------------- */
#page {
		display: flex;
		flex-direction: column;
		min-height: 100vh;
}

#colophon {
		margin-top: auto;
		padding-bottom: 0;
}

/*--------------------------------------------------------------
# base setting｜ヘッダー
-------------------------------------------------------------- */
/* ヘッダー */
.inner {
		width: 1200px;
		margin: 0 auto;
}

.inner:after {
		content: "";
		clear: both;
		display: block;
}

@media (max-width: 1199px) {
		.inner {
				width: 100%;
				padding: 0 15px;
		}
}

#masthead {
		position: fixed;
		background-color: rgba(255, 255, 255, 0.8);
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
		width: 100%;
		margin: auto;
		padding: 10px 0;
		line-height: 1;
		z-index: 999;
		text-decoration: none;
		transition: all .3s ease;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
		border-top: solid #0068b7;
}

#masthead:hover {
		background-color: #fff !important;
}

#masthead:hover #mobile-head a.custom-logo-link .custom-logo {
		opacity: 1 !important;
}

#masthead:hover #mobile-head .site-description {
		opacity: 1 !important;
}

#masthead:hover #global-nav {
		background-color: #005a9e !important;
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

#masthead:hover #global-nav ul li a {
		color: #0068b7 !important;
}

@media (max-width: 767px) {
		#masthead:hover #global-nav ul li a {
				color: #fff !important;
		}
}

@media (max-width: 767px) {
		#masthead {
				width: 100%;
				padding: 0;
		}
}

#masthead .inner {
		position: relative;
}

@media (max-width: 767px) {
		#masthead .inner {
				width: 100%;
				padding: 0;
		}
}

@media (max-width: 767px) {
		#masthead .inner #mobile-head {
				width: 100%;
				height: 56px;
				z-index: 999;
				position: relative;
		}
}

#masthead .inner #mobile-head a.custom-logo-link {
		vertical-align: middle;
}

@media (max-width: 767px) {
		#masthead .inner #mobile-head a.custom-logo-link {
				position: relative;
				top: 8px;
				left: 8px;
		}
}

#masthead .inner #mobile-head a.custom-logo-link .custom-logo {
		float: left;
		width: 80px;
		margin: 0;
		border: solid 1px rgba(255, 255, 255, 0);
		transition: all .3s ease;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
}

#masthead .inner #mobile-head a.custom-logo-link .custom-logo:hover {
		border: solid 1px #0068b7;
}

@media (max-width: 767px) {
		#masthead .inner #mobile-head a.custom-logo-link .custom-logo {
				width: 60px;
		}
}

#masthead .inner #mobile-head .site-title {
		display: none;
}

#masthead .inner #mobile-head .site-description {
		display: inline-block;
		font-size: 20px;
		font-size: 2rem;
		color: #0068b7;
		vertical-align: middle;
		margin-left: 10px;
}

@media (max-width: 991px) {
		#masthead .inner #mobile-head .site-description {
				font-size: 16px;
				font-size: 1.6rem;
		}
}

@media (max-width: 767px) {
		#masthead .inner #mobile-head .site-description {
				font-size: 14px;
				font-size: 1.4rem;
				position: relative;
				top: 8px;
		}
}

@media (max-width: 480px) {
		#masthead .inner #mobile-head .site-description {
				font-size: 12px;
				font-size: 1.2rem;
		}
}

#masthead .inner #mobile-head #nav-toggle {
		display: none;
		position: absolute;
		right: 12px;
		top: 16px;
		width: 34px;
		height: 36px;
		cursor: pointer;
		z-index: 101;
}

@media (max-width: 767px) {
		#masthead .inner #mobile-head #nav-toggle {
				display: block;
		}
}

#masthead .inner #mobile-head #nav-toggle div {
		position: relative;
}

#masthead .inner #mobile-head #nav-toggle span {
		display: block;
		position: absolute;
		height: 1px;
		width: 100%;
		background: #0068b7;
		left: 0;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
}

#masthead .inner #mobile-head #nav-toggle span:nth-child(1) {
		top: 0;
}

#masthead .inner #mobile-head #nav-toggle span:nth-child(2) {
		top: 11px;
}

#masthead .inner #mobile-head #nav-toggle span:nth-child(3) {
		top: 22px;
}

@media (max-width: 767px) {
		#masthead .inner #global-nav {
				position: absolute;
				top: -500px;
				background: rgba(0, 90, 158, 0.9);
				width: 100%;
				text-align: center;
				padding: 10px 0;
				-webkit-transition: .5s ease-in-out;
				-moz-transition: .5s ease-in-out;
				transition: .5s ease-in-out;
		}
}

#masthead .inner #global-nav ul {
		list-style: none;
		position: absolute;
		right: 0;
		top: 15px;
		margin: 0;
		padding: 0;
}

@media (max-width: 767px) {
		#masthead .inner #global-nav ul {
				list-style: none;
				position: static;
				right: 0;
				bottom: 0;
				font-size: 14px;
		}
}

#masthead .inner #global-nav ul li {
		float: left;
		padding: 0 25px;
}

@media (max-width: 991px) {
		#masthead .inner #global-nav ul li {
				padding: 0 15px;
		}
}

#masthead .inner #global-nav ul li:last-child {
		padding-right: 0;
}

@media (max-width: 1199px) {
		#masthead .inner #global-nav ul li:last-child {
				padding-right: 15px;
		}
}

@media (max-width: 767px) {
		#masthead .inner #global-nav ul li:last-child {
				padding-right: 25px;
		}
}

@media (max-width: 767px) {
		#masthead .inner #global-nav ul li {
				float: none;
				position: static;
		}
}

#masthead .inner #global-nav ul li a {
		padding: 14px 5px;
		font-size: 18px;
		font-size: 1.8rem;
		color: #0068b7;
		text-decoration: none;
		position: relative;
}

#masthead .inner #global-nav ul li a:after {
		position: absolute;
		bottom: 5px;
		left: 0;
		content: '';
		width: 100%;
		height: 10px;
		background: #ffcc33;
		transform: scale(0, 1);
		transform-origin: center top;
		transition: transform .3s;
		z-index: -1;
}

#masthead .inner #global-nav ul li a:hover::after {
		transform: scale(1, 1);
}

#masthead.scrollUp {
		background-color: rgba(255, 255, 255, 0);
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0);
}

#masthead.scrollUp .inner #mobile-head a .custom-logo {
		opacity: .5;
}

#masthead.scrollUp .inner #mobile-head .site-description {
		opacity: .5;
}

#masthead.scrollUp .inner #global-nav ul li a {
		color: rgba(0, 104, 183, 0.3);
		padding: 14px 0px;
}

@media (max-width: 767px) {
		#masthead.scrollUp .inner #global-nav ul li a {
				color: #fff;
		}
}

#masthead.open {
		background-color: rgba(255, 255, 255, 0.8);
}

#masthead.open .inner #mobile-head #nav-toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
}

#masthead.open .inner #mobile-head #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
}

#masthead.open .inner #mobile-head #nav-toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
}

#masthead.open .inner #global-nav {
		-moz-transform: translateY(556px);
		-webkit-transform: translateY(556px);
		transform: translateY(556px);
}

#masthead.open .inner #global-nav ul li a {
		display: inline-block;
		color: #fff;
		padding: 18px 0;
}

/* 固定ページアイキャッチとタイトル
.............................................................*/
.page-template-default header.parallax-window::before {
		background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAF0lEQVQYV2NkQAKMUPZ/BgYGRhgHLAYAEnEBBJU1VYUAAAAASUVORK5CYII=);
		background-color: rgba(0, 0, 0, 0.3);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		content: "";
}

.page-template-default header.entry-header.parallax-window {
		padding: 100px 0 80px;
		position: relative;
}

.page-template-default header h1.entry-title {
		position: relative;
		text-align: center;
		display: block;
		width: 100%;
		color: #fff;
}

.page-template-default .entry-content {
		padding-top: 5%;
}

/* sectionテンプレート
.............................................................*/
section {
		width: 1200px;
		margin: 100px auto;
		padding: 0 15px;
		/* お問い合わせ
.............................................................*/
		/* 固定ページ
    .............................................................*/
}

@media (max-width: 1199px) {
		section {
				width: 990px;
		}
}

@media (max-width: 991px) {
		section {
				width: 100%;
		}
}

@media (max-width: 767px) {
		section {
				margin: 50px auto;
		}
}

@media (max-width: 767px) {
		section .section-inner {
				padding: 0 3rem;
		}
}

@media (max-width: 640px) {
		section .section-inner {
				padding: 0 1rem;
		}
}

@media (max-width: 320px) {
		section .section-inner {
				padding: 0;
		}
}

section .section-inner .section-title {
		text-align: center;
		position: relative;
		margin-bottom: 5%;
}

section .section-inner .section-title:after {
		content: '';
		width: 50px;
		height: 2px;
		margin: 20px auto 0;
		display: block;
		top: 50px;
		background: -webkit-gradient(linear, left top, right top, from(#62a6da), to(#0068b7));
		background: linear-gradient(90deg, #62a6da, #0068b7);
}

section .section-inner .inner-content {
		padding: 0 100px;
}

@media (max-width: 1199px) {
		section .section-inner .inner-content {
				padding: 0;
		}
}

section#contact .form-control,
section#contact .wpcf7 .wpcf7-validation-errors,
section#contact .wpcf7 input[type=color],
section#contact .wpcf7 input[type=date],
section#contact .wpcf7 input[type=datetime-local],
section#contact .wpcf7 input[type=datetime],
section#contact .wpcf7 input[type=email],
section#contact .wpcf7 input[type=file],
section#contact .wpcf7 input[type=month],
section#contact .wpcf7 input[type=number],
section#contact .wpcf7 input[type=range],
section#contact .wpcf7 input[type=search],
section#contact .wpcf7 input[type=submit],
section#contact .wpcf7 input[type=tel],
section#contact .wpcf7 input[type=text],
section#contact .wpcf7 input[type=time],
section#contact .wpcf7 input[type=url],
section#contact .wpcf7 input[type=week],
section#contact .wpcf7 select,
section#contact .wpcf7 textarea {
		font-size: 16px;
		font-size: 1.6rem;
}

section#contact .wpcf7 {
		margin: auto;
}

section#contact .wpcf7 .contact {
		display: flex;
		flex-wrap: nowrap;
		width: 100%;
		justify-content: space-between;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact {
				flex-wrap: wrap;
		}
}

section#contact .wpcf7 .contact .contact-left {
		width: 50%;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact .contact-left {
				width: 100%;
				margin-bottom: 10px;
		}
}

section#contact .wpcf7 .contact .contact-left .formItem {
		margin-bottom: 20px;
}

section#contact .wpcf7 .contact .contact-right .formItem {
		margin-bottom: 20px;
}

section#contact .wpcf7 .contact .formItem {
		width: 100%;
}

section#contact .wpcf7 .contact .formItem span {
		width: 100%;
}

section#contact .wpcf7 .contact .formItem span input {
		width: 100%;
}

section#contact .wpcf7 .contact .formItem.half {
		width: 50%;
		display: inline-table;
		float: left;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact .formItem.half {
				width: 100%;
		}
}

section#contact .wpcf7 .contact .formItem.half.left {
		padding-right: 5px;
}

section#contact .wpcf7 .contact .formItem.half.left.birthday {
		display: block;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact .formItem.half.left {
				padding-right: 0;
		}
}

section#contact .wpcf7 .contact .formItem.half.right {
		padding-left: 5px;
}

section#contact .wpcf7 .contact .formItem.half.right.birthday {
		display: block;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact .formItem.half.right {
				padding-left: 0;
		}
}

section#contact .wpcf7 .contact .formItem.half .wpcf7-select {
		width: 100%;
		height: 32px;
		background: #fff;
		margin-bottom: 0;
}

section#contact .wpcf7 .contact .formItem label.formTitle {
		font-weight: 500;
}

section#contact .wpcf7 .contact .formItem.radio .gender, section#contact .wpcf7 .contact .formItem.radio .get2 {
		display: block;
		margin: 0 auto;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio {
		display: flex;
		flex-wrap: nowrap;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio span.first, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio span.first {
		margin: 0;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio input, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio input {
		display: none;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio input:checked + .wpcf7-list-item-label, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio input:checked + .wpcf7-list-item-label {
		background: #0068b7;
		color: #fff !important;
		border: 1px solid #795548;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio input:checked + .wpcf7-list-item-label::before, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio input:checked + .wpcf7-list-item-label::before {
		border: 1px solid #795548;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio input:checked + .wpcf7-list-item-label::after, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio input:checked + .wpcf7-list-item-label::after {
		left: 16px;
		background: #0068b7;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio .wpcf7-list-item-label, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio .wpcf7-list-item-label {
		position: relative;
		padding: 6px 3px 9.5px 35px;
		transition: .3s;
		color: #444;
		border-radius: 3px;
		border: 1px solid #ddd;
		display: inline-block;
		line-height: 1;
		cursor: pointer;
		transition: all .3s ease-out;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio .wpcf7-list-item-label:hover, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio .wpcf7-list-item-label:hover {
		opacity: 0.8;
		transform: translateY(-1px);
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio .wpcf7-list-item-label::before, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio .wpcf7-list-item-label::before {
		content: "";
		display: block;
		left: 6px;
		width: 25px;
		height: 17px;
		border-radius: 15px;
		border: 1px solid #aaa;
		background: #fff;
		position: absolute;
}

section#contact .wpcf7 .contact .formItem.radio .gender .wpcf7-radio .wpcf7-list-item-label::after, section#contact .wpcf7 .contact .formItem.radio .get2 .wpcf7-radio .wpcf7-list-item-label::after {
		content: "";
		display: block;
		position: absolute;
		top: 8px;
		left: 8px;
		width: 13px;
		height: 13px;
		background: #aaa;
		border-radius: 50%;
		transition: .2s;
		display: block;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 {
		display: block;
		margin: 0 auto;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox span {
		margin: 0 0 10px;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox span.last {
		margin: 0;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox input {
		display: none;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox input:checked + .wpcf7-list-item-label {
		background: #0068b7;
		color: #fff !important;
		border: 1px solid #795548;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox input:checked + .wpcf7-list-item-label::before {
		border: 1px solid #795548;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox input:checked + .wpcf7-list-item-label::after {
		left: 16px;
		background: #0068b7;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox .wpcf7-list-item-label {
		position: relative;
		padding: 6px 3px 10px 35px;
		transition: .3s;
		color: #444;
		border-radius: 3px;
		border: 1px solid #ddd;
		display: inline-block;
		line-height: 1;
		cursor: pointer;
		transition: all .3s ease-out;
		line-height: 1.5;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox .wpcf7-list-item-label:hover {
		opacity: 0.8;
		transform: translateY(-1px);
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox .wpcf7-list-item-label::before {
		content: "";
		display: block;
		left: 6px;
		width: 25px;
		height: 17px;
		border-radius: 15px;
		border: 1px solid #aaa;
		background: #fff;
		position: absolute;
		margin-top: 5px;
}

section#contact .wpcf7 .contact .formItem.checkbox .get3 .wpcf7-checkbox .wpcf7-list-item-label::after {
		content: "";
		display: block;
		position: absolute;
		top: 8px;
		left: 8px;
		width: 13px;
		height: 13px;
		background: #aaa;
		border-radius: 50%;
		transition: .2s;
		display: block;
		margin-top: 5px;
}

section#contact .wpcf7 .contact .contact-right {
		width: 48%;
}

@media (max-width: 640px) {
		section#contact .wpcf7 .contact .contact-right {
				width: 100%;
		}
}

section#contact .wpcf7 .contact .contact-right .wpcf7-form-control.wpcf7-textarea.wpcf7-validates-as-required {
		height: 206px;
}

section#contact .wpcf7 .contact .contact-right .formItem.formbutton {
		display: flex;
		flex-wrap: wrap;
		margin-top: 20px;
}

section#contact .wpcf7 .contact .contact-right .formItem.formbutton input[type=submit],
section#contact .wpcf7 .contact .contact-right .formItem.formbutton input[type=button] {
		width: 100%;
		margin-bottom: 5px;
		color: #fff;
		background-image: none;
		background-color: transparent;
		padding: 5px 0;
		border: none;
		border-radius: 5px;
		box-shadow: 3px 3px #795548;
		background: -webkit-gradient(linear, left top, right top, from(#62a6da), to(#0068b7));
		background: linear-gradient(90deg, #62a6da, #0068b7);
		font-size: 2rem !important;
		line-height: 2;
		transition: all .2s ease-in-out;
}

section#contact .wpcf7 .contact .contact-right .formItem.formbutton input[type=submit]:hover,
section#contact .wpcf7 .contact .contact-right .formItem.formbutton input[type=button]:hover {
		opacity: .8;
}

section#contact .wpcf7 .contact .contact-right .formItem.formbutton input[type=submit].wpcf7-form-control.wpcf7-confirm.kakunin.wpcf7c-elm-step1 {
		margin: 0 auto 5px;
}

section#contact .wpcf7 .contact .formItem label span {
		color: #0068b7;
}

section#footer {
		display: flex;
		justify-content: space-between;
		margin: auto;
}

@media (max-width: 480px) {
		section#footer {
				display: block;
				margin-bottom: 40px;
		}
}

@media (max-width: 480px) {
		section#footer .global-menu {
				margin-bottom: 40px;
		}
}

section#footer .global-menu ul {
		padding: 0;
		margin: 0;
}

section#footer .global-menu ul li {
		list-style: none;
		float: left;
		padding: 0 20px;
}

section#footer .global-menu ul li:first-child {
		padding-left: 0;
}

@media (max-width: 767px) {
		section#footer .global-menu ul li {
				float: none;
				position: static;
				padding: 0 0 10px;
				text-align: left;
		}
}

section#footer .global-menu ul li a {
		padding: 14px 5px;
		font-size: 16px;
		font-size: 1.6rem;
		color: #fff;
		text-decoration: none;
		position: relative;
}

@media (max-width: 480px) {
		section#footer .global-menu ul li a {
				display: block;
				padding: 0 0 10px;
				border-bottom: solid 1px #0068b7;
		}
}

section#footer .global-menu ul li a:after {
		position: absolute;
		bottom: 5px;
		left: 0;
		content: '';
		width: 100%;
		height: 10px;
		background: #ffcc33;
		transform: scale(0, 1);
		transform-origin: center top;
		transition: transform .3s;
}

section#footer .global-menu ul li a:hover::after {
		transform: scale(1, 1);
}

section#footer .company-prof {
		width: auto;
		text-align: left;
}

section#footer .company-prof .name {
		font-size: 30px;
		font-size: 3rem;
		font-weight: 700;
}

@media (max-width: 480px) {
		section#footer .company-prof .name {
				font-size: 25px;
				font-size: 2.5rem;
		}
}

section.lower-page #application-requirements,
section.lower-page #recruitment-form,
section.lower-page #recruitment-news,
section.lower-page #company-profile {
		margin-top: -150px;
		padding-top: 150px;
}

section.lower-page .readtxt {
		font-size: 1.8rem;
		text-align: center;
		border-bottom: dotted 1px #ccc;
		padding-bottom: 30px;
}

section.lower-page .section-title-page {
		color: #0068b7;
		background: -webkit-linear-gradient(90deg, #62a6da, #0068b7);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
}

/* フッター
.............................................................*/
footer#colophon {
		padding: 50px 10px;
		text-align: center;
		background: -webkit-gradient(linear, left top, right top, from(#62a6da), to(#0068b7));
		background: linear-gradient(90deg, #62a6da, #0068b7);
		color: #fff;
}

/*--------------------------------------------------------------

# 初回表示時のエフェクト

-------------------------------------------------------------- */
.shutter {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: #fff;
		z-index: 999999999;
		animation: byeShutter 2.6s forwards;
}

.shutter::before, .shutter::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		margin: auto;
}

.shutter::before {
		background: -webkit-gradient(linear, left top, right top, from(#62a6da), to(#0068b7));
		background: linear-gradient(90deg, #62a6da, #0068b7);
		width: 0;
		height: 1px;
		animation: shutterOpen1 2.6s forwards;
}

.shutter::after {
		width: 120%;
		height: 0;
		margin-left: -10%;
		background-color: #f3f3f3;
		animation: shutterOpen2 2.6s forwards;
}

.content {
		animation: contentScale 2.6s forwards;
}

@keyframes byeShutter {
		70% {
				opacity: 1;
		}
		100% {
				opacity: 0;
				display: none;
				z-index: -1;
		}
}

@keyframes shutterOpen1 {
		0% {
				width: 0;
				height: 1px;
		}
		50% {
				width: 100%;
				height: 1px;
		}
		90% {
				width: 100%;
				height: 100%;
		}
		100% {
				width: 100%;
				height: 100%;
		}
}

@keyframes shutterOpen2 {
		60% {
				width: 120%;
				height: 0;
				transform: rotate(5deg);
		}
		90% {
				width: 120%;
				height: 100%;
				transform: rotate(-5deg);
		}
		100% {
				width: 120%;
				height: 100%;
				transform: rotate(-5deg);
		}
}

@keyframes contentScale {
		70% {
				transform: perspective(800px) scale(0.9) rotateX(15deg);
		}
		100% {
				transform: perspective(800px) scale(1) rotateX(0);
		}
}

/*--------------------------------------------------------------

# パーツ

-------------------------------------------------------------- */
/* TOPへ戻るボタン
.............................................................*/
#page-top {
		display: none;
		position: fixed;
		bottom: 0;
		right: 0;
		z-index: 1000;
}

#page-top.topON {
		display: block;
}

#page-top a {
		color: #fff;
		width: 100px;
		padding: 20px 0;
		text-align: center;
		display: block;
		border-radius: 3px;
		transition: all .3s ease;
}

#page-top a::before {
		content: "";
		bottom: 0;
		right: 0;
		border-top: 4em solid transparent;
		border-right: 7em solid #62a6da;
		opacity: .9;
		position: absolute;
		z-index: 100;
		transition: all .3s ease;
}

#page-top a::after {
		content: "TOP";
		display: block;
		bottom: 10px;
		color: #fff;
		font-weight: bold;
		right: 10px;
		position: absolute;
		z-index: 101;
		transition: all .3s ease;
		animation: vertical-out 0.3s ease-in-out;
}

#page-top a:hover::before {
		opacity: 1;
}

#page-top a:hover::after {
		content: "↑UP";
		animation: vertical 0.05s ease-in-out infinite alternate;
}

/* CONTACTアイコン
.............................................................*/
#contact-p {
		display: none;
		position: fixed;
		bottom: 120px;
		right: 10px;
		z-index: 1000;
}

#contact-m {
		display: none;
		position: fixed;
		bottom: 190px;
		right: 10px;
		z-index: 1000;
}

#contact-p a, #contact-m a {
		color: #fff;
		background: #62a6da;
		opacity: .9;
		width: 50px;
		height: 50px;
		padding: 10px;
		display: block;
		border-radius: 50%;
		transition: all .3s ease;
		animation: vertical-out 0.3s ease-in-out;
}

#contact-p a:hover, #contact-m a:hover {
		opacity: 1;
		animation: vertical 0.05s ease-in-out infinite alternate;
}

#contact-p .contact-p_tooltiptext, #contact-p .contact-m_tooltiptext, #contact-m .contact-p_tooltiptext, #contact-m .contact-m_tooltiptext {
		position: absolute;
		z-index: 1;
		top: 15%;
		right: 60px;
		visibility: hidden;
		width: auto;
		white-space: nowrap;
		padding: 0.3em 0.5em;
		transition: all .3s ease-out;
		text-align: center;
		opacity: 0;
		color: #ffffff;
		background: -webkit-gradient(linear, left top, right top, from(#0068b7), to(#62a6da));
		background: linear-gradient(90deg, #0068b7, #62a6da);
		font-size: 12px;
}

#contact-p .contact-p_tooltiptexta:hover, #contact-p .contact-m_tooltiptexta:hover, #contact-m .contact-p_tooltiptexta:hover, #contact-m .contact-m_tooltiptexta:hover {
		opacity: 1;
		animation: vertical 0.05s ease-in-out infinite alternate;
}

#contact-p .contact-p_tooltiptexta:hover::after, #contact-p .contact-m_tooltiptexta:hover::after, #contact-m .contact-p_tooltiptexta:hover::after, #contact-m .contact-m_tooltiptexta:hover::after {
		position: absolute;
		top: 25%;
		right: -15px;
		content: ' ';
		border: 8px solid transparent;
		border-left-color: #62a6da;
}

#contact-p:hover .contact-p_tooltiptext, #contact-p:hover .contact-m_tooltiptext, #contact-m:hover .contact-p_tooltiptext, #contact-m:hover .contact-m_tooltiptext {
		visibility: visible;
		opacity: 1;
}

/* アイコンのアニメーション
.............................................................*/
@keyframes vertical {
		0% {
				transform: translateY(0px);
		}
		100% {
				transform: translateY(-2px);
		}
}

@keyframes vertical-out {
		0% {
				transform: translateY(-2px);
		}
		100% {
				transform: translateY(0px);
		}
}

@keyframes vertical-car {
		0% {
				transform: translateY(0px);
		}
		100% {
				transform: translateY(-2px);
		}
}

/* resd moreのアニメーション
.............................................................*/
@-webkit-keyframes sdb {
		0% {
				opacity: 0;
		}
		50% {
				opacity: 1;
		}
		100% {
				opacity: 0;
		}
}

@keyframes sdb {
		0% {
				opacity: 0;
		}
		50% {
				opacity: 1;
		}
		100% {
				opacity: 0;
		}
}

/*--------------------------------------------------------------

# base setting｜move コンテンツに動きをつける

-------------------------------------------------------------- */
.sa {
		opacity: 0;
		transition: all .5s ease;
}

.sa.show {
		opacity: 1;
		transform: none;
}

.sa--ct {
		transform: translate(0, 0);
}

.sa--lr {
		transform: translate(-100px, 0);
}

.sa--rl {
		transform: translate(100px, 0);
}

.sa--up {
		transform: translate(0, 50px);
}

.sa--down {
		transform: translate(0, -100px);
}

.sa--scaleUp {
		transform: scale(0.5);
}

.sa--scaleDown {
		transform: scale(1.5);
}

.sa--rotateL {
		transform: rotate(180deg);
}

.sa--rotateR {
		transform: rotate(-180deg);
}

.sa--upfooter {
		transform: translate(0, 20px);
}
