@charset "utf-8";

/* @import url(../other/fonts.googleapis.com_c88898); - not available */

/* reset */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%;
	vertical-align: baseline; background: transparent;
}
body {
	line-height: 1; color: #000; min-width: 320px;
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック","MS P Gothic","Osaka","Hiragino Kaku Gothic Pro", Verdana,Arial, Helvetica, sans-serif; 
	-webkit-text-size-adjust: none;
	overflow-x: hidden;
}

*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

ol, ul { list-style: none; }

:focus { outline: 0; }
img { max-width: 100%; }

/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing: 0; }


/*----- 共通内容 -----*/

.line0 { line-height: 0; }
.fl { float: left; }
.fr { float: right; }
.cl { clear: both; line-height: 0; }
.cen { text-align: center; }
.c_img { display: block; margin: 0 20px 20px 0;}
a:hover img { opacity:0.8;	filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; background: tranparent; }
.opa a:hover img { opacity:0.8;	filter: alpha(opacity=80); -ms-filter: "alpha( opacity=80 )"; background: tranparent; }
.clearfix:after { content: "."; display: block; visibility: hidden; height: 0.1px; line-height: 0; clear: both; }
.none { display: none; }
.tr { text-align: right; }
.border { border: 1px solid #ccc; }

.mt20 { margin-top: 20px; }
.mt30 { margin-top: 30px; }
.mt50 { margin-top: 50px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb50 { margin-bottom: 50px; }
.pb20 { padding-bottom: 20px; }
.pb30 { padding-bottom: 30px; }
.pb50 { padding-bottom: 50px; }

.red { color: #e00; }
.orange { color: #f50; }
.skyblue { color: #0088bc; }
.f12 { font-size: 12px; }
.f16 { font-size: 16px; }
.f20 { font-size: 20px; }
.bold { font-weight: bold; }

.p01 { font-size: 14px; line-height: 1.8; padding: 0 0 10px; }
.p02 { font-size: 13px; line-height: 1.4; padding: 0 0 10px; }
.p03 { font-size: 14px; line-height: 1.8; padding: 0 0 20px; }
.p04 { font-size: 14px; line-height: 1.8; padding: 0 0 50px; }

#loader {width:32px;height:32px;display:none;position:fixed;top:50%;left:50%;margin-top:-16px;margin-left:-16px;z-index:100;}
#fade {width:100%;height:100%;display:none;background-color:#fff;position:absolute;top:0px;left:0px;z-index: 50;}

#wrapper { width: 100%; min-width: 1050px; overflow: hidden; }
.wrap { width: 1050px; margin: 0 auto; }
.lower { width: 1000px; margin: 0 auto; }
.sp { display: none; }

#header { position: fixed; background: #fff; height:60px; width:100%; box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.1); z-index: 999; animation: fadeIn 3s ease 0s 1 normal; -webkit-animation: fadeIn 3s ease 0s 1 normal;  }
#header h1 { display: block; float: left; padding: 10px 0 5px 20px;}
#header h1 img	{ height:auto; display: block; margin: 0; }
#header .right { float: right; height: 60px; }
#header .right ul.btn { display: block; float: right; padding: 0; font-size: 13px; }
#header .right ul li.btn1 a { 
	display: block; 
	color: #fff; 
	width: 140px; 
	height: 30px; 
	padding: 10px 0; 
	text-align: center; 
	background: #1e4268;
	letter-spacing: 1px;
	text-decoration: none;
}
#header .right ul li.btn2 a { 
	display: block; 
	color: #fff; 
	width: 140px; 
	height: 30px; 
	padding: 10px 0; 
	text-align: center; 
	background: #000;
	letter-spacing: 1px;
	text-decoration: none;
}
#header .right ul li.btn1 a:hover,
#header .right ul li.btn2 a:hover { opacity: 0.9;} 
#header .right ul.menu { float: left; padding: 25px 20px 0; }
#header .right ul.menu li { float: left; font-size: 13px; letter-spacing: 1px; text-align: center; }
#header .right ul.menu li a { display: block; color: #000; text-decoration: none; width: 100%; margin: 0 auto; padding: 0 20px; }
#header .right ul.menu li a:hover { color: #1e4268; text-decoration: underline; }

.img01 { border-radius: 5px; }

#contents .pankuzu { padding: 20px 0 40px; }
#contents .pankuzu span { margin: 0 10px; }
#contents .pankuzu a { color: #333; }
#contents .pankuzu a:hover { color: #a40035; }

section a { color: #0088bc; }
section a:hover { text-decoration: none; }
section .frame { max-width: 750px; margin: 0 auto; }

.totop { display: none; font-size: 13px; padding: 20px 10px; text-align: right; }
.totop a { color: #555; }

#footer { padding: 80px 0 0; background: #1e4369; color: #fff; }
#footer h1 {  padding: 0 0 5px; }
#footer .f_address { width: 40%; float: left; }
#footer ul.f_btn { padding: 10px 0 0; }
#footer ul.f_btn li a { display: block;}
#footer ul.f_btn li a:hover { opacity: 0.9; }
#footer .copyright { font-family: "poppins",sans-serif; font-size: 11px; padding: 5px 0; }
#footer .f_menu { width: 60%; float: right; padding-bottom: 50px; }
#footer .f_menu h2 { font-size: 15px; font-weight: normal; padding-bottom: 30px;}
#footer .menu { width: 33%; float: left; font-size: 12px; padding: 0 20px; line-height: 1.8; border-right: 1px solid #355678; }
#footer .menu:nth-of-type(3) { border-right: none; }
#footer .menu a { color: #fff; text-decoration: none; }
#footer .menu a:hover { color: #fff; text-decoration: underline; }
#footer .menu li { display: block; padding: 0 15px 5px 0; letter-spacing: 1px; }


#footer a { color: #fff; text-decoration: none; transition: all 0.7s ease; }
#footer a:hover { text-decoration: underline; }
#footer .col2 { padding-bottom: 30px; }
#footer .col2 img { display: block; padding-bottom: 10px; }

/* キーフレーム */
@keyframes fadeIn {
	 0% { opacity: 0; }
	 100% { opacity: 1; }
}


/* fixedTop */
#fixedTop {
	right: 10px;
	bottom: 10px;
	width: 50px;
	height: 50px;
	line-height: 50px;
	color: #fff;
	font-size: 20px;
	text-align: center;
	text-decoration: none;
	display: none;
	background: #222;
	position: fixed;
	z-index: 9999;
	border-radius: 50%;
}

#fixedTop:hover {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0.7;
}
								
.col2 { width: 50%; float: left; margin-left: 0; box-sizing: border-box; }
.col3 { width: 33%; float: left; margin-left: 0; box-sizing: border-box; }
.col3:nth-of-type(3n+1) { clear: both; margin-left: 0; }
.col4 { width: 25%; float: left; margin-left: 18px; box-sizing: border-box; }
.col4:nth-of-type(4n+1) { clear: both; margin-left: 0; }

.table01 { width: 100%; border-top: solid 1px #ccc; border-left: solid 1px #ccc; }
.table01 th { border-bottom: solid 1px #ccc; border-right: solid 1px #ccc; padding: 10px; font-weight: normal; text-align: left; }
.table01 td { border-bottom: solid 1px #ccc; border-right: solid 1px #ccc; padding: 10px; }
.table01 .b_none { border-bottom: none !important; }

.table02 { width: 100%; border-top: solid 1px #ccc; }
.table02 th { border-bottom: solid 1px #ccc; padding: 12px; font-weight: normal; text-align: left; }
.table02 td { border-bottom: solid 1px #ccc; padding: 12px; }

.table03 { width: 100%; }
.table03 th { border-bottom: solid 1px #ccc; padding: 12px; font-weight: normal; text-align: left; }
.table03 td { border-bottom: solid 1px #ccc; padding: 12px; }

.ul li { list-style: outside disc; margin-left: 1.5em; line-height: 1.8; }
.ul1 li { list-style: outside disc; margin-left: 1.5em;line-height: 1.8; width: 45%; float: left; }
.ol li { list-style: outside decimal; margin-left: 1.5em; line-height: 1.8; }
.ul,.ul1 { margin: 0 0 50px; font-size: 15px; }
.ol { margin: 0 0 30px; font-size: 14px; }

/*slidemenu*/
.sb-slide {
	position:fixed;
	right:10px;
	top:10px;
	z-index:10000;
	font-size:30px;
	line-height:1.2;
	display: none;
	color:#ddae88;
}
.sb-slide .sb-close ,
.sb-active .sb-slide .sb-toggle-right {
	display:none;
}
.sb-active .sb-slide .sb-close {
	display:block;
}
.sb-slide p {
	display: inline-block;
	padding:2px 7px;
	color:#000;
	border: none;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	behavior: url(../other/PIE.htc);
}
.sb-slidebar section {
	padding:1% 5% 0 2%;
}
.sb-slidebar section ul {
	margin:0;
	padding-bottom: 20px;
	font-size: 12px;
	color:#000;
}
.sb-slidebar section:last-child ul {
	margin:0;
	padding:0 0 10%;
}
.sb-slidebar section ul li ul {
	margin:0 0 0 7%;
}
.sb-slidebar section ul li a {
	display:table;
	width:100%;
	border-bottom: dotted 1px #000;
	text-decoration:none;
	color: #000;
}
.sb-slidebar section ul li a span ,
.sb-slidebar section ul li a em {
	display:table-cell;
	vertical-align:middle;
	padding:6% 0% 6% 2%;
	color: #000;
}
.sb-slidebar section ul li a em {
	text-align:right;
	color: #1e4268;
}
.sb-slidebar section ul li strong {
	display:block;
	padding:5% 2% 0;
}
.sb-slidebar section p {
	margin:0 0 3%;
}
.sb-slidebar section p a {
	display: block;
	background: #fff;
	padding: 10px 20px;
	text-align: center;
	border-radius: 10px;
	color: #000;
	font-weight:bold;
	text-decoration: none;
}

.sb-slidebar section p a:hover {
	opacity: 0.8;
	text-decoration: underline;
}
.sb-slidebar section p a i {
	display:inline-block;
	margin:0 10px 0 0;
	font-size:20px;
	vertical-align: middle;
}
.sb-slidebar section iframe {
	margin:0 0 10%;
}

.side_add {
	margin:0;
	width: 100%;
	color: #000;
}
.side_add p {
	line-height: 1.8;
	text-align: center;
	
}

.side_add p a {
	width: 80%;
	margin: 0 auto;
	font-size: 15px;
}


@media screen and (max-width: 667px){

	.fixed { display: none; }
	#wrapper { width: 100%; min-width: 100%; }
	.wrap { width: 100%; }
	.lower { width: 100%; padding: 0 10px;}
	.pc { display: none; }
	.sp { display: block; }
	
	#contents .pankuzu { padding: 10px 10px; }
	section .frame { width: 100%; }
	section { padding: 50px 10px;}
	
	#header { height: auto; position: relative; padding: 10px 0; box-shadow: 0px 0px 0px 0px; }
	#header h1 { float: left; margin: 0; padding: 0 10px 20px; }
	#header h2 { display: none; }
	#header .right ul.menu {display:none;}
	#header .right ul.btn { display:none;}

	.totop { display: block; }
	
	/* banner */
	.banner { padding: 15px 5px; background: none; }
	.banner ul li { width: 50%; margin: 1px 0; }
	.banner ul li:nth-child(3n+1) {clear: none;}
	.banner ul li:nth-child(odd) { background: none; }
	.banner ul li img	{width:100%;}
	
	#footer { padding: 0; }
	#footer .wrap { padding: 0 10px; }
	#footer .menu { width: 100%; text-align: left; }
	#footer .logo { width: 100%; }
	#footer h1 { padding: 20px 0 10px; }
	#footer .menu { padding: 6px 0; width: 100%; }
	#footer .menu li { margin: 10px 0; font-size: 12px; }
	#footer .copyright { padding: 10px 0 20px; letter-spacing: 0; text-align: left; }
	#footer ul.f_btn { width: 100%; float: left; margin-left: 0; padding: 10px 0 0; }
	#footer ul.f_btn li { float: none; margin: 0 0 10px 0; }
	#footer .col2 { padding-bottom: 0;}
	#footer .f_address { width:100%; float: none; margin-bottom: 30px; }
	#footer .f_menu { width: 100%; float: none; padding-bottom: 50px; }
	#footer .f_menu h2 { font-size: 15px; font-weight: bold; padding-bottom: 10px;}
	#footer .menu { clear: left; width: 100%; float: none; font-size: 12px; padding: 0 0 20px; line-height: 1.5; border-right: none; }
	#footer .menu li { display: block; float: left; padding: 2px 10px; letter-spacing: 1px; border-left: 1px solid #e6e6e6; }
	
	.p01,.p03,.p04,.p05 { font-size: 13px; }
	.p02 { font-size: 11px; }	
	
	.col2 { width: 100%; float: none; margin-left: 0; }
	.col3 { width: 32%; margin-left: 2%; }
	#footer .col3 { width: 30%; margin-left: 2%; }
	.col4 { width: 23.5%; margin-left: 2%; }
	
	.table01 th { padding: 5px; }
	.table01 td { padding: 5px; }
	.table02 th { padding: 5px; }
	.table02 td { padding: 5px; }	
	.table03 th { padding: 5px; }
	.table03 td { padding: 5px; }	
	
	.sb-slide {
		display: block;
	}
	
	.side_add {
		margin:0 0 5%;
	}
	.side_add p {
		font-size: 13px;
	}
	
}


@media screen and (max-width: 479px){
	

	.col3 { width: 100%; float: none; margin-left: 0; }	
	#footer .col3 { width: 100%; float: none; margin-left: 0; }	
	.col4 { width: 48%; margin-left: 0; }
	.col4:nth-of-type(2n) { margin-left: 4%; }
	.col4:nth-of-type(2n+1) { clear: both; }

	.ul li,.ul1 li,.ol li { font-size: 13px; }

	.widgetArea .map iframe { width: 100%; float: none; margin: 10px 0 20px; }
	.widgetArea .fb { width: 96%; float: none; margin: 0 auto; }
	#footer .copyright { padding: 20px 0 10px; }

}

@media screen and (max-width: 375px){

	.pc1 { display: none; }
	.sp1 { display: block; }
	
}




/* topBanner */
.BottomBanner { text-align:center; padding: 20px 0 50px;}








/* ----- 2022-05-09 ADD ----- */
#header h1 {
		-webkit-justify-content : center;
		-ms-flex-pack : justify;
		justify-content : center;
		-webkit-align-items : center; 
		-ms-flex-align : center;
		align-items : center;
		display : -webkit-flex;
		display :-ms-flexbox;
		display : flex;
		-webkit-flex-wrap : wrap;
		-ms-flex-wrap : wrap;
		flex-wrap : wrap; 
	padding:10px 20px;
	width:350px;
	height:100%;

	
}
#header h1 img	{
		width:100%;
		height:auto;
		display:block;
		padding:0;
}

#header .right ul.menu li a {
	padding-left:10px;	
	padding-right:10px;
}

@media screen and (max-width: 1200px){

#header .right	{
	display:none;
}

.sb-slide {
	display:block;
}
}
	
	
	
	
	
/* ----- 2024-09-24 ADD ----- */
.btn-more {
	position:fixed;
	bottom:10px;
	right:65px;
	display:block;
	width:max-content;
	z-index:100000;
	padding:0;
	margin:0;
}

.btn-more a {
	display:block;
	color:white;
	background:#202020;
	text-align:center;
	height:50px;
	width:auto;
		justify-content : center;
		align-items : center;
		display : flex;
		flex-wrap : wrap; 
padding:0.5em 2em;
margin:0;
font-size:16px;
text-decoration:none;
transition:0.5s;
/* box-shadow:5px 5px 5px rgb(0, 0, 0, 0.3); */

}



.btn-more a:hover {
	opacity:0.7;
}