@charset "utf-8";
/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #222;
    font-size: 1em;
    line-height: 1.2;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
	box-sizing:border-box;
}

*, *:before, *:after {
	box-sizing:inherit;
}

body {
	height:100%;
	min-height:100%;
	font-size:100%;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	color:#333;
}

#wrapper {
	overflow:hidden;
}

[class*='col-'] {
	min-height:1px;
}

.col-1-10 {
	float:left;
	width:10%;
}
.col-1-8 {
	float:left;
	width:12.5%;
}
.col-1-6 {
	float:left;
	width:16.666%;
}
.col-1-5 {
	float:left;
	width:20%;
}
.col-1-4 {
	float:left;
	width:25%;
}
.col-3-10 {
	float:left;
	width:30%;
}
.col-1-3 {
	float:left;
	width:33.33%;
}
.col-4-10 {
	float:left;
	width:40%;
}
.col-1-2 {
	float:left;
	width:50%;
}
.col-6-10 {
	float:left;
	width:60%;
}
.col-2-3 {
	float:left;
	width:66.66%;
}
.col-7-10 {
	float:left;
	width:70%;
}
.col-3-4 {
	float:left;
	width:75%;
}
.col-4-5 {
	float:left;
	width:80%;
}
.col-5-6 {
	float:left;
	width:83.333%;
}
.col-9-10 {
	float:left;
	width:90%;
}
.col-10-10 {
	float:left;
	width:100%;
}

.hide-md {
	display:none!important;
}

@media (min-width: 768px) {
	[class*='col-md'] {
		float:left;
	}
	.col-md-1-10 {
		width:10%;
	}
	.col-md-1-8 {
		width:12.5%;
	}
	.col-md-1-6 {
		width:16.666%;
	}
	.col-md-1-5 {
		width:20%;
	}
	.col-md-1-4 {
		width:25%;
	}
	.col-md-3-10 {
		width:30%;
	}
	.col-md-1-3 {
		width:33.33%;
	}
	.col-md-4-10 {
		width:40%;
	}
	.col-md-1-2 {
		width:50%;
	}
	.col-md-6-10 {
		width:60%;
	}
	.col-md-2-3 {
		width:66.66%;
	}
	.col-md-7-10 {
		width:70%;
	}
	.col-md-3-4 {
		width:75%;
	}
	.col-md-4-5 {
		width:80%;
	}
	.col-md-5-6 {
		width:83.333%;
	}
	.col-md-9-10 {
		width:90%;
	}
	.col-md-10-10 {
		width:100%;
	}
	[class*='col-push-md'] {
		right:auto;
	}
	.col-push-md-auto {
		left:auto;
	}
	.col-push-md-1-10 {
		left:10%;
	}
	.col-push-md-1-8 {
		left:12.5%;
	}
	.col-push-md-1-6 {
		left:16.666%;
	}
	.col-push-md-1-5 {
		left:20%;
	}
	.col-push-md-1-4 {
		left:25%;
	}
	.col-push-md-3-10 {
		left:30%;
	}
	.col-push-md-1-3 {
		left:33.33%;
	}
	.col-push-md-4-10 {
		left:40%;
	}
	.col-push-md-1-2 {
		left:50%;
	}
	.col-push-md-6-10 {
		left:60%;
	}
	.col-push-md-2-3 {
		left:66.66%;
	}
	.col-push-md-7-10 {
		left:70%;
	}
	.col-push-md-3-4 {
		left:75%;
	}
	.col-push-md-4-5 {
		left:80%;
	}
	.col-push-md-5-6 {
		left:83.333%;
	}
	.col-push-md-9-10 {
		left:90%;
	}
	.col-push-md-10-10 {
		left:100%;
	}
	[class*='col-pull-md'] {
		left:auto;
	}
	.col-pull-md-auto {
		right:auto;
	}
	.col-pull-md-1-10 {
		right:10%;
	}
	.col-pull-md-1-8 {
		right:12.5%;
	}
	.col-pull-md-1-6 {
		right:16.666%;
	}
	.col-pull-md-1-5 {
		right:20%;
	}
	.col-pull-md-1-4 {
		right:25%;
	}
	.col-pull-md-3-10 {
		right:30%;
	}
	.col-pull-md-1-3 {
		right:33.33%;
	}
	.col-pull-md-4-10 {
		right:40%;
	}
	.col-pull-md-1-2 {
		right:50%;
	}
	.col-pull-md-6-10 {
		right:60%;
	}
	.col-pull-md-2-3 {
		right:66.66%;
	}
	.col-pull-md-7-10 {
		right:70%;
	}
	.col-pull-md-3-4 {
		right:75%;
	}
	.col-pull-md-4-5 {
		right:80%;
	}
	.col-pull-md-5-6 {
		right:83.333%;
	}
	.col-pull-md-9-10 {
		right:90%;
	}
	.col-pull-md-10-10 {
		right:100%;
	}
	.show-md {
		display:none!important;
	}
	.hide-md {
		display:block!important;
	}
}

.grid-pad {
	margin-left:-30px;
	margin-right:-30px;
	padding:0 0 0 30px;
}

.grid-pad > [class*='col-'] {
	padding-right:30px;
}

.grid-pad-10 {
	margin-left:-10px;
	margin-right:-10px;
	padding:0 0 0 10px;
}

.grid-pad-10 > [class*='col-'] {
	padding-right:10px;
}

.grid-pad-15 {
	margin-left:-15px;
	margin-right:-15px;
	padding:0 0 0 15px;
}

.grid-pad-15 > [class*='col-'] {
	padding-right:15px;
}

.grid-pad-20 {
	margin-left:-20px;
	margin-right:-20px;
	padding:0 0 0 20px;
}

.grid-pad-20 > [class*='col-'] {
	padding-right:20px;
}

.grid-pad-50 {
	margin-left:-50px;
	margin-right:-50px;
	padding:0 0 0 50px;
}

.grid-pad-50 > [class*='col-'] {
	padding-right:50px;
}

.grid-fluid {
	margin-right:auto;
	margin-left:auto;
	padding-right:30px;
	padding-left:30px;
}

.grid:after {
	content:"";
	display:table;
	clear:both;
}

#menuLightBox {
	display:none;
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-color:#000;
	opacity:0.8;
	z-index:9999;
}

a {
	color:#15329b;
	text-decoration:none;
}

a[href^="tel:"] {
	text-decoration:none;
	color:inherit;
}

a:hover {
	text-decoration:underline;
}

a img,
.lower-img-menu span,
.formBtnBox input,
.pageTop a,
.table-phone .contact-form-box a {
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-font-smoothing:antialiased;
	transition:opacity .25s ease-in-out;
	-moz-transition:opacity .25s ease-in-out;
	-webkit-transition:opacity .25s ease-in-out;
	opacity:1;
	font-weight:bold;
}

a:hover img,
.formBtnBox input:hover,
.pageTop a:hover,
.table-phone .contact-form-box a:hover {
	opacity:.8;
}

ol {
	list-style-type:decimal;
}

strong {
	font-weight:700;
}

.req {
	color:#FF0000;
}

.image-center {
  display: block;
  margin: 0 auto 20px;
}

.thumbnail {
	display:block;
	margin-bottom:7px;
	background-color:#fff;
}

.embed-responsive {
	position:relative;
	display:block;
	height:0;
	padding:0;
	overflow:hidden;
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:100%;
	height:100%;
	border:0;
}

.embed-responsive-16by9 {
	padding-bottom:56.25%;
}

.img-responsive,
.thumbnail a>img,
.thumbnail>img {
	display:block;
	max-width:100%;
	height:auto;
}

.image-box-whole {
	margin-bottom:100px;
}

.caption {
	font-size:14px;
	line-height:1.6;
}

.profile-pic .caption {
	font-size:16px;
}

.videos-box p {
	font-size:inherit;
}

.text-left {
	text-align:left!important;
}

