@charset "utf-8";

/* ---------------
reset
--------------------*/
body, div,
dl, dt, dd, ul, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, textarea, p, blockquote, th ,td {
	margin: 0;
	padding: 0;
}

ul{
	list-style-type: none;
}

table {
	line-height: 1.6;
	border: 0px;
	border-collapse:collapse;
}

table th,
table td {
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1em;
	font-weight: normal;
}
textarea {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	padding: 2px 4px;
	font-size: 13px;
}

input {
	vertical-align: middle;
	margin: 0;
}

p {
	line-height: 1.6;
}

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

address {
	font-style:normal;
}

ul li {
	line-height: 1.4;
}

/* ---------------
　　　共用
--------------- */

body  {
	-webkit-text-size-adjust: none;
	-webkit-print-color-adjust: exact;
	font-optical-sizing: auto;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	color: #333333;
	background-color: #585858;
	position: relative;
	width: 100%;
}

/* リンクの設定 */

a {
	outline: none;
}

a:link {
	border: none;
	color: #000000;
	text-decoration: underline;
	outline: none;
}

a:visited {
	border: none;
	color: #212121;
	text-decoration: underline;
	outline: none;
}

a:active {
	border: none;
	color: #00ABF1;
	text-decoration: none;
	outline: none;
}

a:hover {
	border: none;
	color: #00ADBC;
	text-decoration: none;
	outline: none;
}

a:focus {
	border: none;
	outline: none;
}

#wrapper {
	padding-bottom: 40px;
	background-color: #ffffff;
}

#contents {
	margin: 0 auto;
/*	width: 960px;*/
	width: min(95%,1100px);
	overflow: hidden;
}

img.fit {
	width: 100%;
	height: auto;
}

/* ---------------
　ヘッダ
--------------- */
#header {
	padding-bottom: 40px;
	width: 100%;
	background: #ffffff url(../images/common/head_back.png) repeat-x;
}

#header_inner {
/*	width: 960px;*/
	width: min(95%,1100px);
	margin: 0 auto;
	overflow: hidden;
}

#logo {
	margin-top: 35px;
	margin-right: 20px;
	float: left;
}

#head_read {
	margin-top: 38px;
	float: left;
	font-size: 12px;
	line-height: 1.4;
}

@media screen and (min-width: 768px) and (max-width: 859px) {

	#head_read {
		display: none;
	}

}

#head_parts {
	margin: 38px 10px 0px 0px;
	float: right;
	overflow: hidden;
	display: inline;
}

#head_sitemap {
	margin-right: 16px;
	float: left;
}

#searchForm {
	float: left;
}

#search_area {
	float: left;
	height: 26px;
}

#search_btn {
	float: left;
}

#gnavi {
	padding-top: 25px;
	overflow: hidden;
	clear: both;
	float: left;
	position: relative;
}

#gnavi ul {
	overflow: hidden;
}

#gnavi li {
	float: left;
	font-size: 18px;
}

#gnavi li.stay,
#gnavi li.stay a {
	background: none;
}

#gnavi li a {
	display: block;
	padding: 14px 15px 14px 15px;

}
#gnavi li a,
#gnavi li a:hover {
	color: #000000;
	text-decoration: none;
}

#gnavi_bar {
	height: 2px;
	position: absolute;
	top: 76px;
	opacity: 0;
}

#head_sns {
	margin: 38px 0px 0px 0px;
	float: right;
	overflow: hidden;
	display: flex;
	align-items: center;
	gap: 12px;
}

#head_sns li {
}

#menu_btn {
	display: none;
}

.sp_navi {
	display: none;
}

#head_sns li.icon_x {
	width: 20px;
}

#head_sns li.icon_facebook {
	width: 25px;
}

@media screen and (min-width: 768px) and (max-width: 969px) {

	#gnavi li {
		font-size: 16px;
	}
	
	#gnavi li a {
		display: block;
		padding: 14px 10px;
	}

}


