body {
font-family: Avenir, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	color:#333;
	letter-spacing: 0.5px;
	line-height: 1.7;
	font-size: 100%;
}

a, a:hover {
	text-decoration: none;
}

a:hover {
	opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
color:#09a2b9;	
}

ul li, ol li {
	list-style: none;
}

header {
	margin: 0px auto;
}

nav.is-animation {
	height: 50px;
}

.navbar {
	background: #fff;
	border-bottom: 1px solid rgba(0,0,0,0.30);
	transition: .3s;
	height: 85px;
	padding: 0;
}

h1 {
	font-family: ten-mincho, serif;
font-style: normal;
font-weight: 400;
	letter-spacing:7px;
	font-size:1.5rem;
	line-height: 1;
	margin:10px 0 0 20px;
}

nav.is-animation h1 {
	font-size:1.2rem;
	margin: 0 0 0 20px;
}

span.text-h1-small {
	font-size: 14px;
	letter-spacing: 2px;
}

nav.is-animation span.text-h1-small {
	display: none;
}

.navi {
	position: absolute;
	right: 20px;
}

.navi li {
	margin: 20px 10px 0 10px;
}

nav.is-animation .navi li {
	margin: 10px 5px;
}

.navi a {
	color:#4b4948;
	font-size: 15px;
	font-weight: bold;
}

.navi a:hover {
	color:#09a2b9;
}

.navbar-toggler {
	background: #fff;
	color:#09a2b9;
}

ul.sns {
	position: absolute;
	right: 10px;
	top:-25px;
}

nav.is-animation ul.sns {
	display: none;
}

ul.sns i {
	font-size: 12px;
}

ul.sns i.fa-twitter {
	color:#55acee;
}

ul.sns i.fa-facebook-f {
	color:#3564a2;
}

@media (max-width:1200px) {
	
	h1 {
		font-size: 1.2rem;
	}
	
	.navbar {
		height: auto;
		padding: 10px 0;
	}
	
	.navbar-toggler {
		line-height: 0;
		padding: 0;
		margin-right: 20px;
	}
	
	.navbar-toggler-icon {
		width: auto;
		height: auto;
	}
	
	.navbar-nav {
		padding: 20px 0 0 0;
	}
	
	.navi li, nav.is-animation .navi li {
    margin: 10px 5px;
}
	
	.navi {
    position: relative;
    right: auto;
	text-align: center;
	background: #fff;
	margin: 18px 0 0 0;
}
	
	ul.sns {
	position: relative;
	right: 0;
	top:0;
		display: table;
    width: 100%;
		margin:0 0 20px 0;
}
	
	ul.sns li {
		display: inline-block;
		vertical-align: middle;
		margin: 0 20px;
	}
	
	ul.sns i {
    font-size: 18px;
	}
	
	nav.is-animation ul.sns {
	display: block;
}

	}


@media (max-width:415px) {
	h1 {
    font-size: 1rem;
	margin: 10px 0 0 10px;
}
	
	nav.is-animation h1 {
	font-size: 1rem;
	margin: 0 0 0 10px;	
	}
	
	span.text-h1-small {
		font-size: 12px;
	}
	
	footer h3, .line-icon {
		text-align: center;
	}
	
}

main.top {
	margin: 150px auto;
}

main {
	margin: 80px auto;
}
@media (max-width: 426px) {
	main {
		margin: 10vw auto;
	}
}

section {
	margin-bottom: 70px;
}

.h2title {
	text-align: center;
}

.h2title h2{
position: relative;
display: inline-block;
margin-bottom: 1em;
font-size:1.4rem;
font-family: ten-mincho, serif;
font-style: normal;
font-weight: 400;
}
.h2title h2:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 60px;
height: 2px;
left: 50%;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
background-color: rgba(0,0,0,1);
}

ul.newsList {
	margin: 20px auto;
	padding: 0;
}

ul.newsList li {
	margin: 30px 0 0 0;
}

ul.newsList li img {
	width: 100%;
	height: auto;
}

ul.newsList .time_author {
	color:#9fa0a0;
	font-size: 12px;
	margin:10px 0 5px;
}

ul.newsList .time_author span {
	margin: 0 5px 0 0;
}

ul.newsList h3 {
	font-size: 14px;
	font-weight: bold;
}

ul.newsList h3 a {
	color:#666;
}

ul.newsList h3 a:hover {
	color:#09a2b9;
}

ul.newsList p {
	font-size: 14px;
	margin: 10px 0 0 0;
}

ul.newsList.topbooks li img {
	width: 100%;
	height: auto;
	border:none;
}

ul.topbooks {
	width:100%;
	padding:0;
	margin:30px 0;
}

ul.topbooks li img {
	width: 100%;
	height: auto;
	border:none;
}

ul.topbooks li h3 {
	font-size:16px;
	font-weight:bold;
	color:#666;
}

ul.topbooks li time {
	font-size: 12px;
color: #888888;
display: block;
}

ul.topbooks li .blogTtl {
	color:#09a2b9;
}

