@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
/*------------------------

背景

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

html {
	font-size: 62.5%;
	overflow: -moz-scrollbars-vertical;
}
body {
	background-color: #fff;
	word-wrap: break-word;
	font-family: 'Noto Sans Japanese', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 1.6rem;
	color: #000;
	font-weight: 400;
	line-height: 1.61;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
}
.wrap {
	width: 100%;
	max-width: 1200px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 50px 0;
}
.head-wrap {
	width: 100%;
	max-width: 1200px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}
.small-wrap {
	width: 94%;
	max-width: 980px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}

@media only screen and (max-width: 1240px) {
.wrap {
	width: 94%;
}
.main-box .wrap {
	width: 100%;
}
}

@media only screen and (max-width: 980px) {
.head-wrap {
	width: 94%;
	max-width: 980px;
	height: auto;
	min-height: 100%;
	margin: auto;
	padding: 0;
}
}

@media only screen and (max-width: 767px) {
body {
	font-size: 1.6rem;
}
.wrap {
	padding: 30px 0;
}
}
ul {
	display: block;
	list-style: none;
	margin: 0;
}
/*------------------------

ヘッダー

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

header {
}

@media only screen and (max-width: 1260px) {
}

@media only screen and (max-width: 1023px) {
}

@media only screen and (max-width: 767px) {
}
/*------------------------

ボタン

------------------------*/
a {
	display: inline-block;
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: color, background-color;
	transition-property: color, background-color;
}
a.link:after {
	content: '\f0c1';
	color: #3794de;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1.6rem;
	margin-left: 4px;
}
a.link:hover:after {
	color: #f03c69;
}
a.extarnal-link:after {
	content: '\f35d';
	color: #3794de;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1.6rem;
	margin-left: 4px;
}
a.extarnal-link:hover:after {
	color: #f03c69;
}
a.pdf-link:after {
	content: '\f1c1';
	color: #3794de;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1.6rem;
	margin-left: 4px;
}
a.pdf-link:hover:after {
	color: #f03c69;
}
/*------------------------

テーブル

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

table td {
	word-break: break-all;
}

@media (max-width: 767px) {
th, td {
	width: 100%;
	display: block;
}
th {
	width: 100%;
	display: block;
	background-color: #eee;
}
table .width-90, table .width-80, table .width-75, table .width-70, table .width-66, table .width-65, table .width-60, table .width-50, table .width-40, table .width-35, table .width-33, table .width-30, table .width-25, table .width-20, table .width-10 {
	width: 100%;
}
}
/*------------------------

フォーム

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

input[type='text'], input[type='password'], input[type='email'], input[type='url'], input[type='phone'], input[type='tel'], input[type='number'], input[type='datetime'], input[type='date'], input[type='month'], input[type='color'], input[type='time'], input[type='search'], input[type='datetime-local'] {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: .7em 0.5em;
}
label, select {
	cursor: pointer;
}
input[type='submit'], input[type='reset'], input[type='button'] {
	font-family: 'メイリオ', Meiryo, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Lucida Grande', 'Lucida Sans Unicode', 'ＭＳ Ｐゴシック', Arial, Verdana, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	-webkit-appearance: button;
}
.form {
	width: 100%;
	margin-bottom: 3em;
	background-color: #fff;
}
.form .label {
	float: right;
}

@media only screen and (max-width: 767px) {
.form {
	margin-bottom: 1.65em;
}
}
.form th, .form td {
	padding: 1em;
	border: 1px solid #e5e5e5;
	text-align: left;
}
.form th {
	width: 200px;
	background-color: #f0f0f0;
}
.form th.red {
	background-color: #ffe1e4;
	color: #000;
}
.form td.red {
	background-color: #fff4f5;
}

@media (max-width: 767px) {
.form th, .form td {
	width: 100%;
	margin-top: -1px;
	display: block;
}
.form td input[type='text'] {
	width: 100%;
}
.form td input[type='text'].width-20 {
	width: 40%;
}
}
.btn-area {
	margin: 0 auto;
	text-align: center;
}

@media only screen and (max-width: 767px) {
.btn-area .btn {
	width: 100%;
	margin: 0 auto 1em;
	display: block;
}
.form span.success, .form span.error {
	float: none;
}
}
/*------------
radio
------------*/