@media screen and (max-width: 767px) {
	
	#header {
		padding-bottom: 15px;
		height: 65px;
	}

	#header_inner {
		width: auto;
	}
	
	#logo {
		margin: 30px 0 0 10px;
	}
	
	#logo img {
		width: 100px;
		height: auto;
	}
	
	#head_read {
		display: none;
	}

	#head_read br {
		display: none;
	}

	#head_parts {
		display: none;
	}
	
	#menu_btn {
		margin: 32px 20px 0 0;
		display: block;
		float: right;
		border-bottom: 2px solid #00adbb;
		width: 30px;
		height: 20px;
		position: relative;
	}

	#menu_btn:before {
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		border-bottom: 2px solid #00adbb;
		width: 30px;
	}

	#menu_btn:after {
		position: absolute;
		top: 10px;
		left: 0;
		content: '';
		border-bottom: 2px solid #00adbb;
		width: 30px;
	}

	#gnavi {
		padding: 0;
		float: none;
		height: auto;
		position: relative;
		background-color: #fff;
		position: fixed;
		top: 80px;
		right: -100%;
		width: 100%;
		height: 100%;
		overflow: hidden;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		transition: all 0.3s ease;
		z-index: 500;
	}
	
	#gnavi.menu_open {
		right: 0;
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}

	#gnavi ul {
		border-top: 1px solid #999;
	}
	
	#gnavi li {
		float: none;
		font-size: 16px;
		border-bottom: 1px solid #999;
	}
	
	#gnavi li a {
		display: block;
		padding: 15px;
		position: relative;
	}

	#gnavi li a::before{
		content: "";
		position: absolute;
		top: 50%;
		right: 10px;
		width: 7px;
		height: 7px;
		border-top: 2px solid #999;
		border-right: 2px solid #999;
		transform: rotate(45deg);
		margin-top: -5px;
	}
	
	#head_sns {
		display: none;
	}
	
	#gnavi_bar {
		display: none;
	}

	.sp_navi {
		border: none !important;
		display: block;
	}
	
	#searchForm_sp {
		padding: 19px 15px;
		width: calc(100% - 30px);
		overflow: hidden;
	}

	#search_area_sp {
		margin: 0 10px 0 0;
		padding: 10px 10px;
		width: calc(100% - 80px);
		height: 36px;
		border: 1px solid #999;
		border-radius: 5px;
		font-size: 16px;
		float: left;
	}
	
	#search_btn_sp {
		font-size: 16px;
		font-weight: bold;
		height: 36px;
		width: auto;
		float: left;
	}

}

/* ---------------
　フッタ
--------------- */

#footer {
	margin: 0 auto;
	height: 90px;
	width: min(95%,1100px);
	color: #bbbbbb;
	display: flex;
	align-items: center;
}

#f_logo {
	margin: 0 20px 0 0;
}

#copyright {
	margin: 0 0 0 auto;
	font-size: 12px;
}

#f_box {
}

#f_address {
	margin: 26px 0px 0px 0px;
	line-height: 1.4;
}

#f_address span {
	font-size: 14px;
}

#f_link {
	margin: 0;
	overflow: hidden;
	text-align: left;
	display: flex;
	align-items: center;
}

#f_link li {
	font-size: 14px;
	margin-right: 6px;
	line-height: 1.2;
}

#f_link li a {
	color: #bbbbbb;
	text-decoration: none;
}

#f_contact {
	padding-left: 6px;
	border-left: 1px solid #bbbbbb;
}

#up {
    right: 80px;
    position: fixed;
    bottom: 50px;
    display: none;
}

.sp_br {
	display: none;
}

@media screen and (max-width: 767px) {
	
	#footer {
		padding: 20px 0;
		width: 100%;
		height: auto;
	}
	
	#f_box {
		float: none;
		text-align: center;
	}

	#f_logo {
		margin: 0 10px 20px 10px;
		text-align: center;
		float: none;
	}

	#f_address {
		margin: 0 auto;
		line-height: 1.8;
		text-align: center;
	}

	#f_link {
		margin: 0 auto;
		padding: 0;
		display: inline-block;
	}
	
	#copyright {
		text-align: center;
		float: none;
	}

	.sp_br {
		display: block;
	}

	#up {
	    right: 15px;
	    bottom: 15px !important;
	}

	#up img {
		width: 30px;
		height: auto;
	}

}


/* ---------------
　サイド
--------------- */

#side {
	margin-bottom: 30px;
	float: right;
/*	width: 220px;*/
	width: calc( 100% - 740px);
}

#side_banner {
	margin-bottom: 30px;
}

#side_banner li {
	margin-bottom: 10px;
}

#side_facebook {
	margin-bottom: 20px;
}

#side_twitter {
	margin-bottom: 30px;
}

@media screen and (max-width: 767px) {

	#side {
		margin-bottom: 20px;
		float: none;
		width: 100%;
	}
	
	#side_facebook {
		margin-bottom: 20px;
		text-align: center;
	}

	#side_facebook iframe {
		width: 100% !important;
	}
	
	#side_twitter {
		margin: 0 20px;
		border: 1px solid #eee;
	}
}

@media screen and (min-width: 768px) and (max-width: 1050px) {

}

/* ---------------
　トップ
--------------- */

#top_left {
}

.bx-wrapper .bx-viewport {
	border: none !important;
	box-shadow: none !important;
	left: 0 !important;
}

.bx-wrapper .bx-pager {
    padding-top: 10px;
    text-align: center;
}
.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
}
.bx-wrapper .bx-pager.bx-default-pager a {
	background: #ffffff url(../images/top/page_off.png) no-repeat !important;
    display: block;
    height: 9px;
    margin: 0 5px;
    text-indent: -9999px;
    width: 9px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #ffffff url(../images/top/page_on.png) no-repeat !important;
}

#top_main_banner {
	margin-bottom: 30px;
}

.top_schedule {
	margin-bottom: 30px;
}

#no_index_event {
	margin: 15px 0 20px 10px;
}

