@charset "UTF-8";
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 100; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 200; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 300; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 400; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Bold");
		font-weight: bold; }

@font-face {
		font-family: "Helvetica Neue";
		src: local("Helvetica Neue Regular");
		font-weight: 100; }

@font-face {
		font-family: "Helvetica Neue";
		src: local("Helvetica Neue Regular");
		font-weight: 200; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 100; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 200; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 300; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 400; }

@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Bold");
		font-weight: bold; }

@font-face {
		font-family: "Helvetica Neue";
		src: local("Helvetica Neue Regular");
		font-weight: 100; }

@font-face {
		font-family: "Helvetica Neue";
		src: local("Helvetica Neue Regular");
		font-weight: 200; }


html {
		font-size: 62.5%;
		overflow-x: hidden; }

body {
		background: #fadef2;
		font-family: "-apple-system", BlinkMacSystemFont, "Helvetica Neue", Roboto, "Droid Sans", Arial, "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
		font-size: 14px;
		font-size: 1.4em;
		line-height: 1.4;
		color: #080404;
		height: auto !important;
		overflow: hidden; }

main {
		overflow: hidden; }

figure {
		margin: 0;
		text-align: center; }
		figure figcaption {
				margin-top: 0.5em;
				text-align: center; }

a {
		color: #080404;
		text-decoration: underline; }
		a:hover {
				color: #080404;
				text-decoration: none; }
		.highlight a {
				color: #080404; }
				.highlight a:hover {
						color: #080404; }

img {
		vertical-align: middle; }
		img.circle {
				border-radius: 50%; }

p {
		margin: 0.5em 0 1em; }
		p:first-child {
				margin-top: 0; }
		p:last-child {
				margin-bottom: 0; }

ol,
ul {
		margin: 0 0 1em;
		padding: 0 0 0 2.5em;
		line-height: 1.6; }
		ol:last-child,
		ul:last-child {
				margin-bottom: 0; }
		ol ol,
		ol ul,
		ul ol,
		ul ul {
				margin: 0.5em 0;
				padding-left: 2em; }
				ol ol:last-child,
				ol ul:last-child,
				ul ol:last-child,
				ul ul:last-child {
						margin-bottom: 0.5em; }

ul.list-unstyled {
		padding-left: 0;
		list-style: none; }
		ul.list-unstyled ol,
		ul.list-unstyled ul {
				padding-left: 2em; }

ul.list-inline {
		margin: 0;
		padding: 0;
		list-style: none;
		margin-left: -7px;
		font-size: 0px;
		font-size: 0rem;
		margin-bottom: 15px; }
		ul.list-inline > li {
				display: inline;
				padding-left: 7px;
				padding-right: 7px;
				white-space: nowrap;
				font-size: 15px;
				font-size: 1.5rem; }

dl {
		margin: 0 0 1em;
		line-height: 1.6; }
		dl:last-child {
				margin-bottom: 0; }
		dl dt {
				font-weight: bold; }
		dl dd {
				margin-left: 0;
				margin-bottom: 0.5em; }
				dl dd:last-child {
						margin-bottom: 0; }

table {
		border-collapse: collapse;
		border-spacing: 0; }

td,
th {
		padding: 0; }

main section {
		margin-bottom: 10%; }
		main section.highlight:last-child {
				margin-bottom: 0;
				padding-bottom: 10%; }

.sp-mask {
		transition: none !important; }

.highlight {
		padding: 4% 0;
		background: #fff;
		color: #080404; }

#swipebox-overlay {
		z-index: 10000002 !important; }

@media (min-width: 768px) {
		p {
				margin: 0.5em 0 1em; }
		dl.dl-horizontal {
				overflow: hidden; }
				dl.dl-horizontal dt {
						float: left;
						clear: left;
						margin-right: 1em; }
				dl.dl-horizontal dd {
						float: left; }
		main section {
				margin-bottom: 5%; }
				main section:last-child {
						margin-bottom: 7%; }
				main section.highlight:last-child {
						margin-bottom: 0;
						padding-bottom: 7%; } }

@media (max-width: 767px) {
		.tile:not(.sp-tile) > * {
				height: auto !important; } }

@media (min-width: 768px) {
		.gutters .row.row_inline {
				letter-spacing: -.40em; }
				.gutters .row.row_inline > .col {
						letter-spacing: normal;
						vertical-align: top;
						display: inline-block;
						float: none;
						margin-bottom: 5%; }
				.gutters .row.row_inline .span_1:nth-child(12n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_2:nth-child(6n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_3:nth-child(4n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_4:nth-child(3n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_5:nth-child(2n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_6:nth-child(2n+1) {
						margin-left: 0; }
				.gutters .row.row_inline .span_7 {
						width: 57.5%; }
				.gutters .row.row_inline .span_8 {
						width: 66%; }
				.gutters .row.row_inline .span_9 {
						width: 74.5%; }
				.gutters .row.row_inline .span_10 {
						width: 83%; }
				.gutters .row.row_inline .span_11 {
						width: 91.5%; }
				.gutters .row.row_inline .span_12 {
						width: 100%; } }

main .column_main,
main .column_sub {
		overflow: hidden;
/*		min-height: 100px; */}
		main .column_main .widget_header,
		main .column_sub .widget_header {
				font-size: 18px;
				font-size: 1.8rem;
				padding: 0.5em;
				margin-bottom: 0; }
				main .column_main .widget_header + *:not(.calendar_wrap),
				main .column_sub .widget_header + *:not(.calendar_wrap) {
						padding: 0;
						margin: 0 auto 1em; }

		main .column_main .widget_wrap .menu,
		main .column_main .widget_wrap > ul,
		main .column_sub .widget_wrap .menu,
		main .column_sub .widget_wrap > ul {
				margin: 0;
				padding: 0;
				list-style: none; }
				main .column_main .widget_wrap .menu ul,
				main .column_main .widget_wrap > ul ul,
				main .column_sub .widget_wrap .menu ul,
				main .column_sub .widget_wrap > ul ul {
						margin: 0;
						padding: 0;
						list-style: none; }
				main .column_main .widget_wrap .menu li,
				main .column_main .widget_wrap > ul li,
				main .column_sub .widget_wrap .menu li,
				main .column_sub .widget_wrap > ul li {
						padding: 0.5em 0.7em;
						border-bottom: 1px solid #ccc; }
						main .column_main .widget_wrap .menu li:last-child,
						main .column_main .widget_wrap > ul li:last-child,
						main .column_sub .widget_wrap .menu li:last-child,
						main .column_sub .widget_wrap > ul li:last-child {
								border-bottom: 0; }
						main .column_main .widget_wrap .menu li a,
						main .column_main .widget_wrap > ul li a,
						main .column_sub .widget_wrap .menu li a,
						main .column_sub .widget_wrap > ul li a {
								display: block;
								text-decoration: none; }
								main .column_main .widget_wrap .menu li a:hover,
								main .column_main .widget_wrap > ul li a:hover,
								main .column_sub .widget_wrap .menu li a:hover,
								main .column_sub .widget_wrap > ul li a:hover {
										text-decoration: underline; }
		main .column_main .widget_wrap ul > li.page_item,
		main .column_sub .widget_wrap ul > li.page_item {
				border-bottom: #ccc solid 1px; }
				main .column_main .widget_wrap ul > li.page_item.page_item_has_children,
				main .column_sub .widget_wrap ul > li.page_item.page_item_has_children {
						padding: 0.5em 0.7em 0.2em !important; }
				main .column_main .widget_wrap ul > li.page_item .children,
				main .column_sub .widget_wrap ul > li.page_item .children {
						border-top: #eee solid 1px;
						margin: 0.5em 0 0 !important; }
						main .column_main .widget_wrap ul > li.page_item .children li,
						main .column_sub .widget_wrap ul > li.page_item .children li {
								font-weight: normal;
								border-bottom: #eee solid 1px;
								font-size: 96%;
								padding: 0.5em 0.7em 0.5em 1em;
								position: relative; }
								main .column_main .widget_wrap ul > li.page_item .children li:before,
								main .column_sub .widget_wrap ul > li.page_item .children li:before {
										content: "";
										position: absolute;
										left: 0;
										top: 15px;
										width: 5px;
										height: 5px;
										background: rgba(54, 46, 43, 0.4);
										border-radius: 2.5px; }
								main .column_main .widget_wrap ul > li.page_item .children li li:before,
								main .column_sub .widget_wrap ul > li.page_item .children li li:before {
										content: "";
										position: absolute;
										left: 0;
										top: 14px;
										width: 5px;
										height: 5px;
										background: rgba(54, 46, 43, 0.15);
										border-radius: 0; }

@media (max-width: 900px) {
		.gutters .span_3.column_sub,
		.gutters .span_9.column_main {
				float: none;
				width: 100%;
				margin-left: 0; } }

@media (min-width: 600px) and (max-width: 900px) {
		.gutters .span_3.column_sub .sidebar {
				letter-spacing: -.40em; }
				.gutters .span_3.column_sub .sidebar .widget_wrap {
						letter-spacing: normal;
						display: inline-block;
						vertical-align: top;
						width: 49%;
						margin-left: 2%; }
						.gutters .span_3.column_sub .sidebar .widget_wrap:nth-child(2n+1) {
								margin-left: 0; } }

@media (min-width: 768px) {
		.container {
				max-width: 1000px; } }

@media (min-width: 1024px) {
		.container {
				padding: 0 10px; } }

.article_button {
		margin-top: 5%; }

@media (min-width: 768px) {
		.article_detail:not(.reverse) .col.span_12 + .span_4,
		.article_list:not(.reverse) .col.span_12 + .span_4 {
				margin-left: 0; }
		.article_detail.reverse .col.span_12,
		.article_list.reverse .col.span_12 {
				margin-left: 0; } }

.sidebar {
		visibility: hidden; }
		.sidebar > .widget_wrap {
				visibility: visible; }

.gutters .col.span_12 + .span_12 {
		margin-left: 0; }

.sitemap {
		padding: 0;
		margin: 0;
		border-top: 1px solid #ccc; }
		.sitemap li {
				list-style: none;
				padding: 10px 0 10px 15px;
				border-bottom: 1px solid #ccc; }
				.sitemap li > ul {
						padding: 0;
						border-top: #ccc solid 1px; }
						.sitemap li > ul > li {
								border-bottom: 1px solid #ccc;
								position: relative; }
								.sitemap li > ul > li:before {
										content: "";
										position: absolute;
										left: 0;
										top: 25px;
										width: 6px;
										height: 6px;
										background: #ccc;
										border-radius: 3px; }
								.sitemap li > ul > li:last-child {
										border-bottom: none;
										padding: 10px 0 0 15px; }
								.sitemap li > ul > li .children > li {
										padding: 10px 0 0 15px; }
										.sitemap li > ul > li .children > li:before {
												content: "";
												position: absolute;
												left: 0;
												top: 25px;
												width: 6px;
												height: 6px;
												background: #ccc;
												border-radius: 0; }
		.sitemap a {
				font-size: 16px;
				font-size: 1.6rem;
				text-decoration: none; }
				.sitemap a:hover {
						text-decoration: underline; }

@media (min-width: 768px) {
		.sitemap a {
				font-size: 22px;
				font-size: 2.2rem; } }

.parallax_h1 {
		height: 250px;
		position: relative; }
		.parallax_h1:before {
				content: '';
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				margin: auto;
				background: rgba(0, 0, 0, 0.3); }
		.parallax_h1 h1 {
				color: #fff; }
				.parallax_h1 h1:after, .parallax_h1 h1:before {
						background: #fff; }

@media (min-width: 768px) {
		.parallax_h1 {
				height: 450px; } }

.map_wide #map_canvas,
.map_wide iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%; }

.map_wide img {
		max-width: none; }

.slick-track {
		margin: 0 auto; }

.col dl p {
		line-height: 1.4;
		margin: 0; }

.col p {
		line-height: 1.8; }

.container {
		padding: 0 10px; }
		@media (min-width: 1020px) {
				.container {
						padding: 0; } }
		.container .container {
				padding: 0; }

#fb-root,
.fb-page {
		font-family: "lucida grande", tahoma, verdana, arial, "hiragino kaku gothic pro",meiryo,"ms pgothic",sans-serif !important; }

#swipebox-overlay {
		background: rgba(13, 13, 13, 0.8); }




header {
		position: relative;
		z-index: 100;
		width: 100%;
		background: #fff;
		color: #080404; }
		header .row {
				margin: 0 3%; }
		@media (max-width: 767px) {
				header .container .row {
						margin: 0; } }
		header .title {
				margin: 0;
				padding: 10px 0;
				line-height: 1; }
				header .title a {
			    width: 199px;
						display: inline-block; }
				header .title img,
				header .title object {
						pointer-events: none;
						width: 199px;
						height: 41px; }
						@media (max-width: 600px) {
								header .title img,
								header .title object {
										width: 199px;
										height: 41px;
										min-height: 41px; } }
		 .global_nav > ul {
				position: absolute;
				z-index: -1;
				top: 100%;
				left: 0;
				right: 0;
				margin: auto;
				width: 100%;
				overflow: auto;
				-webkit-overflow-scrolling: touch;
				margin: 0;
				padding: 0;
				list-style: none;
				border-top: 1px solid #ccc; }
				@media (min-width: 768px) {
						.global_nav > ul {
								left: auto;
								width: 50%;
								max-width: 400px; } }
				.global_nav > ul > li {
						border-bottom: 1px solid #ccc; }
						.global_nav > ul > li a {
								display: block;
								padding: 1em;
								text-decoration: none;
								color: #fff;
								background: rgba(90, 203, 57, 0.9); }
								.global_nav > ul > li a:hover {
										color: #fff; }
								.global_nav > ul > li a:active {
										background: #6689fe;
										color: #fff; }
						.global_nav > ul > li > a {
								background: rgba(90, 203, 57, 0.9); }
		.global_nav .menu_icon {
				position: absolute;
				top: 50%;
				right: 5%;
				transform: translateY(-50%);
				z-index: 100; }
				.global_nav .menu_icon a {
						position: relative;
						display: block;
						width: 20px;
						height: 20px;
						padding: 0;
						transition: transform 0.3s;
						overflow: hidden; }
						.global_nav .menu_icon a:after, .global_nav .menu_icon a:before {
								content: "";
								display: block;
								position: absolute;
								left: 0;
								right: 0;
								margin: auto;
								width: 100%;
								height: 4px;
								background: #6689fe;
								transition: transform 0.5s; }
						.global_nav .menu_icon a:before {
								top: 0; }
						.global_nav .menu_icon a:after {
								bottom: 0; }
						.global_nav .menu_icon a span {
								position: absolute;
								top: 50%;
								transform: translate(0, -50%);
								left: 0;
								right: 0;
								margin: auto;
								width: 100%;
								height: 4px;
								background: #6689fe;
								transition: transform 0.5s;
								overflow: hidden;
								text-indent: 100%;
								white-space: nowrap; }
						.global_nav .menu_icon a.close:not(.fix) {
								background: none; }
								.global_nav .menu_icon a.close:not(.fix):before {
										top: 50%;
										transform: translate(0, -50%) rotate(45deg);
										background: #6689fe; }
								.global_nav .menu_icon a.close:not(.fix):after {
										bottom: 50%;
										transform: translate(0, 50%) rotate(-45deg);
										background: #6689fe; }
								.global_nav .menu_icon a.close:not(.fix) span {
										transform: translate(100%, -50%); }
		.global_nav > ul {
				transform-origin: center top;
				visibility: hidden;
				transition: transform 0.3s;
				transform: rotateX(90deg); }
		header.menu_open .global_nav > ul {
				visibility: visible;
				transform: rotateX(0deg); }

body header {
		transition: top 0.5s; }

body.scroll.down header {
		position: absolute;
		top: 0;
		left: 0; }
		body.scroll.down header.high {
				position: fixed; }

body.scroll header {
		z-index: 0; }
		body.scroll header.hidden {
				top: -100%; }

body.home.up header,
body.up header,
header.menu_open {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100; }

#google_translate_element,
.translate_gt {
		position: absolute;
		top: 50%;
		right: 15%;
		margin-top: -12px; }

.translate_gt {
		margin-top: -14px; }

@media (min-width: 769px) {
		header .row {
				table-layout: fixed;
				display: table;
				width: 94%; } }
		@media (min-width: 769px) and (max-width: 999px) {
				header .row {
						margin: auto;
						width: 100%; } }

@media (min-width: 769px) {
		header .container .row {
				margin: 0; }
		.global_nav,
		header .title {
				margin: 0;
				vertical-align: middle;
				display: table-cell; }
		header .title {
				max-width: none;
				max-width: none;
				padding: 10px 0;
				width: 199px; }
		.global_nav {
				text-align: right;
				width: 100%;
				padding: 0;
				padding: 0 0 15px;
				vertical-align: bottom; }
				.global_nav > ul {
						position: static;
						display: inline-block;
						width: auto;
						border: none;
						background: none;
						visibility: visible;
						font-size: 0px;
						font-size: 0rem;
						transform: none;
						text-align: left;
						overflow: visible;
						max-width: none; }
						.global_nav > ul > li {
								display: inline-block;
								vertical-align: middle;
								border: none;
								line-height: 1.5;
								border-left: 1px;
								font-size: 15px;
								font-size: 1.5rem; }
								.global_nav > ul > li:not(.gnav_search) {
										text-align: center;
										width: calc((100%) / 6); }
										.global_nav > ul > li:not(.gnav_search) > a {
												position: relative; }

								.global_nav > ul > li > a {
										display: inline-block;
										vertical-align: middle;
										color: #080404;
										text-decoration: none;
										background: transparent;
										text-align: center;
										transition: 0.3s;
										border-bottom: 2px solid transparent;
										padding: 0.3em 1.5em; } }
								@media (min-width: 769px) and (max-width: 900px) {
										.global_nav > ul > li > a {
												padding: 0.3em 0.5em; } }

@media (min-width: 769px) {
	.global_nav > ul > li > a.y:hover {
			border-bottom: 2px solid #ffcb39;
			color: #080404;
 }

.global_nav > ul > li > a.b:hover {
												border-bottom: 2px solid #5078ff;
											color: #080404;
							 }
										.global_nav > ul > li > a:active {
												background: none; }
										.global_nav > ul > li > a span {
												display: block;
												font-size: 13px;
												font-size: 1.3rem; }

						.global_nav > ul li.has_under ul li a:after {
								display: none; }
				.global_nav .menu_icon {
						display: none; }
		#google_translate_element,
		.translate_gt {
				position: static;
				float: right;
				margin-top: 3px;
				margin-left: 1em; }
		.translate_gt {
				margin-top: 0; } }

@media (max-width: 767px) {
		.global_nav > ul > li > a > span,
		.global_nav > ul > li > a > br {
				display: none; } }

@media (min-width: 769px) {
		body.home {
				padding-top: 0 !important; }
				body.home header {
						position: absolute;
						top: 0;
						left: 0;
						right: 0;
						margin: auto;
						margin-top: 29.27083%; }
				body.home header {
						margin-top: 56.2%; } }
		@media (min-width: 769px) and (min-width: 1000px) {
				body.home header {
						margin-top: 562px; } }
		@media (min-width: 769px) and (min-width: 1920px) {
				body.home header {
						margin-top: 29.27083%; } }
		@media (min-width: 769px) and (max-width: 639px) {
				body.home header {
						margin-top: 1409.18155%; } }

@media (min-width: 769px) {
				body.home header {
						position: fixed;
						transition: none; }
				body.home.scroll header.hidden {
						top: 0; }
				body.home.up header.low {
						position: absolute; }
				body.home.up header.high {
						position: fixed;
						margin-top: 0;
						transition: 0.5s; }
				body.home.down header.high {
						position: fixed;
						margin-top: 0; }
						body.home.down header.high.hidden {
								top: -100%; } }

.hdr_info_wrap {
		display: none; }
		@media (min-width: 769px) {
				.hdr_info_wrap {
						display: block;
						position: absolute;
						top: 0;
						left: 0;
						right: 0;
						margin: auto;
						width: 100%;
						max-width: 1000px; } }
		.hdr_info_wrap .hdr_info {
				position: absolute;
				right: 10px;
				top: 35px; }

footer {
		position: relative; }
		footer nav {
				text-align: center; }
				footer nav ul {
						margin: 0;
						padding: 0;
						list-style: none; }
						footer nav ul li + li {
								border-top: 1px solid black; }
				footer nav a {
						display: block;
						padding: 0.7em 0;
						text-decoration: none; }
						footer nav a:hover {
								text-decoration: underline; }
		footer .footer_copyright_wrap {
				text-align: center; }

@media (max-width: 767px) {
		.footer_nav_cont {
				background-color: rgba(205, 239, 195, 0.1); } }

@media (min-width: 768px) {
		.footer_nav_cont {
				padding-top: 3em;
				padding-bottom: 4em;
				background-color: #cdefc3; }
		footer .row:not(:last-child) {
				margin-bottom: 5px; }
		footer nav {
				text-align: left; }
				footer nav ul {
						margin: 0;
						padding: 0;
						list-style: none;
						font-size: 0px;
						font-size: 0rem;
						white-space: normal; }
						footer nav ul > li {
								display: inline;
								padding-left: 0;
								padding-right: 0;
								white-space: nowrap;
								font-size: 15px;
								font-size: 1.5rem; }
						footer nav ul li {
								line-height: 1.5;
								white-space: normal; }
								footer nav ul li + li {
										border: 0; }
				footer nav a {
						display: inline;
						padding: 0;
						font-size: 14px;
						color: #080404; }
						footer nav a:hover {
								color: #080404; } }

@media (min-width: 768px) {
		footer nav ul > li {
				display: block; } }

@media (min-width: 768px) and (max-width: 1023px) {
		footer nav ul li.tablet-break:after {
				content: "\A";
				white-space: pre; }
		footer nav ul li.tablet-break + li:before {
				display: none; } }

/*
* フッターパターンA(footer pattern A)
*/
footer {
		background: #cdefc3;
		color: #080404; }
		footer a {
				color: #080404; }
				footer a:hover {
						color: #080404; }
		@media (min-width: 768px) {
				footer div .row nav ul {
						display: inline-block; }
				footer div .row nav a {
						display: inline-block;
						padding: 0.3em; } }

.button {
		display: inline-block;
		min-width: 0px;
		margin: 0;
		padding: 1em 1em;
		border: 0;
		border-radius: 0px;
		line-height: 1;
		background: #5acb39;
		color: #fff;
		text-align: center;
		text-decoration: none;
		appearance: none;
		transition: .3s; }
		.button:hover {
				background: #fff;
				color: #5acb39; }
		.highlight .button {
				color: #fff; }
				.highlight .button:hover {
						color: #5acb39; }
		.button.block {
				display: block;
				min-width: 0; }
		.button.inverse {
				border: 0;
				border-radius: 0px;
				background: #f58cff;
				color: #fff; }
				.button.inverse:hover {
						background: #fff;
						color: #f58cff; }
		.button.cancel {
				background: #888;
				color: #fff; }
				.button.cancel:hover {
						background: #6f6f6f; }
		.button.large {
				padding: 1em 2em;
				font-size: 16px;
				font-size: 1.6rem; }
		.button + .button {
				margin-left: 0.5em; }
		.button span {
				line-height: 1;
				padding-left: 20px;
				background: url(../../MinervaTMP/images/btn_icon.png) left center no-repeat;
				background-size: auto 14px; }

@media (max-width: 767px) {
		.sp_image_cols:not(.sp_col2):not(.sp_col3) .col:not(:last-child) {
				margin-bottom: 1em; }
		.sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure {
				overflow: hidden; }
				.sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure img {
						float: left;
						width: 32%;
						margin-bottom: 10px;
						vertical-align: middle; }
				.sp_image_cols:not(.sp_col2):not(.sp_col3) .col figure figcaption {
						float: right;
						width: 66%;
						margin-top: 0;
						vertical-align: middle; }
		.sp_image_cols.sp_col2 .col {
				width: 49%; }
				.sp_image_cols.sp_col2 .col:nth-child(odd) {
						clear: both;
						float: left; }
				.sp_image_cols.sp_col2 .col:nth-child(even) {
						float: right; }
		.sp_image_cols.sp_col3 .col {
				float: left;
				width: 32%; }
				.sp_image_cols.sp_col3 .col:nth-child(3n+1) {
						clear: both;
						margin-right: 2%; }
				.sp_image_cols.sp_col3 .col:nth-child(3n) {
						float: right; }
		.sp_image_left {
				overflow: hidden; }
				.sp_image_left .col:first-child {
						display: inline-block;
						float: left;
						width: 32%;
						margin-right: 2%;
						margin-bottom: 0.5em; }
				.sp_image_left .col:last-child {
						float: none; }
		.sp_image_right {
				overflow: hidden; }
				.sp_image_right .col:first-child {
						display: inline-block;
						float: right;
						width: 32%;
						margin-left: 2%;
						margin-bottom: 0.5em; }
				.sp_image_right .col:last-child {
						float: none; } }

table {
		margin: 0 auto; }
		table td,
		table th {
		text-align: center;
				padding: 0.7em 1em; }
				@media (max-width: 767px) {
						table td,
						table th {
								padding: 0.7em .3em; } }
		table th {
				text-align: center;
				font-weight: bold; }

.table-default {
		width: 100%; }
		.table-default caption {
				margin-bottom: 0.5em;
				text-align: center;
				font-size: 20px;
				font-size: 2rem; }
		.table-default td,
		.table-default th {
				border: 1px solid #f58cff; }
				.table-default td.bg_dp,
				.table-default th.bg_dp {
						background: #fadef2;
						color: #080404; }
				.table-default td.bg_p,
				.table-default th.bg_p {
						background: #faebf5;
						color: #080404; }
				.table-default td.bg_sp,
				.table-default th.bg_sp {
						background: #f58cff;
						color: #080404; }
		.table-default th {
				background: #fff;
				color: #080404; }
		.table-default td {
				background: #fff; }

.table-menu {
		width: 100%; }
		.table-menu caption {
				margin-bottom: 0.5em;
				text-align: center;
				font-size: 20px;
				font-size: 2rem; }
		.table-menu td,
		.table-menu th {
				padding: 0.7em 1em;
				border-top: 1px solid #6689fe;
				border-bottom: 1px solid #6689fe; }
				@media (max-width: 767px) {
						.table-menu td,
						.table-menu th {
								padding: 0.7em .3em; } }
		.table-menu tbody th {
				text-align: left; }
		.table-menu td:last-child {
				text-align: right;
				white-space: nowrap; }

.table-schedule {
		width: 100%; }
		.table-schedule caption {
				margin-bottom: 0.5em;
				text-align: center;
				font-size: 20px;
				font-size: 2rem; }
		.table-schedule td,
		.table-schedule th {
				border: 1px solid #6689fe;
				padding: 0.7em 1em;
				text-align: center; }
				@media (max-width: 767px) {
						.table-schedule td,
						.table-schedule th {
								padding: 0.7em .3em; } }
		.table-schedule thead th {
				background: rgba(245, 140, 255, 0.7);
				color: #fff; }
		.table-schedule tbody th {
				background: transparent; }
		.table-schedule td {
				background: transparent; }

.table-summary {
		border-top: 1px solid #f58cff;
		width: 100%; }
		.table-summary caption {
				margin-bottom: 0.5em;
				text-align: center;
				font-size: 20px;
				font-size: 2rem; }
		.table-summary td,
		.table-summary th {
				padding: 1em;
				border-bottom: 1px solid #f58cff; }
		.table-summary th {
				text-align: left;
				font-weight: normal;
				width: 20%; }

@media (max-width: 767px) {
		.responsive-stack {
				display: block; }
				.responsive-stack thead {
						display: none; }
				.responsive-stack tbody,
				.responsive-stack td,
				.responsive-stack th,
				.responsive-stack tr {
						display: block; }
				.responsive-stack td,
				.responsive-stack th {
						width: 100% !important; }
				.responsive-stack tr:not(:last-child) td,
				.responsive-stack tr:not(:last-child) th {
						border-bottom: 0; }
				.responsive-stack tr:last-child :not(:last-child) {
						border-bottom: 0; } }

@media (max-width: 767px) {
		.responsive-list {
				display: block; }
				.responsive-list thead {
						display: none; }
				.responsive-list tbody,
				.responsive-list td,
				.responsive-list th,
				.responsive-list tr {
						display: block; }
				.responsive-list tr:not(:last-child) td {
						border-bottom: 0; }
				.responsive-list td {
						position: relative;
						padding-left: 40%;
						white-space: normal;
						text-align: left; }
						.responsive-list td:first-child {
								border-bottom: 0; }
						.responsive-list td:last-child {
								border-top: 0; }
						.responsive-list td:not(:first-child):not(:last-child) {
								border-top: 0;
								border-bottom: 0; }
						.responsive-list td:before {
								content: attr(data-title);
								position: absolute;
								top: 6px;
								left: 6px;
								width: 35%;
								padding-right: 10px;
								white-space: normal;
								text-align: left;
								font-weight: bold; } }

@media (max-width: 767px) {
		.responsive-scroll-container {
				display: block;
				width: 100%;
				min-height: 0.01%;
				overflow-x: scroll; }
				.responsive-scroll-container .responsive-scroll-inner {
						width: 798px;
						padding: 0 15px 15px; }
				.responsive-scroll-container table {
						width: 768px;
						margin: 0; } }

@media (max-width: 767px) {
		table.combine tbody tr:last-child td,
		table.combine tbody tr:last-child th {
				border-bottom: 0; } }

table.table-default.typeA tr td,
table.table-default.typeA tr th {
		border: 0; }

table.table-default.typeA tr:nth-child(odd) th {
		background: #6689fe; }

table.table-default.typeA tr:nth-child(odd) td {
		background: #fff; }

table.table-default.typeA tr:nth-child(even) th {
		background: #99b0fe; }

table.table-default.typeA tr:nth-child(even) td {
		background: white; }

table.table-default.typeB {
		border-collapse: separate;
		border-spacing: 0;
		overflow: hidden; }
		table.table-default.typeB tbody td,
		table.table-default.typeB tbody th {
				background: transparent;
				color: #080404;
				border: 0;
				border-bottom: 1px dashed #f58cff; }
		table.table-default.typeB tbody tr {
				position: relative; }
		table.table-default.typeB tbody td {
				transform: translateX(2px); }

table.table-default.typeC th {
		background: #fff;
		color: #080404; }

table.table-default.typeC td,
table.table-default.typeC th {
		border: 0; }
		table.table-default.typeC td:not(:last-child),
		table.table-default.typeC th:not(:last-child) {
				border-bottom: 2px #fadef2 solid; }

table.table-default.typeC tr {
		position: relative; }

table.table-default.typeC td {
		transform: translateX(2px); }

.highlight table.table-default.typeC td,
.highlight table.table-default.typeC th {
		border: 0; }
		.highlight table.table-default.typeC td:not(:last-child),
		.highlight table.table-default.typeC th:not(:last-child) {
				border-bottom: 2px #fff solid; }

._table_line .news dl {
		border-top: 1px dotted #a6a6a6;
		max-height: none; }
		._table_line .news dl dt {
				width: 230px;
				padding-left: 20px; }
				._table_line .news dl dt + dd {
						border-bottom: 1px dotted #a6a6a6;
						padding-left: 230px; }

h1:not(.title) {
		height: 100px;
		line-height: 100px;
		text-align: center;
		position: relative;
		font-size: 32px;
		font-size: 3.2rem;
		color: #080404;
		margin: 0 0 .5em; }
		@media (max-width: 767px) {
				h1:not(.title) {
						font-size: 24px;
						font-size: 2.4rem; } }
		h1:not(.title) a {
				text-decoration: none; }
				h1:not(.title) a:hover {
						text-decoration: underline; }
		h1:not(.title) span {
				display: block;
				font-size: 22px;
				font-size: 2.2rem; }

h2 {
		display: block;
		text-align: center;
		margin: 0 auto 1.5em;
		position: relative;
		border: 0;
		word-wrap: break-word;
		font-size: 28px;
		font-size: 2.8rem;
		color: #080404; }
		h2 a {
				text-decoration: none; }
				h2 a:hover {
						text-decoration: underline; }
		h2:after {
				content: '';
				display: block;
				width: 110px;
				height: 1px;
				background: #080404;
				margin: 0.5em auto 0; }

h3 {
		margin: 0 0 .8em;
		padding-bottom: 0.7em;
		color: #080404;
		font-size: 24px;
		font-size: 2.4rem;
		position: relative; }
		h3 a {
				text-decoration: none; }
				h3 a:hover {
						text-decoration: underline; }
		h3:after {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				display: block;
				width: 60px;
				height: 1px;
				background: #080404; }

h4 {
		margin: 0 0 1.5em;
		font-size: 21px;
		font-size: 2.1rem;
		position: relative;
		color: #080404; }
		h4 a {
				text-decoration: none; }
				h4 a:hover {
						text-decoration: underline; }

.widget_wrap .widget_header {
		font-size: 16px;
		font-size: 1.6rem;
		color: #080404;
		padding: 0.7em 0 0.7em 1em;
		background: rgba(102, 137, 254, 0.05); }
		.widget_wrap .widget_header a {
				text-decoration: none; }
				.widget_wrap .widget_header a:hover {
						text-decoration: underline; }

@media (max-width: 767px) {
		.widget_wrap .widget_header {
				font-size: 14px;
				font-size: 1.4rem; } }

.global_nav > ul > li.has_under > a {
		position: relative; }
		.global_nav > ul > li.has_under > a:after {
				content: "";
				display: block;
				position: absolute;
				top: 50%;
				right: 6%;
				margin: auto;
				width: 10px;
				height: 10px;
				border-top: 2px solid #fff;
				border-right: 2px solid #fff;
				transform: translate(0, -50%) rotate(135deg);
				transition: .2s; }
		.global_nav > ul > li.has_under > a.menu_under_open:after {
				transform: translate(0, 0) rotate(-45deg); }

.global_nav > ul > li > ul {
		margin: 0;
		padding: 0;
		list-style: none;
		display: none; }
		.global_nav > ul > li > ul > li {
				border-bottom: 1px solid #ccc; }

@media (min-width: 769px) {
		.global_nav > ul > li.has_under > a {
				padding-right: 1em; }
				.global_nav > ul > li.has_under > a:after {
						border-color: #080404;
						width: 6px;
						height: 6px; }
				.global_nav > ul > li.has_under > a:after {
						transform: translate(0, -50%) rotate(135deg); }
				.global_nav > ul > li.has_under > a.menu_under_open:after {
						transform: translate(0) rotate(-45deg); }
		.global_nav > ul > li.has_under > ul {
				position: absolute;
				width: 100%;
				left: 0;
				right: 0;
				margin: auto;
				top: 100%;
				letter-spacing: -.40em;
				background: rgba(90, 203, 57, 0.9);
				z-index: 52; }
				.global_nav > ul > li.has_under > ul > li {
						letter-spacing: normal;
						display: inline-block;
						vertical-align: middle;
						width: 25%;
						text-align: center;
						border-bottom: 0;
						padding: 0; }
						.global_nav > ul > li.has_under > ul > li a {
								background: transparent;
								padding: 1em; } }

@media (min-width: 769px) {
		body.home header.low .global_nav > ul > li.has_under > a:before {
				transform: translateY(-50%) rotate(45deg); }
		body.home header.low .global_nav > ul > li.has_under > a:after {
				transform: translateY(-50%) rotate(-45deg); }
		body.home header.low .global_nav > ul > li.has_under > a.menu_under_open:before {
				transform: translateY(-50%) rotate(-45deg); }
		body.home header.low .global_nav > ul > li.has_under > a.menu_under_open:after {
				transform: translateY(-50%) rotate(45deg); }
		body.home header.low .global_nav > ul > li.has_under > ul {
				top: auto;
				bottom: 100%; }
		body.home header.high .global_nav > ul > li.has_under > a:before {
				transform: translateY(-50%) rotate(-45deg); }
		body.home header.high .global_nav > ul > li.has_under > a:after {
				transform: translateY(-50%) rotate(45deg); }
		body.home header.high .global_nav > ul > li.has_under > a.menu_under_open:before {
				transform: translateY(-50%) rotate(45deg); }
		body.home header.high .global_nav > ul > li.has_under > a.menu_under_open:after {
				transform: translateY(-50%) rotate(-45deg); }
		body.home header.high .global_nav > ul > li.has_under > ul {
				top: 100%;
				bottom: auto; } }
