@charset "UTF-8";

/*******************************************************************************************

COMMON

*******************************************************************************************/

html,body {
	font-size:16px;
	font-weight: 500;
	font-family: Arial, "游ゴシック", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, sans-serif;
	line-height: 1.8;
}

.container-fluid {
	max-width:1110px;/*　画面幅の上限　*/
	margin-left: auto;
	margin-right: auto;
}

a:hover,
a:active,
a:focus{
	transition: ALL 0.35s ease;
}

@media(max-width:480px) {
	html,body {
		font-size:14px;
	}
}

/*******************************************************************************************

HEADER

*******************************************************************************************/

header {
	-webkit-box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0px 5px 3px 0px rgba(0,0,0,0.33);
	box-shadow: 0px 5px 3px 0px rgba(0, 0, 0, 0.09);
	border-radius: 0;
	position: relative;
	z-index: 10;
}

.navbar-custom {
	background-color: #fff;
	margin-bottom: 0;
	border-radius: 0;
	border:none;
}

.navbar-custom > .container-fluid > div.headwrap{
	position: relative;
	padding-bottom: 90px;
	width: 100%;
	z-index: 50
}


.navbar-custom > .container-fluid > div.headwrap > .navbar-header {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	/* width: 36.72%; */
	max-width: 420px;
}

.navbar-custom > .container-fluid > div.headwrap > .navbar-header img{
	width: 100%;
}

.navbar-custom > .container-fluid > div.headwrap > .navbar-collapse {
	position: absolute;
	top: 0;
	right: -15px;
	padding: 0;
	font-size: 1rem;
}


/*****************/
/*グローバルメニュー*/
/*****************/

/*メインメニュー*/
.navbar-custom .navbar-nav {
	margin-top:0;
	margin-bottom:0;
	margin-right: 0;
	min-height: auto;
}

.navbar-custom .navbar-collapse .navbar-nav>li>a{
	color: #286db0;
	font-weight: bold;
	font-size: 1rem;
	padding:34px 30px;
	position: relative;
}
.navbar-custom .navbar-collapse .navbar-nav>li>a::after{
	position: absolute;
	content: "";
	display: block;
	height: 1em;
	border-right:  1px solid #ccc;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.navbar-custom .navbar-collapse .navbar-nav>li:first-of-type>a::before{
	position: absolute;
	content: "";
	display: block;
	height: 1em;
	border-right:  1px solid #ccc;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.navbar-custom .navbar-nav>li>button{
	position: absolute;
	top:0;
	right:0;
	width: 40px;
	height: 40px;
	background-color: #1E487C;
	color:#fff;
	font-size: 1.14rem;
}
.navbar-custom .navbar-nav>.open>button{
	background-color: rgba(255,255,255,0.8);
	color:#1E487C;
}


.navbar-custom .navbar-nav>li>a:hover,
.navbar-custom .navbar-nav>li>a:active,
.navbar-custom .navbar-nav>li>a:focus,
.navbar-custom .navbar-nav>.open>a,
.navbar-custom .navbar-nav>.open>a:focus,
.navbar-custom .navbar-nav>.open>a:hover{
	background-color: #ffffff;
	color: #1E487C;
}

/*サブメニュー*/
.navbar-custom .navbar-nav>li.dropdown>.dropdown-menu,
#scroll_menu ul>li.dropdown>.dropdown-menu{
	padding: 000;
	opacity: 0;
	display: block;
	pointer-events:none;
	transition: ALL 0.35s ease;
	left: 0;
	right: auto;
	border: none;
}

.navbar-custom .navbar-nav>li>.dropdown-menu>li>a{
	border-bottom: 1px solid #286db0;
	font-size: 0.875rem;
	font-weight: bold;
	padding: 18px;
	color: #286db0;
}

.navbar-custom .navbar-nav>li>.dropdown-menu>li>a:focus,
.navbar-custom .navbar-nav>li>.dropdown-menu>li>a:hover {
	text-decoration: none;
}


/******************************************************************************
【ドロップダウン挙動説明】
・PC閲覧（768px以上）はhoverでサブメニュー表示
・スマホ閲覧（767px以下）はメインメニュークリックでサブメニュー表示
・仕様上、サブメニューオープンのメニューが実ページを持ってても、サブメニュー表示処理でリンクできない

下処理はPC向けのメディアクエリ
*******************************************************************************/
@media (min-width:768px){
	.navbar-custom .navbar-nav>li.dropdown:hover > .dropdown-menu,
	#scroll_menu ul>li.dropdown:hover>.dropdown-menu{
		opacity: 1;
		pointer-events:auto;
	}
}

/*トグルメボタン*/
.navbar-custom .navbar-toggle{
	border-color:#1E487C;
	margin-right: 0;
}
.navbar-custom .navbar-toggle:active,
.navbar-custom .navbar-toggle:focus,
.navbar-custom .navbar-toggle:hover {
	background-color:#1E487C;
}
.navbar-custom .navbar-toggle .icon-bar{
	background-color: #1E487C;
}
.navbar-custom .navbar-toggle:active .icon-bar,
.navbar-custom .navbar-toggle:focus .icon-bar,
.navbar-custom .navbar-toggle:hover .icon-bar {
	background-color:#fff;
}


