@charset "utf-8";
/*! HTML5 Boilerplate v5.3.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
	color: #646464;
	font-size: 0.625rem;
	line-height: 1;
	text-align: justify;
	text-justify : inter-ideograph ; /* for IE */
	background-color: #362f2d;
}

body {
	min-width: 1200px;
	background-color: #fff;
}

@media screen and (max-width: 670px) {
	body {
		min-width: 320px;
	}
}


/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

img {
	max-width: 100%;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */

.inner,
nav ul,
main #sponsor ul,
#cont_sub article {
	width: 970px;
	margin: auto;
}

#to_top {
	width: 91px;
	position: fixed;
	bottom: 20px;
	right: 40px;
	z-index: 999;
}

.btn a {
	opacity: 1;
	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

.btn a:hover {
	opacity: 0.6;
}

.blue {
	color: #00a9ec;
}

.bold {
	font-weight: bold;
}

.txtmin {
	font-size: 1.2rem;
}

.dib {
	display: inline-block;
}

.dl_pdf {
	padding: 10px 15px 10px 35px;
	color: #fff;
	font-weight: normal !important;
	line-height: 1.3;
	border-radius: 5px;
	background-color: #d41243;
	background-image: url(../img/icon_pdf.png);
	background-repeat: no-repeat;
	background-position: 10px center;
	background-size: 18px;
	display: inline-block;
}

.link_pt {
	padding-top: 8px;
	display: inline-block;
}

.no_link {
	cursor: default;
	opacity: 0.6 !important;
}

.pe_none {
	pointer-events: none;
}

.red {
	color: #ff0000 !important;
}

@media screen and (max-width: 670px) {
	.inner,
	nav ul,
	main #sponsor ul,
	#cont_sub article {
		width: auto;
	}

	.nbr {
		display: none;
	}

	.vat {
		vertical-align: top !important;
	}

	#to_top {
		width: 60px;
		bottom: 9px;
		right: 10px;
	}

	#to_top a:hover {
		opacity: 1;
	}
}


/* ============================== #main_header ============================== */

#top #main_header {
	padding: 6px 0 16px 0;
	color: #fff;
	background-color: #00a9ec;
	background-image: url( ../img/bg_head.png);
	background-repeat: repeat-x;
	background-position: left 27px;
	background-size: 11px 121px;
}

#top #main_header #h_info {
	margin-bottom: 8px;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: center;
}

#top #main_header #h_info span {
	padding-left: 12px;
}

#top #main_header #h_info #h_time {
	font-size: 1.2rem;
	vertical-align: middle;
}

#top #main_header .inner {
	padding-top: 13px;
}

#top #main_header .inner > * {
	float: left;
}

#top #main_header .inner #h_logo {
	width: 110px;
}

#top #main_header .inner #h_day {
	margin-left: 25px;
}

#top #main_header hr {
	height: 2px;
	margin: 10px 0;
	box-shadow:0px 0px 6px 1px #000;
	background-color: #00a9ec;
}

.new {
	padding-left: 5px;
	font-family: 'Iceberg', cursive;
	font-size: 1.5rem;
	font-weight: bold;
	animation: icon_new 1.1s linear infinite;
}
@keyframes icon_new {
	0% {
		opacity: 1;
	}
	49.999% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@media screen and (max-width: 670px) {
	#top #main_header {
		padding-bottom: 4px;
		background-image: none;
		position: relative;
	}

	#top #main_header #h_info {
		margin-bottom: 0;
		padding: 0 10px;
		font-size: 1.2rem;
		line-height: 1.2;
	}

	#top #main_header #h_info span {
		display: inline-block;
	}

	#top #main_header .inner {
		height: 115px;
		padding: 13px 10px 14px 10px;
		background-image: url( ../img/bg_head.png);
		background-repeat: repeat-x;
		background-position: left 0;
		background-size: contain;
	}

	#top #main_header .inner #h_day {
		margin: 0;
		width: 167px;
		height: 32px;
		background-image: url( ../img/txt_day_sp.png);
		background-repeat: no-repeat;
		background-position: left top;
		background-size: contain;
		float: right;
	}

	#top #main_header .inner #h_day img {
		display: none;
	}

	#top #main_header hr {
		display: none;
	}
}

@media screen and (max-width: 511px) {
	#top #main_header #h_info #h_time {
		padding-left: 0;
		display: block;
	}
}



#sub #main_header {
	background-image: url( ../img/bg_sub_head.png);
	background-repeat: repeat-x;
	background-position: center top;
	background-size: contain;
}

#sub #main_header .inner #h_logo {
	width: 340px;
	margin-left: -7px;
	padding: 5px 0;
	float: left;
}

#sub #main_header .inner #h_btn_list {
	padding: 2px;
	border-radius: 0 0 10px 10px;
	background-color: #00a9ec;
	box-shadow: 0px 0px 6px 1px rgba(0, 0, 0, 0.8);
	float: right;
}

#sub #main_header .inner #h_btn_list li {
	width: 167px;
	float: left;
}

#sub #main_header .inner #h_btn_list li a {
	opacity: 1;
/* 	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1); */
}

#sub #main_header .inner #h_btn_list li a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 670px) {
	#sub #main_header {
		background-color: #00a9ec;
		padding-bottom: 72px;
		background-image: url(../img/bg_nav.png);
		background-repeat: repeat-x;
		background-position: left 130px;
		background-size: 14px 76px;
	}

	#sub #main_header .inner > * {
		float: none !important;
	}

	#sub #main_header .inner #h_logo {
		width: auto;
		padding: 7px 0;
		text-align: center;
		background-image: url(../img/bg_sub_head.png);
		background-repeat: repeat-x;
		background-position: center top;
		background-size: cover;
	}

	#sub #main_header .inner #h_logo img {
		width: 300px;
	}

	#sub #main_header .inner #h_btn_list {
		padding: 5px 0;
		text-align: center;
		border-radius: 0;
	}

	#sub #main_header .inner #h_btn_list li {
		width: 155px;
		display: inline-block;
		float: none;
	}
}


/* ============================== nav ============================== */

nav #btn_nav {
	display: none;
}

nav li {
	margin-left: 10px;
	float: left;
}

nav li:first-child {
	margin-left: 0;
}

nav li a {
	width: 112.5px;
	height: 35px;
	display: block;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 112.5px 70px;
}

nav li a:hover,
nav li a.active {
	background-position: left bottom;
	animation: stop_animate 1.2s linear infinite !important;
}
@keyframes stop_animate {
	100% {
		background-position: left bottom;
	}
}