.top_schedule h2 {
	margin-bottom: 10px;
	color: #00ADBC;
	font-size: 24px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.top_schedule h2 span {
	margin-left: 10px;
	font-size: 16px;
	font-weight: normal;
	color: #999;
}

.top_schedule h2 .link {
	font-size: 16px;
}

.top_schedule li {
	margin-bottom: 4px;
	background-color: #eeeeee;
	display: flex;
	align-items: center;
}

.top_schedule li a {
	text-decoration: none;
	display: block;
}

.event_date {
	padding: 15px;
	color: #999999;
	background-color: #eeeeee;
	width: 120px;
}

.event_title {
	color: #000000;
	background-color: #ffffff;
	border-top: 2px solid #eeeeee;
	border-bottom: 2px solid #eeeeee;
	display: inline-block;
	width: calc(100% - 152px);
}

.event_title h3 {
	font-weight: bold;
	font-family: Arial;
}

.event_title a {
	padding: 15px;
	display: block;
}

#top_news {
	margin-bottom: 30px;
}

#top_news h2 {
	margin-bottom: 10px;
	color: #00ADBC;
	font-size: 16px;
	font-weight: bold;
}

#top_news h2 span {
	margin-left: 10px;
	font-size: 12px;
	font-weight: normal;
	color: #999;
}

#top_news ul {
	padding: 10px 10px 6px 10px;
	background-color: #eeeeee;
}

#top_news li {
	margin-bottom: 4px;
	padding: 5px 10px 5px 10px;
	background-color: #ffffff;
}

.news_date {
	vertical-align: top;
	width: 85px;
	display: inline-block;
	color: #999999;
}

.news_title {
	width: 590px;
	display: inline-block;
	color: #000000;
}

.news_title a {
	text-decoration: none;
}

#top_blog,
.top_report {
	margin-bottom: 15px;
}

#top_blog h2,
.top_report h2 {
	margin-bottom: 10px;
	color: #00ADBC;
	font-size: 24px;
	font-weight: bold;
}

#top_blog h2 span,
.top_report h2 span {
	margin-left: 10px;
	font-size: 16px;
	font-weight: normal;
	color: #999;
}

#top_blog > ul,
.top_report > ul {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 30px;
}

#top_blog > ul > li,
.top_report > ul >  li {
	position: relative;
	height: 100%;
	border: 2px solid #eeeeee;
}

.event_img_box a,
.thumb_img_box a {
	display: block;
}

.event_img_box img,
.thumb_img_box img {
	object-fit: cover;
	aspect-ratio: 360 / 150;
}


.top_blog_box {
	padding: 15px 20px;
}

#top_blog li h3,
.top_report li h3 {
	margin-bottom: 15px;
	color: #000000;
	font-size: 18px;
	font-weight: bold;
}

#top_blog li h3 a,
.top_report li h3 a {
	text-decoration: none;
}

.blog_summary {
	color: #777777;
	font-size: 16px;
}

.summary_parts {
	margin: 15px 0 0;
}

.summary_parts li {
	font-size: 14px;
	width: auto !important;
}

.parts_editor {
	margin: 0px 10px 2px 0px !important;
	padding-left: 12px;
	float: left;
	color: #009a9a;
	background: url(../images/top/icon_editor.gif) no-repeat 0 center / 10px auto;
	
}

.parts_date {
	margin: 0px 0px 4px 0px !important;
	padding-left: 20px;
	float: left;
	background: url(../images/top/icon_date.png) no-repeat 0 center / 14px auto;
}

.parts_tag {
	margin: 0px !important;
	clear: both;
	padding-left: 20px;
	background: url(../images/top/icon_tag.gif) no-repeat 0 center / 12px auto;
}

.parts_tag a {
	color: #009a9a;
	text-decoration: underline;
}

