@charset "utf-8";
/* CSS Document */


@font-face {
  font-family: 'NotoSansJP';
  src: url(../file/NotoSansJP-Medium.otf) format('opentype');
}


body,input,select,option,textarea{
	margin:0;
	padding:0;
	letter-spacing: 0.1em;
	color:#333;
	font-family:'NotoSansJP','メイリオ', sans-serif;
	border-radius: 0;
	word-wrap: break-word;
	max-width: 100%;
}

body{
	background: url(../images/topleft.png) no-repeat;
	word-break: break-all;
}

h1, h2, h3, h4, h5, h6, ul, ol, li, p, input, textarea, select, button{
	margin:0;
	padding:0;
	font-size: 100%;
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6, ul, ol, li{
	line-height: 1.25;
}

a,a:visited,a:hover{
	text-decoration:none;
	color:#333;
}

.content a,#news a{
	color: #005EE4;
}

.content a:hover,#news a:hover,#footermenu li a:hover{
	text-decoration: underline;
}

.content a:visited,#news a:visited{
	color: #B000BF;
}

a img{
	border: none;
	transition: .3s;
}

a[href] img:hover{
	opacity: .7;
}

img{
	max-width: 100%;
	height: auto;
}

ul{
	list-style: none;
}

/*トップページ*/
.inner{
	width:1000px;
	width: calc(100%);
	max-width: 1200px;
	margin: auto;
}

.flex{
	display: flex;
	justify-content: space-between;
	overflow: hidden;
}

header .flex{
	align-items: center;
}

.flex>*{
	float: left;
	margin-right: 10px;
}

#spmenu{
	display: none;
}

nav{
	border-top: 3px solid #0068b6;
	border-bottom: 3px solid #0068b6;
}

nav ul{
	position: relative;
}

nav .flex li{
	width: 20%;
	margin: 0;
	position: relative;
}

nav li::before,nav ul::before{
	content: "";
	display: block;
	background: #d4edf4;
	width: 1px;
	height: 50%;
	position: absolute;
	top: 25%;
	left: 0;
}

nav ul::before{
	left: auto;
	right: 0;
}

nav a{
	display: block;
	padding: 20px 5px;
	text-align: center;
	position:relative;
	letter-spacing: 0;
}

nav a::after{
	content: "";
	display: block;
	width: 0;
	height: 3px;
	background: #ffcc00;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transition: .3s;
}

nav a:hover::after{
	width: 50%;
	left: 25%;
}

#topimagewrap{
	background: #0068b6;
	padding: 10px 0 13px;
}

#topimagewrap img{
	width: 100%;
}

/*スライドショー*/

#sliderwrap{
	max-width: 1080px;
	margin: auto;
}
.bx-controls-auto{
	display: none;
}
.bx-wrapper {
	position: relative;
	margin: auto;
	padding: 0;
	*zoom: 1;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

#topimagewrap .inner{
	background: #FFF;
}

/*乗せたとき*/
.bx-wrapper .bx-prev:hover, .bx-wrapper .bx-next:hover{
}

/*クリック範囲*/
.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: calc(50% - 25px);
	outline: 0;
	width: 50px;
	height: 50px; /*スライドショーの高さに合わせて修正*/
	text-indent: -9999px;
	z-index: 99;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

.bx-wrapper .bx-prev::after,.bx-wrapper .bx-next::after,.bx-wrapper .bx-prev::before,.bx-wrapper .bx-next::before {
	content: "";
	display:block;
	width: 30%;
	height: 30%;
	border: 3px solid #FFF;
	border-top: none;
	border-right: none;
	transform: rotate(45deg);
	position: absolute;
	top: 31%;
	left: 38%;
}

.bx-wrapper .bx-prev::before,.bx-wrapper .bx-next::before{
	border: 5px solid rgba(0,0,0,0.5);
	border-top: none;
	border-right: none;
	top: calc(31% - 1px);
	left: calc(38% - 1px);
}

