@charset "UTF-8";

/* Tag Style */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;

	-webkit-text-size-adjust: 100%;
}
html,body {
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	font-size: 14px;
	height: 100%;
	line-height: 160%;
	position: relative;
	width: 100%;
}
a {
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	-ms-transition: all linear 0.2s;
	transition: all linear 0.2s;

	color: #13B368;
	text-decoration: none;
}
a:hover {
	color: #33D388;
}
img{
	height: auto;
	max-width: 100%;
}

/* Common Class */
.clear {
	clear: both;
}
.area {
	margin: 0 auto;
	position: relative;
	max-width: 100%;
	padding: 0 10px;
	width: 980px;
}
.bold {
	font-weight: bold;
}
.hover {
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	-ms-transition: all linear 0.2s;
	transition: all linear 0.2s;
}
.hover:hover {
	opacity: 0.7;
}
.zoom {
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	-ms-transition: all linear 0.2s;
	transition: all linear 0.2s;
}
.zoom:hover {
	-moz-transform: scale(1.1,1.1);
	-webkit-transform: scale(1.1,1.1);
	-o-transform: scale(1.1,1.1);
	-ms-transform: scale(1.1,1.1);
	transform: scale(1.1,1.1);
}
.social {
	float: left;
	margin-top: 3em;
	margin-right: 1%;
	width: 49%;
}
.indent {
	padding-left: 1em;
}
.right {
	text-align: right;
}
.center{
	text-align: center;
}
.gfont {
	font-family: 'Domine', serif;
	font-size: large;
}
.underline{
	text-decoration: underline;
}
.sat {color:#0059c7;}
.sun {color:#db0000;}
.red {color:#f00;}

/* font size */
.fontxl { font-size: 24px; }
.fontll { font-size: 18px; }
.fontl { font-size: 16px; }
.fontm { font-size: 14px; }
.fonts { font-size: 12px; }
h1 { font-size: 24px; }
h2 { font-size: 16px; }
h3 { font-size: 14px; }

/* Base Design */
#container {
	height: 100%;
	position: relative;
}
header {
	position: relative;
}
.lang_change {
	background-color: #ccc;
	float: right;
}
.lang_change li {
	display: inline-block;
}
.lang_change li a {
	color: #000;
	display: block;
	font-weight: bold;
	padding: 0 10px;
}
.lang_change li a:hover {
	background-color: #eee;
}
#logo {
	padding: 50px 0 10px 0;
}
#header_date {
	float: left;
	padding-top: 30px;
	width: 30%;
}
div.reg_group {
	float: right;
	text-align: right;
	width: 70%;
}
div.reg_group ul li {
	display: inline-block;
	padding-left: 40px;
}
div.reg_group ul li a {
	border-radius: 50%;
	font-weight: bold;
	display: inline-block;
	text-align: center;
	height: 165px;
	width: 165px;
}
div.reg_group ul li a div.regl{
	font-size: 24px;
	padding-top: 65px;
}
div.reg_group.en ul li a div.regl{
	padding-top: 75px;
}
.entry_r { background-color: #EA6D9A;color:#fff; }
.entry_v { background-color: #3195EF;color:#fff; }
.entry_c { background-color: #13B368;color:#fff; }
.entry_r:hover, .entry_v:hover, .entry_c:hover { color:#fff; }

#breadcrumb {
	margin: 0 auto;
	position: relative;
	max-width: 100%;
	width: 980px;
	padding: 0 10px 2em 10px;
}
#breadcrumb ul li {
	display: inline;
	padding-right: 1em;
}
#contentContainer {
	margin-top: 3em;
}
#toplink {
	cursor: pointer;
	position: fixed;
	bottom: 20px;
	right: 20px;
	margin-bottom: -120px;
	opacity: 0;

	-webkit-transition: all linear 0.3s;
	-moz-transition: all linear 0.3s;
	-o-transition: all linear 0.3s;
	-ms-transition: all linear 0.3s;
	transition: all linear 0.3s;
}
#toplink.active {
	display:block;
	margin-bottom: 0;
	opacity: 1;
}
/* side */
#side {
	float: left;
	width: 27%;
}
div.nav_title {
	background-color: #fff;
	border: solid 2px #333;
	font-weight: bold;
	padding: 1em;
}
#nav_image {
	margin-top: 1em;
}
ul.nav_registry li,
ul.nav_event li,
ul.nav_information li {
	border-radius: 8px;
	display: block;
	margin: 10px 0;
}
ul.nav_information li.em a{
	border: solid 1px #FFCCCC;
}
ul.nav_event li{
	background-color: #FFFEEF;
	border: solid 2px #666;
}
ul.nav_information li {
	background-color: #FFEEEE;
	border: none;
}
ul.nav_registry li a {
	color: #fff;
	border-radius: 8px;
	display: block;
	font-weight: bold;
	padding: 1em;
	position: relative;
}
ul.nav_event li div, ul.nav_event li a {
	color: #EA6D9A;
	display: block;
	font-weight: bold;
	padding: 1em;
	position: relative;
}
ul.nav_information li div, ul.nav_information li a {
	border: solid 1px #ccc;
	border-radius: 8px;
	color: #333;
	display: block;
	font-weight: bold;
	padding: 1em;
	position: relative;
}
ul.nav_event li a:hover,
ul.nav_information li a:hover {
	opacity: 0.5;
}
ul.nav_registry li a:after,
ul.nav_event li a:after,
ul.nav_information li a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -6px 0 0 0;
	border-top: solid 2px #666;
	border-right: solid 2px #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