[type='radio']:checked, [type='radio']:not(:checked) {
	visibility: hidden;
}
[type='radio']:checked + label, [type='radio']:not(:checked) + label {
	padding-left: 28px;
	position: relative;
	display: inline-block;
	cursor: pointer;
	color: #666;
	line-height: 20px;
}
[type='radio']:checked + label:before, [type='radio']:not(:checked) + label:before {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	width: 18px;
	height: 18px;
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid #ddd;
	border-radius: 100%;
	background: #fff;
	content: '';
}
[type='radio']:checked + label:after, [type='radio']:not(:checked) + label:after {
	width: 12px;
	height: 12px;
	position: absolute;
	top: 4px;
	left: 4px;
	border-radius: 100%;
	background: #005eae;
	content: '';
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}
[type='radio']:not(:checked) + label:after {
	opacity: 0;
	-webkit-transform: scale(0);
	transform: scale(0);
}
[type='radio']:checked + label:after {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
/*------------------------

リスト

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

.list-flat {
	margin-bottom: 0;
}
.list-flat li {
	margin-bottom: 1em;
}
.list-flat li:last-child {
	margin-bottom: 0;
}
.list-left li {
	margin-right: 1em;
	float: left;
}
.list-left li:last-child {
	margin-right: 0;
}
.link {
	margin: 0;
}
.link li {
	list-style: none;
	line-height: 1.35;
}
.link li a {
	margin-left: 1em;
	display: block;
	text-decoration: none;
	text-indent: -1em;
}
.link li a:before {
	margin-right: .5em;
	content: '\f0da';
	color: #e60013;
	font: normal normal normal 14px/1 FontAwesome;
}

@media only screen and (max-width: 767px) {
.link li {
	margin-bottom: 1.65em;
	float: none;
}
.link li a {
	display: block;
}
}
.list-center {
	display: inline-block;
	zoom: 1;
}
.list-before li {
	padding-left: 1em;
	display: block;
}
.list-before li:before {
	width: 1em;
	margin-left: -1em;
	padding: .5em 0;
	display: block;
	float: left;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
	text-align: center;
}
.list-before li.second:before {
	width: 1em;
	margin-left: 0;
	padding: .5em 0;
	display: block;
	float: left;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
	text-align: center;
}
.list-after li {
	padding-right: 15px;
	position: relative;
}
.list-after li:after {
	margin-top: -12px;
	position: absolute;
	top: 50%;
	right: 10px;
	content: '';
	color: #007f2d;
	font-family: 'FontAwesome';
}
.list-centered {
	text-align: center;
}
.list-centered ul {
	display: inline-block;
	zoom: 1;
}
/*------------------------

画像

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

a:hover img {
	opacity: .6;
	filter: alpha(opacity=60);
	-moz-opacity: .6;
}
img.left {
	margin-right: 1em;
}
img.right {
	margin-left: 1em;
}
/*------------------------

レイアウト

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

.v-bottom {
	position: absolute !important;
	right: 0;
	bottom: 0;
}
.v-center {
	width: 100%;
	display: table;
}
.v-center p, .v-center > div, .v-center img {
	padding: 0 .5em;
	display: table-cell;
	vertical-align: middle;
}

@media only screen and (max-width: 1024px) {
.v-center img {
	min-width: 150px;
	margin: 0;
	padding: 0 10px;
}
}

@media only screen and (max-width: 767px) {
.v-center p, .v-center div {
	width: 100%;
	margin: 0 0 1.6em;
	padding: 0;
	display: block;
	text-align: left;
}
.v-center img {
	margin: 0 0 1.6em;
	padding: 0;
	display: block;
}
}
img {
	vertical-align: bottom;
}
.img-centered img {
	margin: 0 auto;
	display: block;
}
.btn-centered {
	text-align: center;
}
/*------------------------

Typography

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

i {
	margin: 0 .5em;
	color: #005eae;
}
em, i {
	font-style: normal;
}
.red {
	color: #c3000f;
}
/*------------------------

余白

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

.mt-05 {
	margin-top: -5px;
}
.mt05 {
	margin-top: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt70 {
	margin-top: 70px;
}
.mt100 {
	margin-top: 100px;
}
.mt_20 {
	margin-top: -20px;
}
.mtb05 {
	margin-top: 5px;
	margin-bottom: 5px;
}
.mtb10 {
	margin-top: 10px;
	margin-bottom: 10px;
}
.mtb15 {
	margin-top: 15px;
	margin-bottom: 15px;
}
.mtb20 {
	margin-top: 20px;
	margin-bottom: 20px;
}
.mtb30 {
	margin-top: 30px;
	margin-bottom: 30px;
}
.mb05 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.ml05 {
	margin-left: 5px;
}
.ml10 {
	margin-left: 10px;
}
.ml20 {
	margin-left: 20px;
}
.ml30 {
	margin-left: 30px;
}
.mr05 {
	margin-right: 5px;
}
.mr10 {
	margin-right: 10px;
}
.pt40 {
	padding-top: 40px;
}
/*------------------------

表示・非表示

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

br.sp_only {
	display: none;
}
br.two-line {
	display: block;
	margin-bottom: 1.5em;
	content: '';
}

@media only screen and (max-width: 960px) {
br {
	display: none;
}
br.both {
	display: block;
}
br.two-line {
	display: block;
}
br.over768 {
	display: block;
}
br.sp_only {
	display: block;
}
}

@media only screen and (max-width: 767px) {
br.over768 {
	display: none;
}
}
.hidden {
	display: none;
	visibility: hidden;
}
.visible-phone {
	display: none !important;
}
.visible-tablet {
	display: none !important;
}
.hidden-desktop {
	display: none !important;
}
.visible-desktop {
	display: inline-block !important;
}

@media (min-width: 768px) and (max-width: 980px) {
.hidden-desktop {
	display: inherit !important;
}
.visible-desktop {
	display: none !important;
}
.visible-tablet {
	display: inherit !important;
}
.hidden-tablet {
	display: none !important;
}
}

@media (max-width: 767px) {
.hidden-desktop {
	display: inherit !important;
}
.visible-desktop {
	display: none !important;
}
.visible-phone {
	display: inherit !important;
}
.hidden-phone {
	display: none !important;
}
}
/*------------------------

clearfix

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

.clearfix:before, .clearfix:after {
	height: 0;
	display: block;
	overflow: hidden;
	content: '.';
}
.clearfix:after {
	clear: both;
}
.clearfix {
	zoom: 1;
} /* IE < 8 */
/*------------------------

ヘッダー

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

.area-head {
	display: block !important;
}
.header {
	width: 100%;
	padding: 0;
	position: relative;
	z-index: 999;
	background: #FFF;
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}
.box-head {
	width: 94%;
	max-width: 1200px;
	margin: 0 auto;
}
div.logo, h1.logo {
	float: left;
}
.box-head-right {
	float: right;
	padding: 26px 0 26px 0;
}
.box-head-right-top {
	padding: 10px 0 9px;
	border-bottom: 1px solid #CCC;
}

@media screen and (min-width:980px) {
.nocontact .box-head-right-top {
	padding-left: 145px;
}
}
.head-contact {
	width: 145px;
	float: left;
}
.gnav {
	/*	width: 650px;*/
	padding: 0 0 0 5px;
}
.gnav li {
	padding: 10px 1.6em 11px;
	font-weight: bold;
	float: left;
}
.gnav a {
	text-decoration: none;
	font-size: 1.8rem;
	color: #004583;
	font-family: 'Fira Sans', sans-serif;
	font-weight: 300;
}
.gnav-modal01, .gnav-modal02, .gnav-modal03, .gnav-modal04, .gnav-modal05, .gnav-modal06, .gnav-modal07, .gnav-modal08, .gnav-modal09 {
	width: 100%;
	position: absolute;
	z-index: 998;
	background: #FFF;
	display: none;
}
.box-modal {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0 30px 5px;
}
.box-modal-left {
	width: 220px;
	padding: 25px 20px 0 0;
	float: left;
}
.box-modal-center {
	width: 810px;
	margin: 25px 0 25px;
	padding: 0 0 0 187px;
	float: left;
	border-left: 1px solid #CCC;
}
.box-modal-right {
	width: 225px;
	padding: 15px 0 0;
	float: right;
}
.modal-tit {
	margin: 0 0 30px;
	padding: 0 0 30px;
	font-size: 167%;
	font-weight: bold;
	background: url(../img/gnav_line.png) 0 bottom no-repeat;
}
.modal-tit span {
	padding: 20px 0 0;
	display: block;
	font-size: 60%;
}
.modal-text {
	margin: 0 0 30px;
}
a.modal-btn {
	padding: 8px 12px;
	display: block;
	border: 1px solid #004583;
	color: #004583;
	font-weight: bold;
	background: url(../img/arrow01.png) 180px center no-repeat #FFF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
a.modal-btn:hover {
	color: #FFF;
	background: url(../img/arrow01_on.png) 180px center no-repeat #004583;
}
.box-modal-center li {
	width: 220px;
	margin: 0 30px 30px 0;
	float: left;
}
.box-modal-center li span {
	margin: 5px 5px 0 0;
	display: block;
	background: url(../img/arrow01.png) right center no-repeat;
	font-size: 93%;
	width: 180px;
	background-size: 26px;
}
.box-modal-center li span.width-wide {
	width: 210px;
}
.box-modal-center li a:hover span {
	color: #004583;
}
.box-modal-right li a {
	display: block;
	padding: 10px 0 10px 15px;
	background: url(../img/arrow01.png) left center no-repeat;
	border-bottom: 1px solid #CCC;
}
.box-modal-right li a:hover {
	color: #004583;
}
.modal-layer {
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 997;
	background: url(../img/black.png) 0 0 repeat;
}

@media screen and (max-width:1130px) {
.box-modal-center {
	width: 600px;
	padding: 0 0 0 30px;
}
}

@media screen and (max-width:980px) {
.box-head {
	width: 100%;
}
div.logo, h1.logo {
	margin: 0 auto 10px;
	padding: 10px 0 0;
	float: none;
}
.box-head-right {
	width: 94%;
	padding: 0;
	float: none;
	margin: 0 auto;
}
.box-head-right-top {
	padding: 0 0 10px;
	border-bottom: none;
}
#cse-search-form {
	width: 100%;
	margin: 0 0 10px;
	float: none;
}
input.l-search__text {
	width: calc(100% - 65px);
}
button.l-search__btn.gsc-search-button {
	width: 60px;
	float: right;
}
.nav-language {
	width: 160px;
	margin: 0;
}
.nav-language ul li {
	margin: 4px 10px 0 0;
	font-size: 77%;
}
.head-contact {
	width: 130px;
	float: right;
}
.gnav {
	display: none;
}
.box-modal {
	display: none;
}
}
/*------------------------

スマホナビ

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

.nav-sp {
	display: none;
}

@media screen and (max-width: 980px) {
.nav-sp {
	padding: 0 0 15px;
	display: block;
}
ul.accordion {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul.accordion p:hover, ul.accordion a:hover {
	color: #004583;
}
ul.accordion ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: none;
}
ul.accordion > li > p {
	margin: 0;
	padding: 0 15px;
	cursor: pointer;
	border: 1px solid #004583;
	color: #004583;
}
ul.accordion > li > p span {
	padding: 10px 0;
	background: url(../img/sp_menu.png) right 12px no-repeat;
	background-size: 20px;
	display: block;
}
ul.accordion > li > p span.open {
	background: url(../img/sp_menu_on.png) right 14px no-repeat;
	background-size: 16px;
}
ul.accordion > li > ul > li > p {
	margin: 0;
	cursor: pointer;
	border-bottom: 1px solid #CCC;
}
ul.accordion > li > ul > li > p span {
	padding: 10px 0 10px 15px;
	background: url(../img/sp_arrow02.png) right center no-repeat;
	background-size: 30px;
	display: block;
}
ul.accordion > li > ul > li > p span.open {
	background: url(../img/sp_arrow03.png) right center no-repeat;
	background-size: 30px;
}
ul.accordion > li > ul > li > a {
	padding: 10px 0 10px 15px;
	background: url(../img/sp_arrow01.png) right center no-repeat;
	background-size: 30px;
	display: block;
	border-bottom: 1px solid #CCC;
}
ul.accordion > li > ul > li > ul > li > p {
	margin: 0;
	cursor: pointer;
	border-bottom: 1px solid #CCC;
	background: #F6F6F6;
}
ul.accordion > li > ul > li > ul > li > p span {
	padding: 10px 0 10px 15px;
	background: url(../img/sp_arrow02.png) right center no-repeat;
	background-size: 30px;
	display: block;
}
ul.accordion > li > ul > li > ul > li > p span.open {
	background: url(../img/sp_arrow03.png) right center no-repeat;
	background-size: 30px;
}
ul.accordion > li > ul > li > ul > li a {
	padding: 10px 0 10px 15px;
	background: url(../img/sp_arrow01.png) right center no-repeat #F6F6F6;
	background-size: 30px;
	display : block;
	border-bottom: 1px solid #CCC;
}
ul.accordion > li > ul > li > ul > li > ul > li > a {
	padding: 10px 0 10px 15px;
	background: url(../img/sp_arrow01.png) right center no-repeat #E6E6E6;
	background-size: 30px;
	display: block;
	border-bottom: 1px solid #CCC;
}
}
.area-head a {
	color: #004583;
	text-decoration: none;
	letter-spacing: 1px;
	font-weight: 400;
}
.area-head a:hover {
	color: #bd0101;
}
/*------------------------

パンくず

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


.back-bread {
	width: 100%;
	padding: 8px 0;
	background: #dddddd;
	color: #004583;
}
.box-bread {
	max-width: 1200px;
	width: 94%;
	margin: 0 auto;
	padding: 0;
}
.box-bread li {
	padding: 0 0 0 20px;
	font-size: 93%;
	float: left;
}
.box-bread li:nth-child(1) {
	padding: 0;
	background: none;
}
.box-bread li a {
	color: #004583;
	padding-right: 20px;
}
.box-bread li a:hover {
	text-decoration: underline;
}
.box-bread li:after {
	display: inline-block;
	content: '/';
	color: #004583;
	vertical-align: middle;
}
.box-bread li:last-of-type:after {
	display: none;
}

@media screen and (max-width:980px) {
.back-bread {
	width: 100%;
	padding: 5px 0 7px;
}
.box-bread {
	width: 94%;
	margin: 0 auto;
}
.box-bread li {
	padding: 0 0 0 20px;
	font-size: 77%;
	background-size: 10px;
	display: inline;
    float: none;
}
}/*------------------------

main

------------------------*/
h1 {
	margin-bottom: 0;
}
.logo {
	margin: 17px 0 10px 0;
}
.main-img {
	float: right;
}