nav #nav01 a {
	background-image: url( ../img/nav01.png);
}

nav #nav02 a {
	background-image: url( ../img/nav02.png);
}

nav #nav03 a {
	background-image: url( ../img/nav03.png);
}

nav #nav04 a {
	background-image: url( ../img/nav04.png);
	animation: change_navbg 1.2s linear infinite;
}
/*
@keyframes change_navbg {
	0% {
		background-position: 0 0;
	}
	49.999% {
		background-position: 0 0;
	}
	50% {
		background-position: 0 -35px;
	}
	100% {
		background-position: 0 -35px;
	}
}
*/

nav #nav05 a {
	background-image: url( ../img/nav05.png);
}

nav #nav06 a {
	background-image: url( ../img/nav06.png);
}

nav #nav07 a {
	background-image: url( ../img/nav07.png);
}

nav #nav08 a {
	background-image: url( ../img/nav08.png);
}

@media screen and (max-width: 670px) {
	nav {
		width: calc(100% - 20px) !important;
		min-width: 300px;
		border: solid 3px #ff8e21;
		border-radius: 23px;
		background-color: rgba(49, 41, 39, 0.95) !important;
		position: absolute;
		left: 10px;
		z-index: 200;
	}

	nav #btn_nav {
		width: 100%;
		padding: 10px 15px;
		color: #ff8e21;
		font-size: 2.0rem;
		font-weight: bold;
		border-radius: 15px 15px 0 0;
		display: block;
		cursor: pointer;
		transition:
			color 280ms cubic-bezier(0.39, 0.575, 0.565, 1),
			background-color 280ms cubic-bezier(0.39, 0.575, 0.565, 1)
		;
	}

	nav #btn_nav.active {
		color: #312927;
		background-color: #ff8e21;
	}

	nav #btn_nav .fa-bars {
		padding-right: 8px;
	}

	nav #btn_nav:after {
		content: '\f055';
		font-weight: normal;
		float: right;
	}

	nav #btn_nav.active:after {
		content: '\f056';
	}

	nav ul {
		padding: 0 !important;
		display: none;
	}

	nav li {
		margin: 0;
		border-top: dashed 1px #ff8e21;
		float: none;
	}

	nav li:first-child {
		border-top: none;
	}

	nav li a {
		width: auto;
		height: auto;
		padding: 20px 15px;
		color: #ff8e21;
		font-size: 1.6rem;
		text-indent: 0 !important;
		white-space: normal !important;
		background-image: none !important;
	}

	nav li .fa-chevron-circle-right {
		padding-right: 8px;
	}

	#top nav {
		top: 76px;
	}
}

@media screen and (max-width: 511px) {
	#top nav {
		top: 89px;
	}
}



#sub nav {
	background-color: #00a9ec;
	background-image: url( ../img/bg_nav.png);
	background-repeat: repeat-x;
	background-position: left 2px;
	background-size: 11px 62px;
}

#sub nav ul {
	padding: 15px 0 17px 0;
}

@media screen and (max-width: 670px) {
	#sub nav {
		background-image: none;
		top: 145px;
	}
}


/* ============================== footer ============================== */

footer {
	padding: 13px 0 21px 0;
	text-align: center;
	background-color: #362f2d;
	background-image: url( ../img/bg_foot.png);
	background-repeat: repeat-x;
	background-position: left top;
	background-size: 10px 48px;
}

footer #txt_copy img {
	width: 249px;
}

@media screen and (max-width: 670px) {
	footer #txt_copy img {
		width: 230px;
	}

	footer {
		padding: 34px 10px;
		text-align: left;
	}
}


/* ============================== main ============================== */

main {
	padding-bottom: 30px;
	background-image: url( ../img/bg_diagonal.png);
	background-position: left top;
	background-size: 16px 8px;
	box-shadow: 0px -3px 4px 0px rgba(0, 0, 0, 0.3) inset;
}

main #sponsor {
	background-color: #fff;
	border-top: solid 6px #8ed3f5;
}

main #sponsor li {
	width: 95px !important;
	margin-right: 10px;
	padding-top: 12px;
	float: left;
}

main #sponsor_logo li:first-child,
main #ticker_logo .ticker_top {
	width: 130px !important;
	padding-top: 0;
}

main #sponsor_logo li {
	height: 44px;
}

main #sponsor_logo li a {
	opacity: 1;
	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

main #sponsor_logo li a:hover {
	opacity: 0.4;
}

main .bx-viewport {
	height: 0 !important;
}

main #ticker_logo {
	visibility: hidden;
}

main #ticker_logo li {
	padding-top: 6px;
}

#cont_top #sponsor_logo {
	padding-left: 125px;
	position: relative;
	z-index: 999;
}

#cont_top #sponsor {
	padding: 13px 0 18px 0;
}

#cont_top #sponsor_logo #break {
	margin-right: 180px;
}

#cont_sub #sponsor {
	margin-top: 45px;
	padding: 15px 0;
	border-top: solid 6px #00a9ec;
}

#cont_sub #sponsor_logo {
	padding: 0 105px;
}

#cont_sub #sponsor_logo #no_break,
#cont_sub #sponsor_logo li:last-child {
	margin-right: 0;
}

@media screen and (max-width: 670px) {
	main #sponsor {
		padding: 12px 0 !important;
	}

	main #sponsor_logo {
		display: none;
	}

	main .bx-viewport {
		height: auto !important;
	}

	main #ticker_logo {
		visibility: visible;
	}
}



#cont_top #main_v {
	border-bottom: solid 15px #ffde00;
	background-image: url( ../img/bg_img.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}

#cont_top #main_v .inner {
	height: 589px;
	position: relative;
}

#cont_top #main_v #c_logo,
#cont_top #main_v #pachapo01,
#cont_top #main_v #pachapo02,
#cont_top #main_v #pachapo03,
#cont_top #main_v #pachapo04 {
	position: absolute;
}

#cont_top #main_v #c_logo {
	width: 881px;
	height: 376px;
	top: 45px;
	left: 45.5px;
	z-index: 100;
}

#cont_top #main_v #pachapo01 {
	width: 372px;
	left: -140px;
	bottom: -105px;
	z-index: 20;
}

#cont_top #main_v #pachapo02 {
	width: 524px;
	left: 175px;
	bottom: -41px;
	z-index: 40;
}