ul.nav_registry li a:after{
	border-color: #fff;
}
ul.nav_sub {
	border-top: 1px solid #666;
	border-radius: 0;
}
ul.nav_sub li {
	margin: 0;
	border-width: 0 0 1px 0;
	border-style: dotted;
	border-radius: 0;
}
ul.nav_sub li:last-child {
	background-color: transparent;
	border: none;
}
ul.nav_sub li a {
	color: #000;
	font-size: 13px;
}
#s_link ul li {
	margin-bottom: 10px;
}
#s_link ul li a{
	display: block;
	text-align: center;
}
#s_link ul li a img{
	border: solid 1px #ccc;
	display: inline-block;
}
.spbnr ul li {
	display: none;
}
.spbnr ul li:first-of-type {
	display: block;
}
.spbnr ul li a {
	display: block;
	text-align: center;
}

/* content */
#article {
	border-left: 1px dotted #ccc;
	float: right;
	height: 100%;
	margin-left: 3%;
	padding-left: 3%;
	width: 70%;
	word-break:normal;
}
#article {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

#article h1 {
	border: solid 3px #333;
	color: #333;
	font-size: 24px;
	margin-bottom: 1em;
	padding: 0.8em;
	line-height:1.5em;
}
#article h2 {
	border-bottom: 2px solid #333;
	color: #333;
	font-size: 20px;
	margin-bottom: 1em;
	padding-bottom: 0.5em;
	padding: 2em 0 5px 0;
}
#article h3 {
	border-left: 7px solid #333;
	color: #333;
	font-size: 16px;
	padding-left: 8px;
	margin-top: 1em;
	margin-bottom: 0.5em;
}
#article h4 {
	margin-top: 1em;
}
#article a {
	text-decoration: underline;
}
#article p {
	padding: 0.5em 0;
}
#article ul{
	list-style-type: disc;
	margin-left: 20px;
}
#article ol{
	list-style-type: decimal;
	margin-left: 30px;
}
#article ul.nostyle{
	list-style-type:none;
}
#article a.button {
	background-color: #EA6D9A;
	border-bottom: 5px solid #BA3D6A;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0%;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
#article a.button_wnotes {
	background-color: #EA6D9A;
	border-bottom: 5px solid #BA3D6A;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0 0;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
#article a.button_runnet {
	background-color: #295da6;
	border-bottom: 5px solid #2F4E7B;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0 0;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
#article a.button_mspo {
	background-color: #27ae60;
	border-bottom: 5px solid #368156;
	border-radius: 8px;
	color: #fff;
	display: inline-block;
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0 0;
	padding: 1em 0;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
#article a i {
	padding-left: 5px;
}
#article .alert{
	border: solid 2px #333;
	color: #c00;
	font-weight: bold;
	margin: 1em 0;
	padding: 1.5em;
}
#article table{
	width: 100%;
}
#article table th{
	background-color: #eee;
	border: solid 1px #ccc;
	padding: 5px 1em;
	white-space: nowrap;
	/*width: 20%;*/
}
#article table td{
	border: solid 1px #ccc;
	padding: 5px 1em;
}
#article iframe {
	max-width: 100%;
}
#article ul.pagelink {
	font-weight: bold;
	list-style: none;
}