@media (max-width: 980px) {
.logo {
	margin-left: 8px;
	width: 50px;
}
}
.main-box {
	background: url(../img/main-back.jpg);
	border-top: 4px solid #c9c9c9;
}
.main-box .wrap {
	position: relative;
	padding: 0;
}
.main-box .wrap .main-text01 {
	position: absolute;
	top: 20px;
	left: 70px;
	width: 56.6%;
}
.main-box .wrap .main-text02 {
	position: absolute;
	bottom: 93px;
	left: 0;
}
.basic-head {
	font-size: 1.4rem;
	line-height: 5.2rem;
}
.basic-head span {
	font-size: 6rem;
	font-weight: 300;
	font-family: 'Fira Sans', sans-serif;
	display: block;
	color: #004583;
	position: relative;
	margin-bottom: 11px;
}
.basic-head span:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 37px;
	height: 1px;
	left: 23px;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #004583;
}
.center-head {
	font-size: 1.4rem;
	line-height: 5.2rem;
	text-align: center;
}
.center-head span {
	font-size: 6rem;
	font-weight: 300;
	font-family: 'Fira Sans', sans-serif;
	display: block;
	color: #004583;
	position: relative;
	margin-bottom: 11px;
}
.center-head span:before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 37px;
	height: 1px;
	left: 50%;
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #004583;
}