#cont_top #main_v #pachapo03 {
	width: 446px;
	right: -115px;
	bottom: -85px;
	z-index: 80;
}

#cont_top #main_v #pachapo04 {
	display: none;
}

#cont_top #news,
#cont_top #news header h2 {
	float: left;
}

#cont_top #bn_list,
#cont_top #news header p {
	float: right;
}

#cont_top #sponsor + .inner {
	padding-top: 20px;
}

#cont_top #news {
	width: 660px;
	border: solid 5px #00a9ec;
	border-radius: 15px;
	background-color: #fff;
}

#cont_top #news header {
	padding: 10px 10px 0 10px;
	background-color: #00a9ec;
	border-radius: 8px 8px 0 0;
	position: relative;
}

#cont_top #news header h2,
#cont_top #news header p a {
	color: #00a9ec;
	font-weight: bold;
	background-color: #ffde00;
}

#cont_top #news header h2 {
	padding: 10px 22px 8px 22px;
	font-size: 2.4rem;
	border-radius: 15px 15px 0 0;
}

#cont_top #news header p a {
	padding: 7px 12px;
	font-size: 1.8rem;
	border-radius: 8px;
	display: block;
	opacity: 1;
	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

#cont_top #news header p a:hover {
	opacity: 0.6;
}

#cont_top #news header p .fa-arrow-circle-right {
	margin-right: 4px;
}

#cont_top #news header #n_pachapo {
	width: 72px;
	position: absolute;
	bottom: 0;
	left: 133px;
}

#cont_top #news #news_list {
	height: 289px;
	margin: 12px 0 15px 0;
	padding: 0 15px;
	overflow-y: scroll;
}

#cont_top #news #news_list li,
#cont_sub.news #sec01 #news_list li {
	padding: 12px 7px 15px 7px;
	font-size: 1.4rem;
	line-height: 1.3;
	border-top: dotted 1px #646464;
}

#cont_top #news #news_list li:first-child,
#cont_sub.news #sec01 #news_list li:first-child {
	padding-top: 0;
	border-top: none;
}

#cont_top #news #news_list li:last-child,
#cont_sub.news #sec01 #news_list li:last-child {
	padding-bottom: 0;
}

#cont_top #news #news_list .n_day,
#cont_sub.news #sec01 #news_list .n_day {
	color: #00a9ec;
	display: block;
}

#cont_top #news #news_list a,
#cont_sub.news #sec01 #news_list a {
	color: #f08200;
}

#cont_top #news #news_list a:hover,
#cont_sub.news #sec01 #news_list a:hover {
	text-decoration: underline;
}

#cont_top #bn_list {
	width: 288px;
}

#cont_top #bn_list li {
	margin-top: 7px;
}

#cont_top #bn_list li:first-child {
	margin-top: 0;
}

#cont_top #bn_list li a {
	opacity: 1;
	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

#cont_top #bn_list li a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 670px) {
	#cont_top #main_v .inner {
		height: auto;
	}

	#cont_top #main_v #c_logo {
		width: auto;
		max-width: 400px;
		height: auto;
		margin: 0 auto 105px auto;
		padding-top: 10px;
		position: relative;
		top: 0;
		left: 0;
	}

	#cont_top #main_v #pachapo01,
	#cont_top #main_v #pachapo02,
	#cont_top #main_v #pachapo03 {
		display: none;
	}

	#cont_top #main_v #pachapo04 {
		width: 500px;
		margin: 0 auto;
		display: block;
		bottom: -83%;
		left: 0;
		right: 0;
	}

	#cont_top #sponsor + .inner {
		padding: 0 10px;
	}

	#cont_top #news,
	#cont_top #bn_list {
		float: none;
	}

	#cont_top #news {
		width: auto;
		margin: 20px 0;
		border: solid 3px #00a9ec;
	}

	#cont_top #news header {
		padding: 10px 5px 0 5px;
	}

	#cont_top #news header h2 {
		font-size: 2.0rem;
	}

	#cont_top #news header #n_pachapo {
		left: 113px;
	}

	#cont_top #news #news_list {
		padding: 0 10px;
	}

	#cont_top #bn_list {
		width: auto;
		text-align: center;
	}
}

@media screen and (max-width: 374px) {
	#cont_top #news header #n_pachapo {
		width: 50px;
		bottom: 3px;
	}
}



#cont_sub {
	padding-bottom: 0;
}

#cont_sub #cont_htxt {
	width: 332px;
	margin-bottom: 25px;
}

#cont_sub h3.hicon {
	padding: 9px 10px 9px 70px;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.2;
	background-color: #d5d5d5;
}

#cont_sub p {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
}

#cont_sub p:first-child {
	margin-top: 0;
}

#cont_sub .sec_inner {
	padding: 40px;
}

#cont_sub article {
	padding-top: 30px !important;
	background-repeat: no-repeat;
}

#cont_sub.about article {
	background-image: url( ../img/pachapo_about.png);
	background-position: 90% -40px;
	background-size: 232px;
}

#cont_sub.event article {
	background-image: url( ../img/pachapo_event.png);
	background-position: 95% -45px;
	background-size: 240px;
}

#cont_sub.entry article {
	background-image: url( ../img/pachapo_entry.png);
	background-position: 94% -42px;
	background-size: 200px;
}

#cont_sub.guest article {
	background-image: url( ../img/pachapo_guest.png);
	background-position: 92% -40px;
	background-size: 221px;
}

#cont_sub.spnsr article {
	background-image: url( ../img/pachapo_sponsor.png);
	background-position: 94% -45px;
	background-size: 228px;
}

#cont_sub.faq article {
	background-image: url( ../img/pachapo_faq.png);
	background-position: 94% -38px;
	background-size: 228px;
}

#cont_sub.access article {
	background-image: url( ../img/pachapo_access.png);
	background-position: 94% -38px;
	background-size: 228px;
}

#cont_sub.news article {
	background-image: url( ../img/pachapo_news.png);
	background-position: 94% -48px;
	background-size: 210px;
}

#cont_sub .border {
	border-radius: 15px;
	background-color: #fff;
}

#cont_sub.about .border {
	border: solid 5px #61db24;
}

#cont_sub.event.ev01 .border,
#cont_sub.event.ev05 .border,
#cont_sub.event.ev06 .border {
	border: solid 5px #4e78ff;
}

#cont_sub.event.ev02 .border {
	border: solid 5px #5dc3eb;
}