/****　縮小後表示　****/
@media (max-width:767px){
	header{
		-webkit-box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.33);
		-moz-box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.33);
		box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.33);
	}
	.navbar-custom > .container-fluid > div.headwrap {
		height: auto;
		padding-bottom: 0;
	}
	.navbar-custom > .container-fluid > div.headwrap > .navbar-header {
		position: relative;
		width: 100%;
		max-width: 100%;
		top: auto;
		left: auto;
		transform: none;
		padding: 0 15px;
	}
	.navbar-custom > .container-fluid > div.headwrap > .navbar-header a {
		display: block;
		width:60%;
		max-width: 298px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

	.navbar-custom > .container-fluid > div.headwrap > .navbar-collapse {
		position: static;
		top: auto;
		right: auto;
		transform: none;
		padding: 0 15px;
	}
	.navbar-custom .navbar-nav{
		margin-right: -15px;
	}
	.navbar-custom .navbar-collapse .navbar-nav>li,
	.navbar-custom .navbar-collapse .navbar-nav>li:first-of-type{
		border-bottom: 1px solid #1E487C;
		border-right: none;
		border-left: none;
	}
	.navbar-custom .navbar-collapse .navbar-nav>li>a::after,
	.navbar-custom .navbar-collapse .navbar-nav>li:first-of-type>a::before{display: none;}


	.navbar-custom .navbar-nav>li.dropdown>.dropdown-menu{
		margin-top: 0;
		display: none;
		opacity: 1;
		pointer-events: auto;
	}
	.navbar-custom .navbar-nav>li.dropdown.open>.dropdown-menu{
		display: block;
	}

	.navbar-custom .navbar-collapse .navbar-nav>li>a{
		padding: 10px;
		margin: 0;
		border-left: none;
		border-bottom:none;
	}
	.navbar-custom{
		border:none;
	}
	.navbar-custom > .container-fluid{
		position: absolute;
		width: 100%;
		background-color: #fff;
		z-index: 3;
		padding: 0;
	}
	.navbar-custom .navbar-nav>li>.dropdown-menu>li>a{
		padding: 10px;
		padding-left: 30px;
	}
}

#scroll_menu {
	position: fixed;
	background-color: #1E487C;
	width: 100%;
	z-index: 100;
}

#scroll_menu > .container-fluid {
	text-align: center;
}

#scroll_menu > .container-fluid > ul{
	margin-bottom: 0;
	list-style: none;
}

#scroll_menu > .container-fluid > ul > li {
	display: inline-block;
}
#scroll_menu > .container-fluid > ul > li > a{
	display: block;
	padding: 1em;
	text-decoration: none;
	color: #fff;
}
#scroll_menu > .container-fluid > ul > li:hover > a,
#scroll_menu > .container-fluid > ul > li:active > a,
#scroll_menu > .container-fluid > ul > li:hover > a{
	background-color: rgba(255,255,255,0.20);
}
#scroll_menu ul>li.dropdown>.dropdown-menu {
	margin-top: 0;
	border-radius: 0;
}

#scroll_menu ul>li.dropdown>.dropdown-menu>li+li{
	border-top:1px solid #1E487C;
}
#scroll_menu ul>li.dropdown>.dropdown-menu>li>a{
	padding: 10px;
}

/*******************************************************************************************

FOOTER

*******************************************************************************************/

footer {
	color:#ffffff;
	background-color: #1E487C;
	padding-top: 2em;
	padding-bottom: 2em;
}

footer .row > div:first-of-type img.footer-logo{
	margin-bottom: 1em;
}


footer .row > div:first-of-type p{
	margin-bottom: 0;
	padding: 0 15px;
}

footer .row > div:last-of-type{
	text-align: right;
}

footer .row > div:last-of-type nav ul{
	margin-top: 2.857em;
}

footer .row > div:last-of-type nav > ul >li{
	display: inline-block;
}
footer .row > div:last-of-type nav > ul >li+li{
	margin-left: 1em;
}
footer .row > div:last-of-type nav > ul >li>a{
	color: #fff;
}

footer .row > div:last-of-type div.information {
	display: inline-block;
	font-size: 1.875rem;
	vertical-align: top;
	line-height: 1rem;
	letter-spacing: 1px;
	white-space: nowrap;
	text-align: center;
}
footer .row > div:last-of-type div.information span{
	display: block;
	font-size: 0.75rem;
	vertical-align: top;
}

footer .row > div:last-of-type a.contacts_btn {
	display: inline-block;
	border: 1px solid #fff;
	color:#ffffff;
	text-decoration: none;
	line-height: 3rem;
	font-weight: bold;
	padding: 0 2em;
	margin-left: 1em;

}