@media (max-width: 767px) {
.basic-head span {
	font-size: 4rem;
}
.center-head span {
	font-size: 4rem;
}
.center-head span:before {
	bottom: -11px;
}
.basic-head {
	font-size: 1.4rem;
	line-height: 5.2rem;
}
.basic-head {
	text-align: center;
}
.basic-head span:before {
	left: 50%;
	bottom: -11px;
}
.basic-head.news-head {
	text-align: left;
}
.basic-head.news-head span:before {
	left: 23px;
}
}
.news-box {
	position: relative;
}
.news-list {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 143px;
	height: 37px;
	background-color: #000;
	color: #fff;
	text-align: center;
	line-height: 37px;
	vertical-align: middle;
	text-decoration: none;
	border: 1px solid #000;
}
.news-list:hover {
	color: #000;
	background-color: #fff;
}
.news-inner-box {
	background-color: #f2f2f2;
	padding: 28px;
	border-bottom: 7px solid #d2d2d2;
	min-height: 229px;
	height: auto;
}
.news-inner-box ul {
	height: 160px;
	overflow-y: scroll;
}
.news-inner-box li {
	margin-bottom: 12px;
	margin-right: 32px;
/*
	text-indent: -100px;
	padding-left: 100px;
*/
}
.news-inner-box li .day {
	width: 100px;
	display: inline-block;
}
.news-inner-box.news-page li{
	margin-right: 0;
}
.news-inner-box span.content{
	display: block;
	padding-left: 100px;
}
.project-table em,
.news-inner-box li em {
	color: #fff;
	font-size: 1.2rem;
	padding: 0 5px;
	margin-right: 5px;
}
.project-table em.new,
.news-inner-box li em.new {
	background-color: #830000;
}
.project-table em.event ,
.news-inner-box li em.event {
	background-color: #836600;
}
.project-table em.other ,
.news-inner-box li em.info {
	background-color: #418300;
}
.project-table em,
.news-inner-box li em.other {
	background-color: #004583;
}
.news-inner-box li a {
	display: inline;
}
.event-btn {
	background-color: #004583;
	color: #fff;
	display: block;
	padding: 16px;
	text-decoration: none;
	border-bottom: #00294c 7px solid;
	text-align: center;
	max-width: 500px;
	width: 100%;
	margin: 0 auto 16px;
}
.member-btn {
	background-color: #313131;
	color: #fff;
	display: block;
	padding: 16px;
	text-decoration: none;
	border-bottom: #000 7px solid;
	max-width: 500px;
	width: 100%;
	margin: 0 auto 16px;
	text-align: center;
}
.event-btn img,
.member-btn img{
	width: 47px;
}
.event-btn:hover, .event-btn:hover img, .member-btn:hover, .member-btn:hover img {
	color: #fff;
	opacity: 1;
	-webkit-transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, -webkit-transform 0.3s;
	transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
}
.event-btn:hover {
	border-bottom: none;
	border-top: 7px solid #fff;
}
.member-btn:hover {
	border-bottom: none;
	border-top: 7px solid #fff;
}
.event-btn img, .member-btn img {
	margin-top: 4px;
}
.event-btn p, .member-btn p {
	margin-bottom: 12px;
}
.col-9.custom {
	width: 75%;
}
.col-3.custom {
	width: 21%;
}