#cont_sub.event.ev03 .border.ev_bord01 {
	border: solid 5px #7dabd7;
	border-bottom: none;
	border-radius: 15px 15px 0 0;
}

#cont_sub.event.ev03 .border.ev_bord02 {
	border: solid 5px #7dabd7;
	border-top: none;
	border-radius: 0 0 15px 15px;
}

#cont_sub.event.ev04 .border {
	border: solid 5px #4aaac4;
}

#cont_sub.entry .border {
	border: solid 5px #ff69c3;
}

#cont_sub.guest .border {
	border: solid 5px #ff7800;
}

#cont_sub.spnsr .border {
	border: solid 5px #a200ff;
}

#cont_sub.faq .border {
	border: solid 5px #ff0000;
}

#cont_sub.access .border {
	border: solid 5px #606060;
}

#cont_sub.news .border {
	border: solid 5px #00a9ec;
}

#cont_sub .hicon {
	background-repeat: no-repeat;
	background-position: 25px center;
	background-size: 36px 38px ;
}

#cont_sub.about .hicon {
	background-image: url( ../img/hicon01.png);
}

#cont_sub.event .hicon {
	background-image: url( ../img/hicon02.png);
}

#cont_sub.guest .hicon {
	background-image: url( ../img/hicon03.png);
}

#cont_sub.spnsr .hicon {
	background-image: url( ../img/hicon04.png);
}

#cont_sub.faq .hicon {
	background-image: url( ../img/hicon05.png);
}

#cont_sub.access .hicon {
	background-image: url( ../img/hicon06.png);
}

#cont_sub.news .hicon {
	background-image: url( ../img/hicon07.png);
}

@media screen and (max-width: 670px) {
	#cont_sub article{
		padding: 0 10px;
	}

	#cont_sub #cont_htxt {
		width: 280px;
	}

	#cont_sub h3.hicon {
		padding: 9px 10px 9px 44px;
		font-size: 2.0rem;
	}

	#cont_sub p {
		margin-top: 15px;
	}

	#cont_sub .sec_inner {
		padding: 20px 15px;
	}

	#cont_sub.about article {
		background-position: 90% -15px;
		background-size: 140px;
	}

	#cont_sub.event article {
		background-position: 90% -22px;
		background-size: 155px;
	}

	#cont_sub.entry article {
		background-position: 90% -17px;
		background-size: 145px;
	}

	#cont_sub.guest article {
		background-position: 90% -12px;
		background-size: 140px;
	}

	#cont_sub.spnsr article {
		background-position: 90% -14px;
		background-size: 135px;
	}

	#cont_sub.faq article {
		background-position: 90% -8px;
		background-size: 140px;
	}

	#cont_sub.access article {
		background-position: 90% -10px;
		background-size: 130px;
	}

	#cont_sub.news article {
		background-position: 90% -13px;
		background-size: 125px;
	}

	#cont_sub.about .border {
		border: solid 3px #61db24;
	}

	#cont_sub.event.ev01 .border
	#cont_sub.event.ev05 .border,
	#cont_sub.event.ev06 .border {
		border: solid 3px #4e78ff;
	}

	#cont_sub.event.ev02 .border {
		border: solid 3px #5dc3eb;
	}

	#cont_sub.event.ev03 .border.ev_bord01 {
		border: solid 3px #7dabd7;
		border-bottom: none;
	}
	
	#cont_sub.event.ev03 .border.ev_bord02 {
		border: solid 3px #7dabd7;
		border-top: none;
	}

	#cont_sub.event.ev04 .border {
		border: solid 3px #4aaac4;
	}

	#cont_sub.entry .border {
		border: solid 3px #ff69c3;
	}

	#cont_sub.guest .border {
		border: solid 3px #ff7800;
	}

	#cont_sub.spnsr .border {
		border: solid 3px #a200ff;
	}

	#cont_sub.faq .border {
		border: solid 3px #ff0000;
	}

	#cont_sub.access .border {
		border: solid 3px #606060;
	}

	#cont_sub.news .border {
		border: solid 3px #00a9ec;
	}

	#cont_sub .hicon {
		background-position: 10px center;
		background-size: 26px 28px ;
	}
}



#cont_sub.about #sec01 .sec_inner > * {
	float: left;
}

#cont_sub.about #sec01 .sec_inner div {
	width: 613px;
	padding-right: 30px;
}

#cont_sub.about #sec02 .sec_inner #logo_about,
#cont_sub.about #sec03 .sec_inner #slogan {
	text-align: center;
}

#cont_sub.about #sec02 .sec_inner #logo_about img {
	width: 530px;
}

#cont_sub.about #sec03 .sec_inner #slogan_inner {
	width: 675px;
	margin: 45px auto 0 auto;
}

#cont_sub.about #sec03 .sec_inner #slogan_inner span {
	padding-left: 25px;
}

#cont_sub.about #sec03 .sec_inner #slogan_inner p:last-child {
	color: #333;
	font-size: 1.6rem;
}

@media screen and (max-width: 670px) {
	#cont_sub.about #sec01 .sec_inner > * {
		width: auto !important;
		padding: 0 !important;
		float: none;
	}

	#cont_sub.about #sec01 .sec_inner figure {
		margin-top: 20px;
		text-align: center;
	}

	#cont_sub.about #sec02 .sec_inner #logo_about {
		padding: 0 25px;
	}

	#cont_sub.about #sec03 .sec_inner #slogan_inner {
		width: auto;
	}

	#cont_sub.about #sec03 .sec_inner #slogan_inner {
		margin-top: 30px;
	}

	#cont_sub.about #sec03 .sec_inner #slogan_inner span {
		padding: 0;
		display: block;
	}

	#cont_sub.about #sec03 .sec_inner #slogan_inner p:last-child br {
		display: none;
	}
}



#cont_sub.event #event_list {
	margin-bottom: 10px;
}

#cont_sub.event #event_list li {
	width: 155px;
	margin-left: 8px;
	padding: 5px;
	border-radius: 15px;
	float: left;
}

#cont_sub.event #event_list #el01,
#cont_sub.event #event_list #el05,
#cont_sub.event #event_list #el06 {
	background-color: #4e78ff;
}

#cont_sub.event #event_list #el02 {
	background-color: #5dc3eb;
}

#cont_sub.event #event_list #el03 {
	background-color: #7dabd7;
}

#cont_sub.event #event_list #el04 {
	background-color: #4aaac4;
}

#cont_sub.event #event_list li:first-child {
	margin-left: 0;
}