@media screen and (max-width: 767px) {

	#wrapper {
		padding-top: 5px;
		padding-bottom: 20px;
	}

	#contents {
		margin: 0 20px;
		width: auto;
	}

	#top_left {
		margin-right: 0;
		float: none;
		width: auto;
	}

	#top_main_banner {
		margin-bottom: 15px;
	}

	.bx-wrapper {
		margin-bottom: 35px !important;
	}
	
	.bx-viewport {
		height: auto;
	}

	.bx-wrapper .bx-pager {
		bottom: -25px !important;
	}

	.bx-wrapper .bx-pager a {
		width: 5px !important;
		height: 5px !important;
		border-radius: 50%;
	}

	.bx-wrapper .bx-pager.bx-default-pager a {
			background-size: 5px auto !important;
	}
	.bx-wrapper .bx-pager.bx-default-pager a.active {
			background-size: 5px auto !important;
	}

	.side_li {
		width: 100% !important;
	}

	.side_li img {
		width: 100%;
	}

	.top_schedule {
		margin-bottom: 20px;
	}
	
	#no_index_event {
		margin: 20px 0;
	}
	
	.top_schedule h2 {
		font-size: 18px;
	}
	
	.top_schedule h2 span {
		font-size: 14px;
	}

	.top_schedule li {
		margin-bottom: 10px;
		background-color: #fff;
		display: block;
		border: 2px solid #eee;
	}

	#no_index_event {
		font-size: 14px;
	}

	.event_date {
		padding: 5px;
		width: auto;
		display: block;
		font-size: 14px;
	}
	
	.event_title {
		padding: 10px;
		border: none;
		display: block;
		width: calc(100% - 20px);
		font-size: 14px;
	}
	
	.event_title a {
		padding: 0;
	}

	#top_news {
		margin-bottom: 30px;
	}
	
	#top_news h2 {
		font-size: 18px;
	}
	
	#top_news h2 span {
		font-size: 14px;
	}
	
	#top_news ul {
		padding: 5px 5px 3px 5px;
	}
	
	#top_news li {
		margin-bottom: 2px;
		padding: 5px 10px;
	}
	
	.news_date {
		margin: 5px 0;
		width: auto;
		display: block;
		font-size: 14px;
	}
	
	.news_title {
		margin-bottom: 5px;
		width: auto;
		font-size: 14px;
	}
	
	#top_blog,
	.top_report {
		margin-bottom: 15px;
	}
	
	#top_blog h2,
	.top_report h2 {
		font-size: 18px;
	}
	
	#top_blog h2 span,
	.top_report h2 span {
		font-size: 14px;
	}

	#top_blog > ul,
	.top_report > ul {
		display: block;
	}
	

	#top_blog li,
	.top_report li {
		margin: 0 0 20px;
		width: calc(100% - 4px);
		height: auto;
	}

	.event_img_box {
		width: 100% !important;
		height: auto !important;
		max-height: 170px;
	}
	
	.event_img_box img {
		width: 100% !important;
		height: auto !important;
		top: 0 !important;
	}
	
	.thumb_img_box {
		width: 100%;
		height: auto !important;
		border-bottom: none !important;
	}

	.thumb_img_box img {
		left: 0 !important;
		width: 100%;
		height: auto;
	}
	
	.top_blog_box {
		height: auto;
		padding: 10px;
		overflow: hidden;
	}
	
	#top_blog li h3,
	.top_report li h3 {
		font-size: 16px;
	}
	
	.blog_summary {
		margin-bottom: 5px;
		font-size: 14px;
	}

	.summary_parts {
		position: relative;
		overflow: hidden;
		left: auto;
		top: auto;
	}
	
	.summary_parts li {
		font-size: 12px;
		width: auto !important;
	}
	
	.parts_editor {
		float: none;
	}
	
	.parts_date {
		float: none;
	}
	
	
}

/* ---------------
　下層共通
--------------- */

#contents_wrapper {
	background-color: #ffffff;
}

#main {
	margin-bottom: 100px;
}

@media screen and (max-width: 767px) {

	#main {
		margin-right: 0;
		margin-bottom: 40px;
		width: auto;
		float: none;
	}

}

/* -------------------
　Sessions Meeting
-------------------- */

#cate_head {
	margin-bottom: 30px;
	padding: 10px 15px;
	border-radius: 4px;
	background-color: #00adbb;
}

#cate_head h1 {
	padding: 0px 0px 0px 20px;
	display: table-cell;
	vertical-align: middle;
	color: #ffffff;
	font-size: 24px;
}

@media screen and (max-width: 767px) {

	#cate_head {
		margin-bottom: 20px;
		width: calc(100% - 30px);
		border-radius: 4px;
	}
	
	#cate_head h1 {
		padding: 0px;
		font-size: 20px;
	}

}

/* ---------------
　下層index
--------------- */

#idnex_box {
	margin: 0px 20px 0px 40px;
	overflow: hidden;
}

#idnex_box li {
	margin: 0px 20px 19px 0px;
	width: 350px;
	height: 150px;
	float: left;
	border-top: 3px solid #f33740;
	overflow: hidden;
	background-color: #faf5f3;
	position: relative;
}

.index_img {
	margin-right: 10px;
	float: left;
}

.idnex_box_waku {
	position: absolute;
	top: 0;
	left: 0;
	width: 350px;
	height: 150px;
}

#idnex_box h2 {
	margin: 15px 10px 10px 10px;
	font-weight: bold;
	font-size: 16px;
}

#idnex_box h2 a,
#idnex_box h2 a:hover {
	color: #777777;
	text-decoration: none;
}

#idnex_box p {
	margin-right: 10px;
	line-height: 1.4;
}

/* ---------------
　下層entry
--------------- */

.entry_wrapper {
	margin-bottom: 30px;
	overflow: hidden;
	background-color: #ffffff;
}

.entryTitle {
	margin: 0px;
	padding: 0px 5px 10px 5px;
	font-size: 24px;
	color: #00adbb;
	line-height: 1.5;
	border-bottom: 5px solid #00adbb;
}

.entryTitle a {
	color: #777777;
	text-decoration: none;
}

.entryColumn {
	padding: 40px 38px;
	border-left: 2px solid #efefef;
	border-right: 2px solid #efefef;
	border-bottom: 4px solid #efefef;
	overflow: hidden;
}

#entry_date {
	margin: 0px 10px 6px 0px;
	text-align: right;
}

p.continue {
	margin: 10px 0px 0px !important;
	clear: both;
	text-align: right;
}

.entry_footer {
	margin: 30px 0 0 0 !important;
	padding: 0;
	overflow: hidden;
}

.entry_footer li {
	margin: 0px 10px 0px 5px;
	float: left;
	background-position: 0 3px;
}

.entry_sns {
	margin: 10px 0 0 !important;
	padding: 0;
	overflow: hidden;
}