footer .row > div:last-of-type a.contacts_btn:hover,
footer .row > div:last-of-type a.contacts_btn:active {
	background-color: #ffffff;
	color: #1E487C;
}


/* ページトップへ戻るボタン */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a {
	border: 1px solid #888888;
	border-radius: 3px;
	text-decoration: none;
	color: #888888;
	background-color: rgba(255,255,255,0.5);
	padding: 3px 18px;
	font-size: 2.0rem;
	text-align: center;
	display: block;
}
#page-top a:hover,
#page-top a:active {
}



/* コピーライト */
.copylight {
	color:#1E487C;
	text-align: center;
	border-bottom: 0.5rem solid #1E487C;
	font-size: 0.75rem;
	padding: 1em 0;
	line-height: 1;
}

/****　縮小後表示　****/
@media (max-width:767px){
	footer .row > div:first-of-type {
		text-align: center;
		margin-bottom: 1em;
	}
	footer .row > div:first-of-type img.footer-logo{
		margin-left:auto;
		margin-right: auto;
	}
	footer .row > div:last-of-type{
		text-align: center;
	}    

	footer .row > div:last-of-type nav ul{
		margin-top: 0;
	}
	footer .row > div:last-of-type div.information,
	footer .row > div:last-of-type a.contacts_btn{
		margin-left: 1em;
		margin-right: 1em;
		margin-bottom: 15px;
	}
}

/*******************************************************************************************

MAIN

*******************************************************************************************/

main {
	margin-bottom:50px;
	z-index: 1;
}


/****************/
/* パンくずリスト */
/***************/
.breadcrumb{
	background-color: transparent;
	margin: 0 0 5px;
	padding-top: 5px;
}

.breadcrumb>li{
	font-size: 0.875rem;
}

.breadcrumb>li+li:before{
	content:"|\00a0";
	color:#1E487C;
}

.breadcrumb>li>a{
	color:#1E487C;
}
.breadcrumb>li.active{
	color: #1E487C;
}


/***********************+/
/* 本ページ(サイドバーなし)*/
/*************+*********/

.primary.flatpage {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

/*************/
/* サイドバー */
/*************/

/* 表題 */
.secondary .sidebar-menu {
	margin-bottom: 30px;
}
.secondary .sidebar-menu h3 {
	margin-top: 0;
	margin-bottom: 10px;
}

/* メニュー本体 */
.secondary .sidebar-menu ul {
	list-style-type: none;
	margin-bottom: 55px;
	border-top: 2px solid #1E487C;
}
.secondary .sidebar-menu > ul > li {
	border-bottom: 1px solid #cccccc;
	line-height: 1.2;
	padding: 1px 0;
}
.secondary .sidebar-menu ul > li > a {
	padding: 15px;
	display: block;
	text-decoration: none;
	color: #1E487C;
	font-size: 1.0rem;
	font-weight: bold;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
}
.secondary .sidebar-menu ul > li:hover,
.secondary .sidebar-menu ul > li:active {
	text-decoration: none;
	background-color: #f3eee9;
}
.secondary .sidebar-menu ul > li > a:focus {
	text-decoration: none;
}
.secondary .sidebar-menu ul > li > a .fa {
	color: #0b3899;
	padding-right: 5px;
}

/*　選択したもの　*/
.secondary .sidebar-menu ul > li.active {
	background-color: #f5f5f5;
}

@media(max-width:767px){

	#breadcrumbarea div.container-fluid{
		padding: 0.5em 15px;
		margin-bottom: 2em;
	}
	.breadcrumb{
		color:#1E487C;
		white-space: nowrap;
		overflow: hidden;
		-o-text-overflow: ellipsis;
		text-overflow: ellipsis;
		margin-bottom: 15px;
	}
	.breadcrumb>li{
		display: inline;
	}

	.primary{
		margin-bottom: 50px;
	}

	.secondary .sidebar-menu ul {
		margin-bottom: 30px;
	}
	.secondary .sidebar-menu ul > li > a{
		font-size: 1rem;
		padding: 12px;
	}

}

/*******************************************************************************************

BOOTCMS　コンテンツ設定部分

*******************************************************************************************/

/* 見出し */

div.page-title {
	background-color: #1E487C;
	position: relative;
}

div.page-title > div.container-fluid {
	background-position: right;
	background-size: 70%;
	background-repeat: no-repeat;
	position: relative;
	padding-bottom: 33.3333%;
	z-index: 2;
	overflow: hidden;
}

@media (min-width: 1081px){
	div.page-title > div.container-fluid {
		padding-bottom: 360px;
	}
}