#cont_sub.event #event_list a {
	font-size: 1.4rem;
	font-weight: bold;
	padding: 7px 0;
	text-align: center;
	border: 2px solid #fff;
	background-color: #fff;
	border-radius: 10px;
	display: block;
}

#cont_sub.event #event_list a:hover,
#cont_sub.event #event_list a.active {
	color: #fff100 !important;
	background-color: transparent;
}

#cont_sub.event #event_list #el01 a,
#cont_sub.event #event_list #el05 a,
#cont_sub.event #event_list #el06 a {
	color: #4e78ff;
}

#cont_sub.event #event_list #el02 a {
	color: #5dc3eb;
}

#cont_sub.event #event_list #el03 a {
	color: #7dabd7;
}

#cont_sub.event #event_list #el04 a {
	color: #4aaac4;
}

#cont_sub.event #sec01 {
	padding-top: 30px;
}

#cont_sub.event .sec_inner.accordion {
	padding: 30px 20px 10px 20px;
	display: none;
	position: relative;
}

#cont_sub.event h3.time_s {
	margin: 30px 0 10px 0;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.2;
	background-color: #d5d5d5;
	position: relative;
	cursor: pointer;
	opacity: 1;
	transition: opacity 350ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

#cont_sub.event h3.time_s:after {
	content: '\f055';
	color: #e81c4f;
	font-weight: normal;
	position: absolute;
	top: 9px;
	right: 15px;
}

#cont_sub.event h3.time_s.active:after {
	content: '\f056';
}

#cont_sub.event h3.time_s:hover {
	opacity: 0.6;
}

#cont_sub.event section:first-child h3.time_s {
	margin-top: 0;
}

#cont_sub.event h3.time_s .time {
	margin-right: 15px;
	padding: 11px 14px;
	color: #fff100;
	line-height: 1;
	border-radius: 0 5px 5px 0;
	display: inline-block;
}

#cont_sub.event h3.time_s .presented {
	width: 240px;
	color: #646464;
	font-size: 1.2rem;
	font-weight: normal;
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
}

#cont_sub.event h3.time_s .presented img {
	width: 100px;
	margin-left: 10px;
}

#cont_sub.event p {
	font-size: 1.2rem;
}

#cont_sub.event .photo {
	width: 250px;
	opacity: 0;
	transition: opacity 600ms cubic-bezier(0.39, 0.575, 0.565, 1);
}

#cont_sub.event h3.time_s.active + .sec_inner .photo {
	opacity: 1;
}

#cont_sub.event .photo_absl01 {
	position: absolute;
}

#cont_sub.event .place {
	font-weight: bold;
}

#cont_sub.event .ev_detail {
	padding: 12px;
	border: solid 4px #00a9ec;
	border-radius: 10px;
}

#cont_sub.event .ev_detail P:first-child {
	font-weight: bold;
}

#cont_sub.event .event_tbl {
	width: 100%;
}

#cont_sub.event .event_tbl tr {
	border-top: dotted 1px #646464;
}

#cont_sub.event .event_tbl tr:first-child {
	border-top: none;
}

#cont_sub.event .event_tbl th,
#cont_sub.event .event_tbl td {
	padding: 10px 0;
	font-size: 1.2rem;
	font-weight: normal;
	text-align: left !important;
	line-height: 1.3;
}

#cont_sub.event .event_tbl th {
	width: 70px;
}

#cont_sub.event .btn_ev_entry {
	max-width: 260px;
	margin: 5px auto 0 auto;
}

#cont_sub.event .btn_detail {
	margin-top: 20px;
	text-align: center;
}

#cont_sub.event .btn_detail a {
	width: 300px;
	padding: 8px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	border-radius: 10px;
	background-color: #5dc3eb;
	display: inline-block;
}

#cont_sub.event #participation {
	margin: 30px 20px 20px 20px;
	border: solid 4px #00a9ec;
	border-radius: 10px;
}

#cont_sub.event #participation h3 {
	padding: 12px 0;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	border-radius: 5px 5px 0 0;
	background-color: #00a9e0;
}

#cont_sub.event #participation .event_tbl {
	width: calc(100% - 24px);
	margin: 12px;
}

@media screen and (max-width: 670px) {
	#cont_sub.event #event_list {
		margin-bottom: 5px;
	}
	
	#cont_sub.event #event_list li {
		width: calc(50% - 4px);
		margin-bottom: 5px;
		padding: 3px;
	}

	#cont_sub.event #event_list li:nth-child(odd) {
		margin-left: 0;
	}

	#cont_sub.event #event_list a {
		padding: 8px 0;
		font-size: 1.3rem;
		border-radius: 12px;
	}

	#cont_sub.event #sec01 {
		padding-top: 20px;
	}

	#cont_sub.event .sec_inner.accordion {
		padding: 10px 15px 5px 15px;
	}
	#cont_sub.event .sec_inner.nophoto .ev_detail {
		margin-top: 0;
	}

	#cont_sub.event h3.time_s .time,
	#cont_sub.event h3.time_s .event_name {
		padding: 8px 10px;
	}

	#cont_sub.event h3.time_s {
		margin: 15px 0 10px 0;
		font-size: 1.6rem;
	}

	#cont_sub.event h3.time_s:after {
		color: #fff100;
		top: 6.5px;
	}

	#cont_sub.event h3.time_s:hover {
		opacity: 1;
	}

	#cont_sub.event h3.time_s .time {
		width: 100%;
		margin: 0;
		border-radius: 0;
	}

	#cont_sub.event h3.time_s .presented {
		width: 195px;
		color: inherit;
		font-size: 1.0rem;
		font-weight: bold;
		top: 4px;
	}

	#cont_sub.event h3.time_s .presented img {
		width: 70px;
	}

	#cont_sub.event h3.time_s .event_name {
		display: inline-block;
	}

	#cont_sub.event .photo {
		width: auto !important;
		text-align: center;
		position: static !important;
	}

	#cont_sub.event .ev_detail,
	#cont_sub.event #participation {
		border: solid 2px #00a9ec;
	}

	#cont_sub.event .ev_detail{
		margin-top: 20px;
	}

	#cont_sub.event .btn_detail {
		margin-top: 15px;
	}

	#cont_sub.event .btn_detail a {
		width: 220px;
	}

	#cont_sub.event #participation {
		margin: 25px 15px 20px 15px;
	}

	#cont_sub.event #participation h3 {
		padding: 10px 0;
		font-size: 2.0rem;
	}
}