.entry_sns li {
	margin: 0px 0px 0px 5px;
	padding: 0 !important;
	float: left;
	background: none !important;
}

.entry_sns li:first-child {
	margin-right: 10px;
}

@media screen and (max-width: 767px) {

	.entry_wrapper {
		width: auto;
	}
	
	.entryTitle {
		font-size: 20px;
		border-bottom: 3px solid #00adbb;
	}
	
	.entryColumn {
		padding: 15px 15px 20px 15px;
		border-left: 1px solid #efefef;
		border-right: 1px solid #efefef;
		border-bottom: 2px solid #efefef;
		overflow: hidden;
		width: auto;
	}
	
}

/* ---------------
　マークアップ
--------------- */

.entry p,
.index p {
	margin-bottom: 20px;
	line-height: 1.6;
	font-size: 16px;
	color: #666666;
}

.entry,
.index {
    overflow: hidden;
}

.entry h2,
.titleWrapper h2,
.index h3 {
	margin: 30px 0px 20px 0px;
	padding: 4px 0px 4px 10px;
	font-size: 24px;
	border-left: 6px solid #00adbb;
	color: #777777;
	clear: both;
}

.entry h2 a,
.titleWrapper h2 a,
.index h3 a {
	color: #777777;
}

.entry h3,
.index h4 {
	margin: 40px 0px 20px 0px;
	color: #00adbb;
	line-height: 1.4;
	font-size: 22px;
	font-weight: bold;
	clear: both;
}

.entry h4,
.index h5 {
	margin: 30px 0px 20px 0px;
	padding: 0px 0px 10px 5px;
	font-weight: bold;
	line-height: 1.2;
	color: #444444;
	font-size: 20px;
	border-bottom: 1px solid #CCCCCC;
	clear: both;
}

.entryColumn h2:first-child,
.entryColumn h3:first-child,
.entryColumn h4:first-child {
	margin-top: 0px;
}

.column-image-left + h2,
.column-image-left + h3,
.column-image-left + h4,
.column-image-right + h2,
.column-image-right + h2,
.column-image-right + h2 {
	margin-top: 0px;
}

.entry ul,
.index ul {
	margin: 20px 0 20px 0px; 
	color: #666666;
}

.entry ol,
.index ol {
	margin: 20px 0 20px 0px; 
	padding-left: 20px;
	color: #666666;
}

.entry ul li,
.index ul li {
	margin-bottom: 10px;
	padding-left: 15px;
	line-height: 1.4;
	font-size: 16px;
	background: url(../images/common/mark1.gif) no-repeat 0 9px;
}

.entry ol li,
.index ol li {
	margin-bottom: 10px;
}

.entry table,
.index table {
	margin: 15px 0px;
	border: 1px solid #DDDDDD;
	font-size: 16px;
	color: #666666;
	width: 100%;
}

.entry th,
.index th {
	padding: 8px 20px;
	border: 1px solid #DDDDDD;
	text-align: left;
	font-weight: normal;
	background-color: #eef7f6;
}

.contact .entry table th {
	width: 200px;
}

.contact .entry table td input[type="email"],
.contact .entry table td input[type="text"],
.contact .entry table td textarea {
	width: 100%;
	font-size: 16px;
}

.contact .entry #btnSubmit,
.contact .entry #btnToInput,
.contact .entry #btnConfirm {
	padding: 10px 30px;
	font-size: 18px;
}

.entry td,
.index td {
	padding: 8px 20px;	
	border: 1px solid #DDDDDD;
	background-color: #fbfbfb;
}

p.a_center {
	text-align: center;
}

p.a_right {
	text-align: right;
}

p.block {
	margin: 10px 0px 20px 0px;
	padding: 20px;
	background-color: #fbfbfb;
	border: 1px solid #c9f3f5;
}

p.p_clear {
	margin: 30px 0px;
	text-indent: -9999px;
	height: 1px;
	clear: both;
}

p.p_line {
	margin: 30px 0px;
	text-indent: -9999px;
	height: 1px;
	clear: both;
	border-bottom: 1px solid #CCCCCC;
}

.entry em,
.index em {
	color: #00ACBB;
	font-style: normal;
	font-weight: bold;
	font-size: 15px;
}

.entry strong,
.index strong {
	color: #FF5B26;
	font-style: normal;
	font-weight: bold;
}

.entry p small,
.index p small, {
	font-size: 12px;
}

p.p_indent1 {
	text-indent: -1em;
	padding-left: 1em;
}

p.p_indent2 {
	text-indent: -2em;
	padding-left: 2em;
}

p.p_indent3 {
	text-indent: -3em;
	padding-left: 3em;
}



/* 画像 */
.column-image-left {/*左*/
    margin: 0 20px 20px 0;
}

.column-image-center {/*中央*/
/*
	padding-left: 20px;
	padding-right: 20px;
*/	
	text-align: center;
}

.column-image-right {/*右*/
    margin: 0 0 20px 20px;
}

/* 画像URL */
.column-eximage-right {/*右*/
    margin: 0 20px 20px 0 !important;
}
.column-eximage-center {/*中央*/
	padding-right: 20px;
	text-align: center;
}