.bx-wrapper .bx-next {
	right: 0px;
}

.bx-wrapper .bx-next::after{
	transform: rotate(-135deg);
	left: 24%;
}

.bx-wrapper .bx-next::before{
	transform: rotate(-135deg);
	left: calc(24% - 1px);
}

.bx-wrapper .bx-pager {
	text-align: center;
	margin: auto;
	padding:10px 0;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	z-index: 10001;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

/*ボタンのデザイン*/
.bx-wrapper .bx-pager.bx-default-pager a {
	background: #D2DEFF;
	text-indent: -9999px;
	display: block;
	width: 15px;
	height: 15px;
	margin: 0 5px;
	border:1px solid #0068b6;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	opacity:0.5;
}

/*選択部分*/
.bx-wrapper .bx-pager.bx-default-pager a:hover {
	opacity:1;
}

.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #0068b6;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;
	border-radius: 0px;
	border:1px solid #D2DEFF;
}

/*お知らせ*/
#newswrap{
	padding: 40px 10px 80px;
}

#newswrap h2,#bussinesswrap h2{
	border-bottom: 3px solid #ffcc00;
	padding: 20px 0 20px 130px;
	font-size: 180%;
	font-weight: bold;
	background: url("../contents_images/news.png") no-repeat 20px center / 86px 60px;
}

#bussinesswrap h2{
	background-image: url("../contents_images/business.png");
}

#news{
	width: 600px;
	width: calc(100% - 370px);
}

.en{
	font-size: 50%;
	color: red;
	display: inline-block;
	margin-left: 30px;
	font-weight: normal;
}

#newswrap table{
	border-spacing: 0;
	width: 100%;
}

#newswrap td{
	vertical-align: top;
	padding: 20px 10px;
	border-bottom: 1px solid #CCC;
}

#newswrap td:first-of-type{
	width: 10em;
}

#facebook{
	width: 300px;
	height: 400px;
	margin-left: 50px;
	background: #f2f2f2;
	
}

#bussinesswrap{
	background: #e7f1f2;
	padding: 40px 10px 80px;
}

.aboutjigyou .bussinesscontent{
	background: #D7E6F1;
}

.bussiness{
	width: 32%;
	margin-top: 50px;
}

.bussinesscontent{
	background: #FFF;
	padding: 30px;
	min-height: 150px;
}

.bussinesscontent h3{
	text-align: center;
	font-weight: bold;
	margin-bottom: 20px;
	font-size: 130%;
}

.aboutjigyou .bussinesscontent h3{
	text-align: left;
}


.bussiness img{
	width: 100%;
}

.bussiness a:hover img{
	opacity: 0.7;
}

.bussiness span{
	display: block;
	padding: 15px;
	text-align: center;
	background: #ffcc00;
	color: #000;
	position: relative;
}

.bussiness a:hover{
	text-decoration: none;
}

.bussiness span::after{
	content: "";
	width: 30px;
	height: 1px;
	background: #000;
	position: absolute;
	top: 55%;
	right: 10%;
}
.bussiness span::before{
	content: "";
	width: 10px;
	height: 1px;
	background: #000;
	position: absolute;
	top: 55%;
	right: 10%;
	transform-origin: 100% 50%;
	transform: rotate(45deg);
}

#footermenu{
	background: #d4edf4;
	border-top: 1px solid #9cc7d8;
	padding: 30px 10px;
}

#footermenu>div>div{
	width: 18%;
}

#footermenu p a{
	display: block;
	background: rgba(255,255,255,0.6);
	padding: 7px 12px;
	margin-bottom: 15px;
	transition: .2s;
}

#footermenu p a:hover{
	background: rgba(255,255,255,1);
}

#footermenu li a{
	display: block;
	font-size: 85%;
	padding: 10px 0 10px 25px;
	position: relative;
}