@media screen and (max-width: 374px) {
	#cont_sub.event h3.time_s .presented {
		width: 180px;
		color: inherit;
		font-size: 1.0rem;
		font-weight: bold;
		top: 6px;
	}

	#cont_sub.event h3.time_s .presented img {
		width: 60px;
		margin-left: 5px;
	}
}



#cont_sub.event.ev01 #sec01 {
	padding-top: 0;
}

#cont_sub.event.ev01 #sec01 img:first-child {
	margin-bottom: 35px;
}

@media screen and (max-width: 670px) {
	#cont_sub.event.ev01 #sec01 img:first-child {
		margin-bottom: 15px;
	}
}



#cont_sub.event.ev02 h3.time_s .time {
	background-color: #5dc3eb;
}

#cont_sub.event.ev02 .event_intro > *,
#cont_sub.event.ev02 .department li {
	float: left;
}

#cont_sub.event.ev02 .department {
	margin-top: 25px;
}

#cont_sub.event.ev02 .department li {
	width: 300px;
	margin-left: 10px;
}

#cont_sub.event.ev02 .department li:first-child {
	margin: 0;
}

#cont_sub.event.ev02 .department h4 {
	padding: 10px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	border-radius: 20px;
	background-color: #00a9ec;
}

#cont_sub.event.ev02 .department h4 + p {
	margin-top: 10px;
	font-weight: bold;
}

#cont_sub.event.ev02 .event_intro .intro_txt {
	width: 670px;
	padding-left: 20px;
}

#cont_sub.event.ev02 .event_intro .place + p {
	margin-top: 10px;
}

#cont_sub.event.ev02 #sec02 #photo_list li {
	width: 225px;
	margin-left: 6px;
	float: left;
}

#cont_sub.event.ev02 #sec02 #photo_list li:first-child {
	margin-left: 0;
}

#cont_sub.event.ev02 #sec03 .photo li:first-child {
	margin-bottom: 10px;
}

#cont_sub.event.ev02 #sec04 .photo_absl01 {
	top: 110px;
	right: 40px;
}

@media screen and (max-width: 670px) {
	#cont_sub.event.ev02 .event_intro > *,
	#cont_sub.event.ev02 .department li {
		float: none;
	}

	#cont_sub.event.ev02 .event_intro .intro_txt,
	#cont_sub.event.ev02 .department li {
		width: auto;
	}

	#cont_sub.event.ev02 .department {
		margin-top: 20px;
	}

	#cont_sub.event.ev02 .department li {
		margin: 15px 0 0 0;
	}

	#cont_sub.event.ev02 .event_intro .intro_txt {
		margin-top: 15px;
		padding: 0;
	}

	#cont_sub.event.ev02 #sec02 #photo_list li {
		width: calc(50% - 3px) !important;
		margin-left: 6px;
	}

	#cont_sub.event.ev02 #sec02 #photo_list li:nth-child(-n+2) {
		margin-bottom: 6px;
	}

	#cont_sub.event.ev02 #sec02 #photo_list li:nth-child(3) {
		margin-left: 0;
	}
}



#cont_sub.event.ev03 .border.ev_bord01 {
	padding-bottom: 20px;
}

#cont_sub.event.ev03 .border.ev_bord01 h3.time_s .time,
#cont_sub.event.ev03 .border.ev_bord02 h3.time_s .time {
	background-color: #7dabd7;
}

#cont_sub.event.ev03 #sec02 .sec_inner.accordion {
	padding: 30px 20px 20px 20px;
}

#cont_sub.event.ev03 .photo img:nth-child(2) {
	margin-top: 20px;
}

#cont_sub.event.ev03 .photo_absl01 {
	position: absolute;
	top: 105px;
	right: 40px;
}

#cont_sub.event.ev03 #sec04 .photo_absl01 {
	top: 150px;
}

#cont_sub.event.ev03 #tobiuo li {
	margin-top: 15px;
}

#cont_sub.event.ev03 #tobiuo li:first-child {
	margin-top: 0;
}

#cont_sub.event.ev03 #tobiuo li > * {
	float: left;
}

#cont_sub.event.ev03 #tobiuo li > p {
	margin-right: 20px;
}

#cont_sub.event.ev03 #tobiuo p {
	margin-top: 0;
	font-weight: normal;
}

#cont_sub.event.ev03 #tobiuo .blue {
	font-weight: bold;
}

@media screen and (max-width: 670px) {
	#cont_sub.event.ev03 .border.ev_bord01 {
		padding-bottom: 5px;
	}

	#cont_sub.event.ev03 #sec02 .sec_inner.accordion {
		padding: 10px 15px 15px 15px;
	}

	#cont_sub.event.ev03 .photo img:nth-child(2) {
		margin-top: 10px;
	}

	#cont_sub.event.ev03 #tobiuo li > * {
		float: none;
	}
}



#cont_sub.event.ev04 .border {
	padding-bottom: 30px;
}

#cont_sub.event.ev04 h3.time_s .time {
	background-color: #4aaac4;
}

#cont_sub.event.ev04 .event_tbl tr:last-child > * {
	padding-bottom: 0;
}

#cont_sub.event.ev04 .photo {
	width: 160px;
	position: absolute;
	top: 60px;
	right: 40px;
}

#cont_sub.event.ev04 #sec04 .photo,
#cont_sub.event.ev04 #sec06 .photo {
	top: 52px;
}

#cont_sub.event.ev04 #sec05 .photo {
	top: 42px;
}

@media screen and (max-width: 670px) {
	#cont_sub.event.ev04 .border {
		padding-bottom: 15px;
	}
}



#cont_sub.event.ev05 .sec_inner {
	padding: 30px 40px 0 40px;
}

#cont_sub.event.ev05 #sec01 {
	position: relative;
}

#cont_sub.event.ev05 #sec01 h3.hicon {
	padding: 11px 10px 11px 70px;
	font-size: 2.2rem;
}

#cont_sub.event.ev05 #sec01 #dl_list {
	position: absolute;
	top: 30px;
	right: 40px;
}

#cont_sub.event.ev05 #sec01 #dl_list li {
	width: 158px;
	margin-left: 5px;
	float: left;
}

#cont_sub.event.ev05 #sec01 #dl_list li:first-child {
	margin-left: 0;
}

#cont_sub.event.ev05 #sec01 .event_tbl a {
	text-decoration: underline;
}

#cont_sub.event.ev05 #sec01 .event_tbl a:hover {
	color: #f08200;
}