/* news */
#article ul.list {
	border-top: 1px solid #ccc;
	list-style: none;
	margin: 0;
}
#article ul.list li{
	border-bottom: 1px solid #ccc;
	padding: 10px 0;
}
#article ul.list li a{
	display: block;
}
#article ul.list li a img {
	float:left;
	margin-right: 10px;
	width: 80px;
}
#article div.pagination ul {
	margin: 10px 0;
}
#article div.pagination ul li{
	background-color: #13B368;
	color: #fff;
	display: inline-block;
	height: 3em;
	line-height: 3em;
	margin-right: 1px;
	text-align: center;
	width: 3em;
	list-style: none;
}
#article div.pagination ul li.active{
	background-color: #ccc;
	color: #666;
}
#article div.pagination ul li a{
	color: #fff;
	display: inline-block;
	height: 100%;
	width: 100%;
	text-decoration: none;
}
#article div.pagination ul li a:hover{
	background-color: #33D388;
}
#article div.bottom_registry {
	padding: 2em 0 0 0;
}
#article div.bottom_registry ul{
	margin: 0;
}
#article div.bottom_registry ul li a{
	text-decoration: none;
}


/* sponsor box */
#sponsor_box{ padding: 1.5em 0;}
#sponsor_box ul {text-align: center;}
#sponsor_box ul li { display: inline-block; text-align: center; padding: 15px;}
#sponsor_box ul li a { display: block; vertical-align: middle;}
#sponsor_box ul li img {max-height: 100%;　vertical-align: middle;}
#sponsor_box ul.platinum li { width: 35%;}
#sponsor_box ul.gold li { width: 25%;}
#sponsor_box ul.silver li { width: 15%;}
#sponsor_box ul.diamond li { width: 15%;}
#sponsor_box ul.silver_small li {width: 10%;}

.flexslider {overflow:hidden;}

/* footer */
#footnav {
	border-top: 1px solid #000;
	margin-top: 3em;
	padding-top: 1em;
}
#footer {
	border-top: 2px solid #000;
	margin-top: 3em;
	padding-top: 2em;
}
#good_design {
	border: solid #333;
	border-width: 1px 0;
	font-weight: bold;
	margin: 2em 0;
	padding: 1em 0;
}
#good_design img{
	padding:1em 30px 1em 0;
	vertical-align: middle;
}
#beyond2020 {
	border: solid #333;
	border-width: 1px 0;
	font-weight: bold;
	margin: 2em 0;
	padding: 1em 0;
}
#beyond2020 img{
	padding:1em 30px 1em 0;
	vertical-align: middle;
}

#flogo {
	width: 50%;
	padding: 1em 0;
}
#flogo img{
	height: auto;
	width: 100%;
}
#copyright {
	padding-bottom: 2em;
	text-align: center;
}

/* top */
#main_image img{
	width: 100%;
}
#news {
	margin-top: 0em;
}
@media screen and (max-width: 768px) {
	#news {
		margin-top: 3em;
	}
}
#news ul {
	line-height: 150%;
	list-style: none;
	padding: 1em;
	margin: 0;
}
.news_date {
	font-weight: bold;
	padding-top: 0.5em;
}
div.movie {
	margin-top: 3em;
}
div.movie iframe {
	width: 100%;
}

#photoGallery ul{
	list-style:none;
	margin-left: 0px;
	margin-bottom:30px;
}

#photoGallery ul li{
	float:left;
	width:33.3%;
    font-size:0;
    line-height:0;
}

#photoGallery ul li a{
	display:block;
	margin: 10px 10px;
	box-shadow: 0px 2px 5px rgba(0,0,0,0.25);
}

#photoGallery ul li a img {
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	transition: all linear 0.2s;
}
#photoGallery ul li a img:hover {
	transform: scale(1.05);
}
@media screen and (max-width: 768px) {
#photoGallery ul li{
	float:none;
	width:100%;
    font-size:0;
    line-height:0;
}
}

/* slider */
#body_slides{margin-top:3em;}
ul.slides{margin:0 !important;}
ul.flex-direction-nav{list-style:none !important;}
#body_slides div.flex-viewport ul li {height:430px;line-height:430px;text-align:center;overflow:hidden;position:relative;}
#body_slides div.flex-viewport ul li img {display:inline;vertical-align:middle;width:auto;}
#body_pager li {border:none;margin:5px 2px;padding:0 2.5px;overflow:hidden;width:auto !important; }
#body_pager li img {border:solid 1px #fff;display: block; opacity: .7; cursor: pointer;margin:5px auto;height:57px;width:auto;}
#body_pager li img:hover {opacity: 1;}
#body_pager .flex-active-slide img {opacity: 1; cursor: default;border: solid 5px #fff;}
.flexslider { border:none !important;border-radius:0px !important;box-shadow:none !important; vertical-align: middle;}