#footermenu li a::before{
	content: "";
	display: block;
	background: #0068b6;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	position: absolute;
	left: 5px;
	top: 15px;
}

footer{
	background: #0068b6;
	padding: 20px 10px;
	color: #FFF;
	font-size: 85%;
}

footer .flex{
	justify-content: flex-start;
	align-items: center;
}

footer .flex div:first-of-type{
	margin: 0 30px 20px 0;
}

#copyright{
	text-align: center;
	font-size: 85%;
	margin-top: 10px;
}

/*下層共通*/

h1{
	background: #0068b6;
	text-align: center;
	color: #FFF;
	font-size: 200%;
	padding: 1em 0.5em;
}

.content{
	box-sizing: border-box;
	padding: 2em 2em 3em;
	line-height: 1.75;
	min-height: 400px;
}

.content h2{
	font-size: 130%;
	margin: 3em 0 0.5em;
	font-weight: bold;
	padding: 1em;
	background:#D7E6F1;
	border-left: 5px solid #0068b6;
	position: relative;
}

.content h2:first-child,.content h3:first-child{
	margin-top: 0;
}

.content h3{
	font-size: 120%;
	margin: 2em 0 1em;
	font-weight: bold;
	border-left: 5px solid #0068b6;
	padding-left: 1em;
}

.content h4{
	font-size: 110%;
	margin: 1.5em 0 0.5em;
	font-weight: bold;
}

