@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}*/

/*================================================
 *  一般・共通設定
 ================================================*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

img {
	max-width: 100%;
}

html {
  font-size: 62.5%; /*font-size:10px;*/
}

body {
	margin: 0;
	padding: 0; /* 全体の背景色 */
	color: #2f2b3f; /* 全体の文字色 */
	font-size:1.4rem; /*font-size:14px;*/
	font-family: "メイリオ","Meiryo", Arial, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-family: 'Noto Sans JP', sans-serif;
	background: #FFFFFF url(../images/bg01.png) repeat-x fixed center 100px;
}

#container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	background: #FFF;
	-moz-box-shadow: 0 0 5px #ccc;
	-webkit-box-shadow: 0 0 5px #ccc;
	box-shadow: 0 0 5px #ccc;
}

.inner {
	max-width:1200px;
	margin: 0 auto;
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
	background:#FFF;
	padding: 0 20px 0 30px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header .header_l {
	width: 100%;
	padding: 20px 0 25px;
	max-width: 300px;
	height: auto;
}
header .header_r {
	padding: 10px 0;
}

#header2 {
	margin: 0; /* ヘッダのマージン（上、左右、下） */
	padding: 10px 0 15px; /* ヘッダのパディング（上、左右、下） */
	background: #BE9DC8;
	width:100%;
	text-align: center;
}

#contents {
	overflow:hidden;
	width: 100%;
	max-width:1200px;
	margin:20px auto;
	background:#fff;
}

/* --- メイン --- */
#main {
	margin: 0 auto;
	/*margin-top: 20px;*/
	max-width: 1000px;
	padding: 15px 15px;
	min-height: 700px;
	height: 100%;
	background: rgba(255,255,255,0.6);
}

#main_in,
.main_in {
	margin: 0;
	padding: 25px 25px 0;
	background: #FFF;
}

#sub {
	box-sizing:border-box;
	overflow:hidden;
	float:right;
	width:28%;
}

/* --- footer --- */
footer {
	width: 100%;
	background-color: #FAD6D4;
	position: relative;
	padding-top: 39px;
}
footer a {
	color: #E76C38;
}
footer a:hover {
	color: #ED946F;
}

footer .footer_top {
	display: flex;
	justify-content: center;
	padding-bottom: 10px;
	margin: 0 auto;
	align-items: center;
}
footer .footer_add {
	margin-left: 5%;
}
footer .footer_add img {
	max-width: 250px;
}
footer .address {
	font-size: 1.2rem;
	margin-top: 10px;
}
footer .footer_left {
	margin: 0 0 0 5%;
}
footer .footer_list {
	display: flex;
	flex-direction: row;
	justify-content: center;
	column-gap: 5%;
}
footer .footer_list ul {
	margin: 0;
	padding: 0px;
	font-size: 1.5rem;
	font-family: 'BIZ UDPGothic', sans-serif;

}

footer .footer_list ul li {
	margin: 0.8em 0;
	padding: 0 0 0 35px;
	list-style: none;
	background: url(../images/ico01.png) no-repeat 15px 5px;
}
footer .footer_list ul li:first-of-type {
	margin: 0;
}

footer .footer_list ul li a {
	display: block;
	text-decoration: none;
	/*border-bottom: 1px dotted #F17F55;*/
	width: 100%;
	min-width: 150px;
}

footer .fb_ico img {
	margin-right: 10px;
	vertical-align: middle;
	max-width: 32px;
}
footer .fb_ico a {
	text-decoration: none;
}

footer .footer_bottom {
	background-color: #F29C9D;
	box-sizing:border-box;
	width:100%;
	margin:0 auto;
	text-align: center;
	padding: 7px;
	color: #FFF;
	font-size: 1.2rem;
}

/* --- 新着情報（トップページ） --- */
#content_info {
	padding: 0;
	width: 100%;
	background: #FFF;
	overflow: auto;
	min-height: 200px;
	max-height: 400px;
	margin: 0 0 20px;
}