@media screen and (max-width: 670px) {
	#cont_sub.event.ev05 .sec_inner {
		padding: 10px 15px 0 15px;
	}

	#cont_sub.event.ev05 #sec01 h3.hicon {
		padding: 9px 10px 9px 44px;
		font-size: 2.0rem;
	}

	#cont_sub.event.ev05 #sec01 #dl_list {
		padding: 0 8px 8px 8px;
		background-color: #d5d5d5;
		position: static;
	}

	#cont_sub.event.ev05 #sec01 #dl_list li {
		width: 33.3%;
		margin: 0;
		padding: 0 2px;
	}
}



#cont_sub.entry #sec01 .sec_inner #entry_intro > * {
	float: left;
}

#cont_sub.entry #sec01 .sec_inner h3 {
	width: 575px;
	color: #00a9ec;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.3;
}

#cont_sub.entry #sec01 .sec_inner #entry_intro figure img {
	width: 264px;
}

#cont_sub.entry #sec01 .sec_inner h3 + p {
	margin-top: 10px;
}

#cont_sub.entry #sec01 .sec_inner ul  {
	margin-top: 20px;
}
#cont_sub.entry #sec01 .sec_inner li {
	font-size: 1.4rem;
	line-height: 1.3;
}
#cont_sub.entry #sec01 .sec_inner ul > li {
	margin-left: 1.4rem;
	text-indent: -1.4rem;
}
#cont_sub.entry #sec01 .sec_inner ul > li:nth-child(n+2) {
	margin-top: 10px;
}
#cont_sub.entry #sec01 .sec_inner li .bold,
#cont_sub.entry #sec01 .sec_inner ol {
	text-indent: 0;
} 
#cont_sub.entry #sec01 .sec_inner li .bold {
	margin-bottom: 5px;
	display: inline-block;
}
#cont_sub.entry #sec01 .sec_inner li .bold:before {
	content: '・';
}
#cont_sub.entry #sec01 .sec_inner ol li:nth-child(n+2) {
	margin-top: 5px;
}

#cont_sub.entry #sec01 #entry_area {
	margin-bottom: 15px;
	padding: 30px 0;
	color: #fff;
	text-align: center;
	background-color: #ff69c3;
}

#cont_sub.entry #sec01 #entry_area p {
	margin-bottom: 10px;
	font-size: 1.8rem;
}

#cont_sub.entry #sec01 #entry_area #btn_entry img {
	width: 380px;
}

@media screen and (max-width: 670px) {
	#cont_sub.entry #sec01 .sec_inner #entry_intro > * {
		float: none;
	}

	#cont_sub.entry #sec01 .sec_inner h3,
	#cont_sub.entry #sec01 .sec_inner #entry_intro + p {
		width: auto;
	}

	#cont_sub.entry #sec01 .sec_inner h3 {
		font-size: 1.8rem;
	}

	#cont_sub.entry #sec01 .sec_inner h3 br {
		display: none;
	}

	#cont_sub.entry #sec01 .sec_inner #entry_intro figure {
		margin: 25px 0 10px 0;
		text-align: center;
	}
	
	#cont_sub.entry #sec01 .sec_inner #entry_intro figure img {
		width: 170px;
	}

	#cont_sub.entry #sec01 #entry_area {
		padding: 15px;
	}

	#cont_sub.entry #sec01 #entry_area p {
		margin-bottom: 5px;
		font-size: 1.6em;
	}

	#cont_sub.entry #sec01 #entry_area p span {
		display: inline-block;
	}

	#cont_sub.entry #sec01 .sec_inner ul  {
		margin-top: 15px;
	}

	#cont_sub.entry #sec01 .sec_inner ul > li {
		margin-left: 0;
		text-indent: 0;
	}
}



#cont_sub.guest #sec01 {
	padding-top: 30px;
}

#cont_sub.guest #sec01 h3.hicon {
	position: relative;
}

#cont_sub.guest #sec01 h3.hicon:after {
	content: '（50音順）';
	font-size: 1.8rem;
	position: absolute;
	top: 15px;
	right: 15px;
}

#cont_sub.guest #sec01 h3 + p {
	padding: 0 70px;
}

#cont_sub.guest #sec01 .h_cat {
	width: 280px;
	margin: 20px auto 0 auto;
	padding: 8px 0;
	color: #fff;
	font-size: 2.0rem;
	font-weight: bold;
	text-align: center;
	border-radius: 10px;
	background-color: #ff7800;
}

#cont_sub.guest #sec01 .guest_list {
	padding: 7px 12px 12px 12px;
}

#cont_sub.guest #sec01 .guest_list li,
#cont_sub.guest #sec01 .guest_list li > * {
	float: left;
}

#cont_sub.guest #sec01 .guest_list li {
	width: calc(50% - 16px);
	margin: 8px;
	padding: 20px;
	color: #fff !important;
	border-radius: 5px;
	background-color: #ff7800;
}

#cont_sub.guest #sec01 .guest_list .photo {
	width: 125px;
	margin: auto;
	border: solid 3px #ffe6cf;
}

#cont_sub.guest #sec01 .guest_list div {
	width: calc(100% - 125px);
	padding-left: 20px;
}

#cont_sub.guest #sec01 .guest_list h4 {
	font-size: 2.5rem;
	font-weight: bold;
}

#cont_sub.guest #sec01 .guest_list p {
	margin-top: 10px;
	font-size: 1.2rem;
}

@media screen and (max-width: 670px) {
	#cont_sub.guest #sec01 {
		padding-top: 20px;
	}

	#cont_sub.guest #sec01 h3.hicon:after {
		font-size: 1.4rem;
		top: 14px;
		right: 5px;
	}

	#cont_sub.guest #sec01 h3 + p {
		padding: 0 15px;
	}

	#cont_sub.guest #sec01 .h_cat {
		width: 180px;
		padding: 6px 0;
		font-size: 1.8rem;
	}

	#cont_sub.guest #sec01 .guest_list {
		padding: 0 5px;
	}

	#cont_sub.guest #sec01 .guest_list li,
	#cont_sub.guest #sec01 .guest_list li > * {
		float: none;
	}

	#cont_sub.guest #sec01 .guest_list li,
	#cont_sub.guest #sec01 .guest_list div {
		width: auto;
	}

	#cont_sub.guest #sec01 .guest_list li {
		margin: 15px 10px;
		padding: 15px;
	}

	#cont_sub.guest #sec01 .guest_list div {
		margin-top: 15px;
		padding: 0;
	}

	#cont_sub.guest #sec01 .guest_list h4 {
		font-size: 2.0rem;
		text-align: center;
	}
}