/* lightbox */
.photos li {
	display: inline-block;
	position: relative;
	margin-right: 1%;
	float: left;
	width: 30%;
}
.photos li:nth-of-type(3n+1) {
	clear:both;
}
.photos li a {
	display: block;
	width: 100%;
}
.photos li a div:hover {
	background-color: rgba(255,255,255,0.8);
}
.photos li a img {
}
span.caption {
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	-ms-transition: all linear 0.2s;
	transition: all linear 0.2s;

	opacity: 0;
	background-color: rgba(255,255,255,0.8);
	color: #000;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	height: 100%;
	width: 100%;
}
span.caption span {
	display: block;
	height: 100%;
	padding: 1em;
	text-align: center;
}
span.caption:hover {
	opacity: 1;
}

/* responsive */
.pc {display:block;}
.sp {display:none;}
#spmenubody {
	background-color: rgba(255,255,255,0.9);
	position: fixed;
	right: -100%;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 10001;
	overflow-y: scroll;
	padding: 5px 10px;
	-webkit-transition: all linear 0.2s;
	-moz-transition: all linear 0.2s;
	-o-transition: all linear 0.2s;
	-ms-transition: all linear 0.2s;
	transition: all linear 0.2s;
}
#spmenubody.active{
	right: 0;
}
#spclose {
	background-color: #ccc;
	border: solid 2px #000;
	color: #000;
	display: inline-block;
	font-weight: bold;
	padding: 10px;
	text-align: center;
}

@media screen and (max-width: 960px) {
	div.reg_group ul li a {
		height: 140px;
		width: 140px;
	}
	div.reg_group ul li a div.regl {
		font-size: 20px;
		padding-top: 55px;
	}
	div.reg_group.en ul li a div.regl {
		font-size: 20px;
		padding-top: 55px;
	}
}
@media screen and (max-width: 768px) {
	.pc {display:none;}
	.sp {display:block;}

	/* font size */
	.fontxl { font-size: 20px; }
	.fontll { font-size: 16px; }
	.fontl { font-size: 14px; }
	.fontm { font-size: 13px; }
	.fonts { font-size: 11px; }
	h1 { font-size: 18px; }
	h2 { font-size: 16px; }
	h3 { font-size: 14px; }
	#article {font-size:13px;}
	#article h1 {font-size: 18px;}
	#article h2 {font-size: 16px;}
	#article h3 {font-size: 14px;}
	#article h4 {font-size: 14px;}

	.area{
		padding: 0;
	}
	header{
		padding:73px 10px 0 10px;
	}
	#contentContainer{
		margin-top:1em;
	}
	#side, #article, footer {
		border: none;
		float:none;
		margin:0;
		padding: 0 10px;
		width:100%;
	}
	#side {
		background-color: #f1f1f1;
		border: solid #ccc;
		border-width: 1px 0;
		margin-top:2em;
		padding-top: 2em;
		padding-bottom: 2em;
	}
	#body_slides div.flex-viewport ul li {
		height: 280px;
		line-height: 280px;
	}
	#body_pager {
		display: none;
	}
	#breadcrumb {
		display: none;
	}
	.social {
		display: none;
	}
	#toplink {
		display: none !important;
	}
	#sponsor_box ul li {
		padding: 10px;
		width: 30%;
	}
	#sponsor_box ul.silver li {

		width: 25%;
	}