/* 地図 */
.column-map-right {/*右*/
    margin: 0 20px 20px 0 !important;
}
.column-map-center {/*中央*/
	padding-right: 20px;
}

/* Youtube */
.column-youtube-center{/*中央*/
	padding-right: 20px;
}

/* 画像の最大幅 */
div.column-image-center,
div.column-image-left,
div.column-image-right,
div.column-image-auto{
	max-width : 100%;
}

div.column-image-auto {
	text-align: center;
	width: 100% !important;
}

div.column-image-auto .columnImage {
	margin-left: auto;
	margin-right: auto;
}

.markup div.column-image-center,
.markup div.column-image-left,
.markup div.column-image-right,
.markup div.column-image-auto{
	max-width : 100%;
	padding: 8px;
	background: url(../images/common/img_back.gif);
}

/* Youtubeの最大幅 */
.column-youtube-center,
.column-youtube-left,
.column-youtube-right,
.column-youtube-auto{
	max-width: 1020px;
}

/* ユニットの間隔 */
.entry div.column-image-auto,
.entry div.column-image-center,
.entry div.column-image-left,
.entry div.column-image-right,
.entry .column-map-auto,
.entry .column-map-center,
.entry .column-map-left,
.entry .column-image-right,
.entry div.column-youtube-auto,
.entry div.column-youtube-center,
.entry div.column-youtube-left,
.entry div.column-youtube-right,
.entry div.column-eximage-auto,
.entry div.column-eximage-center,
.entry div.column-eximage-left,
.entry div.column-eximage-right{
	margin-bottom: 20px;
}

.entry div.column-image-left,
.entry .column-map-left,
.entry div.column-youtube-left,
.entry div.column-eximage-left{
	margin-right: 20px;
}


/* 添付ファイル関連 */

/* 添付画像 */
.columnImage {
}
/* 添付ファイルアイコン */
.columnIcon {
	padding: 5px;
}
/* 添付ファイルのキャプション */
.caption {
	margin: 5px 0 8px !important;
	padding: 0;
	font-size: 11px !important;
	line-height: 1.2;
	text-align: center;
}
.nocaption {
	margin-bottom: 10px;
}

@media screen and (max-width: 767px) {

	.entry h2,
	.titleWrapper h2,
	.index h3 {
		margin: 20px 0px 15px 0px;
		padding: 2px 0px 2px 10px;
		font-size: 16px;
		border-left: 3px solid #00adbb;
	}
	
	.entry h3,
	.index h4 {
		margin: 20px 0px 10px 0px;
		font-size: 16px;
	}
	
	.entry h4,
	.index h5 {
		margin: 20px 0px 10px 0px;
		padding: 0px 0px 4px 4px;
		font-size: 16px;
	}
	
	.entry ul,
	.index ul {
		margin: 15px 0; 
	}
	
	.entry table,
	.index table {
		width: 100% !important;
		max-width: 100% !important;
	}
	
	.entry th,
	.index th {
		padding: 4px 10px;
	}
	
	.entry td,
	.index td {
		padding: 4px 10px;
		word-break: break-all;
	}
	
	p.block {
		margin: 10px 0px 15px 0px;
		padding: 10px;
	}
	
	p.p_clear {
		margin: 15px 0px;
	}
	
	p.p_line {
		margin: 15px 0px;
	}
	
	.entry em,
	.index em {
		font-size: 13px;
	}
	
	.entry p small,
	.index p small, {
		font-size: 11px;
	}

	.entry div.column-image-auto {
		margin: 0 auto 20px;
	}

	.entry div.column-image-left,
	.entry .column-map-left,
	.entry div.column-youtube-left,
	.entry div.column-eximage-left {
		margin: 0 auto 20px;
/*		margin-right: 0px !important;
		margin-bottom: 10px !important;*/
		width: 100%;
		float: none;
		display: block;
	}
	
	.entry div.column-image-right,
	.entry .column-map-right,
	.entry div.column-youtube-right,
	.entry div.column-eximage-right {
		margin: 0 auto 20px;
/*		margin-left: 0px !important;
		margin-bottom: 10px !important;*/
		width: 100%;
		float: none;
		display: block;
	}
	
	.entry div.column-image-center,
	.entry .column-map-center,
	.entry div.column-youtube-center,
	.entry div.column-eximage-center {
		margin: 0 auto 20px;
		width: 100%;
	}
	
}

.entry_btn {
	width: 100%;
	text-align: center;
}

.entry_btn a {
	padding: 15px 30px;
	display: block;
	font-size: 16px;
	background: #64abbb;
	border-radius: 4px;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	border: 1px solid #64abbb;
}

@media screen and (min-width: 768px) {

	.entry_btn {
		margin: 0 auto;
		display: table;
		width: auto;
	}
	
	.entry_btn a {
		padding: 10px 30px;
	}
	
	.entry_btn a:hover {
		background: #fff;
		color: #64abbb;
	}

}

/* --------------------------------
　お問い合わせ
--------------------------------- */

.contactBox .required {
	margin-top: 4px;
	color: #e79934;
	display: block;
	font-size: 14px;
}