@media (max-width: 1200px) {
.col-9.custom {
	width: 66%;
}
.col-3.custom {
	width: 30%;
}
}

@media (max-width: 767px) {
.news-inner-box {
	margin-bottom: 20px;
	padding: 16px;
}
.news-inner-box ul {
	height: 230px;
}
.news-inner-box li .day {
	display: block;
	width: 100%;
}
.news-inner-box li {
	margin-right: 20px;
	text-indent: 0;
	padding-left: 0;
	padding-bottom: 15px;
	border-bottom: 1px solid #dddddd;
}

	.news-inner-box span.content{
		padding-left: 0;
	}
.news-list {
	margin-top: 10px;
}
.col-9.custom {
	width: 100%;
}
.col-3.custom {
	width: 100%;
}
.fb-box {
	margin-bottom: 40px;
}
}

@media (max-width: 359px) {
.news-list {
	width: 100px;
}
}
.fb-box {
	overflow-x: hidden;
}
.white-area {
	background-color: #fff;
	color: #000;
	padding: 10px;
	font-size: 1.4rem;
	font-weight: bold;
	max-width: 250px;
	width: 100%;
	margin: 0 auto;
}
.gray-back {
	background-color: #f2f2f2;
	overflow: hidden;
}
.gray-back i{
	color: #000;
}