#sponsor_box ul.diamond li {
width: 15%;

}
	#flogo{padding:0;width:100%;}
	#good_design img{display:block;}
	#footer{border:none;margin:0;}

	/* article */
	#article table th{padding: 5px;}
	#article table td{padding: 5px;}

	/* sp only */
	#spheader {
		background-color: rgba(240,240,240,0.9);
		box-shadow: 0 1px 3px rgba(0,0,0,0.6);
		padding: 0 0 5px 0;
		width: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10000;
	}
	#sptitle {
		float: left;
		height: auto;
		max-width: 80%;
	}
	#sptitle a {
		display: block;
		height: 50px;
		line-height: 50px;
		padding-left: 5px;
	}
	#sptitle a img{
		vertical-align: middle;
	}
	#spmenu {
		float: right;
		height: 50px;
		line-height: 50px;
		width: 50px;
		text-align: center;
	}
	.spreg {
		display: table;
		margin-bottom: 1em;
		width: 100%;
	}
	.spreg li{
		display: table-cell;
		overflow: hidden;
		padding: 1px;
		width:20%;
	}
	.spreg li a{
		display: block;
		height: 100%;
		width: 100%;
		padding: 5px 0px;
		text-align: center;
		vertical-align: middle;
	}
	.spreg li a span.spregl {
		font-size: 18px;
	}
	.spnav_r a{ background-color: #EA6D9A;color:#fff; }
	.spnav_v a{ background-color: #3195EF;color:#fff; }
	.spnav_c a{ background-color: #13B368;color:#fff; }
	.spnav_w a{ background-color: #fff;color:#000;border:solid 1px #000; }
	.spnavl {font-size:12px;}
	.spnavs {font-size:8px;}
	#sp_spacer {margin-bottom:1em;}
	.spnavsub{color:#000;display:block;}

	#sp_logo {
		border-bottom: 1px solid #ccc;
		padding: 1em 0 5px 0;
	}
	#menu_lang_change{
		float: none;
		position: absolute;
	}

	/* top */
	div.reg_group{
		width: 100%;
	}
	div.reg_group ul{
		border-bottom: 1px solid #ccc;
		margin-left: 0 !important;
		margin-bottom: 3em;
	}
	div.reg_group ul li a {
		height: 165px;
		width: 165px;
		text-decoration: none !important;
	}
	div.reg_group ul li a div.regl {
		font-size: 24px;
		padding-top: 70px;
	}
	#sp_top_registry{
		text-align: center;
	}
	#sp_top_registry li {
		border-top: solid #ccc 1px;
		padding: 1em 0;
		width: 100%;
	}
}

/* 表のセンター指定  */
.tour_table_middle td{vertical-align: middle;}


/* オンラインラン関連 */
.faq__item .faqMain li{margin-top: 20px;}
.faq__item .faqMain .last{list-style: none; text-align: right;}

/* 申し込みフロー */
#online_marathon_flow { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: justify; justify-content:center; width: 90%; margin-top: 30px;}
#online_marathon_flow > li { list-style: none; width: 100%; border: 2px solid #005ab7; border-radius: 5px; box-sizing: border-box; position: relative; margin-bottom: 40px;}
#online_marathon_flow > li::before { content: ''; position: absolute; bottom: -35px; left: 0; right: 0; margin: auto; width: 0; height: 0; border-style: solid; border-width: 20px 15px 0 15px; border-color: #005cb7 transparent transparent transparent;}
#online_marathon_flow > li.noarrow::before { content: none;}
#online_marathon_flow > li:last-child::before { content: none;}
#online_marathon_flow > li.wHalf { width: 47%; padding: 0 0 20px 0; margin: 0 4px 40px}
#online_marathon_flow > li.wHalf p{padding: 10px;}
#online_marathon_flow > li.btn { padding: 0;}
#online_marathon_flow > li.btn a { color: #fff; text-decoration: none; display: block; padding: 20px; background-color: #005ab7; position: relative;}
#online_marathon_flow > li.btn a:hover { opacity: .8; color: #fff;}
#online_marathon_flow > li.btn a::before { content: ''; position: absolute; top: 0; bottom: 0; margin: auto; right: 20px; width: 10px; height: 10px; border-top: 2px solid #fff; border-right: 2px solid #fff; transform: rotate(45deg);}
#online_marathon_flow > li .arrow { position: relative; padding-bottom: 10px; margin-bottom: 50px;}
#online_marathon_flow > li .arrow::before { content: ''; position: absolute; bottom: -35px; left: 0; right: 0; margin: auto; width: 0; height: 0; border-style: solid; border-width: 20px 15px 0 15px; border-color: #005cb7 transparent transparent transparent;}
#online_marathon_flow > li .titleBgC { padding: 15px; background-color: #005ab7; color: #fff; text-align: center;}
#online_marathon_flow li.titleBg { padding: 15px; text-align: center;}
#online_marathon_flow > li .titleBoderC { padding: 20px; border-bottom: 2px solid #005ab7; text-align: center; font-weight: bold;}
#online_marathon_flow li.ttlF{width: 95%;}
#online_marathon_flow > li .wrap { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between;}
#online_marathon_flow > li .wrap .left { width: 48%; padding-right: 2%; border-right: 1px solid #005ab7;}
#online_marathon_flow > li .wrap .right { width: 48%;}
#online_marathon_flow .omfCnt{padding: 10px;}
#online_marathon_flow .heading{ font-weight: bold; font-size: 16px; color: #2E57B2;}
#online_marathon_flow .step{ display: inline-block; padding: 0 5px; border: solid 2px #EA6D9A; border-radius: 10px; font-size: 12px;}

