@charset "UTF-8";

body {
	line-height: 1.7;
	font-family: "Noto Sans JP", serif;
	font-size: 14px;
	font-weight: 400;
	font-style: normal;
	background-color: #eeeeee;
}
h2 {
	font-size: 1.14rem;
	font-weight: normal;
	padding: 10px;
	margin-top: 30px;
	text-align: center
}
p {	margin-top: 0;
	margin-bottom: 0;
}
.container {
	color: #444444;
	margin: 0 auto 0 auto;
	padding: 0 10px 0 10px;
	max-width: 1190px;
}

/* ##### ヘッダー ##### */
header {
	margin-bottom: 20px;
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	padding: 20px 40px;
	background: #dddddd;
	box-sizing: border-box;
	transition: padding .3s;
} 
header:after {
	content: "";
	display: block;
	clear: both
}
.header-site	
{
	max-width: 100%;
	padding-top: 10px;
}
.header-site-inner {
	display: block;	
	float: left;
}
.header-site-inner img {
		max-height: 30px;
}	
.header-site-inner-hbn {
	display: block;
	float: right;
}
.header-site-inner-hbn img {
	max-height: 40px;
	margin-left: 50px;
}	

/* ##### ナビメニュー ##### */
.navi {
	float: right;
	width: auto;
}
#menubtn {
	display: none;
}
#menu {
	display: block !important;
}
.menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.menu li a {
	display: block;
	padding: 10px 15px;
	color: #000000;
	font-size: 0.9rem;
	text-decoration: none;
}
.menu li a:hover {
	background-color: #eeeeee;
	opacity: 0.8;
}
.menu ul:after {
	content: "";
	display: block;
	clear: both;
}
.menu li {
	float: left;
	width: auto;
}
/* ##### メイン ##### */
.main-inner {
	padding-top:20px 
}
.full-screen {
	margin-top: 100px;
}
/*スライド画像の横幅可変*/
.full-screen img {
	max-width: 1000px;
	height: auto;
	margin: 0 auto 0 auto;
}

/* キャッチコピー */
.catch	{margin: 0;
	padding: 20px;
	color: #ffffff;
	background-color: rgba(255, 255, 255, 0.278);
	font-size: 1.5rem;
-webkit-border-radius: 0px 0px 30px 00px / 10px 20px 30px 40px;
	-moz-border-radius: 0px 0px 30px 00px / 10px 20px 30px 40px;
	border-radius: 0px 0px 30px 00px / 10px 20px 30px 40px;}

.catch	{position: absolute;
	top: auto;
	left: auto;}

.lead {
	font-size: 1rem;
}

.headline {
	margin-top: 40px;
}

.headline img {
	float: left;
	width: 200px;
	padding-right: 10px;
}
.subtitle {
	padding: 10px 0;	
}
.header-site-inner-mobile {
	display: none;
}
.nav-mobile {
	display: none;
}
.top-image {
	margin-top: 100px;
	margin-bottom: 10px;
}
.top-image img {
	max-width: 100%;
}
/*左右の矢印の色を変える*/
.slick-prev:before,
.slick-next:before {
	opacity: 0.1;
}
/*左右の矢印の位置を変える*/
.slick-next {
	right: 20px;
	z-index: 99;
}
.slick-prev {
 	left: 15px;
	z-index: 100;
}
/*スライド数のドットの色を変える*/
.slick-dots li.slick-active button:before,
.slick-dots li button:before {
	color: #fff;
}
/* ##### サイトマップ ##### */
.sitemap-inner {
	float: left;
	max-width: 50%;
	margin: 0 auto 0 auto;
}
.sitemap-inner a {
	text-decoration: none;
	color: #666666;
}
.sitemap-inner ul li {
	margin-left: -40px;
	padding-right:20px;}