div.page-title > div.container-fluid::after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: #1E487C;
	background: -moz-linear-gradient(left, rgba(30, 72, 124,1) 0%, rgba(30, 72, 124,1) 30%, rgba(30, 72, 124,0) 60%, rgba(30, 72, 124,0) 80%, rgba(30, 72, 124,1) 100%);
	background: -webkit-linear-gradient(left, rgba(30, 72, 124,1) 0%,rgba(30, 72, 124,1) 30%,rgba(30, 72, 124,0) 60%,rgba(30, 72, 124,0) 80%,rgba(30, 72, 124,1) 100%);
	background: linear-gradient(to right, rgba(30, 72, 124,1) 0%,rgba(30, 72, 124,1) 30%,rgba(30, 72, 124,0) 60%,rgba(30, 72, 124,0) 80%,rgba(30, 72, 124,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1E487C', endColorstr='#1E487C',GradientType=1 );
	left: 1px;
	top: 0;
	z-index: 1;
}


div.page-title > div.container-fluid > h2 {
	margin: 0;
	font-size: 2.3125rem;
	color: #ffffff;
	font-weight: bold;
	position: absolute;
	z-index: 2;
	top: 44.4444%;
	left: 40px;
}


.lv1 {
	margin-top: 0;
	margin-bottom: 25px;
	border-top: solid 2px #1d487c;
	border-bottom: solid 1px #ccc;
}
.lv1 span {
	font-size: 1.5rem;
	color: #1d487c;
	display: inline-block;
	padding: 15px 10px 15px;
	font-weight: bold;
}


.lv2 {
	margin-top: 0;
	margin-bottom: 25px;
	position: relative;
	overflow: hidden;
}

.lv2 span {
	font-size: 1.25rem;
	color: #1E487C;
	font-weight: bold;
	position: relative;
}

.lv2 span::after{
	content: "";
	position: absolute;
	width: 1000%;
	height: 1px;
	background-color: #1E487C;
	left: 105%;
	left: calc(100% + 1em);
	top: 50%;
}



.lv3 {
	color: #333;
	font-size: 1.25rem;
	font-weight: bold;
	margin-top: 0;
	border-left:5px solid #1E487C;
	padding-left: 5px;
	margin-bottom: 25px;
}


.lv4 {
	color: #1E487C;
	font-size: 1.125rem;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 25px;
}

/* テキストのみ */
.text-only {
	margin-bottom: 25px;
}

.text-only > p{
	margin-bottom: 0;
}




/* 写真のみ */
.photo-only {
	margin-bottom: 35px;
	text-align: center;
}
.photo-only a img {
	display: inline-block;
}

/* 写真＋テキスト */
.photo-and-text {
	margin-bottom: 20px;
}
.photo-and-text:after {
	content: '';
	clear: both;
	display: table;
}
.photo-and-text p img {
	margin-bottom: 15px;
}
.photo-and-text p img {
	max-width: 40%;
}
.photo-and-text.photo-left img {
	float: left;
	margin: 0 15px 15px 0;
}
.photo-and-text.photo-right img {
	float: right;
	margin: 0 0 15px 15px;
}

/* 2列写真+キャプション & 3列写真+キャプション */
.two-photo ,
.three-photo {
	margin-bottom: 35px;
}
.two-photo a img ,
.three-photo a img {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	background-color: #ffffff;    
}
.two-photo a:hover img ,
.three-photo a:hover img {

	opacity: .7;
	background-color: #ffffff;
}

.two-photo .row div[class^="col"],
.three-photo .row div[class^="col"] {
	/*text-align: center;*/
}
.two-photo .row div[class^="col"] img,
.three-photo .row div[class^="col"] img {
	display: inline-block;
}
.two-photo .caption-title,
.three-photo .caption-title {
	font-size: 1rem;
	margin:10px 0;
	/* color: #1E487C; */
	line-height: 1.4;
	font-weight: bold;
	text-align: left;
}

.two-photo .caption-text,
.three-photo .caption-text {
	margin: 5px 0;
	line-height: 1.6;
	text-align: left
}

/** テーブル **/
.table-on{margin-bottom: 40px;}
table.standard-table,
table.responsive-table{
	width: 100%;
	border-collapse: collapse;
	border:1px solid #1E487C;
}


table.standard-table td,
table.responsive-table td{
	border:1px solid #dddddd;
	padding: 1em;
}

table.standard-table th,
table.responsive-table th{
	border:1px solid #dddddd;
	background-color: #eee;
	color: #000000;
	font-weight: normal;
	padding: 1em;
	width: 240px;
	white-space: nowrap;
}
.table-responsive::-webkit-scrollbar{height: 5px;}
.table-responsive::-webkit-scrollbar-track{background:#ddd;}/*バーの背景色*/
.table-responsive::-webkit-scrollbar-thumb{background:#999;}/*バーの色*/

@media (max-width: 767px) {
	table.standard-table th,
	table.responsive-table th,
	table.standard-table td,
	table.responsive-table td {
		padding: 0.5em;
	}
	table.responsive-table,
	table.responsive-table tbody,
	table.responsive-table th,
	table.responsive-table tr,
	table.responsive-table td {
		display: block;
		width: 100%;
		border: none;
	}

	table.responsive-table{
		border-top:1px solid #dddddd;
		border-left:1px solid #dddddd;
		border-right:1px solid #dddddd;
	}
	table.responsive-table th,
	table.responsive-table td{
		border-bottom:1px solid #dddddd;
		padding: 0.5rem 1rem;
	}

}



ul.dot{
	list-style:none;
	margin: 0;
	padding: 0;
}
ul.dot > li{
	padding-left: 1em;
	line-height: 1.8;
	position: relative;
}
ul.dot li:before{
	color: #1E487C;
	font-family: FontAwesome;
	content:"\2022";
	position: absolute;
	left: 0;
}

ol.counter{
	list-style:none;
	counter-reset:number;
	margin: 0;
	padding: 0;
}
ol.counter li{
	padding-left: 1em;
	line-height: 1.8;
	position: relative;
}
ol.counter li:before{
	color: #1E487C;
	counter-increment: number;
	content: counter(number)".";
	position: absolute;
	left: 0;
}

/* Youtube GoogleMap 埋め込みタグ レスポンシブ化 */
.youtube-box,
.gmap-box {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}
.youtube-box iframe,
.gmap-box iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.gmap-box iframe {
	pointer-events: none;    
}

/*  */
ul.circle-list {
	list-style-type: none;
}
ul.circle-list>li {
	padding-left: 1em;
	line-height: 1.4;
	padding-top: 0.2em;
	padding-bottom: 0.2em;
	position: relative;
}
ul.circle-list>li:before {
	content: '\2022';
	position: absolute;
	left: 0.25em;
}

/* オリジナルボタン */
.original-btn {
	display: inline-block;
	text-decoration: none;
	transition: all 0.35s ease;
	text-align: center;
	border-radius: 5px;
}
.original-btn:hover,
.original-btn:active,
.original-btn:focus {
	text-decoration: none;
}
.original-btn.theme-btn-l {
	padding: 20px 50px;
	font-size: 1.14rem;
	font-weight: bold;
	border: 2px solid #777777;
	background-color: #777777;
	color: #ffffff;
}
.original-btn.theme-btn-l:hover,
.original-btn.theme-btn-l:active,
.original-btn.theme-btn-l:focus {
	background-color: transparent;
	color: #777777;
}

.original-btn.theme-btn-s {
	padding:13px 20px;
	font-size: 1.0rem;
	font-weight: bold;
	border: 2px solid #777777;
	background-color: #777777;
	color: #ffffff;
}
.original-btn.theme-btn-s:hover,
.original-btn.theme-btn-s:active,
.original-btn.theme-btn-s:focus {
	background-color: transparent;
	color: #777777;
}

.original-btn.theme-btn-l.btn-orange,
.original-btn.theme-btn-s.btn-orange {
	border: 2px solid #FF8000;
	background-color: #FF8000;
}

.original-btn.theme-btn-l.btn-orange:hover,
.original-btn.theme-btn-l.btn-orange:active,
.original-btn.theme-btn-l.btn-orange:focus,
.original-btn.theme-btn-s.btn-orange:hover,
.original-btn.theme-btn-s.btn-orange:active,
.original-btn.theme-btn-s.btn-orange:focus {
	background-color: transparent;
	color: #FF8000;
}

.original-btn.theme-btn-l.btn-green,
.original-btn.theme-btn-s.btn-green {
	border: 2px solid #1E487C;
	background-color: #1E487C;
}

.original-btn.theme-btn-l.btn-green:hover,
.original-btn.theme-btn-l.btn-green:active,
.original-btn.theme-btn-l.btn-green:focus,
.original-btn.theme-btn-s.btn-green:hover,
.original-btn.theme-btn-s.btn-green:active,
.original-btn.theme-btn-s.btn-green:focus {
	background-color: transparent;
	color: #1E487C;
}

.original-btn.btn-1{width:8.33%}
.original-btn.btn-2{width:16.67%}
.original-btn.btn-3{width:25%}
.original-btn.btn-4{width:33.33%}
.original-btn.btn-5{width:41.67%}
.original-btn.btn-6{width:50%}
.original-btn.btn-7{width:58.33%}
.original-btn.btn-8{width:66.67%}
.original-btn.btn-9{width:75%}
.original-btn.btn-10{width:83.33%}
.original-btn.btn-11{width:91.67%}
.original-btn.btn-12{width:100%}

/****　縮小後表示　****/

/****　縮小後表示　****/
@media (max-width: 767px) {
	/* 見出し */
	/* 見出し */
	div.page-title > div.container-fluid > h2 {
		top: 50%;
		left: 5px;
		transform: translateY(-50%);
		font-size: 1.75rem;
	}

	.lv1 {
	}
	.lv2 {
	}
	.lv3 {
	}
	.lv4 {
	}

	table.standard th{
		padding: 0.5em;
	}
	table.standard td{
		padding: 0.5em;
	}
	table.theme-table th,
	table.theme-table td{
		padding: 0.5em;
	}


	.two-photo .row div[class^="col"],
	.three-photo .row div[class^="col"]{
		margin-bottom: 30px;
	}
	.two-photo .row div[class^="col"]:last-of-type,
	.three-photo .row div[class^="col"]:last-of-type{
		margin-bottom: 0;
	}
}

@media (max-width: 480px) {

	/* 写真＋テキスト */
	.photo-and-text .photo-area {
		display: block;
		text-align: center;
	}
	.photo-and-text.photo-left img,
	.photo-and-text.photo-right img {
		float: none;
		margin: 0 0 5px;
		display: inline-block;
		max-width: 100%;
	}
}



/*******************************************************************************************

TOP PAGE

*******************************************************************************************/
.top-page main,
.top-page header{
	margin-bottom:0px;
}
/****************/
/*メインビジュアル*/
/***************/
.slider-wrapper{
	position: relative;
	margin-bottom: 40px;
}
/*.slider-wrapper::after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,50,100,0.6);
}*/
.slider-wrapper p{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: #fff;
	margin: 0;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
	font-size: 2rem;
	font-weight: 600;
	width: 100%;
	text-align: center;
	max-width: 1080px;
	z-index: 5;
}

@media(max-width:767px){
	.slider-wrapper p{
		font-size: 1.5rem
	}
}

@media(max-width:600px){
	.slider-wrapper p{
		font-size: 1rem
	}
}

.slider-pro .sp-arrows {
	z-index: 3;
	margin-top: 0;
}
.slider-pro .sp-arrows .sp-arrow {
	width: auto;
	height: auto;
}
.slider-pro .sp-arrows .sp-next-arrow:after,
.slider-pro .sp-arrows .sp-previous-arrow:after {
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
	background-color: transparent;
	width: auto;
	height: auto;
	font-family: FontAwesome!important;
	content: '\f104'!important;
	font-size: 4.0rem;
	line-height: 1.0;
	color: #ffffff;
	text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.5);
	top: 60%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.slider-pro .sp-arrows .sp-next-arrow:before, .slider-pro .sp-arrows .sp-previous-arrow:before {
	display: none;
}

body.top-page div#slidearea {
	position: relative;
}


body.top-page div#top_slider div.slide{
	width: 100%;
	max-width: 1200px;
	padding-bottom: 495px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

body.top-page div#slidearea>img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
@media(max-width:767px){
	body.top-page div#slidearea>img{
		width: 33%;
		max-width: 213px;
	}
}


/*********/
/*ビジネス*/
/********/
#top-block-business {
	/* background-image: url(../files/top/bg_grid.gif); */
	background-repeat: repeat;
	background-position: center;
	/* padding: 2rem 0;*/
}