.text-center {
	text-align:center!important;
}

.text-right {
	text-align:right!important;
}

.icon {
	display:inline-block;
	background-size:contain;
	background-repeat:no-repeat;
	background-position:50%;
}

.ico-caret-left:before {
	display:block;
	content:'>';
}

.icon-caret-right {
	width:6px;
	height:10px;
	background-image:url(../images/caret-r.svg);
}

.ico-caret-circle-o-right {
	width:12px;
	height:12px;
	background-image:url(../images/ico-caret-circle-o-right.svg);
}

.ico-caret-circle-o-right2 {
	width:12px;
	height:12px;
	background-image:url(../images/ico-caret-circle-o-right2.svg);
}

.ico-ext-link {
	width:13px;
	height:11px;
	background-image:url(../images/ico-ext-link.svg);
}

.ico-pdf-link {
	width:17px;
	height:17px;
	background-image:url(../images/ico-pdf-link.png);
}

.ico-return {
	width:12px;
	height:12px;
	background-image:url(../images/ico-return.svg);
	background-size:12px 24px;
	background-position:0 0;
}

a:hover .ico-return {
	background-position:0 100%;
}

.arrow-link {
	list-style:none;
	padding:0 0 0 20px;
}

.arrow-link li {
	text-indent:-14px;
}

.arrow-link li i {
	box-sizing:content-box;
	margin-left:-5px;
	padding-right:10px;
	text-indent:-14px;
}

.arrow-link li a {
	color:inherit;
}

.arrow-link-list {
	list-style:none;
	padding:0;
}

.arrow-link-list-item {
  margin-bottom:6px;
}

.arrow-link-item,
.arrow-link-list-item a {
  display:inline-block;
  padding-left:20px;
  position:relative;
}

.arrow-link-item::before,
.arrow-link-list-item a::before {
  content:"";
  display:block;
  position:absolute;
  top:5px;
  left:0;
  width:12px;
  height:12px;
  background-image:url(../images/ico-caret-circle-o-right.svg);
}

.ico-ext-link,
.ico-pdf-link {
	box-sizing:content-box;
	padding-left:10px;
}

.more-link {
	margin-top:30px;
}

.more-link a {
	display:inline-block;
	border:1px solid #e5e5e5;
	padding:10px 30px;
	width:200px;
	text-align:center;
	font-size:80%;
	color:inherit;
}

.more-link i {
	margin-right:10px;
}

.more-link a:hover {
	background-color:#f82988;
	color:#fff;
	text-decoration:none;
}

.more-link2 {
	padding-top:10px;
	padding-bottom:10px;
	font-family:'Oswald', 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', sans-serif;
	letter-spacing:2px;
	text-align:center;
}

.more-link2 a {
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-font-smoothing:antialiased;
	transition:background-color .25s ease-in-out;
	-moz-transition:background-color .25s ease-in-out;
	-webkit-transition:background-color .25s ease-in-out;
	display:block;
	padding:10px;
	background-color:#f02980;
	color:#fff;
}

.more-link2 a:hover {
	text-decoration:none;
	background-color:#db0064;
}

.more-link2 a i {
	margin-right:10px;
}

.list-group {
	margin:0;
	padding:0;
	list-style:none;
}

.list-group-item {
	display:block;
	border-bottom:1px solid #f0f0e1;
	padding:15px 0;
	text-decoration:none;
}

.list-group time {
	display:inline-block;
	font-size:90%;
	width:115px;
}

.news-link {
	vertical-align:top;
	display:inline-block;
	max-width:629px;
	width:100%;
	margin-left:0;
	margin-right:0;
}

.label {
	display:inline-block;
	border:1px solid #afafaf;
	margin:0 0 2px;
	padding:2px 10px;
	font-size:11px;
	text-decoration:none;
	text-align:center;
}

a .label {
	color:#777;
}

a:hover .label {
	border:1px solid #858585;
	background-color:#858585;
	color:#fff;
}

/* bxslider */
.bx-wrapper {
    margin-bottom: 0;
}

.bx-wrapper .bx-viewport {
	left:0;
	border:none;
	-webkit-box-shadow:none;
	box-shadow:none;
}

.bx-wrapper .bxslider .bx-caption {
	-webkit-transform:translate(0, -50%);
	-moz-transform:translate(0, -50%);
	-o-transform:translate(0, -50%);
	transform:translate(0, -50%);
	top:50%;
	bottom:auto;
	background:none;
}

[class*='bxslider'] {
	margin:0;
	padding:0;
}

.bx-has-pager {
	display:table;
	margin:0 auto;
	text-align:center;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom:10px;
	display:inline-block;
	padding-top:0;
	width:auto;
	-webkit-transform:translate(-50%, 0);
	-moz-transform:translate(-50%, 0);
	-o-transform:translate(-50%, 0);
	transform:translate(-50%, 0);
}

.bx-wrapper .bx-pager.bx-default-pager a {
	margin:8px;
	background:#fff;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background:#f02980;
}

.bx-wrapper .bx-controls-direction a {
    text-indent: 0;
    text-decoration: none;
}

.bx-wrapper .bx-prev {
    background-color: #f02980;
    background-image: none;
    color: #fff;
    border-radius: 5px;
    font-family: 'FontAwesome';
    font-size: 23px;
    opacity: 0.8;
    padding-top: 2px;
}

.bx-wrapper .bx-next {
    background-color: #f02980;
    background-image: none;
    color: #fff;
    border-radius: 5px;
    font-family: 'FontAwesome';
    font-size: 23px;
    opacity: 0.8;
    padding-top: 2px;
}

.bxslider > li img {
    width: 100%;
}

/* Topicpath */
.topicpath {
	margin-bottom:0;
	padding:20px 0;
	_text-align:left;
	/* for ie6 */
	line-height:1.5;
}
.topicpath ul {
	margin:0 auto;
	padding:0 100px 0 10px;
	width:1220px;
	list-style:none;
	font-size:90%;
	text-transform:uppercase;
}
.topicpath li {
	float:left;
	margin-right:5px;
}
.topicpath li:nth-child(even) {
	padding:0 10px;
}
.topicpath li a:link {
	text-decoration:none;
}
.topicpath li a:hover {
	text-decoration:underline;
}

/* Paging */
.main .main-content .paging-container {
	padding:0 0 50px;
}

.paging {
	position:relative;
	display:table;
	margin:0 auto;
	padding:0;
	list-style:none;
	font-size:90%;
	text-align:center;
}

.paging li {
	position:relative;
	float:left;
	display:block;
}

.paging span,
.paging a {
	display:block;
	text-align:center;
	color:#333;
}

.paging .icon {
	display:inline-block;
}

.paging .link_next .icon {
	margin-left:10px;
}

.paging .link_prev .icon,
.paging .link_return .icon {
	margin-right:10px;
}

.paging a,
.paging a span {
	background-color:#fff;
}

.paging a:hover {
	text-decoration:none;
}

.paging a:hover span {
	border:1px solid #e5e5e5;
	background-color:#e5e5e5;
}

.link_return {
	width:84px;
}

.paging .link_page {
	margin:0 4px;
	border:1px solid #f72987;
	padding:4px 2px;
	background-color:#f72987;
	min-width:33px;
	line-height:1.9;
	color:#fff;
}

.paging a .link_page {
	border:1px solid #e5e5e5;
	background-color:#fff;
	color:inherit;
}

.paging li:first-of-type .link_page {
	margin-left:0;
}

.paging li:last-of-type .link_page {
	margin-right:0;
}

/* Return Top */

.pageTop {
	position:fixed;
	bottom:0;
	right:0;
	margin:0;
}

.title01 {
	font-size:22px;
}

.title02 {
	font-size:28px;
}

.title03 {
	font-size:18px;
}

.title04 {
	font-size:18px;
}

.title05 {
	font-size:16px;
}

.title06 {
	font-size:14px;
}