.upper-box {
	min-height: 80px;
	height: auto;
}
.upper-box img {
	width: 52px;
}
.blue-line-box {
	border: 1px solid #004583;
	padding: 20px 3%;
	text-align: center;
	min-height: 120px;
	height: auto;
	margin-top: 10px;
}
.blue-line01 {
	padding-top: 34px;
}
.blue-line-box i {
	color: #000;
}
img.mail {
	width: 180px;
	vertical-align: top;
	margin-top: 3px;
	margin-left: 7px;
}
p.graduation {
	color: #fff;
	font-weight: bold;
	font-size: 2rem;
	text-align: center;
	display: inline-block;
	margin: 0 auto 10px;
	padding: 5px 3%;
	background: -moz-linear-gradient(left, #026dab, #004878);
	background: -webkit-linear-gradient(left, #026dab, #004878);
	background: linear-gradient(to right, #026dab, #004878);
}
.white-area.intro-text {
	padding: 50px 5%;
	margin-top: 17px;
	line-height: 2.8rem;
	max-width: 100%;
	position: relative;
	border-bottom: 7px solid #c9c9c9;
	height: auto;
	min-height: 560px;
}
.white-area.intro-text:after {
	position: absolute;
	content: '';
	width: 230px;
	height: 360px;
	background-image: url(../img/building.png);
	right: -70px;
	z-index: 100;
	bottom: -59px;
	background-size: contain;
	background-repeat: no-repeat;
}
.access {
	position: relative;
}
.access-way {
	float: right;
	display: inline-block;
	background-image: url(../img/black.png);
	position: absolute;
	padding: 40px;
	right: 10px;
	top: 282px;
	z-index: 100;
	height: 380px;
}
.access-way p {
	color: #fff;
	line-height: 3.8rem;
	margin-bottom: 24px;
}
.access-detail {
	background-color: #fff;
	color: #000;
	padding: 10px;
	display: block;
	text-align: center;
	text-decoration: none;
}
.access-detail i {
	color: #000;
	-webkit-transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, -webkit-transform 0.3s;
	transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
}
.access-detail:hover {
	background-color: #000;
	color: #fff;
	opacity: .9;
	cursor: pointer;
}
.access-detail:hover i {
	color: #fff;
	-webkit-transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, -webkit-transform 0.3s;
	transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
}
#map {
	width: 100%;
	height: 450px;
}
@media (max-width: 1200px) {
.white-area.intro-text:after {
	right: -100px;
}
.access-way {
	font-size: 1.4rem;
	padding: 20px;
}
}

@media (max-width: 980px) {
.main-box .wrap .main-text02 {
	bottom: 30px;
	right: 0;
	width: 48%;
}
p.graduation {
	font-size: 1.8rem;
	display: block;
}
.blue-line-box {
	text-align: left;
}
}

@media (max-width: 960px) {
.white-area.intro-text:after {
	opacity: .3;
}
.access-way {
	position: static;
	height: auto;
	width: 100%;
	float: none;
}
.white-area.intro-text {
	border-bottom: none;
}
}

@media (max-width: 767px) {
.main-box .wrap .main-text02 {
	bottom: 16px;
	right: 0;
	width: 54%;
}
.main-under {
	font-size: 2.2rem;
}
.white-area.intro-text {
	font-size: 1.3rem;
	padding: 50px 2%;
	border-bottom: none;
}
.row.gutters section.col {
	margin-bottom: 0;
}
p.graduation {
	font-size: 1.6rem;
}
#map {
	height: 300px;
}
.blue-line01 {
	padding-top: 20px;
}
}

@media (max-width: 374px) {
.white-area.intro-text {
	font-size: 1.2rem;
}
}
.polygon .row {
	text-align: center;
	width: 100%;
	max-width: calc(1050px + 2%);
	margin-left: calc(75px - 2%);
}
.polygon .row .col-4 {
	height: 350px;
	background: url(../img/poly.png) no-repeat center;
	font-size: 1.6rem;
	background-size: auto;
	padding-top: 60px;
}
.polygon .row .col-4:nth-last-of-type(2) {
	margin-top: -30px;
	margin-left: 18.666%;
}
.polygon .row .col-4:last-of-type {
	margin-top: -30px;
	margin-right: 16.666%;
}
.polygon .row .col-4 span {
	display: block;
	font-size: 3rem;
	margin-top: 16px;
	font-family: 'Fira Sans', sans-serif;
	color: #004583;
}

@media only screen and (max-width: 1240px) {
.polygon .row {
	width: 100%;
	margin-left: 0;
}
}

@media only screen and (max-width: 970px) {
/*
.polygon .row .col-4 {
	height: 320px;
	background: url(../img/poly.png) no-repeat center;
	background-size: 270px;
	font-size: 1.4rem;
}
*/
.polygon .row .col-4 {
	height: 270px;
	background: url(../img/poly.png) no-repeat center;
	background-size: 230px;
	font-size: 1.4rem;
	padding-top: 50px;
}
.polygon .row .col-4 img {
	width: 60px;
}
.polygon .row .col-4 span {
	margin-top: 0;
}
}

@media only screen and (max-width: 767px) {
.polygon .row .col-4 {
	height: 280px;
	background: url(../img/poly.png) no-repeat center;
	background-size: 230px;
}
.polygon .row .col-4:nth-last-of-type(2) {
	margin-top: 0;
	margin-left: 0;
}
.polygon .row .col-4:last-of-type {
	margin-top: 0;
	margin-right: 0;
}
}
.wrap-outer01 {
	background-image: url(../img/back-poly01.png), url(../img/back-poly01.png), url(../img/back-poly01.png);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 600px), top -100px left 35%, top 240px right calc(50% - 664px);
}
.wrap-outer02 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly03.png), url(../img/back-poly02.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top 20px right calc(50% - 600px), bottom 140px left calc(50% - 732px);
}
.wrap-outer03 {
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png), url(../img/back-poly07.png), url(../img/back-poly05.png), url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), bottom -109px right calc(50% - 493px), bottom 112px left calc(50% - 523px), top 422px right calc(50% - 632px);
}
.wrap-outer04 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png),url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), top 422px right calc(50% - 632px);
}
.wrap-outer05 {
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png), url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), top 422px right calc(50% - 632px);
}
.wrap-outer06 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px);
}