#top-block-sub {
	background-color: #eff8ff;
	padding: 2rem 0;
}

#top-block-news{
	padding:2rem 0; 
}

@media(max-width:767px){
	#topview {
		height: 410px;
	}
}

@media(max-width:480px){
	#topview {
		height: 240px;
	}
}

/*******************************************************************************************

SECOND PAGE

*******************************************************************************************/


/*******************************************************************************************

NEWS PAGE

*******************************************************************************************/


/* カテゴリタグの表示、デフォルトはグレー。 */

span.category a{
	color:#fff;
	font-size: 12px;
	line-height: 20px;
	width: 100px;
	text-align: center;
	display: inline-block;
	background-color: #ffb100;
	border-radius: 3px;
}
span.category.info a{ background-color: #85B200;}
span.category.blog a{ background-color: #FFA64D;}

body.news-page span.category a:active,
body.news-page span.category a:hover,
body.news-page span.category a:focus{
	text-decoration: none;
	opacity: 0.5;
}


/*********/
/*一覧画面*/
/********/

/* 補足：現状TOPページと同じ。 */

#news-list h2{
	/* border-top:2px solid #1E487C; */
	/* border-bottom:1px solid #DDDDDD; */
	font-size: 2.0rem;
	padding: 1rem;
	margin: 0;
	position: relative;
	font-weight: bold;
	/* color: #1E487C; */
	margin-bottom: 1.8rem;
	text-align: left;
	width: 100%;
}

#news-list h2 a{
	position: absolute;
	font-size: 1rem;
	display: inline-block;
	color: #fff;
	right: 0;
	top: 50%;
	text-decoration: none;
	transform: translateY(-50%);
	background-color: #1E487C;
	padding: 4px 10px;
	border: 1px solid #1E487C;
	border-radius: 3px;
	font-weight: normal;
}