form {
	margin:0!important;
	padding:0!important;
}

.form-width-11percent {
	width:11%;
}

.form-width-1-5 {
	width:20%;
}

.form-width-1quarter {
	width:25%;
}

.form-width-3quarters {
	width:75%;
}

.form-width-full {
	width:100%;
}

form em {
	font-style:normal;
	color:#ea1c7a;
}

.main .error {
	color:#ea1c7a;
}

.form-space {
	padding:0 15px;
}

form table tr td .form-space:first-child {
	padding-left:0;
}

form table tr td .form-space:last-child {
	padding-right:0;
}

.main input[type=text],
.main textarea {
	border:1px solid #ccc;
	background-color:#fff;
	padding:5px;
}

.mailStep {
	text-align:right;
}

.mailStep img {
	display:inline-block;
}

.formBtnBox {
	font-size:90%;
	text-align:center;
}

.formBtnBox input {
	margin:4px;
	padding:15px 50px;
	border:none;
	color:#fff;
}

.call-action-btn {
	background-color:#15329b;
}

.form-reset {
	background-color:#666;
}

.top-header {
	position:relative;
	background-color:#fff;
	z-index:99999;
}

.header_contents {
	position:relative;
	margin:0 auto;
	max-width:1220px;
	z-index:1;
}

.search {
	position:relative;
	padding:0 0 0 40px;
}

.search form {
	position:relative;
	height:26px;
}

.search input[type=text] {
	width:100%;
	padding-right:30px;
	margin:0;
	border:none;
	padding:5px 26px 5px 5px;
	background-color:#bebebe;
	border-radius:13px;
	height:26px;
}

.search input[type=submit] {
	position:absolute;
	top:50%;
	right:0;
	-webkit-transform:translate(0, -50%);
	-moz-transform:translate(0, -50%);
	-o-transform:translate(0, -50%);
	transform:translate(0, -50%);
	border:none;
	background:url(../images/ico-search.svg) no-repeat 50%;
	background-size:13px 14px;
    width:26px;
    height:26px;
}

.h-homelink {
	border-bottom:1px solid #e9e9e9;
	font-size:12px;
}

.h-homelink .arrow-link {
	margin:10px auto;
	max-width:1220px;
	padding:0 10px 0 30px;
    display: flex;
    column-gap: 40px;
}

.h-homelink .arrow-link i {
	position:relative;
	top:1px;
}

.header_menu {
	position:relative;
	border-bottom:none;
}

.header_menu > ul {
	position:absolute;
	top:0;
	width:100%;
	display:none;
	margin:0;
	padding:0;
	list-style:none;
	background-color:#e6e6e6;
	z-index:999999;
}

.header_menu > ul > li > a {
	display:block;
	position:relative;
	padding:20px 40px 20px 20px;
	font-size:100%;
	color:inherit;
}

.header_menu > ul > li > a .icon {
	position:absolute;
	top:50%;
	right:20px;
	-webkit-transform:translate(0, -50%);
	-moz-transform:translate(0, -50%);
	-o-transform:translate(0, -50%);
	transform:translate(0, -50%);
}

.header_menu > ul > li {
	display:block;
	margin:0;
	padding:0;
	border-top:1px solid #d7d7d7;
	text-align:left;
}

.header_menu > ul > li:last-of-type {
	border-bottom:none;
}
.header_menu > ul > li:hover > a,
.header_menu > ul > li.stay {
	background-color:#d7d7d7;
}

.header_menu > ul > li:hover > a,
.header_menu > ul > li.stay {
	text-decoration:none;
}

.header_menu > ul > li.menu-development > div,
.header_menu > ul > li.menu-instruction > div {
    padding:20px 40px 20px 20px;
    background: url(../images/caret-d.svg) no-repeat right 17px top 50% / 12px 6px;
}

.header_menu > ul > li.menu-development.open > div,
.header_menu > ul > li.menu-instruction.open > div {
    background: url(../images/caret-u.svg) no-repeat right 17px top 50% / 12px 6px;
}

.header_menu .search {
	padding:20px;
}

.header_menu .mutual-aid a div {
	border:none;
}

.header_menu .pulldown {
    display: none;
    list-style: none;
    background-color: #ffffff;
    padding: 0;
}

.header_menu .pulldown > li {
	border-top: 1px solid #d7d7d7;
}

.header_menu .pulldown > li > a {
    display: block;
    padding: 20px 20px 20px 40px;
    color: #333;
    text-decoration: none;
}

.header_menu .pulldown > li > a > div {
    position: relative;
    display: inline-block;
}

.header_menu .pulldown > li.stay > a > div::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -5px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    content: "";
    width: 100%;
    transition: width .25s ease-in-out;
    -moz-transition: width .25s ease-in-out;
    -webkit-transition: width .25s ease-in-out;
    height: 1px;
    background-color: #f82988;    
}

.header_menu .pulldown > li > a i {
    margin-right: 10px;
}

.header_menu_sub {
	margin-top:-20px;
	margin-bottom:40px;
}

.header_menu_sub ul {
	margin:0 -11px;
	border-bottom:1px solid #e6e6e6;
	padding-left:0;
	padding-right:0;
	list-style:none;
	text-align:center;
}

.header_menu_sub ul li {
	position:relative;
	float:left;
	width:50%;
	border:1px solid #e6e6e6;
}

.header_menu_sub ul li:nth-child(-n+2) {
	border-top:none;
}

.header_menu_sub li a {
	display:block;
	padding:20px 10px;
	height:100%;
	color:inherit;
}

.header_menu_sub li a:hover,
.header_menu_sub li.stay a {
	text-decoration:none;
	background-color:#e6e6e6;
}

.header_menu_sub li a span {
	position:relative;
	display:inline-block;
}

.header_menu_sub li a:hover:after,
.header_menu_sub li.stay a:after {
	background-color:#f82988;
}

.logo {
	padding-right:10px;
	line-height:1.5;
}

.upper_header {
	padding:10px;
}

.upper_header .nav-open-container {
	float:right;
	display:inline-block;
	padding:13px 0;
	width:auto;
	height:auto;
}

.upper_header div {
	display:table;
	width:100%;
	height:100%;
}

.upper_header .title01 {
	display:table-cell;
	margin:0;
	padding-right:10px;
	vertical-align:middle;
}

.upper_header .title01 img {
	max-width:500px;
	width:95%;
}

.block-center {
	display:block!important;
	margin-left:auto!important;
	margin-right:auto!important;
}

.nofloat {
	float:none!important;
}

.ja-left {
	float:left;
}

.ja-right {
	float:right;
}

.nav-open-btn {
	display:none;
}

.nav-open-btn {
	display:block;
	width:33px;
	height:22px;
	background:url(../images/menu-r.svg) no-repeat 50% 0;
	background-size:33px 44px;
}

.nav-open-btn.open {
	width:22px;
	height:22px;
	margin:0 5px;
	background-position:50% 100%;
}

.nav-open-btn:hover {
	opacity:0.8;
	text-decoration:none;
}

.nav-open-btn div {
	display:none;
}

.main,
.footer-body ul,
.lower-footer-body,
.copyright {
	margin:0 auto;
	max-width:1220px;
	padding-left:10px;
	padding-right:10px;
	width:100%;
}