.content ul, .content ol{
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

.content ul{
	list-style: disc;
	margin-top: 1em;
}

.content li{
	margin-left: 1.5em;
	line-height: 1.3;
	margin-bottom: 1em;
}

img{
	border:0;
	vertical-align:bottom;
	max-width: 100%;
	height: auto;
}

table{
	margin-top: 10px;
	margin-bottom: 10px;
}
table[border="1"]{
	border-collapse: collapse;
}
table th{
	padding: 5px;
	font-weight: bold;
	white-space: nowrap;
}
table[border="1"] > tbody > tr > th,table[border="1"] > thead > tr > th{
	border: 1px solid #999;
	background:#f2f2f2;
}
table td{
	padding: 5px;
}
table[border="1"] > tbody > tr > td{
	border: 1px solid #999;
}

iframe[src*="maps"]{
	width: 100%;
	height: 400px;
}

.button{
	display: block;
	font-size: 130%;
	margin: 20px auto;
	padding: 25px 15px;
	text-align: center;
	color: #FFF !important;
	background:#E15B00;
	width: 300px;
	box-sizing: border-box;
}

a{
	background:no-repeat center right;
}

a.thumbs{
	background-image: none !important;
	background-color: #F3F3F3;
}

a[target="_blank"],
a[href$="pdf"],
a[href$="xlsx"],
a[href$="xls"],
a[href$="docx"],
a[href$="doc"]{
	padding-right:20px;
	margin-right:3px;
	display: inline-block;
}

a[target="_blank"]{
	background-image:url(../contents_images/ico_blank.png);
}

a[href$="pdf"]{
	background-image:url(../contents_images/ico_pdf.png);
}

a[href$="xlsx"],
a[href$="xls"]{
	background-image:url(../contents_images/ico_xls.png);
}

a[href$="docx"],
a[href$="doc"]{
	background-image:url(../contents_images/ico_doc.png);
}


a[target="_blank"] img,
a[href$="pdf"] img,
a[href$="xlsx"] img,
a[href$="xls"] img,
a[href$="docx"] img,
a[href$="doc"] img{
	vertical-align:-3px;
	margin-right:-20px;
}

/*フォーム*/
.form{
	max-width: 500px;
	margin: auto;
}

.form table.formtable{
	width: 100%;
	border-spacing: 0;
}

input[type=text],select,textarea{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid #999;
	border-radius: 5px;
	padding: 5px;
	background: #f2f2f2;
	line-height: 1.3;
}

.form .formtable td{
	padding: 10px 0;
	border-bottom: 1px solid #DDD;
}

.form .formtable td:first-of-type{
	vertical-align: top;
	padding: 10px;
	width: 5em;
}

textarea{
	min-height: 8em;
}

/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
    color: #888; }

/* Firefox 18- */
:-moz-placeholder {
    color: #888; opacity: 1; }

/* Firefox 19+ */
::-moz-placeholder {
    color: #888; opacity: 1; }

/* IE 10+ */
:-ms-input-placeholder {
    color: #888 !important; }


input[type="submit"],input[type="button"]{
	display: block;
	width: 100%;
	max-width: 200px;
	text-align: center;
	border: 1px solid #999;
	padding: 10px 0;
	margin: 30px auto;
	cursor: pointer;
}


@media screen and (max-width:750px){
	.flex{
		flex-wrap: wrap;
	}
	.flex>*{
		margin-right: 0;
	}
	nav{
		display: none;
	}
	nav .flex li{
		width: 100%;
	}
	#logo{
		padding-right: 50px;
		position: relative;
		z-index: 10010;
		width: 100%;
		background: #FFF;
	}
	#catch{
		display: none;
	}
	header{
		position: sticky;
		left: 0;
		top: 0;
		border-bottom: 3px solid #0068b6;
		background: #FFF;
		z-index: 10009;
	}
	#spmenu{
		display: block;
		width: 50px;
		height: 50px;
		box-sizing: border-box;
		padding-top: 10px;
		position: absolute;
		top: 0px;
		right: 0px;
		z-index: 10010;
		background: #0068b6;
	}
	#spmenu hr{
		width: 50%;
		height: 1px;
		border: none;
		margin: 7px auto;
		background: #FFF;
	}
	.open #spmenu{
		position: fixed;
	}
	.open #spmenu hr{
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		left: 25%;
		transform-origin: 50% 50%;
		margin: 0;
	}
	.open #spmenu hr:nth-of-type(3){
		transform: rotate(-45deg);
	}
	header.open nav{
		display: block;
	}
	header ul{
		width: 100%;
		height: 100vh;
		box-sizing: border-box;
		padding: 90px 30px 100px;
		position: fixed;
		background: #0068b6;
		top: 0;
		left: 0;
		z-index: 5;
	}
	header ul a{
		font-size: 120%;
		position: relative;
		padding: 0.5em 1em 0.5em 2em;
		margin-bottom: 5px;
		background: #FFF;
	}
	
	header ul a::before{
		content: "";
		display: block;
		width: 10px;
		height: 10px;
		border: 3px solid #0068b6;
		border-top-color: transparent;
		border-left-color: transparent;
		transform: rotate(-45deg);
		position: absolute;
		left: 20px;
		top: calc(50% - 7px);
		transition: .2s;
	}
	.bx-wrapper .bx-pager{
		bottom: -50px;
	}
	#newswrap h2,#bussinesswrap h2{
		background-size: 43px 30px;
		background-position: 10px center;
		padding: 10px 0 10px 65px;
	}
	#news{
		width: auto;
	}
	#news table,#news tbody,#news tr,#news td{
		display: block;
	}
	#news td:nth-of-type(1){
		padding-bottom: 0;
		border: none;
	}
	#news td:nth-of-type(2){
		padding-left: 2em;
	}
	#facebook{
		margin: 30px auto 0;
	}
	.bussiness{
		width: 100%;
	}
	#footermenu>div>div{
		width: 100%;
	}
	#footermenu ul{
		margin-bottom: 30px;
	}
	#copyright{
		margin: 20px 0 0;
	}
	.content{
		padding: 2em 1em 3em;
		min-height: 200px;
	}
}

@media print{
	html {
		width: 1000px;
	}
	body{
		background: none;
	}
	
	#facebook>div{
		display: none;
	}
}