#news-list h2 a:hover,
#news-list h2 a:focus,
#news-list h2 a:active{
	background-color: transparent;
	color: #1E487C;
}


#news-list dl {
	border-bottom: 1px solid #DDD;
	padding: 0 10px 1.4rem 10px;
}

#news-list dl dt{
	color: #000;
	margin-bottom: 10px;
}

#news-list dl dd a{
	color:#1E487C;
	text-decoration: underline;
}
#news-list dl dd a:hover,
#news-list dl dd a:focus,
#news-list dl dd a:active{
	text-decoration: none;
}

#news-list dl dd span.new{
	display: inline-block;
	font-size: 11px;
	background-color: #FF4B54;
	color: #fff;
	line-height: 16px;
	position: relative;
	padding: 0 6px 0 11px;
	margin-right: 15px;
	font-weight: bold;
}
#news-list dl dd span.new:after{
	content: "";
	border-top: 8px solid transparent;

	border-bottom: 8px solid transparent;
	border-left:8px solid #FF4B54;
	position: absolute;
	top: 0%;
	left: 100%;
	z-index: 1;
}

/* ページャー部分。非表示にする */
body.news-page div#news-list ul.pager li.disabled{
	display:none;
}

body.news-page div#news-list ul.pager li.previous > a,
body.news-page div#news-list ul.pager li.previous>span,
body.news-page div#news-list ul.pager li.next  > a,
body.news-page div#news-list ul.pager .next >span{
	float: none;
	border: none;
	background-color: transparent;
	color: #1E487C;
}