@media screen and (max-width: 374px) {
	#cont_sub.guest #sec01 h3.hicon:after {
		width: calc(100% - 20px);
		padding: 0 5px 5px 15px;
		font-size: 1.4rem;
		text-align: right;
		background-color: #d5d5d5;
		display: block;
		top: 35px;
		left: 0;
	}

	#cont_sub.guest #sec01 h3 + p {
		margin-top: 29px;
	}
}



#cont_sub.spnsr #sec01 {
	padding-top: 30px;
}

#cont_sub.spnsr #sec01 .sec_inner > *,
#cont_sub.spnsr #sec02 #spnsr_list li > * {
	float: left;
}

#cont_sub.spnsr #sec01 .sec_inner p,
#cont_sub.spnsr #sec02 #spnsr_list p {
	padding-left: 35px;
	font-size: 1.6rem;
}

#cont_sub.spnsr #sec01 .sec_inner .spnsr_logo {
	width: 160px;
	margin-left: 15px;
}

#cont_sub.spnsr #sec01 .sec_inner p {
	margin-top: 15px;
}

#cont_sub.spnsr #sec02 #spnsr_list {
	padding: 10px 40px;
}

#cont_sub.spnsr #sec02 #spnsr_list li {
	padding: 30px 60px;
	border-top: dashed 1px #646464;
}

#cont_sub.spnsr #sec02 #spnsr_list li:first-child {
	border-top: none;
}

#cont_sub.spnsr #sec02 #spnsr_list .spnsr_logo {
	width: 115px;
}

#cont_sub.spnsr #sec02 #spnsr_list p {
	margin-top: 7px;
}

@media screen and (max-width: 670px) {
	#cont_sub.spnsr #sec01 {
		padding-top: 20px;
	}

	#cont_sub.spnsr #sec01 .sec_inner > *,
	#cont_sub.spnsr #sec02 #spnsr_list li > * {
		float: none;
	}

	#cont_sub.spnsr #sec01 .sec_inner .spnsr_logo,
	#cont_sub.spnsr #sec02 #spnsr_list .spnsr_logo {
		margin: auto;
	}

	#cont_sub.spnsr #sec01 .sec_inner p,
	#cont_sub.spnsr #sec02 #spnsr_list p {
		margin-top: 15px;
		padding: 0;
		text-align: center;
		line-height: 1;
	}

	#cont_sub.spnsr #sec02 #spnsr_list {
		padding: 0 15px;
	}

	#cont_sub.spnsr #sec02 #spnsr_list li {
		padding: 20px 0;
	}

}



#cont_sub.faq #sec01 {
	padding-top: 30px;
}

#cont_sub.faq .faq_list {
	padding: 40px;
}

#cont_sub.faq .faq_list li {
	margin-top: 30px;
}

#cont_sub.faq .faq_list li:first-child {
	margin-top: 0;
}

#cont_sub.faq .faq_list h4 {
	padding: 8px 0 8px 45px;
	color: #00a9ec;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.2;
	background-image: url( ../img/icon_q.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 35px;
}

#cont_sub.faq .faq_list h4 ~ * {
	font-size: 1.2rem;
}

#cont_sub.faq .faq_list .faq_bord {
	margin-top: 8px;
	border-top: dotted 1px #646464;
}

#cont_sub.faq .faq_list p {
	margin-top: 10px;
}

#cont_sub.faq .faq_list a {
	text-decoration: underline;
}

#cont_sub.faq .faq_list a:hover {
	color: #f08200;
}

#cont_sub.faq .faq_list .sub_list {
	margin-top: 10px;
}

#cont_sub.faq .faq_list .sub_list li {
	margin-top: 0;
	line-height: 1.5;
}

#cont_sub.faq #inquiry {
	padding: 0 40px 40px 40px;
}

#cont_sub.faq #inquiry p {
	font-size: 1.3rem;
}

#cont_sub.faq #inquiry p + p {
	margin-top: 15px;
}

#cont_sub.faq #inquiry p:first-child {
	font-weight: bold;
}

@media screen and (max-width: 670px) {
	#cont_sub.faq #sec01 {
		padding-top: 20px;
	}

	#cont_sub.faq .faq_list {
		padding: 20px 15px;
	}

	#cont_sub.faq .faq_list li {
		margin-top: 15px;
	}

	#cont_sub.faq .faq_list h4 {
		padding: 5px 0 5px 36px;
		font-size: 1.4rem;
		background-size: 26px;
	}

	#cont_sub.faq #inquiry {
		padding: 10px 15px 20px 15px;
	}

}



#cont_sub.access section h4 {
	color: #00a9ec;
	font-size: 1.6rem;
	font-weight: bold;
}

#cont_sub.access section p {
	margin-top: 8px;
	font-size: 1.2rem;
}

#cont_sub.access #sec01 {
	padding-top: 30px;
}

#cont_sub.access #sec02 #map {
	height: 500px;
}

#cont_sub.access #sec02 #map + p {
	margin-top: 15px;
	padding: 10px 0 10px 40px;
	font-size: 1.4rem;
	line-height: 1;
	background-image: url( ../img/icon_bmap.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 34px;
}

#cont_sub.access #sec02 #map + p a {
	color: #646464;
}

#cont_sub.access #sec02 #map + p a:hover {
	color: #00a9ec;
}

#cont_sub.access #sec03 h4:first-child + p {
	margin-bottom: 30px;
}

@media screen and (max-width: 670px) {
	#cont_sub.access #sec01 {
		padding-top: 20px;
	}

	#cont_sub.access #sec02 #map + p {
		margin-top: 10px;
		padding: 7px 0 7px 33px;
		background-size: 28px;
	}

	#cont_sub.access #sec02 #map {
		height: 350px;
	}

	#cont_sub.access #sec03 h4:first-child + p {
		margin-bottom: 15px;
	}
}



#cont_sub.news #sec01 {
	padding-top: 30px;
}

#cont_sub.news #sec01 #news_list {
	padding: 20px 40px;
}

@media screen and (max-width: 670px) {
	#cont_sub.news #sec01 {
		padding-top: 20px;
	}

	#cont_sub.news #sec01 #news_list {
		padding: 20px 15px;
	}
}


/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
}

/*
 * Hide visually and from screen readers
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after,
    *:first-letter,
    *:first-line {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
