@charset "utf-8";
/* CSS Document */
h1, h2, h3, h4{
	margin-top: 0;
	margin-bottom: 0;
}
img {
	max-width: 100%;
}
ul, p {
	margin: 0;
	padding: 0;
}
dt{
	font-weight: 600;
}
dd {
	margin-left: 1em;
}

ul{
	list-style:none;
}
details{
	margin-left:5ex;
}
a:link {
	text-decoration: none;
}


.zaikyo_top_link{
	display: block
}
.zaikyo_top_link img{
	height: auto;
}

.headline_wrapper{
	background-color:#bb0000;
	box-sizing: border-box;
	color: #fff;
	display: table;
	height: 55px;
	line-height: 1.4em;
	margin-top:20px;
	padding: 5px;
	text-align: center;
	width: 100%;
	vertical-align: middle;
}
.headline{
/*	display: table-cell; */
	font-size: 28px;
	margin-top:10px;
	margin-bottom: 10px;
	line-height:1.7em;
	vertical-align: middle;
}
.headline_role{
	border: 1px solid #fff;
	display: table-cell;
	margin-left: 20px;
	padding: 5px;
	vertical-align: middle;
	width: 220px;
}
.yokoku{
	color:#FDF28A;
	font-weight:600;
}

.red{
	color:#EB0003;
}
.textwaku {
	font-size:1.5em;
	text-align:center;
	line-height:1.1em;
	font-weight:bold;
	-webkit-text-stroke: 1px darkgreen;
}

.syomei{
	text-align: right;	
}
p.hiduke{
	margin-top:5px;
	font-size:15pt;
	font-weight:600;
}


/* リセットCSS */
hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.hr2 {
  height: 3px;
  width:90%;
  text-align: left;
  background: skyblue;
  background-image: -webkit-linear-gradient(left, #caeaf7, blue, #caeaf7);
  background-image: -moz-linear-gradient(left, #caeaf7, blue, #caeaf7);
  background-image: -ms-linear-gradient(left, #caeaf7, blue, #caeaf7);
  background-image: -o-linear-gradient(left, #caeaf7, blue, #caeaf7);
}

p.m90{
	width:90%;
	margin-top:0.5em;
	margin-bottom: 0.5em;
}
	

.flexbox div{
  margin: 6px;
  width: 440px;
/*  height: 600px;*/
}

.flexbox{
    display:flex;
}

/* 横並び */

.flex {
  display: flex; /*横並び*/
}
.flex .image {
  width: 100px; /*画像サイズ指定*/
  margin: 0;
  padding: 0;
  overflow: hidden;
  position: relative;
}
.flex .text {
  margin: 0 0 0 10px;
  padding: 0;
}
/* 横並び終わり */


img.sp {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	margin-right:10px;
	margin-left:10px;
	margin-bottom: 10px;
}
.lineh12{
	line-height: 1.2em;
}
.marl5{
	margin-left: 2em;
}

.theme_sub{
	font-size: 22px;
}
.greeting{
	font-size: 18px;
	line-height: 1.7em;
	text-indent: 1em;
}
.red{
	color: red;
	font-size: 20px;
}
.white{
	color:white;
}
.mgn10{
	text-indent: 10em;
}
.middlebox{
	margin: 10px 5px;
	overflow: hidden;
}
.top{
	margin: 2em auto;
}
.place{
	margin-top: 10px;
	text-align: center;
}
.contact{
	display: block;
	margin: 2em auto;
	width: 260px;
}

/*マウスオーバーで吹き出し*/
.balloonoya {
  position   : relative;                /* 指定した分だけ相対的に移動 */
}
.balloonoya:hover .balloon {
  display: inline;                /* インライン要素として表示 */
}
.balloon {
  position   : absolute;                /* 親要素を基準 */
  display: none;                        /* 要素を非表示 */
  padding: 2px;                         /* テキストの前後の余白 */
  background-color: rgba(244, 224, 110, 0.80);       /* 背景色（透明度） */
  width:300px;                          /* 吹き出し全体の幅 */
  left : 30%;                           /* 表示位置 */
  top : 100%;                           /* 表示位置 */
  margin-top : 12px;                    /* 表示位置 */
  font-size: 80%;                       /* 文字サイズ */
  z-index:10;
}
.balloon:after{
  border-bottom: 12px solid rgba(244, 224, 110, 0.80); /* 吹き出し口の高さ・色 */
  border-left: 10px solid transparent;    /* 吹き出し口の幅１／２ */
  border-right: 10px solid transparent;   /* 吹き出し口の幅１／２ */
  top: -12px;                             /* 吹き出し口の位置調整 */
  left : 5%;                              /* 吹き出し口の横位置 */
  content: "";                       /* コンテンツの挿入 */
  position: absolute;                /* 親要素を基準 */
}



/*for tablet */
@media all and  (max-width: 900px)  {
	div#wrap, #header, .childP {
		width: 900px;
	}
	#dropmenu {
		margin: 0;
	}

}

/*for smartphone */
@media all and (max-width: 576px) {
	div#wrap, #header, .childP,  #footer{
		height: auto;
		width: 100%;
	}
	 .flexbox {
         display: block;
     }
	#dropmenu {
		width: 100%;
		height: 116px;
		margin-bottom: 50px;
	}
	#dropmenu li {
		position: relative;
		width: 50%;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
	}
	.headline, .headline_role{
		display: block;
		margin-left: 0;
		width: 98%;
	}

}