@media screen and (max-width: 767px) {

	.contactBox th {
		width: 30%;
	}


	.contactBox td input,
	.contactBox td textarea {
		width: 100% !important;
	}

	.formBtnBox input {
		font-size: 14px !important;
	}

}

/* --------------------------------
　検索
--------------------------------- */

.search h2 {
	margin-bottom: 10px;
}

.search_column {
	margin-bottom: 20px;
}

/* --------------------------------
　サイトマップ
--------------------------------- */

.sitemap h3 {
	margin: 20px 0px 30px 20px;
	font-weight: normal;
}

.sitemap h3 a {
	color: #777;
}

/* --------------------------------
　イベント・外部セミナー
--------------------------------- */

.seminar h2 {
	margin-bottom: 10px;
	color: #00ADBC;
	font-size: 16px;
	font-weight: bold;
}

.seminar h2 span {
	margin-left: 10px;
	font-size: 12px;
	font-weight: normal;
	color: #999;
}

/* index page navi
-------------------*/

.indexListNavi  {
	margin: 0;
	text-align: center;
	height: 47px;
	position: relative;
}

.backPageLink {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0;
	width: 47px;
	height: 47px;
    display: inline-block;
}

.forwardPageLink {
	position: absolute;
	top: 0;
	right: 0;
	padding: 0;
	width: 47px;
	height: 47px;
    display: inline-block;
}

.PageLink {
    margin: 0px;
    padding-top: 15px;
    display: inline-block;
    color: #000000;
}

.LoopOut a .PageLoop {
	background-color: #FFF;
}

.LoopOut .PageLoop {
	background-color: #e7e7e7;
}

.PageLoop {
	margin: 0px;
	padding: 7px 7px 6px 7px;
    color: #000000;
}

.PageLink a:hover {
	text-decoration: none !important;
}

.indexListNavi .LoopOut,
.indexListNavi .lastPage {
	margin: 0px 4px;
}

.indexListNavi .LoopOut a,
.indexListNavi .lastPage a {
	text-decoration: none !important;
}

@media screen and (max-width: 767px) {

	.indexListNavi  {
		width: auto;
		height: 30px;
	}

	.backPageLink {
		width: 30px;
		height: 30px;
	}
	
	.forwardPageLink {
		width: 30px;
		height: 30px;
	}

	.backPageLink img,
	.forwardPageLink img {
		width: 30px;
		height: 30px;
	}

	.PageLink {
	    padding-top: 5px;
	}
	
}

/* entry page navi
-------------------------*/

#entry_navi {
	margin: 0px;
	border-left: 2px solid #efefef;
	border-right: 2px solid #efefef;
	border-bottom: 2px solid #efefef;
	position: relative;
	height: 60px;
}

#entry_navi li {
	background: none !important;
}


#to_index {
	margin: 0px auto;
	padding-top: 11px;
	text-align: center;
	background-color: #FFF;
	width: 64px;
	height: 35px;
}

#to_back {
	padding: 0;
	position: absolute;
	top: 11px;
	left: 19px;
	width: 15px;
	height: 35px;
}

#to_next {
	padding: 0;
	position: absolute;
	top: 11px;
	right: 19px;
	width: 15px;
	height: 35px;
}


@media screen and (max-width: 767px) {

	#entry_navi {
		border-left: 1px solid #efefef;
		border-right: 1px solid #efefef;
		border-bottom: 1px solid #efefef;
		width: auto;
	}
	
}


/* ---------------
　カラム
--------------- */
.column2_left {
	margin-right: 30px;
	float: left;
	width: 495px;
}

.column2_right {
	float: left;
	width: 495px;
}

.column3_left,
.column3_center {
	margin-right: 30px;
	float: left;
	width: 320px;
}

.column3_right {
	float: left;
	width: 320px;
}

.column_clear {
	clear: both;
}

.column2_left,
.column2_right,
.column3_left,
.column3_center,
.column3_right {
	margin-bottom: 30px;
	overflow: hidden;
	_display: inline;
}

.column2_left h2,
.column2_left h3,
.column2_left h4,
.column2_right h2,
.column2_right h3,
.column2_right h4,
.column3_left h2,
.column3_left h3,
.column3_left h4,
.column3_center h2,
.column3_center h3,
.column3_center h4,
.column3_right h2,
.column3_right h3,
.column3_right h4 {
	margin-top: 0px !important;
}

@media screen and (max-width: 767px) {

	.column2_left {
		margin-right: 20px;
		float: none;
		width: auto;
			
	}
	
	.column2_right {
		float: none;
		width: auto;
	}
	
	.column3_left,
	.column3_center {
		margin-right: 0;
		margin-bottom: 10px;
		float: none;
		width: auto;
	}
	
	.column3_right {
		margin-bottom: 10px;
		float: none;
		width: auto;
	}

	[class*='column-image-'] img,
	[class*='column-eximage-'] img {
		margin: 0;
		max-width: 100%;
/*		width: 100% !important;*/
		height: auto;
	}
	
}

/* ---------------
　その他
--------------- */

.left {
	float: left;
}

.right {
	float: right;
}

.center {
	text-align: center;
	margin-bottom: 10px;
}