.sitemap ul {
	list-style: none;
}
.sitemap:after {
	content: "";
	display: block;
	clear: both
}
.link_blue a {
	color: #2e70a4;
	text-decoration: underline;
}
.vacation-info {
margin-top: 10px;
display: inline-block;
background-color: lightyellow;
font-size: 14px; 
padding: 20px; 
border-radius: 10px;
}

/* ##### フレックスボックス（レイアウトモジュール） ##### */
.flex-box {
	display: flex;
	justify-content: space-evenly; 
	flex-direction: row;
	flex-wrap: wrap;		
}

.flex-item {
	width: 28vmin;
	position:relative;
	text-align: center;
	margin-bottom: 30px;
}
.flex-item a {
	text-decoration: none;
	color: #666666;
}
.flex-box img {
	width: 100%;
}
.flex-box_headline {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;		
}
.flex-box_headline:before {
	content: "";
	display: block;
	max-width: 100%;
	order: 1;	
}
.flex-box_headline:after {
	content: "";
	display: block;
	max-width: 100%;
}
.flex-item_headline img {
	display: block;
	max-width: 20%;
	position:relative;
	text-align: justify;
	margin-bottom: 30px;
}
.flex-item_subtitle {
	display: block;
	max-width: 100%;
	position:relative;
	text-align: justify;
	margin-bottom: 30px;
}

/* ##### 上に戻るボタン ##### */
.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 55px;
	z-index:100;
}
.pagetop a {
	display: block;
	width: 50px;
	height: 50px;
	background-color: #555555;
	opacity: 0.6;
	border-radius: 50px;
	text-align: center;
	color: #ffffff;
	font-size: 24px;
	text-decoration: none;
	line-height: 50px;
}

/* ##### 著作権 ##### */
.copyright p {
	color: #666666;
	font-size: 0.85rem;
	text-align: center;
}
.copyright a {
	color: #666666;
	text-decoration: none;
}
.copyright a:hover {
	text-decoration: underline;
}

/* ##### フッター ##### */
.footer {
	margin-top: 50px;
	padding-top: 20px;
	padding-bottom: 20px;
	background-color: #dddddd;
}
.footer-navi {
	display: flex;
	justify-content: center;
}

@media (max-width: 767px)
{			

body {
	font-size: 16px;
}	
.flex-item {
	width: 45vmin;
}
.sitemap-inner {
	max-width: 100%;
	font-size: 0.75rem;
}
.full-screen {
	display: none;
}
.top-image {
	display: none;
}
.header-site-inner-hbn {
	display: none;
}
/* トグルボタン */
#menubtn {
	padding: 6px 12px;
	border: solid 1px #aaaaaa;
	border-radius: 5px;
	background-color: #ffffff;
	position: absolute;
	top: 20px;
	right: 15px;
	cursor: pointer
}
#menubtn:hover {
	background-color: #dddddd
}
#menubtn:focus {
	outline: none
}
#menubtn i {
	color: #888888;
	font-size: 18px
}
#menubtn span {
	display: inline-block;
	text-indent: -9999px
}

/* ナビゲーションメニュー（縦並び） */
.menu {
	display: none
}
.menu ul {
	margin: 0;
	padding: 0;
	list-style: none
}
.menu li a {
	display: block;
	padding: 5px;
	color: 444444;
	font-size: 14px;
	text-decoration: none
}
.menu li a:hover {
	color: #111111;
	background-color: #eeeeee
}
header {
	display: none;
} 	
.catch {
	display: none;
}
.headline img {
	width: 200px;
}
.headline {
	display: inline-block;
	padding-top: 10px;
	padding-bottom: 20px;
	margin: auto 0;
}
.subtitle {
	font-size: 0.9rem;
	border-top: solid 2px #ffffff;
	padding-top: 20px;
}
.header-site-inner-mobile {
	display: inline-block;
	float: right;
	width: 100px;
	padding-top: 10px;	
}
.nav-mobile {
	display: block;
	text-decoration: none;
}
.nav-mobile a {
	display: block;
	text-decoration: none;
}
.main-inner {
	padding-top: 5px;
}

}