.booksBtn {
	text-align:center;
}

.booksBtn a {
	color:#fff;
	background: #09a2b9;
padding: 5px 20px;
border-radius: 30px;
font-size: 14px;
font-weight: bold;
	border:2px solid #09a2b9;
}

.booksBtn a:hover {
	background:#fff;
	color:#09a2b9;
}

.top_calender {
	margin: 20px auto;
}

/* side */

.companyTexts {
	border-top:1px solid rgba(0,0,0,0.30);
	border-bottom: 1px solid rgba(0,0,0,0.30);
	padding: 40px;
	font-size: 14px;
	word-wrap: break-word;
	margin-bottom: 50px;
}

.companyTexts img {
	width: 70%;
	height: auto;
}

.updateinfo ul {
	border:1px solid rgba(0,0,0,0.30);
	padding: 20px;
	margin: 30px 0;
}

.updateinfo li {
	border-bottom: 2px solid rgba(0,0,0,0.10);
	padding: 5px 0;
	margin: 5px 0;
}

.updateinfo li h3 {
	margin: 0;
	font-size: 14px;
}

.updateinfo li h3 a {
	color: #333;
	font-weight: bold;
}

.updateinfo li time, .updateinfo li span {
color:#9fa0a0;
	font-size: 12px;
	margin:10px 0 5px;
}

/* text-color */

.text-blue, a .text-blue {
	color:#09a2b9;
}

.text-gray, a .text-gray {
	color:#4b4948;
}

.detailBtn {
	text-align: center;
	margin: 20px auto;
}

.detailBtn a {
	border-radius: 20px;
	font-size: 14px;
	padding: 5px 20px;
	font-weight: bold;
}

.orange a {
	color:#f7be6f;
	border:2px solid #f7be6f;
}

.detailBtn i {
	margin-left: 10px;
}

.orange a:hover {
	background: #f7be6f;
	color: #fff;
}

.blue {
	margin: 40px 0;
}

.blue a {
	color:#2c87c0;
	border:2px solid #2c87c0;
	background: #fff;
}

.blue a:hover {
	background: #2c87c0;
	color: #fff;
}


footer{
	background: #4b4948;
	padding:40px 0 10px 0;
	color:#fff;
}

.line-icon img {
	width: 50px;
	height: auto;
}


footer h3 {
	font-size: 16px;
}

footer .contactLink a {
	background: #fff;
	padding: 5px 20px;
	border-radius: 30px;
	color:#09a2b9;
	font-size: 14px;
	font-weight: bold;
}

ul.sitemap {
	padding: 0;
}

ul.sitemap li {
	margin-bottom:10px;
}

ul.sitemap li a {
	color:#fff;
	font-size: 14px;
}

footer .copy {
	text-align: center;
	color:#fff;
	font-size: 12px;
	margin-top: 20px;
}

.pc-only {
	display: block;
}

/* page */


.h2title_page h2 {
position: relative;
display:block;
margin-bottom: 1em;
	font-family: ten-mincho, serif;
font-style: normal;
font-weight: 400;
	letter-spacing:7px;
	font-size:1.4rem;
	text-align: center;
}

.h2title_page h2:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 60px;
height: 2px;
left: 50%;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
background-color: rgba(0,0,0,1);
}




.page_contents {
	margin: 20px 0;
}

.page_contents p {
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 1px;
}

.page_contents a {
	color:#09a2b9;
}


/* post */

h2.entry-title {
	border-bottom: 2px solid rgba(0,0,0,0.30);
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: bold;
}
	
.eventorganiser-event-meta {
	background: rgba(231,231,231,0.50);
	padding: 20px;
}

.eventorganiser-event-meta h3 {
	font-size: 16px;
	font-weight: bold;
}

ul.eo-event-meta {
	padding: 0;
	margin: 10px 0;
}

ul.eo-event-meta li {
	font-size: 14px;
}

/* common */

.clr {
	clear					: both;
}

.clrfix {
	display					: inline-block;
	margin					: 0;
	padding					: 0;
}

.clrfix:after {
	content					: ".";
	display					: block;
	height					: 0;
	clear					: both;
	visibility				: hidden;
	line-height				: 0;
	padding					: 0;
	margin					: 0;
	vertical-align			: bottom;
	overflow				: hidden;
}


.ta-center {
	text-align: center;
}

.ta-left {
	text-align: left;
}

.ta-right {
	text-align: right;
}

.bg-gray{
	background: #fafafa;
	padding:10px 0;
	margin: 65px 0;
}

.mt10 {
	margin-top: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mb50 {
	margin-bottom: 50px;
}
.mb60 {
	margin-bottom: 60px;
}
.mb70 {
	margin-bottom: 70px;
}

.banner {
	text-align: center;
}

.banner img {
	width: 100%;
	height: auto;
	max-width: 350px;
}

.anounce-msg {
	border: 4px double #CC0003;
	padding: 10px;
}

.anounce-msg p {
	color:#CC0003;
	font-weight: bold;
}