/***********/
/*記事ページ*/
/**********/

body.news-page div.content h3.content-title {
	color: #333;
	font-size: 1.43rem;
	font-weight: bold;
	margin-top: 0;
	border-left: 5px solid #1E487C;
	padding-left: 5px;
	margin-bottom: 1em;
}

/* ページャー部分。非表示にする */
body.news-page div.content ul.pager li.disabled{
	display:none;
}

body.news-page div.content p.content-data {
	text-align: right;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 14px 10px;
}

body.news-page div.content p.content-data span.date + span.category a{
	margin-left: 20px;
}

body.news-page div.content ul.pager li.previous > a,
body.news-page div.content ul.pager .previous>span,
body.news-page div.content ul.pager li.next  > a,
body.news-page div.content ul.pager .next >span{
	float: none;
	border: none;
	background-color: transparent;
	color: #1E487C;
}


@media (max-width:767px){
	#news-list dl dd a{
		display: block;
	}
	#news-list dl dd span.new{
		margin-bottom:8px;
	}


}
@media (max-width:480px){
	body.news-page div.news-list .col-xs-4 {
		width:50%;
	}
	span.category a{
		width: 70px;
	}
}

/*******************************************************************************************

FORM　PAGE

*******************************************************************************************/

body.form-page p.contact-number{
	font-weight: bold;
}

body.form-page p.contact-number span{
	font-size:2rem;
	color: #1E487C;
	font-weight: normal;
	line-height: 1em;
}



body.form-page div.tel-number,
body.form-page div.fax-number{
	display: inline-block;
	text-align: center;
	border:1px solid #dddddd;
	padding: 1rem 0;
	width: 50%;
	max-width: 315px;
}
body.form-page div.tel-number{border-radius: 5px 0 0 5px;}
body.form-page div.fax-number{border-radius: 0 5px 5px 0;border-left-width: 0}