.cl {
	clear:both;
}

.cf:after {  
	content: "."; 
	display: block;
	height: 0; 
	clear: both;
	visibility: hidden;
}

.cf {
	display: inline-block;
	min-height: 1%;
}

.clearHidden {
	margin: 0;
	padding: 0;
	height: 0;
	line-height: 0;
}

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

.bottom {
	vertical-align: top;
}

.list_end {
	margin: 0 !important;
}

.column-file-div .caption {
	margin-top: 0px !important;
}


/* フォームテーブル */
.ablogcmsForm {
	width: 595px;
	margin: 0 0 20px 0;
	border-collapse: collapse;
	border: 0px;
}
table.ablogcmsForm {
	width: 700px;
	border: none;
	border-top: 1px solid #CCCCCC;
}

.ablogcmsForm tr {
}
.ablogcmsForm th {
	width: 180px;
	margin: 0;
	padding: 8px 10px;
	border: none;
	border-bottom: 1px solid #CCCCCC;
	background-color: #ECEBE8;
	color: #333333;
	font-size: 13px;
	vertical-align: top;
	white-space: normal;
}

.ablogcmsForm th.required {
	width: 130px;
	padding: 8px 60px 8px 10px;
	background:#ECEBE8 url(../images/site/contact/required.png) no-repeat 150px 10px;
}

.ablogcmsForm td {
	margin: 0;
	padding: 5px 20px;
	border: none;
	border-bottom: 1px solid #CCCCCC;
	font-size: 15px;
	_text-align: left;
}

ul.mailStep {
	padding: 0;
}

.custom_field {
	width: 100%;
}

/* フォーム入力欄 */

.custom_field th {
	padding: 10px 20px;
	text-align: left;
	background-color: #e3e3e3;
	border: 1px solid #CCCCCC;
}

.custom_field td {
	padding: 10px 20px;
	text-align: left;
	border: 1px solid #CCCCCC;
}

.text_area_width {
	width: 100%;
}

.formM {
	width: 325px;
}

.formL {
	width: 410px;
}

.ipt_size1 {
	width: 200px;
}

.ipt_size2 {
	width: 250px;
}

/* エラー文 */
#main .emSection {
	color: #C00;
	margin: 4px 0px 0px 0px;
}

#notfound {
    padding-top: 50px;
    background-color: #faf4f1;
}

#wrapper_404 {
	margin: 0 auto;
	width: 947px;
}

#box_404 {
	padding: 40px 5px 20px 40px;
	width: 931px;
	overflow: hidden;
	border: 2px solid #fdecea;
	background-color: #ffffff;
}

.inner_left404 {
    margin-right: 50px;
    width: 270px;
    float: left;
}

.inner_right404 {
    float: left;
    text-align: left;
    font-size: 14px;
}

.inner_right404 h1 {
    font-size: 20px;
    margin-bottom: 10px;
}

.inner_right404 p {
    margin-bottom: 10px;
    *font-size: 13px;
    _font-size: 14px;
}

.inner_right404 p a {
	text-decoration: underline;
	color: #646464;
}

#copyright_404 {
    display: block;
    margin-top: 20px;
    margin-left: 355px;
    width: 620px;
    font-size: 11px;
}

@media screen and (max-width: 767px) {

	.contact .entry table th {
		padding: 15px;
		display: block;
		width: auto;
	}

	.contact .entry table th .required {
		margin-left: 10px;
		display: inline;
	}

	.contact .entry table td {
		display: block;
		padding: 15px;
	}

	#footer {
		display: block;
	}

	#f_link {
		margin: 0 0 20px;
		display: flex;
		justify-content: center;
	}

}



/* ---------------
　管理用スタイル
--------------- */

acms-form input[type="text"],
.acms-form input[type="password"],
.acms-form input[type="datetime"],
.acms-form input[type="datetime-local"],
.acms-form input[type="date"],
.acms-form input[type="month"],
.acms-form input[type="time"],
.acms-form input[type="week"],
.acms-form input[type="number"],
.acms-form input[type="email"],
.acms-form input[type="url"],
.acms-form input[type="search"],
.acms-form input[type="tel"],
.acms-form input[type="color"] {
	line-height: 1.2;
}

[class*='column-image-'] img,
[class*='column-eximage-'] img {
	margin: 0;
	max-width: 100%;
	height: auto;
}
    
#adminBox {
	position: relative;
	z-index: 1000;
	height: 65px;
	margin-bottom: 0px !important;
}

.comPost {
	margin: 0 0 10px 0 !important;
}

form#entryForm {
	width: 700px !important;
	margin: 0 20px 0 0;
}

.entryInputTitle {
	font-size: 14px !important;
}

.formEntryAction {
	margin: 20px 0 !important;
}

.js-tag_insertion a.f_em:link {
	color: #00ACBB !important;
	font-style: normal;
	font-weight: bold;
}

.js-tag_insertion a.f_st:link {
	color: #FF5B26;
	font-style: normal;
	font-weight: bold;
}

.f_em:link {
	color: #000000 !important;
	font-style: normal;
}

.f_st:link {
	font-weight: bold;
}