#article .notes_blue{ text-align: center; color: #2E57B2;}

/* TXSponsor */
.thSponsor .clearfix::after { content: ""; display: block; clear: both;}
.thSponsor{ margin: 50px 0 0; padding: 0 100px;}
.thSponsor li { text-align: center;}
.thSponsor ul{ margin-bottom: 30px;}
.thSponsor .thsp{ font-size: 130%;}
.thSponsor .thsp li{float: left; width: 50%; padding: 10px;}
.thSponsor .thsg{ font-size: 115%;}
.thSponsor .thsg li{float: left; width: 33%; padding: 10px;}
.thSponsor .thss li{float: left; width: 33%; padding: 10px;}
@media only screen and (max-width:540px){
.thSponsor{ margin: 30px 0 0; padding: 0 10px;}
.thSponsor .thsp li{float: none; width: 100%; padding: 10px;}
.thSponsor .thsg li,.thSponsor .thss li{width: 50%;}
}

/*movie2021*/
.movie2021{margin: 50px 0 30px;}
.movie2021 .mainttl{ margin-bottom: 20px; line-height: 1.5; text-align: center; font-size: 24px;}
.movie2021 .item{ text-align: center;}
.movie2021 .item .secttl{ margin-bottom: 10px; font-size: 16px;}
.movie2021 .item .itemttl{font-size: 16px; font-weight: bold;}
.movie2021 .item .movbox{ width: 640px; height: 360px; margin: 0 auto;}
.movie2021 .item .movall{ margin-bottom: 30px;}

@media screen and (max-width:425px) {
.movie2021 .item .movbox{ width: 100%; height: 240px;}
}

/* onlineevent
.pre_event_program{}
.pre_event_program td{padding: 5px;}
.pre_event_program .title{ margin: 20px 0; text-align: center;}
#article .pre_event_program table td{ border: none;}
.pre_event_program .date{ padding: 10px; text-align: center;}
.pre_event_program .schedule1,.pre_event_program .schedule2{ margin-bottom: 10px; border: #EA6D9A 5px solid; border-radius: 5px;}
.pre_event_program .txt{text-align: center;}

@media screen and (min-width:768px) {
.pre_event_program .schedule1,.pre_event_program .schedule2{ width: 49%;}
.pre_event_program .schedule1{float: left;}
.pre_event_program .schedule2{float: right;}
}


body{background-image:url("http://tohokumarathon.com./images/common/tohoku2021.png"); background-repeat: repeat;}
.area{ background-color: #FFF;}
.online_event{margin: 50px 0;}
.online_event .streaming{ margin-bottom: 20px;}
.online_event .chatroll{ }
.event_program .title{ margin-bottom: 10px; text-align: center;}

.event_program{ margin-bottom: 30px;}
.event_program td{padding: 5px 8px;}
.event_program .date{ padding: 10px; text-align: center;}
.event_program .schedule1,.event_program .schedule2{ width: 49%; border: #EA6D9A 5px solid; border-radius: 5px;}
.event_program .schedule1{float: left;}
.event_program .schedule2{float: right;}

.sp_event_program{}
.sp_event_program td{padding: 5px 8px;}
.sp_event_program .title{ margin-bottom: 10px; text-align: center;}
.sp_event_program .date{ padding: 10px; text-align: center;}
.sp_event_program .schedule{ margin-bottom: 10px; border: #EA6D9A 5px solid; border-radius: 5px;}


#contentContainer,#footer{margin-top: 0!important;}
*/


.side_sns_menu .menu-sns {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 12px 30px ;
  }

  .side_sns_menu .menu-sns .sns-link {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;          /* 黒 */
    text-decoration: none;
  }

  .side_sns_menu .menu-sns .sns-link svg {
    width: 30px;          /* Instagramは少し大きめに */
    height: 30px;
    fill: currentColor;
  }

  .side_sns_menu .menu-sns .sns-link:hover {
    opacity: 0.7;
  }