#content_info .new dl {
	margin: 10px 0;
	padding: 0;
}
#content_info .new dt {
	width: 7em;  /*日付エリアの幅 */
	float: left;
	padding: 6px 0 6px 20px; /* 日付エリアのパディング（上右下左） */
	min-height:12px;
	height:auto!important;
	height:15px;
	line-height: 1.7em;
}
#content_info .new dd {
	margin: 0;
	padding: 6px 3px 6px 8em; /* 本文エリアのパディング（上右下左） */
	border-bottom: 1px #c0c0c0 dotted;
	line-height: 1.7em;
}

a {
	color:#00F;
	text-decoration:underline;
}
a:hover {
	color:#C39;
}

img {
	vertical-align:bottom;
	border-style:none;
}

.alpha a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}


.summary {
	position:absolute;
	top:0;
	right:10px;
	margin:0;
}

/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu li {
	margin:0;
	padding:0;
	list-style:none;
}
.submenu li a:before {
	content:"\0025a0";
	color:#000;
}
.submenu li a {
	display:block;
	padding:10px 2px;
	color:#000;
	border-bottom:1px dotted #ddd;
	text-decoration:none;
}
.submenu li a:hover {
	background:#eee;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:35px;
	right:15px;
	z-index: 9999;
}
.totop a {
	display:block;
	text-decoration:none;
}
.totop img {
	background: #E76C38;
}
.totop img:hover {
	background: #D23D11;
}

/*================================================
 *  タブレット向けデザイン
 ================================================*/
@media screen and (max-width:979px) {

	#contents {
		box-sizing:border-box;
		width:100%;
		padding:0 10px;
	}

	#main_in,
	.main_in {
		padding: 25px 0 0;
	}

	footer {
		width:100%;
	}
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:992px) {
	.lock {
		position: fixed;
		z-index: -1;
		width: 100%;
		height: 100%;
		top: 0;
		right: 0;
	}

	#contents {
		margin:0 auto;
		padding:0;
	}

	header {
		z-index:2;
		box-sizing:border-box;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		padding:15px 55px 15px 10px;
		border-bottom: 1px solid #BE9DC8;
	}
	header .header_l {
		padding: 0px;
	}
	header .header_r {
		padding: 0;
	}

	#main,
	#sub {
		float:none;
		width:100%;
		padding-right:  0;
		padding-left:  0;
	}

	#main_in,
	.main_in {
		margin: 0;
		padding: 10px;
	}

	#content_info {
		border: 2px solid #F29C9D;
		height: 250px;
		width: 98%;
		margin: 0 auto 40px;
	}
	.waku_grn01 #content_info {
		border: none;
	}
	#content_info .new dl {
		padding: 0 10px 10px;
	}
	#content_info .new dt {
		float:none;
		font-size: 1.4rem;
		color: #666;
		padding: 6px 0;
		font-weight: bold;
	}
	#content_info .new dd {
		padding: 0 0 6px 0;
	}
	h3 {
		margin: 0 0 5px;
		font-size: 1.8rem;
	}
/*}

================================================
 *  スマートフォン向けデザイン
 ================================================
@media screen and (max-width:575.98px) {*/
	footer .footer_top {
		flex-direction: column-reverse;
	}
	footer .footer_add {
		width: auto;
		margin: 20px auto 0;
	}
	footer .footer_left {
		width: 98%;
		margin: 0;
	}

	footer .footer_list {
		flex-direction: row;
		margin: 0 auto;
		flex-wrap: wrap;
	}
	footer .fb_ico {
		text-align: center;
	}
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pcOnly { display: block !important; }
.spOnly { display: none !important; }
.pcOnly_mr10 { margin-right: 10px; }
.pcOnly_mr15 { margin-right: 15px; }
.pcOnly_mr20 { margin-right: 20px; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 991.98px) {
	.pcOnly { display: none !important; }
	.spOnly { display: block !important; }
	.pcOnly_mr10,
	.pcOnly_mr15,
	.pcOnly_mr20 { margin-right: 0; }
}
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767.98px) {
	.pcOnly2 { display: none !important; }
	.spOnly2 { display: block !important; }
}
/* スマートフォンで見たときは"pc"のclassがついた画像が表示される */
@media only screen and (min-width: 767.98px) {
	.pcOnly2 { display: block !important; }
	.spOnly2 { display: none !important; }
}