@media only screen and (max-width: 1200px) {
.wrap-outer01 {
	background-image: url(../img/back-poly01.png), url(../img/back-poly01.png), url(../img/back-poly01.png);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: top 20px left -70px, top -100px left 35%, bottom 20px right -70px;
}
.wrap-outer02 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly03.png), url(../img/back-poly02.png);
	background-repeat: no-repeat, no-repeat;
	background-position: top 20px right -140px, bottom 160px left -70px;
}
.wrap-outer03 {
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png), url(../img/back-poly07.png), url(../img/back-poly05.png), url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), bottom -109px right calc(50% - 493px), bottom 112px left calc(50% - 523px), top 422px right calc(50% - 632px);
}
.wrap-outer04 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png), url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, ;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), top 422px right calc(50% - 632px);
}
.wrap-outer05 {
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png), url(../img/back-poly05.png);
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, ;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px), top 422px right calc(50% - 632px);
}

.wrap-outer06 {
	background-color: #f2f2f2;
	background-image: url(../img/back-poly04.png), url(../img/back-poly05.png), url(../img/back-poly06.png);
	background-repeat: no-repeat, no-repeat, no-repeat;
	background-position: top 20px left calc(50% - 748px), top 20px left calc(50% - 482px), top -130px right calc(50% - 600px);
}
}