.main-title-box {
	position:relative;
	margin:0;
	padding-left:20px;
	padding-right:20px;
	padding-bottom:31.25%;
	height:0;
	background:#443d46; /* Old browsers */
	background:-moz-linear-gradient(top,  #443d46 0%, #002246 100%); /* FF3.6-15 */
	background:-webkit-linear-gradient(top,  #443d46 0%,#002246 100%); /* Chrome10-25,Safari5.1-6 */
	background:linear-gradient(to bottom,  #443d46 0%,#002246 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#443d46', endColorstr='#002246',GradientType=0 ); /* IE6-9 */
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	overflow:hidden;
}

.front .main-title-box {
	padding-bottom:40%;
}

.main-title-box .title01 {
	position:absolute;
	display:inline-block;
	top:50%;
	left:50%;
	margin:0;
	padding-left:10px;
	padding-right:10px;
	width:100%;
	-webkit-transform:translate(-50%, -50%);
	-moz-transform:translate(-50%, -50%);
	-ms-transform:translate(-50%, -50%);
	-o-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	font-weight:normal;
	text-align:center;
	color:#fff;
}

.main-wrapper {
	background-color:#eaeaea;
}

.main {
	position:relative;
	padding-top:20px;
	padding-left:10px;
	padding-right:10px;
	min-height:63px;
	background-color:#fff;
	font-size:90%;
	line-height:1.8;
}

.main .title01 {
	margin-bottom:90px;
	text-align:center;
	line-height:1.5;
}

.main-content {
	padding-bottom:30px;
}

.col-3-4.main-content {
	padding-right:30px;
}

.main-content .title01,
.main-content .title02,
.main-content .title03,
.main-content .title04,
.main-content .title05,
.main-content .title06 {
	margin-bottom:30px;
	font-weight:normal;
	line-height:1.4;
}

.main-content .title02 {
	margin:0 0 30px;
	font-family:'Oswald', 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', sans-serif;
	letter-spacing:2px;
	text-align:center;
	line-height:1.2;
}

.main-content .title02 small {
	letter-spacing:0;
	font-size:50%;
}

.main-content .title03 {
	position:relative;
	margin-top:0;
	padding:15px 10px 15px 25px;
	background-color:#f2f2f2;
}

.main-content .title03:before {
	position:absolute;
	top:0;
	bottom:0;
	float:left;
	display:block;
	content:'';
	width:4px;
	height:100%;
	margin-left:-25px;
	margin-right:10px;
	background:#f82988;
}

.main-content .title04 {
	position:relative;
	margin-top:0;
	margin-bottom:30px;
	padding-top:13px;
	padding-left:75px;
	padding-bottom:10px;
	font-size:22px;
	font-weight:bold;
}

.main-content .title04:before {
	position:absolute;
	top:0;
	bottom:0;
	float:left;
	display:block;
	content:'';
	width:60px;
	height:60px;
	margin-left:-75px;
	margin-right:10px;
	padding:10px;
	background:#f82988;
	font-size:16px;
	text-align:center;
	color:#fff;
	line-height:2.3;
}

.main-content .title04.one:before {
	content:'1';
}

.main-content .title04.two:before {
	content:'2';
}

.main-content .title04.three:before {
	content:'3';
}

.main-content .title04v2 {
	position:relative;
	border-bottom:2px solid #eaeaea;
	padding-top:0;
	padding-left:20px;
	padding-bottom:15px;
	font-size:16px;
}

.main-content .title04v2:before {
	top:10px;
	width:10px;
	height:2px;
	margin-left:-20px;
	margin-right:10px;
	padding:0;
}

.main_subject-top-grid {
	margin-left:-40px;
	margin-right:-40px;
	padding:0 0 0 40px;
}

.main_subject-top-grid .main_subject-top-box {
	margin-bottom:20px;
	padding-right:40px;
}

.main_subject-top-box a,
.image-box-link a {
	display:inline-block;
}

.main_subject-top-box .title06 {
	margin-top:20px;
	margin-bottom:0;
	font-size:19px;
}

.main_subject-top-box .title06 .icon {
	position:relative;
	top:1px;
	margin-left:10px;
}

.main_subject-top-box p {
	color:#000;
}

.main_subject-top-box .more-link {
	margin-top:0;
	margin-bottom:60px;
}

.main-content .intro-section,
.main-content .image-box-section {
	margin-bottom:60px;
}

.main-content .intro-section .title02 {
	margin-bottom:50px;
}

.image-box-section .title04 {
	margin-top:0;
}

.image-box-pic img {
	width:100%;
}

.main-content section {
	margin-top:20px;
	margin-bottom:40px;
}

body .main .main-content .banner-title {
	margin:50px 0;
}

body .main .main-content .nomargin {
	margin-bottom:0;
}

body .main .main-content .extramargin20 {
	margin-bottom:20px;
}

body .main .main-content .extramargin40 {
	margin-bottom:40px;
}

body .main .main-content .extramargin {
	margin-bottom:60px;
}

body .main .main-content .extramargin80 {
	margin-bottom:80px;
}

body .main .anchor-link,
body .main .main-content .anchor-link {
	margin-top:-20px;
	padding-top:20px;
}

.main-content section:after {
	display:block;
	clear:both;
	visibility:hidden;
	height:0;
	content:"";
}

.main-content .unordered-l {
	list-style-type:disc;
	color:#15329b;
}

.main-content .unordered-l li span {
	color:#333;
}

.main-content .unordered-l2 {
	list-style:none;
	padding-left:0;
}

.main-content .unordered-l2 a {
	padding-left:20px;
}

.main-content table {
	border-collapse:collapse;
	width:100%;
}

.main-content table td p {
	margin:5px 0 0;
}

.main-content table td p:first-of-type {
	margin:0;
}

.main-content section table .unordered-l,
.main-content section table .ordered-l {
	margin:0;
	line-height:1.8;
}

.main-content table th,
.main-content table td {
	text-align:left;
	font-weight:normal;
	padding:10px;
	vertical-align:top;
}

.main-content .table-wrapper {
    overflow-x: auto;
}

.main-content .table-wrapper table {
    width: 767px;
}

html>body .gsc-orderby-label {
	padding-right:0;
}

body .gsc-control-cse .gsc-option-menu-container {
	text-align:right;
}

table.gsc-search-box td {
	padding:6px 6px 0;
	line-height:1.6;
}

body .gsc-input-box {
	height:34px;	
}

.gsc-orderby {
	text-align:right;	
}

body .cse .gsc-search-button input.gsc-search-button-v2,
body input.gsc-search-button-v2 {
	width:auto;
	height:auto;
	padding:9px 27px;
	margin-top:5px;
}

body .main-content table .gsc-result-info-container {
    padding-left:0;
    padding-right:0;
}

body .cse .gsc-control-cse,
body .gsc-control-cse {
	padding:0;
}

body .gsc-search-box-tools .gsc-search-box .gsc-input,
body .gsc-result-info {
    padding-left:0;
}

body table.gsc-search-box td.gsc-search-button,
body .main-content table .gsc-orderby-container {
    padding-right:0;
}

body .gsc-result .gs-title {
	height:auto;
}

.main-content .table01 th,
.main-content .table01 td {
	border:1px solid #d8d8d8;
	padding:10px;
}

.main-content .table01 th {
	background-color:#f4f4f4;
}

.main-content .staff-table tr,
.main-content .staff-table th,
.main-content .staff-table td {
	display:block;
}

.main-content .staff-table tr {
	margin-bottom:10px;
}

.main-content .staff-table td {
	border-top:none;
}

.main-content .staff-table .staff-name {
	border-top:none;
	border-bottom:none;
	padding:10px 10px 0 10px;
}

.main-content .staff-table .staff-position {
	border-top:none;
	padding:0 10px 10px 10px;
}

.main-content .staff-table2 thead th,
.main-content .staff-table2 thead td {
	border-bottom:none;
}

.main-content .staff-table2 tbody th,
.main-content .staff-table2 tbody td {
	border-top:none;
}

.main-content .staff-table2 tbody th {
	background-color:transparent;
	width:140px;
}

.main-content .staff-table4 .staff-position {
    width: 180px;
}

.main-content .staff-table4 .staff-name {
    width: 120px;
}

.main-content .staff-table4 .staff-place {
    width: 90px;
}

.main-content table ol {
	margin:0;
	padding:0 0 0 20px;
}

.main-content table p:last-of-type {
	margin-bottom:0;
}

.ordered-l,
.unordered-l {
	padding-left:20px;
	line-height:2.1;
}

.unordered-l ul {
	list-style-type:none;
	margin-bottom:20px;
	padding-left:20px;
}

.unordered-l ul li {
	position:relative;
}

.unordered-l ul li:before {
	position:absolute;
	top:14px;
	left:-15px;
	content:'';
	display:inline-block;
	border-bottom:1px solid #15329b;
	width:8px;
}

.topics-grid .image-box img {
	margin:0 auto;
	max-height:93px;
}

.topics-box {
	margin-bottom:20px;
}

.topics-box a:hover {
	text-decoration:none;
	opacity:0.8;
}

.topics-box a:hover .content-box {
	background-color:#d8d8d8;
}

.topics-box .content-box {
	padding:15px 15px 30px;
	background-color:#eee;
	line-height:1.5;
	height:200px;
	word-break:break-all;
	overflow:hidden;
}

.topics-box .content-box p {
	margin:0;
}

.content-list {
	float:right;
	list-style:none;
	margin:0;
	padding:0 10px 0 0;
	font-family:'Oswald', 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', sans-serif;
	letter-spacing:2px;
	font-size:28px;
	line-height:0.4;
}

.content-list li a {
	display:inline-block;
	padding-left:20px;
	font-size:14px;
	color:inherit;
}

.company-list {
	margin-top:-10px;
	list-style:none;
}

.company-list a,
.company-list div {
	display:block;
	border-bottom:1px solid #e1e1e1;
	padding:10px 0 10px 20px;
}

.company-icon {
	margin-left:-20px;
	margin-right:8px;
}

section p {
	margin-top:10px;
	margin-bottom:20px;
}

section .caption small {
	font-size:86%;
}

section .content-box .date-box {
	margin-bottom:10px;
	font-family:'Oswald', 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', sans-serif;
	letter-spacing:2px;
	font-size:11px;
	color:#808080;
}

section .label-box {
	margin-bottom:8px;
}

section .label-box time {
	margin-right:10px;
	font-size:13px;
	color:#666;
}

.news-listings-box .image-box-pic img {
	width:100%;
}

.news-listings-box img {
	max-width: 100%;
	height: inherit;
}

.main blockquote {
	margin-left:0;
	margin-right:0;
	border:4px solid #e6e6e6;
	padding:30px;
}

.main blockquote .title05 {
	margin-top:0;
	margin-bottom:0;
	font-weight:normal;
}

.main blockquote p {
	margin-bottom:0;
}

.sub-links-box {
	border-bottom:1px solid #f0f0e1;
	padding-top:15px;
	padding-bottom:15px;
}

.sub-links-box:first-child {
	border-top:1px solid #f0f0e1;
}

.sub .title06 {
	margin:5px 0 10px;
	padding:0;
	font-size:90%;
	font-weight:normal;
	color:#666;
}

.sub ul {
	margin:0;
	padding-left:0;
	list-style-type:none;
}

.sub .sub-links-sec {
	padding-left:15px;
}

.sub ul li {
	position:relative;
}

.sub .sub-links-sec li:before {
	position:absolute;
	top:20px;
	left:-15px;
	content:'';
	display:inline-block;
	border-bottom:1px solid #15329b;
	width:8px;
}

.sub ul li a {
	position:relative;
	display:block;
	margin:0;
	padding:8px 0;
}

.sub .main select {
	width:100%;
}

.category-select-box {
	margin-top:20px;
	margin-bottom:10px;
	padding-left:10px;
	padding-right:10px;
}

.sub ul li a:hover,
.sub ul li.stay a {
	text-decoration:underline;
}

.sub ul li a .icon {
	position:absolute;
	top:50%;
	left:15px;
	-webkit-transform:translate(0, -50%);
	-moz-transform:translate(0, -50%);
	-ms-transform:translate(0, -50%);
	-o-transform:translate(0, -50%);
	transform:translate(0, -50%);
}

.sub ul ul li a .icon {
	left:35px;
}

.sub ul ul li a {
	padding-left:50px;
	padding-right:50px;
}

.lower-img-menu-container {
	border-top:1px solid #e6e6e6;
	padding:40px 10px 30px;
}

.lower-img-menu {
	margin-top:10px;
}

.lower-img-menu div {
	padding-top:10px;
	padding-bottom:10px;
	font-size:14px;
	line-height:1.2;
	text-align:center;
}

.lower-img-menu a {
	display:block;
	position:relative;
	color:#fff;
}

.lower-img-menu .over {
	position:absolute;
	display:block;
	content:'';
	top:0;
	right:0;
	bottom:0;
	left:0;
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-font-smoothing:antialiased;
	transition:opacity .25s ease-in-out;
	-moz-transition:opacity .25s ease-in-out;
	-webkit-transition: opacity .25s ease-in-out;
	background:#828086; /* Old browsers */
	background:-moz-linear-gradient(top,  #828086 0%, #004586 100%); /* FF3.6-15 */
	background:-webkit-linear-gradient(top,  #828086 0%,#004586 100%); /* Chrome10-25,Safari5.1-6 */
	background:linear-gradient(to bottom,  #828086 0%,#004586 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#828086', endColorstr='#004586',GradientType=0 ); /* IE6-9 */
	opacity:0;
	z-index:1;
}

.lower-img-menu a:hover .over {
	opacity:0.5;
}

.lower-img-menu span {
	position:absolute;
	-webkit-transform:translate(-50%, -50%);
	-moz-transform:translate(-50%, -50%);
	-ms-transform:translate(-50%, -50%);
	-o-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	top:50%;
	left:50%;
	width:100%;
	padding:10px;
	font-weight:normal;
	z-index:2;
}

.lower-img-menu img {
	width:100%;
}

.lower-img-menu a:hover img {
	opacity:1;
}

.footer-lower {
	margin-top:0;
	margin-bottom:0;
	width:100%;
}

.footer-body ul {
	border-top:1px solid #e6e6e6;
	padding-left:0;
	padding-right:0;
	list-style:none;
}

.footer-body li {
	border-bottom:1px solid #e6e6e6;
}

.footer-body li a {
	display:block;
	position:relative;
	padding:10px 15px;
	font-size:90%;
	color:inherit;
}

.company-address li {
	float:left;
	font-size:13px;
}

.lower-footer-body .f-company-info {
	padding-right:0;
}

.footer-links-lower {
	float:right;
}

.footer-lower ul a {
	display:inline-block;
	color:inherit;
}

.footer-links-lower {
	font-size:14px;
}

.footer-links-lower li {
	float:left;
	padding-left:40px;
}

.footer-body li:hover a,
.footer-body li.stay {
	background-color:#e6e6e6;
}

.footer-body li:hover a {
	text-decoration:none;
}

.f-company-address {
	padding:30px 0;
	background-color:#323e4b;
	font-size:80%;
	line-height:180%;
	color:#ccc;
}

.f-company-info .title05 {
	margin-top:10px;
	margin-bottom:5px;
	font-size:13px;
	font-weight:bold;
	line-height:1.2;
}

.f-company-address .title06,
.f-company-address p {
	margin:5px 0;
}

.f-company-address .title06 {
	font-weight:bold;
}

.f-company-address .title06 a {
	color:inherit;
}

.f-company-address ul {
	display:table;
	margin:5px auto;
	padding:0;
	list-style:none;
	font-size:13px;
}

.copyright-info {
	background-color:#1e2830;
	color:#999;
}

.f-company-address .company-email {
	margin:0;
}

.company-email a {
	color:inherit;
}

.copyright {
	font-size:10px;
}

.footer-lower {
	padding:0;
	text-align:center;
}

.copyright-info p {
	margin:0;
	padding:20px 0;
}

/* ---------------
TOP
--------------- */

.front .main-title-box {
	background-image: url(../images/front/bg-sp.jpg);
}

.front .main-title-box .title01 {
	height: 0;
/*
	width: 38.548%;
	padding-bottom: 33.04%;
	background: url(../images/front/title.svg) no-repeat 50%;
*/
	text-indent: -9999px;
}

.front .lower-img-menu .image-box {
	padding-top: 0;
	padding-bottom: 5px;
	font-size: 16px;
}

.front .lower-img-menu .image-box:last-of-type {
	padding-bottom: 0;
}

.front .lower-img-menu {
	margin-top: 20px;
}

.topics-box .label-box {
    min-height: 90px;
}

/* ---------------
ABOUT
--------------- */

.page-about .main-title-box {
	background-image: url(../images/about/bg-sp.jpg);
}

.logo-center-grid img {
	width: 100%;	
}

figcaption {
    text-align: center;
}

/* ---------------
ABOUT AIRPLANE
--------------- */

.page-airplane .main-title-box {
	background-image: url(../images/about/airplane/bg-sp.jpg);
}

/* ---------------
ABOUT SPACE
--------------- */

.page-space .main-title-box {
	background-image: url(../images/about/space/bg-sp.jpg);
}

/* ---------------
ABOUT MATERIAL
--------------- */
/*
.page-material .main-title-box {
	background-image: url(../images/about/material/bg-sp.jpg);
}
*/

/* ---------------
ABOUT INSTRUCTION
--------------- */

.page-about-instruction .main-title-box {
	background-image: url(../images/about/instruction/bg-sp.jpg);
}

/* ---------------
AIRCRAFT
--------------- */

.page-aircraft .main-title-box {
	background-image: url(../images/aircraft/bg-sp.jpg);
}

.aircraft-parts-grid .image-box {
	position: relative;
}

.aircraft-parts-grid p {
	margin-bottom: 0;
	padding-bottom: 50px;
}

.aircraft-parts-grid .image-box img {
	width: 100%;
}

.aircraft-parts-grid [class*='col-']:first-of-type .image-box:after {
	display: none;
}

.aircraft-parts-grid [class*='col-']:last-of-type .caption {
	padding-bottom: 20px;
}

.aircraft-parts-grid .image-box:after {
	display: block;
	position: absolute;
	top: -20px;
	left: 50%;
	content: '';
	-webkit-transform: translate(-50%, -100%);
	-moz-transform: translate(-50%, -100%);
	-ms-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	width: 0;
	height: 0;
	border-top: 15px solid #ccc;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
}

.aircraft-parts-grid .caption {
	text-align: center;
}

/* ---------------
SUWA
--------------- */
/*
.page-suwa .main-title-box {
	background-image: url(../images/suwa/bg-sp.jpg);
}
*/

/* ---------------
INSTRUCTION
--------------- */

.page-instruction .main-title-box {
	background-image: url(../images/instruction/bg-sp.jpg);
}

.doctoral-grid p:first-child {
	margin-top: 0;
}

.doctoral-grid img {
	width: 100%;
}

/* ---------------
TOPICS
--------------- */

.page-topics .main-title-box {
	background-image: url(../images/topics/bg-sp.jpg);
}

.topic-sections-box {
	margin-bottom: 40px;
}

.topic-sections-box .title02 {
	margin-bottom: 10px;
	font-size: 12px;
}

.topic-box-cat-pc {
	font-size: 13px;
}

.topic-sections-box .formSelect {
	margin: 0 auto;
	display: block;
}

.topics-link {
	text-align: center;
}

/* ---------------
ACCESS
--------------- */

.page-access .main-title-box {
	background-image: url(../images/access/bg-sp.jpg);
}

.access-box {
	margin-bottom: 20px;
}

.access-box img {
	width: 100%;
}

.access-table {
	border: none;
}

.main-content .access-table td {
	border-top: 1px solid #eaeaea;
	border-left: none;
	border-bottom: 1px solid #eaeaea;
	border-right: none;
}

.access-thead {
	width: 70px;
}

/* ---------------
DEVELOPMENT
--------------- */

.page-development .main-title-box {
	background-image: url(../images/development/bg-sp.jpg);
}

.intro-grid {
    display: grid;
    gap: 40px;
    grid-template-columns: 100%;
}

.intro-box {
    width: 100%;
    border-radius: 5px;
    box-shadow: 0 4.75px 14.25px rgba(0, 0, 0, 0.16);
}

a.intro-box {
    display: block;
    text-decoration: none;
}

.intro-box .title-box {
    background-color: #f02980;
    color: #fff;
    border-radius: 5px 5px 0 0;
    padding: 10px 20px;
}

.intro-box .title-box h4 {
    font-size: 16px;
    margin: 0;
}

.intro-box .title-box h4 i {
    margin-right: 10px;
}

.intro-box .content-box {
    display: flex;
}

.intro-box .image-box img {
    border-radius: 0 0 0 5px;
}

.intro-box .text-box {
    padding: 20px;
}

.intro-box .text-box p {
    color: #333;
    line-height: 1.5;
    margin: 0;
}

/* ---------------
DEVELOPMENT GENERAL
--------------- */

.page-general .main-title-box {
	background-image: url(../images/development/general/bg-sp.jpg);
}

/* ---------------
DEVELOPMENT MATERIAL
--------------- */

.page-material .main-title-box {
	background-image: url(../images/development/material/bg-sp.jpg);
}

/* ---------------
DEVELOPMENT POWERSYSTEM
--------------- */

.page-powersystem .main-title-box {
	background-image: url(../images/development/powersystem/bg-sp.jpg);
}

/* ---------------
DEVELOPMENT SAFEOPERATION
--------------- */

.page-safeoperation .main-title-box {
	background-image: url(../images/development/safeoperation/bg-sp.jpg);
}

/* ---------------
DEVELOPMENT CERTIFICATION
--------------- */

.page-certification .main-title-box {
	background-image: url(../images/development/certification/bg-sp.jpg);
}

/* ---------------
INSTRUCTION CHAIR
--------------- */

.page-chair .main-title-box {
	background-image: url(../images/instruction/chair/bg-sp.jpg);
}

/* ---------------
INSTRUCTION CROSS-DISCIPLINARY
--------------- */

.page-cross-disciplinary .main-title-box {
	background-image: url(../images/instruction/cross-disciplinary/bg-sp.jpg);
}

/* ---------------
INSTRUCTION GRADUATE
--------------- */

.page-graduate .main-title-box {
	background-image: url(../images/instruction/graduate/bg-sp.jpg);
}

/* ---------------
INSTRUCTION SUWA
--------------- */

.page-suwa .main-title-box {
	background-image: url(../images/instruction/suwa/bg-sp.jpg);
}

/* ---------------
INSTRUCTION SKILLDEVELOPMENT
--------------- */

.page-skilldevelopment .main-title-box {
	background-image: url(../images/instruction/skilldevelopment/bg-sp.jpg);
}

/* ---------------
INSTRUCTION LECTURES
--------------- */

.page-lectures .main-title-box {
	background-image: url(../images/instruction/lectures/bg-sp.jpg);
}

/* ---------------
SUPPORT
--------------- */

.page-support .main-title-box {
	background-image: url(../images/support/bg-sp.jpg);
}


@media screen and (min-width: 479px) {
.upper_header .title01 img {
	width:88%;
}
.main,
.lower-img-menu-container {
	padding-left:20px;
	padding-right:20px;
}
.header_menu_sub ul {
	margin:0 -21px;
}
.front .lower-img-menu .image-box {
    padding-bottom:10px;
	font-size:22px;
}
.paging .link_page {
	padding:8px 2px;
	min-width:46px;
}
.lower-img-menu div {
    font-size: 22px;
}
.footer-body li a {
	padding-left:20px;
	padding-right:20px;
}

/* ---------------
TOP
--------------- */

.topics-box .label-box {
    min-height: 60px;
}
.topics-grid .image-box img {
    max-height: 130px;
}
}

@media screen and (min-width: 768px) {
.nav-open-btn {
	display:none;
}

.search {
	width:210px;
	padding:20px 5px;
}

.search input[type=text] {
	background-color:#e2e2e2;
}

.header_menu > ul > li {
	font-size:80%;
}

.header_menu > ul,
.header_menu_sub ul {
	display:table;
	width:100%;
	max-width:1220px;
	margin:0 auto;
	padding-left:10px;
	padding-right:10px;
}

/* Return Top */

.pageTop a {
	position:absolute;
	bottom:0;
	right:0;
	-webkit-backface-visibility:hidden;
	-moz-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	-o-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-font-smoothing:antialiased;
	transition:opacity .25s ease-in-out;
	-moz-transition:opacity .25s ease-in-out;
	-webkit-transition:opacity .25s ease-in-out;
	display:block;
	width:70px;
	height:70px;
	margin:0;
	padding:0;
	background:url(../images/ico-top.svg) no-repeat 50% 45% #000;
	background-size:27px 16px;
	text-decoration:none;
	line-height:0;
	color:#fff;
	opacity:1;
}

.pageTop a:hover {
	text-decoration:none;
	opacity:0.8;
}

.header_menu > ul {
	position:relative;
	background-color:transparent;
}

.upper_header ul {
	display:table;
	margin-top:12px;
	margin-bottom:12px;
	margin-left:auto;
	padding-left:0;
	overflow:hidden;
}

.upper_header li,
.header_menu > ul > li,
.header_menu_sub li {
	position:relative;
	display:table-cell;
	border-top:none;
	padding:0;
	text-align:center;
}

.upper_header li a {
	display:inline-block;
	padding:21px 15px;
}

.upper_header .contact a {
	background-color:#15329b;
	color:#fff;
}

.upper_header li a .icon {
	position:relative;
	left:-10px;
}

.header_menu {
	display:block;
	width:100%;
	font-size:13px;
}

.header_menu > ul > li.menu-development > div,
.header_menu > ul > li.menu-instruction > div {
    background: none;
    padding: 0;
}

.header_menu > ul > li.menu-development > div::before,
.header_menu > ul > li.menu-instruction > div::before {
    display: inline-block;
    content: '';
    width: 9px;
    height: 6px;
    background: url(../images/ico-chevron-down.svg);
    transform: translateY(-50%);
    margin-right: 5px;
}

.header_menu > ul > li.menu-development:hover > div::before,
.header_menu > ul > li.menu-instruction:hover > div::before {
    background: url(../images/ico-chevron-up.svg);
}

.header_menu > ul > li.menu-development:hover > ul.pulldown,
.header_menu > ul > li.menu-instruction:hover > ul.pulldown {
    display: block;
}

.header_menu > ul > li > ul.pulldown {
    position: absolute;
    padding: 30px;
    width: 350px;
    top: 46px;
    left: 57px;
    box-shadow: -10px 1px 10px rgba(0, 0, 0, 0.18);
}

.header_menu > ul > li > ul.pulldown > li {
    text-align: left;
    padding: 10px 0;
    border-top: none;
    border-bottom: 1px solid #e1e1e1;
}

.header_menu > ul > li > ul.pulldown > li:first-child {
    padding-top: 0;
}

.header_menu > ul > li > ul.pulldown > li:has(a:hover),
.header_menu > ul > li > ul.pulldown > li.stay {
    border-bottom: 1px solid #f02980;
}

.header_menu > ul > li > ul.pulldown > li > a {
    padding: 0;
}
    
.header_menu > ul > li > ul.pulldown > li.stay > a > div::after {
    content: none;
}
    
.header_menu > ul > li > ul.pulldown > li > a > div > i {
    margin-right: 8px;
}

.header_menu > ul > li.stay > a > div:after,
.header_menu > ul > li > a > div:after,
.header_menu > ul > li.menu-development > div:after,
.header_menu > ul > li.menu-instruction > div:after,
.header_menu > ul > li.menu-development.stay > div:after,
.header_menu > ul > li.menu-instruction.stay > div:after,
.footer-body li.stay a div:after,
.footer-body li a div:after {
	position:absolute;
	left:0;
	right:0;
	bottom:-10px;
	display:block;
	margin-left:auto;
	margin-right:auto;
	content:"";
	width:0;
	transition:width .25s ease-in-out;
	-moz-transition:width .25s ease-in-out;
	-webkit-transition:width .25s ease-in-out;
	height:1px;
	background-color:#f82988;
}

.header_menu > ul > li.stay > a > div:after,
.header_menu > ul > li > a:hover > div:after,
.header_menu > ul > li.menu-development.stay > div:after,
.header_menu > ul > li.menu-instruction.stay > div:after,
.header_menu > ul > li.menu-development:hover > div:after,
.header_menu > ul > li.menu-instruction:hover > div:after,
.footer-body li.stay a div:after,
.footer-body li a:hover div:after {
	width:100%;
}

.header_menu .menu-home {
	width:10%;
}

.header_menu .menu-about {
	width:15%;
}

.header_menu .menu-development {
	width:15%;
}

.header_menu .menu-instruction {
	width:15%;
}

.header_menu .menu-support {
	width:15%;
}

.header_menu .menu-topics {
	width:15%;
}

.header_menu .menu-access {
	width:15%;
}

.header_menu > ul > li > a {
	padding:20px 5px 30px;
}

.header_menu > ul > li > a:hover {
	background-color:transparent;
}

.header_menu > ul > li:last-of-type > a {
	padding-right:0;
	text-align:right;
}

.header_menu > ul > li > a > div,
.header_menu > ul > li.menu-development > div,
.header_menu > ul > li.menu-instruction > div {
	position:relative;
	display:inline-block;
}
.header_menu_sub {
	margin:-20px auto 20px;
	max-width:720px;
}

.header_menu_sub ul {
	border:none;
}

.header_menu_sub ul li {
	float:none;
	width:auto;
	border:none;
}

.header_menu_sub li a:hover,
.header_menu_sub li.stay a {
	text-decoration:none;
	background-color:transparent;
}

.header_menu_sub li a:after {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	display:block;
	content:'';
	margin-left:auto;
	margin-right:auto;
	width:100%;
	height:1px;
	background-color:#ccc;
}

.header_menu_sub li:hover a:after,
.header_menu_sub li.stay a:after {
	bottom:0;
}

.main-wrapper {
	padding-bottom:70px;
}

.main-title-box {
	padding-bottom:15.69%;
}

.front .main-title-box {
	padding-bottom:20%;
}

.label {
    padding: 0 5px;
}

.image-box-pic {
	float:right;
	padding-left:30px;
	padding-bottom:10px;
}

.image-box-pic img {
	max-width:380px;
}

.main {
	padding-top:40px;
}

.gsc-orderby {
	text-align:left;	
}

.main-content .table-wrapper table {
    width: 100%;    
}
    
.main-content .staff-table tr {
	display:table-row;
}

.main-content .staff-table th,
.main-content .staff-table td {
	display:table-cell;
}

.main-content .staff-table th {
	border-top:1px solid #c4c4c4;
}

.main-content .staff-table th,
.main-content .staff-table .staff-name {
	width:131px;
}

.main-content .staff-table td,
.main-content .staff-table .staff-name,
.main-content .staff-table .staff-position {
	border-top:1px solid #c4c4c4;
	border-bottom:1px solid #c4c4c4;
}

.main-content .staff-table .staff-position {
	padding:10px;
}

.main-content .staff-table2 tbody th {
	width:190px;
}

.main-content .staff-table3 th,
.main-content .staff-table3 .staff-name {
	width:360px;
}

.news-listings-box .image-box-pic {
	max-width:350px;
}

.topics-box {
	width:33.33%;
}

.lower-img-menu div {
    font-size:14px;
}

.footer {
	padding-left:10px;
	padding-right:10px;
	font-size:13px;
}

.footer-body {
	margin:0 auto;
	max-width:780px;
}

.footer ul,
.footer-lower ul {
	list-style:none;
	padding:0;
}

.footer-body ul {
	display:table;
	margin:0 auto;
	border-top:none;
	width:100%;
}

.footer-body li {
	display:table-cell;
	border-bottom:none;
}

.header_menu > ul > li:hover > a, .header_menu > ul > li.stay,
.footer-body li:hover a, .footer-body li.stay {
	background-color:transparent;
}

.footer-body li a {
	display:block;
	padding:30px 40px;
	color:inherit;
	text-align:center;
}

.f-company-address .company-address {
	display:inline-block;
	float:none;
	padding-right:20px;
}

.company-address:last-of-type {
	padding-right:0;
}

.header_menu > ul > li:first-of-type > a,
.footer-body li:first-of-type a {
	padding-left: 0;
	text-align: left;
}

.header_menu > ul > li:nth-child(7) > a,
.footer-body li:last-of-type a {
	padding-right: 0;
	text-align: right;
}

.footer-body li a div {
	position:relative;
	display:inline-block;
}

/* ---------------
TOP
--------------- */

.front .main-title-box {
	background-image: url(../images/front/bg-pc.jpg);
	background-size: cover;
	background-position: 0 50%;
}
/*
.front .main-title-box .title01 {
	width: 15.773%;
	padding-bottom: 13.536%;
	background: url(../images/front/title.svg) no-repeat 50%;    
}
*/
.front .topics-box,
.page-aircraft .topics-box,
.page-suwa .topics-box,
.page-instruction .topics-box,
.page-general .topics-box,
.page-material .topics-box,
.page-powersystem .topics-box,
.page-safeoperation .topics-box,
.page-certification .topics-box,
.page-chair .topics-box,
.page-cross-disciplinary .topics-box,
.page-graduate .topics-box,
.page-skilldevelopment .topics-box,
.page-lectures .topics-box {
	width: 25%;
}
.front .main-content {
	padding-bottom: 0;
}
.front .lower-img-menu .image-box {
    padding-bottom: 0;
}
.topics-grid .image-box img {
    max-height: 115px;
}
.topics-box .content-box {
	height: 160px;
}
.front .lower-img-menu {
	margin-left: -20px;
	margin-right: -20px;
}

/* ---------------
ABOUT
--------------- */

.page-about .main-title-box {
	background-image: url(../images/about/bg-pc.jpg);
}

.page-about .image-box-pic img {
	max-width: 258px;
}

/* ---------------
ABOUT AIRPLANE
--------------- */

.page-airplane .main-title-box {
	background-image: url(../images/about/airplane/bg-pc.jpg);
}

/* ---------------
ABOUT SPACE
--------------- */

.page-space .main-title-box {
	background-image: url(../images/about/space/bg-pc.jpg);
}

/* ---------------
ABOUT MATERIAL
--------------- */
/*
.page-material .main-title-box {
	background-image: url(../images/about/material/bg-pc.jpg);
}
*/

/* ---------------
ABOUT INSTRUCTION
--------------- */

.page-about-instruction .main-title-box {
	background-image: url(../images/about/instruction/bg-pc.jpg);
}

/* ---------------
AIRCRAFT
--------------- */

.page-aircraft .main-title-box {
	background-image: url(../images/aircraft/bg-pc.jpg);
}

.aircraft-parts-grid p {
    padding-bottom: 20px;
}

.aircraft-parts-grid .image-box:after {
	top: 50%;
	right: auto;
	left: -30px;
	-webkit-transform: translate(0, -50%);
	-moz-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0%, -50%);
	border-top: 16px solid transparent;
	border-bottom: 16px solid transparent;
	border-left: 16px solid #ccc;
}

/* ---------------
SUWA
--------------- */

.page-suwa .main-title-box {
	background-image: url(../images/suwa/bg-pc.jpg);
}

/* ---------------
INSTRUCTION
--------------- */

.page-instruction .main-title-box {
	background-image: url(../images/instruction/bg-pc.jpg);
}

/* ---------------
TOPICS
--------------- */

.page-topics .main-title-box {
	background-image: url(../images/topics/bg-pc.jpg);
}

.topic-sections-box .title02 {
	margin-bottom: 20px;
	text-align: left;
	font-size: 12px;
}

.topic-sections-box .formSelect {
	margin-left: 0;
}

.topic-box-cat-pc {
	float: left;
}

.topic-box-cat-pc a {
	display: inline-block;
	border-left: 1px solid #333;
	padding: 0 10px;
	line-height: 1.3;
}

.topic-box-cat-pc a {
	color: inherit;
}

.topic-box-cat-pc:first-of-type a {
	border-left: none;
	padding-left: 0;
}

.news-listings-box .caption {
	font-size: 12px;
}

/* ---------------
ACCESS
--------------- */

.page-access .main-title-box {
	background-image: url(../images/access/bg-pc.jpg);
}
    
/* ---------------
DEVELOPMENT
--------------- */

.page-development .main-title-box {
	background-image: url(../images/development/bg-pc.jpg);
}

.intro-grid {
    grid-template-columns: calc(50% - 20px) calc(50% - 20px);
}
    
/* ---------------
DEVELOPMENT GENERAL
--------------- */

.page-general .main-title-box {
	background-image: url(../images/development/general/bg-pc.jpg);
}

/* ---------------
DEVELOPMENT MATERIAL
--------------- */

.page-material .main-title-box {
	background-image: url(../images/development/material/bg-pc.jpg);
}

/* ---------------
DEVELOPMENT POWERSYSTEM
--------------- */

.page-powersystem .main-title-box {
	background-image: url(../images/development/powersystem/bg-pc.jpg);
}

/* ---------------
DEVELOPMENT SAFEOPERATION
--------------- */

.page-safeoperation .main-title-box {
	background-image: url(../images/development/safeoperation/bg-pc.jpg);
}

/* ---------------
DEVELOPMENT CERTIFICATION
--------------- */

.page-certification .main-title-box {
	background-image: url(../images/development/certification/bg-pc.jpg);
}

/* ---------------
INSTRUCTION CHAIR
--------------- */

.page-chair .main-title-box {
	background-image: url(../images/instruction/chair/bg-pc.jpg);
}

/* ---------------
INSTRUCTION CROSS-DISCIPLINARY
--------------- */

.page-cross-disciplinary .main-title-box {
	background-image: url(../images/instruction/cross-disciplinary/bg-pc.jpg);
}

/* ---------------
INSTRUCTION GRADUATE
--------------- */

.page-graduate .main-title-box {
	background-image: url(../images/instruction/graduate/bg-pc.jpg);
}

/* ---------------
INSTRUCTION SUWA
--------------- */

.page-suwa .main-title-box {
	background-image: url(../images/instruction/suwa/bg-pc.jpg);
}

/* ---------------
INSTRUCTION SKILLDEVELOPMENT
--------------- */

.page-skilldevelopment .main-title-box {
	background-image: url(../images/instruction/skilldevelopment/bg-pc.jpg);
}

/* ---------------
INSTRUCTION LECTURES
--------------- */

.page-lectures .main-title-box {
	background-image: url(../images/instruction/lectures/bg-pc.jpg);
}

/* ---------------
SUPPORT
--------------- */

.page-support .main-title-box {
	background-image: url(../images/support/bg-pc.jpg);
}
}

@media screen and (min-width: 1024px) {
.header_menu > ul > li {
	font-size:100%;
}
.label {
    padding:2px 10px;
}
.main,
.lower-img-menu-container {
	padding-left:120px;
	padding-right:120px;
}

/* ---------------
TOP
--------------- */

.topics-grid .image-box img {
    max-height: 125px;
}

.front .lower-img-menu {
	margin-left: -120px;
	margin-right: -120px;
}
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
	*,
	*:before,
	*:after,
	*:first-letter,
	p:first-line,
	div:first-line,
	blockquote:first-line,
	li:first-line {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