body.form-page div.tel-number>p,body.form-page div.fax-number>p{margin-bottom: 0;line-height: 1;}
body.form-page div.tel-number>p:first-of-type,
body.form-page div.fax-number>p:first-of-type{color:#1E487C}
body.form-page div.tel-number>p:nth-of-type(2),
body.form-page div.fax-number>p:nth-of-type(2){color:#1E487C;font-size:2rem;line-height: 1.5;}




/*エラー表示時、トップがfixedの場合にラベルが見えるよう位置をずらす*/
body.form-page form#err{
	margin-top: -60px;
	padding-top: 110px;
}


body.form-page form div.form-group{
	margin-bottom:30px;
}


/* 入力欄表示 */
body.form-page form div.form-group label.control-label {
	display: block;
	padding: 0.5rem;
	color: #fff;
	background-color: #1E487C;
	border-radius: 0px;
	margin-bottom: 15px;
}

body.form-page form div.form-group .required {
	color: #ff0000;
}
body.form-page form div.form-group.has-error label.control-label {
	color:#a94442;
	background-color:#f2dede;
	border:1px solid #ebccd1;
}


body.form-page form div.form-group *.form-control{
	border-radius: 0px;
	border-width: 2px;
}

/* calendar入力 */
body.form-page form div.form-group div.calendar-group{
	display:flex;
}

body.form-page form div.form-group div.calendar-group label{
	display: table;
	position: relative;
}
body.form-page form div.form-group.has-error div.calendar-group label{
	margin-bottom: 2em;
}
body.form-page form div.form-group div.calendar-group input{
	width: auto;
	display:table-cell;
}

body.form-page form div.form-group div.calendar-group span:not(.label) {
	display:table-cell;
	padding: 0 0.5em;
	font-weight: normal;
}

body.form-page form div.form-group div.calendar-group span.label {
	position: absolute;
	left: 0;
	bottom: -2em;
}

@media (max-width:480px){
	body.form-page form div.form-group div.calendar-group{
		display:inline-block;

	}
	body.form-page form div.form-group div.calendar-group label{
		margin-left: auto;
	}
}


/*インライン入力部品*/
body.form-page form div.form-group .form-control.inline-parts {
	display: inline-block;
	width: auto;
	max-width: 100%;
}



body.form-page form div.form-group p.form-control-static {
	border:1px solid #CCCCCC;
	padding-left:10px;
	padding-right:10px;
}


body.form-page div.contact-complete div.tel-contact a.tel{
	font-size: 2.5em;
}

body.form-page form.confirm .form-group {
	margin-bottom: 0;
}

body.form-page form.confirm .submit-area{
	margin-top: 30px;
}

body.form-page form.confirm div.form-group label.control-label{
	margin-bottom: 0;
}

body.form-page form div.form-group .form-confirm-text {
	border: 1px solid #1E487C;
	padding: 15px 13px;
	margin-bottom: 0;
}

@media(max-width:767px){
	body.form-page div.tel-number,
	body.form-page div.fax-number{
		width: 100%;
		padding-left: 1rem;
		padding-right: 1rem;
		max-width: none;
	}
	body.form-page div.tel-number{
		border-radius: 5px 5px 0 0;
	}
	body.form-page div.fax-number{
		border-radius: 0 0 5px 5px;
		border-left-width: 1px;
		border-top-width: 0;
	}

	body.form-page form div.form-group .two-line > div:first-of-type{
		margin-bottom: 10px;
	}
}
@media(max-width:380px){
	body.form-page form .submit-area button{
		width:90%;
	}
	body.form-page form.confirm .submit-area button:first-of-type{
		margin-bottom: 3rem;
	}
}


/*******************************************************************************************

サイトマップ用テーブル　

*******************************************************************************************/


table.sitemap-table {
	width: 100%;
}
table.sitemap-table th,
table.sitemap-table td {
	line-height: 1.2;
	border-top: none;
	border-bottom: 1px solid #cccccc;
	padding: 20px;
}
table.sitemap-table th {
	font-size: 1.2rem;
	width: 50px;
	white-space: nowrap;
	font-weight: normal;
}
table.sitemap-table a {
	color: #000000;
	text-decoration: none;
}
table.sitemap-table a:hover,
table.sitemap-table a:active,
table.sitemap-table a:focus {
	color: #1E487C;
}
table.sitemap-table td {
	font-size: 1.2rem;
}
table.sitemap-table td a {
	display: inline-block;
	position: relative;
	padding-left: 10px;
}
table.sitemap-table td a:not(:last-child) {
	margin-bottom: 15px;
}
table.sitemap-table td a:before {
	content: '\f0da';
	font-family: FontAwesome;
	position: absolute;
	top: 0;
	left: 0;
	color: #1E487C;
}

@media (max-width: 767px) {
	table.sitemap-table,
	table.sitemap-table tbody,
	table.sitemap-table tr,
	table.sitemap-table th,
	table.sitemap-table td {
		display: block;
	}
	table.sitemap-table th {
		width: auto;
		white-space: normal;
		border-bottom: none;
		padding: 15px 10px;
	}
	table.sitemap-table td {
		padding: 0 20px;
	}
	table.sitemap-table td a {
		margin-bottom: 15px;
	}
}

/*******************************************************************************************

Margin

*******************************************************************************************/
/* margin-top */
.mt-0 {margin-top: 0!important;}
.mt-10 {margin-top: 10px!important;}
.mt-20 {margin-top: 20px!important;}
.mt-25 {margin-top: 20px!important;}
.mt-30 {margin-top: 30px!important;}
.mt-40 {margin-top: 40px!important;}
.mt-50 {margin-top: 50px!important;}
.mt-60 {margin-top: 60px!important;}

/* margin-bottom */
.mb-0 {margin-bottom: 0!important;}
.mb-10 {margin-bottom: 10px!important;}
.mb-20 {margin-bottom: 20px!important;}
.mb-25 {margin-bottom: 25px!important;}
.mb-30 {margin-bottom: 30px!important;}
.mb-40 {margin-bottom: 40px!important;}
.mb-50 {margin-bottom: 50px!important;}
.mb-60 {margin-bottom: 60px!important;}


/*******************************************************************************************

追加

*******************************************************************************************/

/** 実績ページ内リンクメニュー **/

ul.archive-nav {
	list-style: none;
	display: block;
	width: 100%;
}

ul.archive-nav li {
	display: inline-block;
}

ul.archive-nav li + li{
	margin-left: 10px;
}

ul.archive-nav li a {
	display: inline-block;
	text-decoration: none;
	color: #ffffff;
	background-color: #1E487C;
	padding: 0.5rem;
	padding-bottom: 1rem;
	border-radius: 5px;
	border: 1px solid #1E487C;
	position: relative;
}

ul.archive-nav li a::after {
	font-family: "FontAwesome";
	content: "\f0dd";
	position: absolute;
	left: 50%;
	bottom: 5px;
	transform: translateX(-50%);
}

ul.archive-nav li a:hover ,
ul.archive-nav li a:active ,
ul.archive-nav li a:focus {
	color: #1E487C;
	background-color: #ffffff;
}