@media only screen and (max-width: 1024px) {
.wrap-outer01 {
	background: none;
}

.wrap-outer02 {
	background: none;
	background: #f2f2f2;
}
.wrap-outer05,
	.wrap-outer03 {
	background: none;
}
.wrap-outer04 {
	background: none;
	background-color: #f2f2f2;
}
.wrap-outer06 {
	background: none;
	background-color: #f2f2f2;
}
}
@media only screen and (max-width: 767px) {
	#top-page .wrap-outer01 {
		background-image: url(../img/back-poly01.png), url(../img/back-poly01.png);
		background-repeat: no-repeat;
		background-position: top -22px left -36px, top 67px left 300px;
		background-size: 160px auto, 160px auto;
	}


}
/*------------------------

footer

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

footer {
	background-color: #004583;
	padding: 20px 0;
	color: #fff;
	font-size: 1.4rem;
}
footer .wrap {
	padding: 0;
}
footer .foot-main {
	float: left;
	font-size: 1.2rem;
	margin-right: 74px;
}
footer .foot-main p {
	margin-bottom: 0;
}
footer .foot-nav {
	float: left;
}
footer .foot-nav li {
	display: inline-block;
	margin-right: 24px;
}
footer .foot-nav li a {
	color: #fff;
	text-decoration: none;
}
footer .foot-nav li a:hover {
	text-decoration: underline;
}
footer .foot-logo {
	font-size: 2.2rem;
	margin-bottom: 16px;
	color: #fff;
}
footer .copy {
	color: #fff;
}
.copy {
	color: #fff;
	text-align: right;
}

@media only screen and (max-width: 1260px) {
}

@media only screen and (max-width: 1023px) {
}

@media only screen and (max-width: 767px) {
footer .foot-main {
	float: none;
	margin-right: 0;
	margin-bottom: 20px;
}
}
/*------------------------

ページトップへ戻る

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

#page-top {
	position: fixed;
	z-index: 99999;
	right: 20px;
	bottom: 20px;
}
#page-top a {
	width: 50px;
	height: 50px;
	padding: 9px 0 0;
	display: block;
	cursor: pointer;
	font-size: 1.3rem;
	text-align: center;
	background-color: #004583;
	color: #fff;
	border: 1px solid #fff;
}
#page-top a i {
	color: #fff;
	font-size: 3rem;
}
#page-top a:hover {
	background: #ccc;
	text-decoration: none;
}

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