@charset 'UTF-8';
/* #####################################################
 * common.css
 * - Core
 * - Layout
 * - Modules
 * - Pages
 * ################################################## */


/* =====================================================
 * Base
 * ================================================== */

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */
@import url(//fonts.googleapis.com/css?family=Roboto:400,700,900);
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type='button'],
input[type='reset'],
input[type='submit'] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type='checkbox'],
input[type='radio'] {
	box-sizing: border-box;
	padding: 0;
}

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button {
	height: auto;
}

input[type='search'] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/* -----------------------------------------------------
 * Font
 * -------------------------------------------------- */
@font-face {
	font-family: 'MyYuGothicM';
    font-weight: normal;
    src: local('YuGothic-Medium'), local('Yu Gothic Medium'), local('YuGothic-Regular');
}

@font-face {
	font-family: 'MyYuGothicM';
    font-weight: bold;
    src: local('YuGothic-Bold'), local('Yu Gothic');
}

@font-face {
	font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 400;
    src: local('Noto Sans CJK JP'), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 500;
    src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 700;
    src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}

@font-face {
	font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 900;
    src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff2) format('woff2'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff) format('woff'), url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.otf) format('opentype');
}

/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */
*,
*:before,
*:after {
	box-sizing: border-box;
}

/* normalize overwrite */
html {
	font-family: '-apple-system', 'Helvetica Neue', 'MyYuGothicM', 'Yu Gothic', YuGothic, Roboto, Meiryo, sans-serif;
	font-size: 62.5%;
	min-height: 100%;
	position: relative;
}

body {
	background: #fff;
	color: #333;
	font-size: 1.6rem;
	height: 100%;
	line-height: 1.2;
	margin: 0 0 50px;
	padding: 0;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

a {
	color: #000f77;
}

a:visited {
	color: #000f77;
}

a:hover {
	color: #0019c4;
}

a:active,
a:focus {
	color: #000f77;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ol,
ul,
li,
figure,
figcaption,
small {
	font-size: 100%;
	font-weight: normal;
	margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.2;
}

img {
	vertical-align: bottom;
}

th {
	font-weight: normal;
	text-align: left;
}

/* =====================================================
 * Layout
 * ================================================== */

/* -----------------------------------------------------
 * header
 * -------------------------------------------------- */
.contents-header {
	position: relative;
}

@media only screen and (max-width: 767px) {
	.contents-header {
		height: 42px;
	}
}

@media only screen and (min-width: 768px) {
	.contents-header {
		height: 208px;
		min-width: 1200px;
	}
}

.header-upper {
	position: relative;
}

@media only screen and (min-width: 768px) {
	.header-upper {
		height: 148px;
	}
}

.isEdge .header-upper a:focus,
.isIE .header-upper a:focus {
	outline: 1px dotted #000;
}

.header-upper .logo-program {
	display: block;
	outline: inherit;
}

@media only screen and (max-width: 767px) {
	.header-upper .logo-program {
		height: 30px;
		left: 50%;
		margin: 0 0 0 -49px;
		position: absolute;
		right: 0;
		top: 6px;
		width: auto;
	}
}

@media only screen and (min-width: 768px) {
	.header-upper .logo-program {
		left: 50%;
		margin: 0 0 0 -190px;
		position: absolute;
		top: 22px;
	}
}

.header-left {
	display: block;
	left: 25px;
	position: absolute;
	top: 18px;
}

.header-left .logo-tokyo2020 a {
	display: block;
}

@media only screen and (max-width: 767px) {
	.header-left .logo-tokyo2020 img {
		height: 32px;
		width: auto;
	}
}

@media only screen and (min-width: 768px) {
	.header-left .logo-tokyo2020 {
		display: block;
		padding: 0;
	}
}

@media only screen and (max-width: 767px) {
	.header-left {
		left: 0;
		top: 5px;
	}
}

.header-right {
	position: absolute;
	right: 21px;
	top: 20px;
}

.header-right .list-dl-apply {
	border: 1px solid #ccc;
	padding: 1px;
}

.header-right .list-dl-apply dt span {
	background: #f2f2f2;
	color: #333;
	display: block;
	font-size: 1.4rem;
	line-height: 1;
	padding: 7px 0;
	text-align: center;
}

.header-right .list-dl-apply ul {
	padding: 11px 20px 10px;
}

.header-right .list-dl-apply li {
	margin: 12px 0 0;
}

.header-right .list-dl-apply li:first-child {
	margin: 0;
}

.header-right .list-dl-apply li a {
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0 0 0 24px;
	position: relative;
}

.header-right .list-dl-apply li a:before {
	background: url(/assets/img/common/icon_chevron_middle_03.png) no-repeat 0 0;
	content: ' ';
	display: block;
	height: 17px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 11px;
}

.header-right .list-dl-apply li a span {
	font-size: 1.4rem;
	font-weight: normal;
}

.header-right .list-dl-apply li a .icon {
	background: url(/assets/img/common/icon_window_03.png) no-repeat 0 0;
	display: inline-block;
	height: 16px;
	margin: 0 0 0 10px;
	overflow: hidden;
	text-indent: 500px;
	vertical-align: middle;
	white-space: nowrap;
	width: 20px;
}

.header-right .list-dl-apply li a:hover:before {
	background-position: 100% 0;
}

.header-right .list-dl-apply li a:hover .icon {
	background-position: 100% 0;
}

.language-box {
	overflow: hidden;
}

.language-box li {
	display: block;
	float: left;
	height: 28px;
	text-align: center;
	width: 70px;
}

.language-box li a,
.language-box li span {
	display: block;
	font-size: 1.4rem;
	height: 100%;
	line-height: 28px;
	width: 100%;
}

.language-box li a {
	background: #ccc;
	color: #333;
	font-style: italic;
	text-decoration: none;
}

.language-box li.current span {
	background: #000;
	color: #fff;
}

.header-lower {
	border-top: 1px solid #ccc;
	height: 60px;
	padding: 0;
}

/* sp */
.sp-menu-btn {
	border-left: 1px solid #ccc;
	position: absolute;
	right: 0;
	top: 0;
	width: 42px;
}

.sp-menu-btn .btn-toggle.is-active span {
	background: #fff;
	-webkit-transform: translate3d(3px, 0, 0);
	transform: translate3d(3px, 0, 0);
}

.sp-menu-btn .btn-toggle.is-active span:before {
	-webkit-transform: rotate(45deg) translate3d(3px, 7px, 0);
	transform: rotate(45deg) translate3d(3px, 7px, 0);
}

.sp-menu-btn .btn-toggle.is-active span:after {
	-webkit-transform: rotate(-45deg) translate3d(3px, -7px, 0);
	transform: rotate(-45deg) translate3d(3px, -7px, 0);
}

.sp-menu-btn .btn-toggle {
	background: #fff;
	border: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 42px;
	padding: 0;
	position: relative;
	width: 42px;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-ms-flex-align: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.sp-menu-btn .btn-toggle .bar {
	background: #333;
	border-radius: 3px;
	display: block;
	height: 3px;
	margin: auto;
	padding: 0;
	position: relative;
	width: 18px;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
}

.sp-menu-btn .btn-toggle .bar:before,
.sp-menu-btn .btn-toggle .bar:after {
	background: #333;
	border-radius: 3px;
	content: '';
	display: block;
	height: 3px;
	position: absolute;
	width: 18px;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
}

.sp-menu-btn .btn-toggle .bar:before {
	top: -7px;
}

.sp-menu-btn .btn-toggle .bar:after {
	top: 7px;
}

.sp-menu-btn .btn-toggle .label {
	display: block;
	height: 0;
	overflow: hidden;
	white-space: nowrap;
	width: 0;
}

.header-sp-menu-wrapper {
	background: #fff;
	display: none;
	left: 100%;
	position: absolute;
	top: 43px;
	width: 100%;
	z-index: 1000;
	-webkit-transition: -webkit-transform 0.5s ease-in-out;
	transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
	transition: transform 0.5s ease-in-out;
	transition: -webkit-transform 0.5s ease-in-out;
}

.header-sp-menu-wrapper.is-active {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.header-sp-menu-wrapper .social-links {
	padding: 20px 0;
	text-align: center;
}

.header-sp-menu-wrapper .social-links li {
	display: inline-block;
	margin: 0 7px;
}

.header-sp-menu-wrapper .social-links li img {
	height: auto;
	width: 40px;
}

.header-sp-menu .main-nav {
	font-size: 1.4rem;
}

.header-sp-menu .main-nav > li > a {
	background: url(/assets/img/common/icon_sp_menu_01.png) no-repeat 20px 50%;
	background-size: 5px auto;
	border-bottom: 1px solid #ccc;
	color: #333;
	display: block;
	font-weight: bold;
	padding: 13px 20px;
	padding-left: 35px;
	text-decoration: none;
}

.header-sp-menu .main-nav > li > span {
	border-bottom: 1px solid #ccc;
	display: block;
	font-weight: bold;
	padding: 13px 20px;
}

.header-sp-menu .main-nav .sub a {
	background: url(/assets/img/common/icon_sp_menu_01.png) no-repeat 44px 50%;
	background-size: 5px auto;
	border-bottom: 1px solid #ccc;
	display: block;
	padding: 13px 20px;
	padding-left: 60px;
	text-decoration: none;
}

.header-sp-menu .external-nav {
	background: #e5e5e5;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 20px 0;
}

.header-sp-menu .external-nav .program {
	margin-top: 20px;
}

.header-sp-menu .external-nav a {
	background: #000f77 url(/assets/img/common/icon_sp_menu_02.png) no-repeat 20px 50%;
	background-size: 5px auto;
	border-top: 1px solid #9aa0c9;
	color: #fff;
	display: block;
	padding: 12px 35px;
	text-decoration: none;
}

.header-sp-menu .external-nav a span {
	font-size: 1.2rem;
}

.header-sp-menu .external-nav a img {
	height: auto;
	width: 16px;
}

.header-sp-menu .language-nav {
	display: table;
	font-size: 1.4rem;
	width: 100%;
}

.header-sp-menu .language-nav:after {
	clear: both;
	content: '';
	display: block;
}

.header-sp-menu .language-nav li {
	display: table-cell;
	width: 50%;
}

.header-sp-menu .language-nav a {
	display: block;
	padding: 15px 5px;
	text-align: center;
}

.header-sp-menu .language-nav a.ja {
	background: #333;
	color: #fff;
	font-weight: bold;
}

.header-sp-menu .language-nav a.ja span {
	background: url(/assets/img/common/icon_sp_menu_02.png) no-repeat 0 50%;
	background-size: 5px auto;
	display: inline-block;
	padding-left: 16px;
}

.header-sp-menu .language-nav a.en {
	background: #ccc;
	color: #333;
	font-style: italic;
}

.header-sp-menu .language-nav a.en span {
	background: url(/assets/img/common/icon_sp_menu_01.png) no-repeat 0 50%;
	background-size: 5px auto;
	display: inline-block;
	padding-left: 16px;
}

/* -----------------------------------------------------
 * to-pagetop
 * -------------------------------------------------- */
.contents-pagetop {
	margin: 40px auto 20px;
	padding: 0 40px;
	width: auto;
}

.contents-pagetop p {
	text-align: right;
}

.contents-pagetop a {
	display: inline-block;
	font-size: 1.8rem;
}

.contents-pagetop a:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	content: ' ';
	display: inline-block;
	height: 12px;
	margin: 0 10px 0 0;
	-webkit-transform: rotateZ(-90deg);
	transform: rotateZ(-90deg);
	width: 8px;
}

.contents-pagetop a:hover:before {
	background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
	.contents-pagetop {
		margin: 50px 0 20px;
		padding: 0 20px;
		width: 100%;
	}

	.contents-pagetop a {
		font-size: 1.4rem;
	}

	.contents-pagetop a:before {
		background-image: url(/assets/img/common/icon_chevron_middle_02_sp.png);
		background-size: 8px 12px;
		height: 12px;
		width: 8px;
	}

	.contents-pagetop a:hover:before {
		background-position: 0 0;
	}
}

/* -----------------------------------------------------
 * footer
 * -------------------------------------------------- */
.contents-footer {
	background: #f2f2f2;
	color: #000;
	margin: 0;
	position: relative;
	z-index: 1;
}

.page-404 .contents-footer {
	margin: 0;
}

.sns-footer {
	height: 300px;
	letter-spacing: -0.4em;
	padding: 40px 40px 0;
}

.sns-footer > * {
	letter-spacing: normal;
}

.sns-footer li {
	display: inline-block;
	margin: 0 12px 0 0;
}

.sns-footer a {
	display: block;
}

.sns-footer img {
	height: 32px;
	width: 32px;
}

.nav-footer {
	position: absolute;
	right: 40px;
	text-align: right;
	top: 40px;
}

.nav-footer ul {
	letter-spacing: -0.4em;
	padding-left: 300px;
}

.nav-footer ul > * {
	letter-spacing: normal;
}

.nav-footer li {
	display: inline-block;
	line-height: 1.5;
	margin: 0 0 0 30px;
}

.nav-footer li:first-child {
	margin: 0;
}

.nav-footer li a {
	color: #000;
	font-size: 1.6rem;
	font-weight: bold;
}

.nav-footer li a:hover {
	color: #c00;
}

.list-footer-links {
	position: absolute;
	right: 40px;
	top: 118px;
}

.list-footer-links li {
	line-height: 1;
	margin: 14px 0 0;
	text-align: right;
}

.list-footer-links li:first-child {
	margin: 0;
}

.list-footer-links a {
	font-size: 1.2rem;
	letter-spacing: 0.125em;
}

.list-footer-links a:link,
.list-footer-links a:visited {
	color: #000;
}

.list-footer-links a:hover {
	color: #c00;
}

.list-footer-links .icon {
	height: 10px;
	margin: 0 0 0 2px;
	vertical-align: baseline;
	width: 12px;
}

.copyrights {
	bottom: 0;
	left: 0;
	padding: 0 34px 12px;
	position: absolute;
}

.copyrights p {
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 2;
}

.copyrights p.note {
	font-weight: normal;
	margin: 0 0 10px;
}

.copyrights p[lang='en'] {
	letter-spacing: 0.04em;
}

@media only screen and (max-width: 767px) {
	.copyrights p.note {
		letter-spacing: 0.04em;
		margin: 0;
		padding-left: 1em;
		text-indent: -1em;
	}
}

@media only screen and (max-width: 767px) {
	.footer-inner {
		padding: 20px;
	}

	.sns-footer {
		height: auto;
		margin: 0 -15px;
		padding: 0;
		text-align: center;
	}

	.sns-footer li {
		margin: 0 10px;
	}

	.sns-footer img {
		height: 40px;
		width: 40px;
	}

	.list-footer-links {
		margin: 40px 0 0;
		position: static;
	}

	.list-footer-links li {
		text-align: left;
	}

	.copyrights {
		margin: 40px 0 0;
		padding: 0;
		position: static;
	}

	.copyrights p {
		line-height: 1.5;
		margin: 20px 0 0;
	}

	.copyrights p:first-child {
		margin: 0;
	}
}

/* -----------------------------------------------------
 * contents-body
 * -------------------------------------------------- */
.contents-body {
	border-top: 1px solid #ccc;
	position: relative;
	z-index: 2;
}

@media only screen and (max-width: 767px) {
	.contents-body {
		border-top: none;
	}
}

.nav-breadcrumb + .contents-main {
	border-top: 1px solid #ccc;
}

@media only screen and (max-width: 767px) {
	.contents-main {
		border-top: 1px solid #ccc;
	}
}

.contents-main-body {
	min-width: 1100px;
}

@media only screen and (max-width: 767px) {
	.contents-main-body {
		min-width: 0;
	}
}

.contents-main-inner {
	padding: 0 0 80px;
}

.page-404 .contents-main-inner {
	padding: 0;
}

@media only screen and (max-width: 767px) {
	.contents-main-inner {
		padding: 0;
	}
}

.contents-inner-column {
	margin: 0 auto;
	overflow: hidden;
	padding: 0 20px;
	width: 1100px;
}

@media only screen and (max-width: 767px) {
	.contents-inner-column {
		width: auto;
	}

	.contents-inner-column.article {
		padding: 0 20px 70px;
	}
}

.contents-column-left {
	float: left;
	width: 700px;
}

.article .contents-column-left {
	width: 790px;
}

@media only screen and (max-width: 767px) {
	.contents-column-left {
		float: none;
		width: auto;
	}

	.article .contents-column-left {
		width: auto;
	}
}

.contents-column-right {
	float: right;
	width: 320px;
}

.article .contents-column-right {
	width: 250px;
}

@media only screen and (max-width: 767px) {
	.contents-column-right {
		float: none;
		width: auto;
	}

	.article .contents-column-right {
		width: auto;
	}
}

.cont-main-footer {
	padding: 40px 0 80px;
	position: relative;
}

.cont-main-footer:before {
	background: #ccc;
	content: ' ';
	display: block;
	height: 1px;
	left: 50%;
	margin: 0 0 0 -530px;
	position: absolute;
	top: 0;
	width: 1060px;
}

@media only screen and (max-width: 767px) {
	.cont-main-footer {
		padding: 0;
	}

	.cont-main-footer:before {
		display: none;
	}
}

/**
 * Flex Grid -
 * Version: 0.3.4
 *
 * Simple grid built with flex box and sass.
 * Matthew Simo - matthew.a.simo@gmail.com
 */

/*
---
name: Grid
category: layout
---

```html
<div class="l-row">

<div class="l-col-sm-12">
	<div class="xxxx">xs-12</div>
</div>

<div class="l-col-sm-1">
	<div class="xxxx">xs-1</div>
</div>
<div class="l-col-sm-11">
	<div class="xxxx">xs-11</div>
</div>

<div class="l-col-sm-2">
	<div class="xxxx">xs-2</div>
</div>
<div class="l-col-sm-10">
	<div class="xxxx">xs-10</div>
</div>

<div class="l-col-sm-3">
	<div class="xxxx">xs-3</div>
</div>
<div class="l-col-sm-9">
	<div class="xxxx">xs-9</div>
</div>

<div class="l-col-sm-4">
	<div class="xxxx">xs-4</div>
</div>
<div class="l-col-sm-8">
	<div class="xxxx">xs-8</div>
</div>

<div class="l-col-sm-5">
	<div class="xxxx">xs-5</div>
</div>
<div class="l-col-sm-7">
	<div class="xxxx">xs-7</div>
</div>

<div class="l-col-sm-6">
	<div class="xxxx">xs-6</div>
</div>
<div class="l-col-sm-6">
	<div class="xxxx">xs-6</div>
</div>

</div>

```
*/
.l-row {
	box-sizing: border-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: row;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-direction: row;
	flex-direction: row;
	margin-left: -0.5rem;
	margin-right: -0.5rem;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.l-row .xxxx {
	background-color: #666;
	color: #fff;
	display: block;
	font-size: 1.4rem;
	margin-bottom: 1rem;
	padding: 1.5rem 0;
	text-align: center;
	width: 100%;
}

.l-col-xs,
.l-col-sm,
.l-col-md,
.l-col-lg,
.l-col-xs-1,
.l-col-xs-2,
.l-col-xs-3,
.l-col-xs-4,
.l-col-xs-5,
.l-col-xs-6,
.l-col-xs-7,
.l-col-xs-8,
.l-col-xs-9,
.l-col-xs-10,
.l-col-xs-11,
.l-col-xs-12,
.l-col-sm-1,
.l-col-sm-2,
.l-col-sm-3,
.l-col-sm-4,
.l-col-sm-5,
.l-col-sm-6,
.l-col-sm-7,
.l-col-sm-8,
.l-col-sm-9,
.l-col-sm-10,
.l-col-sm-11,
.l-col-sm-12,
.l-col-md-1,
.l-col-md-2,
.l-col-md-3,
.l-col-md-4,
.l-col-md-5,
.l-col-md-6,
.l-col-md-7,
.l-col-md-8,
.l-col-md-9,
.l-col-md-10,
.l-col-md-11,
.l-col-md-12,
.l-col-lg-1,
.l-col-lg-2,
.l-col-lg-3,
.l-col-lg-4,
.l-col-lg-5,
.l-col-lg-6,
.l-col-lg-7,
.l-col-lg-8,
.l-col-lg-9,
.l-col-lg-10,
.l-col-lg-11,
.l-col-lg-12 {
	box-sizing: border-box;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	flex-direction: column;
	min-height: 1px;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	-webkit-box-flex: 0;
	-webkit-flex-grow: 0;
	flex-grow: 0;
	-ms-flex-negative: 0;
	-ms-flex-positive: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

.l-col-xs,
.l-col-sm,
.l-col-md,
.l-col-lg {
	max-width: 100%;
	-webkit-box-flex: 1;
	-webkit-flex-basis: 0;
	flex-basis: 0;
	-webkit-flex-grow: 1;
	flex-grow: 1;
	-ms-flex-positive: 1;
	-ms-flex-preferred-size: 0;
}

.l-col-xs-1 {
	max-width: 8.33333%;
	-webkit-flex-basis: 8.33333%;
	flex-basis: 8.33333%;
	-ms-flex-preferred-size: 8.33333%;
}

.l-col-xs-2 {
	max-width: 16.66667%;
	-webkit-flex-basis: 16.66667%;
	flex-basis: 16.66667%;
	-ms-flex-preferred-size: 16.66667%;
}

.l-col-xs-3 {
	max-width: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	-ms-flex-preferred-size: 25%;
}

.l-col-xs-4 {
	max-width: 33.33333%;
	-webkit-flex-basis: 33.33333%;
	flex-basis: 33.33333%;
	-ms-flex-preferred-size: 33.33333%;
}

.l-col-xs-5 {
	max-width: 41.66667%;
	-webkit-flex-basis: 41.66667%;
	flex-basis: 41.66667%;
	-ms-flex-preferred-size: 41.66667%;
}

.l-col-xs-6 {
	max-width: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	-ms-flex-preferred-size: 50%;
}

.l-col-xs-7 {
	max-width: 58.33333%;
	-webkit-flex-basis: 58.33333%;
	flex-basis: 58.33333%;
	-ms-flex-preferred-size: 58.33333%;
}

.l-col-xs-8 {
	max-width: 66.66667%;
	-webkit-flex-basis: 66.66667%;
	flex-basis: 66.66667%;
	-ms-flex-preferred-size: 66.66667%;
}

.l-col-xs-9 {
	max-width: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	-ms-flex-preferred-size: 75%;
}

.l-col-xs-10 {
	max-width: 83.33333%;
	-webkit-flex-basis: 83.33333%;
	flex-basis: 83.33333%;
	-ms-flex-preferred-size: 83.33333%;
}

.l-col-xs-11 {
	max-width: 91.66667%;
	-webkit-flex-basis: 91.66667%;
	flex-basis: 91.66667%;
	-ms-flex-preferred-size: 91.66667%;
}

.l-col-xs-12 {
	max-width: 100%;
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
	-ms-flex-preferred-size: 100%;
}

.l-off-xs-1 {
	margin-left: 8.33333%;
}

.l-off-xs-2 {
	margin-left: 16.66667%;
}

.l-off-xs-3 {
	margin-left: 25%;
}

.l-off-xs-4 {
	margin-left: 33.33333%;
}

.l-off-xs-5 {
	margin-left: 41.66667%;
}

.l-off-xs-6 {
	margin-left: 50%;
}

.l-off-xs-7 {
	margin-left: 58.33333%;
}

.l-off-xs-8 {
	margin-left: 66.66667%;
}

.l-off-xs-9 {
	margin-left: 75%;
}

.l-off-xs-10 {
	margin-left: 83.33333%;
}

.l-off-xs-11 {
	margin-left: 91.66667%;
}

@media only screen and (min-width: 768px) {
	.l-col-sm-1 {
		max-width: 8.33333%;
		-webkit-flex-basis: 8.33333%;
		flex-basis: 8.33333%;
		-ms-flex-preferred-size: 8.33333%;
	}

	.l-col-sm-2 {
		max-width: 16.66667%;
		-webkit-flex-basis: 16.66667%;
		flex-basis: 16.66667%;
		-ms-flex-preferred-size: 16.66667%;
	}

	.l-col-sm-3 {
		max-width: 25%;
		-webkit-flex-basis: 25%;
		flex-basis: 25%;
		-ms-flex-preferred-size: 25%;
	}

	.l-col-sm-4 {
		max-width: 33.33333%;
		-webkit-flex-basis: 33.33333%;
		flex-basis: 33.33333%;
		-ms-flex-preferred-size: 33.33333%;
	}

	.l-col-sm-5 {
		max-width: 41.66667%;
		-webkit-flex-basis: 41.66667%;
		flex-basis: 41.66667%;
		-ms-flex-preferred-size: 41.66667%;
	}

	.l-col-sm-6 {
		max-width: 50%;
		-webkit-flex-basis: 50%;
		flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
	}

	.l-col-sm-7 {
		max-width: 58.33333%;
		-webkit-flex-basis: 58.33333%;
		flex-basis: 58.33333%;
		-ms-flex-preferred-size: 58.33333%;
	}

	.l-col-sm-8 {
		max-width: 66.66667%;
		-webkit-flex-basis: 66.66667%;
		flex-basis: 66.66667%;
		-ms-flex-preferred-size: 66.66667%;
	}

	.l-col-sm-9 {
		max-width: 75%;
		-webkit-flex-basis: 75%;
		flex-basis: 75%;
		-ms-flex-preferred-size: 75%;
	}

	.l-col-sm-10 {
		max-width: 83.33333%;
		-webkit-flex-basis: 83.33333%;
		flex-basis: 83.33333%;
		-ms-flex-preferred-size: 83.33333%;
	}

	.l-col-sm-11 {
		max-width: 91.66667%;
		-webkit-flex-basis: 91.66667%;
		flex-basis: 91.66667%;
		-ms-flex-preferred-size: 91.66667%;
	}

	.l-col-sm-12 {
		max-width: 100%;
		-webkit-flex-basis: 100%;
		flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
	}

	.l-off-sm-1 {
		margin-left: 8.33333%;
	}

	.l-off-sm-2 {
		margin-left: 16.66667%;
	}

	.l-off-sm-3 {
		margin-left: 25%;
	}

	.l-off-sm-4 {
		margin-left: 33.33333%;
	}

	.l-off-sm-5 {
		margin-left: 41.66667%;
	}

	.l-off-sm-6 {
		margin-left: 50%;
	}

	.l-off-sm-7 {
		margin-left: 58.33333%;
	}

	.l-off-sm-8 {
		margin-left: 66.66667%;
	}

	.l-off-sm-9 {
		margin-left: 75%;
	}

	.l-off-sm-10 {
		margin-left: 83.33333%;
	}

	.l-off-sm-11 {
		margin-left: 91.66667%;
	}
}

@media only screen and (min-width: 992px) {
	.l-col-md-1 {
		max-width: 8.33333%;
		-webkit-flex-basis: 8.33333%;
		flex-basis: 8.33333%;
		-ms-flex-preferred-size: 8.33333%;
	}

	.l-col-md-2 {
		max-width: 16.66667%;
		-webkit-flex-basis: 16.66667%;
		flex-basis: 16.66667%;
		-ms-flex-preferred-size: 16.66667%;
	}

	.l-col-md-3 {
		max-width: 25%;
		-webkit-flex-basis: 25%;
		flex-basis: 25%;
		-ms-flex-preferred-size: 25%;
	}

	.l-col-md-4 {
		max-width: 33.33333%;
		-webkit-flex-basis: 33.33333%;
		flex-basis: 33.33333%;
		-ms-flex-preferred-size: 33.33333%;
	}

	.l-col-md-5 {
		max-width: 41.66667%;
		-webkit-flex-basis: 41.66667%;
		flex-basis: 41.66667%;
		-ms-flex-preferred-size: 41.66667%;
	}

	.l-col-md-6 {
		max-width: 50%;
		-webkit-flex-basis: 50%;
		flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
	}

	.l-col-md-7 {
		max-width: 58.33333%;
		-webkit-flex-basis: 58.33333%;
		flex-basis: 58.33333%;
		-ms-flex-preferred-size: 58.33333%;
	}

	.l-col-md-8 {
		max-width: 66.66667%;
		-webkit-flex-basis: 66.66667%;
		flex-basis: 66.66667%;
		-ms-flex-preferred-size: 66.66667%;
	}

	.l-col-md-9 {
		max-width: 75%;
		-webkit-flex-basis: 75%;
		flex-basis: 75%;
		-ms-flex-preferred-size: 75%;
	}

	.l-col-md-10 {
		max-width: 83.33333%;
		-webkit-flex-basis: 83.33333%;
		flex-basis: 83.33333%;
		-ms-flex-preferred-size: 83.33333%;
	}

	.l-col-md-11 {
		max-width: 91.66667%;
		-webkit-flex-basis: 91.66667%;
		flex-basis: 91.66667%;
		-ms-flex-preferred-size: 91.66667%;
	}

	.l-col-md-12 {
		max-width: 100%;
		-webkit-flex-basis: 100%;
		flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
	}

	.l-off-md-1 {
		margin-left: 8.33333%;
	}

	.l-off-md-2 {
		margin-left: 16.66667%;
	}

	.l-off-md-3 {
		margin-left: 25%;
	}

	.l-off-md-4 {
		margin-left: 33.33333%;
	}

	.l-off-md-5 {
		margin-left: 41.66667%;
	}

	.l-off-md-6 {
		margin-left: 50%;
	}

	.l-off-md-7 {
		margin-left: 58.33333%;
	}

	.l-off-md-8 {
		margin-left: 66.66667%;
	}

	.l-off-md-9 {
		margin-left: 75%;
	}

	.l-off-md-10 {
		margin-left: 83.33333%;
	}

	.l-off-md-11 {
		margin-left: 91.66667%;
	}
}

@media only screen and (min-width: 1200px) {
	.l-col-lg-1 {
		max-width: 8.33333%;
		-webkit-flex-basis: 8.33333%;
		flex-basis: 8.33333%;
		-ms-flex-preferred-size: 8.33333%;
	}

	.l-col-lg-2 {
		max-width: 16.66667%;
		-webkit-flex-basis: 16.66667%;
		flex-basis: 16.66667%;
		-ms-flex-preferred-size: 16.66667%;
	}

	.l-col-lg-3 {
		max-width: 25%;
		-webkit-flex-basis: 25%;
		flex-basis: 25%;
		-ms-flex-preferred-size: 25%;
	}

	.l-col-lg-4 {
		max-width: 33.33333%;
		-webkit-flex-basis: 33.33333%;
		flex-basis: 33.33333%;
		-ms-flex-preferred-size: 33.33333%;
	}

	.l-col-lg-5 {
		max-width: 41.66667%;
		-webkit-flex-basis: 41.66667%;
		flex-basis: 41.66667%;
		-ms-flex-preferred-size: 41.66667%;
	}

	.l-col-lg-6 {
		max-width: 50%;
		-webkit-flex-basis: 50%;
		flex-basis: 50%;
		-ms-flex-preferred-size: 50%;
	}

	.l-col-lg-7 {
		max-width: 58.33333%;
		-webkit-flex-basis: 58.33333%;
		flex-basis: 58.33333%;
		-ms-flex-preferred-size: 58.33333%;
	}

	.l-col-lg-8 {
		max-width: 66.66667%;
		-webkit-flex-basis: 66.66667%;
		flex-basis: 66.66667%;
		-ms-flex-preferred-size: 66.66667%;
	}

	.l-col-lg-9 {
		max-width: 75%;
		-webkit-flex-basis: 75%;
		flex-basis: 75%;
		-ms-flex-preferred-size: 75%;
	}

	.l-col-lg-10 {
		max-width: 83.33333%;
		-webkit-flex-basis: 83.33333%;
		flex-basis: 83.33333%;
		-ms-flex-preferred-size: 83.33333%;
	}

	.l-col-lg-11 {
		max-width: 91.66667%;
		-webkit-flex-basis: 91.66667%;
		flex-basis: 91.66667%;
		-ms-flex-preferred-size: 91.66667%;
	}

	.l-col-lg-12 {
		max-width: 100%;
		-webkit-flex-basis: 100%;
		flex-basis: 100%;
		-ms-flex-preferred-size: 100%;
	}

	.l-off-lg-1 {
		margin-left: 8.33333%;
	}

	.l-off-lg-2 {
		margin-left: 16.66667%;
	}

	.l-off-lg-3 {
		margin-left: 25%;
	}

	.l-off-lg-4 {
		margin-left: 33.33333%;
	}

	.l-off-lg-5 {
		margin-left: 41.66667%;
	}

	.l-off-lg-6 {
		margin-left: 50%;
	}

	.l-off-lg-7 {
		margin-left: 58.33333%;
	}

	.l-off-lg-8 {
		margin-left: 66.66667%;
	}

	.l-off-lg-9 {
		margin-left: 75%;
	}

	.l-off-lg-10 {
		margin-left: 83.33333%;
	}

	.l-off-lg-11 {
		margin-left: 91.66667%;
	}
}

/* =====================================================
 * Module
 * ================================================== */

/* -----------------------------------------------------
 * base
 * -------------------------------------------------- */
body {
	margin: 0;
}

a:link {
	color: #000f77;
}

a:hover {
	color: #c00;
}

em {
	font-style: normal;
	font-weight: bold;
}

@media only screen and (max-width: 767px) {
	.container {
		overflow: hidden;
		position: relative;
		width: 100%;
	}
}

/* -----------------------------------------------------
 * visibility
 * -------------------------------------------------- */
@media only screen and (max-width: 767px) {
	.pc-element {
		display: none !important;
	}
}

@media only screen and (min-width: 768px) {
	.sp-element {
		display: none !important;
	}
}

/* -----------------------------------------------------
 * inline layout
 * -------------------------------------------------- */
.align-center {
	text-align: center !important;
}

.align-right {
	text-align: right !important;
}

.sp-br {
	display: inline-block;
}

@media only screen and (max-width: 767px) {
	.sp-br {
		display: block;
	}
}

/*
---
name: bg
category: module
---
```html
```
*/
.category .bg-default,
.bg-default.category {
	background: -webkit-linear-gradient(top, #fff8f8 0px, rgba(255, 248, 248, 0) 350px);
	background: linear-gradient(to bottom, #fff8f8 0px, rgba(255, 248, 248, 0) 350px);
}

.area .bg-default,
.bg-default.area {
	background: -webkit-linear-gradient(top, #f6fff6 0px, rgba(246, 255, 246, 0) 350px);
	background: linear-gradient(to bottom, #f6fff6 0px, rgba(246, 255, 246, 0) 350px);
}

.calendar .bg-default,
.bg-default.calendar {
	background: -webkit-linear-gradient(top, #f0fbff 0px, rgba(240, 251, 255, 0) 350px);
	background: linear-gradient(to bottom, #f0fbff 0px, rgba(240, 251, 255, 0) 350px);
}

.detail .bg-default,
.bg-default.detail,
.other .bg-default,
.bg-default.other {
	background: -webkit-linear-gradient(top, #fffff4 0px, rgba(255, 255, 244, 0) 350px);
	background: linear-gradient(to bottom, #fffff4 0px, rgba(255, 255, 244, 0) 350px);
}

.category .bg-main,
.bg-main.category {
	background: url(/assets/img/common/bg_main_category_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_category_02.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
	background: url(/assets/img/common/bg_main_category_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_category_02.png) no-repeat 100% 100%, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
}

.category .bg-main.bottom-none,
.bg-main.category.bottom-none {
	background: url(/assets/img/common/bg_main_category_01.png) no-repeat 0 0, none, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
	background: url(/assets/img/common/bg_main_category_01.png) no-repeat 0 0, none, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
}

.area .bg-main,
.bg-main.area {
	background: url(/assets/img/common/bg_main_area_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_area_02.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #f6fff6 0%, rgba(246, 255, 246, 0) 50%, rgba(246, 255, 246, 0) 100%);
	background: url(/assets/img/common/bg_main_area_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_area_02.png) no-repeat 100% 100%, linear-gradient(to bottom, #f6fff6 0%, rgba(246, 255, 246, 0) 50%, rgba(246, 255, 246, 0) 100%);
}

.area .bg-main.bottom-none,
.bg-main.area.bottom-none {
	background: url(/assets/img/common/bg_main_area_01.png) no-repeat 0 0, none, -webkit-linear-gradient(top, #f6fff6 0%, rgba(246, 255, 246, 0) 50%, rgba(246, 255, 246, 0) 100%);
	background: url(/assets/img/common/bg_main_area_01.png) no-repeat 0 0, none, linear-gradient(to bottom, #f6fff6 0%, rgba(246, 255, 246, 0) 50%, rgba(246, 255, 246, 0) 100%);
}

.calendar .bg-main,
.bg-main.calendar {
	background: url(/assets/img/common/bg_main_calendar_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_calendar_02.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #f0fbff 0%, rgba(240, 251, 255, 0) 50%, rgba(240, 251, 255, 0) 100%);
	background: url(/assets/img/common/bg_main_calendar_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_calendar_02.png) no-repeat 100% 100%, linear-gradient(to bottom, #f0fbff 0%, rgba(240, 251, 255, 0) 50%, rgba(240, 251, 255, 0) 100%);
}

.calendar .bg-main.bottom-none,
.bg-main.calendar.bottom-none {
	background: url(/assets/img/common/bg_main_calendar_01.png) no-repeat 0 0, none, -webkit-linear-gradient(top, #f0fbff 0%, rgba(240, 251, 255, 0) 50%, rgba(240, 251, 255, 0) 100%);
	background: url(/assets/img/common/bg_main_calendar_01.png) no-repeat 0 0, none, linear-gradient(to bottom, #f0fbff 0%, rgba(240, 251, 255, 0) 50%, rgba(240, 251, 255, 0) 100%);
}

.detail .bg-main,
.bg-main.detail,
.other .bg-main,
.bg-main.other {
	background: url(/assets/img/common/bg_main_detail_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_detail_02.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
	background: url(/assets/img/common/bg_main_detail_01.png) no-repeat 0 0, url(/assets/img/common/bg_main_detail_02.png) no-repeat 100% 100%, linear-gradient(to bottom, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
}

.detail .bg-main.bottom-none,
.bg-main.detail.bottom-none,
.other .bg-main.bottom-none,
.bg-main.other.bottom-none {
	background: url(/assets/img/common/bg_main_detail_01.png) no-repeat 0 0, none, -webkit-linear-gradient(top, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
	background: url(/assets/img/common/bg_main_detail_01.png) no-repeat 0 0, none, linear-gradient(to bottom, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
}

/* sp */
@media only screen and (max-width: 767px) {
	.category .bg-main,
    .bg-main.category {
		background: url(/assets/img/common/bg_main_category_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_category_02_sp.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_category_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_category_02_sp.png) no-repeat 100% 100%, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.category .bg-main.bottom-none,
    .bg-main.category.bottom-none {
		background: url(/assets/img/common/bg_main_category_01_sp.png) no-repeat 0 -1px, none, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_category_01_sp.png) no-repeat 0 -1px, none, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.area .bg-main,
    .bg-main.area {
		background: url(/assets/img/common/bg_main_area_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_area_02_sp.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_area_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_area_02_sp.png) no-repeat 100% 100%, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.area .bg-main.bottom-none,
    .bg-main.area.bottom-none {
		background: url(/assets/img/common/bg_main_area_01_sp.png) no-repeat 0 -1px, none, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_area_01_sp.png) no-repeat 0 -1px, none, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.calendar .bg-main,
    .bg-main.calendar {
		background: url(/assets/img/common/bg_main_calendar_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_calendar_02_sp.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_calendar_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_calendar_02_sp.png) no-repeat 100% 100%, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.calendar .bg-main.bottom-none,
    .bg-main.calendar.bottom-none {
		background: url(/assets/img/common/bg_main_calendar_01_sp.png) no-repeat 0 -1px, none, -webkit-linear-gradient(top, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background: url(/assets/img/common/bg_main_calendar_01_sp.png) no-repeat 0 -1px, none, linear-gradient(to bottom, #fff8f8 0%, rgba(255, 248, 248, 0) 50%, rgba(255, 248, 248, 0) 100%);
		background-size: 65px auto, 65px auto, auto;
	}

	.detail .bg-main,
    .bg-main.detail,
    .other .bg-main,
    .bg-main.other {
		background: url(/assets/img/common/bg_main_detail_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_detail_02_sp.png) no-repeat 100% 100%, -webkit-linear-gradient(top, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
		background: url(/assets/img/common/bg_main_detail_01_sp.png) no-repeat 0 -1px, url(/assets/img/common/bg_main_detail_02_sp.png) no-repeat 100% 100%, linear-gradient(to bottom, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
		background-size: 65px auto, 65px auto, auto;
	}

	.detail .bg-main.bottom-none,
    .bg-main.detail.bottom-none,
    .other .bg-main.bottom-none,
    .bg-main.other.bottom-none {
		background: url(/assets/img/common/bg_main_detail_01_sp.png) no-repeat 0 -1px, none, -webkit-linear-gradient(top, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
		background: url(/assets/img/common/bg_main_detail_01_sp.png) no-repeat 0 -1px, none, linear-gradient(to bottom, #fffff4 0%, rgba(255, 255, 244, 0) 25%, rgba(255, 255, 244, 0) 50%);
		background-size: 65px auto, 65px auto, auto;
	}
}

/*
---
name: title-page
category: module
memo: ベースはsearch（/event/）
---
```html
```
*/
.title-page {
	background: url(/assets/img/pages/event/bg_title_01.png) no-repeat 50% 100%;
	font-size: 4.2rem;
	letter-spacing: 0.1em;
	line-height: 1;
	padding: 0 0 37px;
	text-align: center;
}

.title-page .caption {
	background: url(/assets/img/pages/event/bg_caption_01.png) no-repeat 50% 0;
	display: block;
	font-size: 1.4rem;
	font-weight: bold;
	height: 14px;
	letter-spacing: 0.1em;
	line-height: 1;
	margin: 0 0 19px;
	padding: 0 0 0 4px;
	text-align: center;
}

.area .title-page {
	background-image: url(/assets/img/pages/event/bg_title_02.png);
}

.area .title-page .caption {
	background-image: url(/assets/img/pages/event/bg_caption_02.png);
}

.calendar .title-page {
	background-image: url(/assets/img/pages/event/bg_title_03.png);
}

.calendar .title-page .caption {
	background-image: url(/assets/img/pages/event/bg_caption_03.png);
}

@media only screen and (max-width: 767px) {
	.title-page {
		background: url(/assets/img/pages/event/bg_title_01_sp.png) no-repeat 50% 100%;
		background-size: 206.5px 10px;
		font-size: 2.1rem;
		padding: 0 0 20px;
	}

	.title-page .caption {
		background: url(/assets/img/pages/event/bg_caption_01_sp.png) no-repeat 50% calc(100% - 2px);
		background-size: 195px 19px;
		font-size: 1.2rem;
		height: auto;
		line-height: 1.33333;
		margin: 0 0 15px;
	}

	.area .title-page {
		background-image: url(/assets/img/pages/event/bg_title_02_sp.png);
		background-size: 156px 10px;
	}

	.area .title-page .caption {
		background-image: url(/assets/img/pages/event/bg_caption_02_sp.png);
		background-size: 165px 19px;
	}

	.calendar .title-page {
		background-image: url(/assets/img/pages/event/bg_title_03_sp.png);
	}

	.calendar .title-page .caption {
		background-image: url(/assets/img/pages/event/bg_caption_03_sp.png);
	}
}

/*
---
name: Button
category: module
---
```html
```
*/
.btn a,
.btn button {
	display: inline-block;
	letter-spacing: 0.1em;
	position: relative;
}

.btn a:before,
.btn button:before {
	content: ' ';
	display: block;
	position: absolute;
	top: 50%;
}

.btn button {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	border: 0;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	font-size: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
	-moz-appearance: none;
}

.btn button::-ms-clear {
	display: none;
}

.btn button::-ms-reveal {
	display: none;
}

.btn button::-ms-expand {
	display: none;
}

.btn.btn-text-center a,
.btn.btn-text-center button {
	padding-left: 10px !important;
	padding-right: 10px !important;
	text-align: center !important;
}

.btn.btn-text-center a:before,
.btn.btn-text-center button:before {
	display: inline-block !important;
	margin: 0 0.5em 0 0 !important;
	position: static !important;
	vertical-align: baseline;
}

.btn.btn-default a {
	background: #fff;
	border: 1px solid #ccc;
	color: #000f77;
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	line-height: 1.44444;
	padding: 6px 20px 6px 46px;
	text-align: left;
}

@media only screen and (max-width: 767px) {
	.btn.btn-default a {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.btn.btn-default a:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	background-size: 16px 12px;
	height: 12px;
	left: 28px;
	margin: -5px 0 0;
	width: 8px;
}

.content-sup .btn.btn-default a {
	padding: 9px 5px 8px 28px;
	width: 100%;
}

.content-sup .btn.btn-default a:before {
	left: 12px;
}

.btn.btn-default a .icon {
	background: url(/assets/img/common/icon_window_03.png) no-repeat 0 0;
	display: inline-block;
	height: 16px;
	margin: 0 0 0 10px;
	overflow: hidden;
	text-indent: 200%;
	vertical-align: middle;
	white-space: nowrap;
	width: 20px;
}

.btn.btn-default a:hover {
	color: #c00;
}

.btn.btn-default a:hover:before {
	background-position: -8px 0;
}

.btn.btn-default a:hover .icon {
	background-position: 100% 0;
}

.btn.btn-default.btn-large a {
	width: 380px;
}

.btn.btn-default.btn-middle a {
	width: 210px;
}

.btn.btn-default.btn-narrow a {
	padding: 3px 20px 3px 46px;
}

.btn.btn-default.btn-text-small a {
	font-size: 1.6rem;
	padding: 6px 20px 6px 46px;
}

.btn.btn-default.btn-inner a:before {
	-webkit-transform: rotateZ(90deg);
	transform: rotateZ(90deg);
}

.btn.btn-apply a {
	background: #000f77;
	border: 1px solid #000f77;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	height: 42px;
	line-height: 42px;
	padding: 0 0 0 46px;
	width: 260px;
}

.btn.btn-apply a:before {
	background: url(/assets/img/common/icon_chevron_white_01.png) no-repeat 0 0;
	background-size: 22px 17px;
	height: 17px;
	left: 23px;
	margin: -9px 0 0;
	width: 11px;
}

.btn.btn-apply a:link,
.btn.btn-apply a:visited {
	color: #fff;
}

.btn.btn-apply a:hover {
	background-color: #fff;
	border-color: #000f77;
	color: #000f77;
	text-decoration: none;
}

.btn.btn-apply a:hover:before {
	background-position: -11px 0;
}

.btn.btn-apply a .icon {
	display: inline-block;
	margin: 0 0 0 10px;
	vertical-align: middle;
}

.cont-search-side .btn.btn-search {
	border: 1px solid #ccc;
	border-top: none;
	padding: 20px 10px;
}

.btn.btn-search button {
	background: #000f77;
	border: 1px solid #ccc;
	color: #fff;
	font-size: 1.8rem;
	height: 40px;
	letter-spacing: normal;
	line-height: 40px;
	padding: 0 0 0 50px;
	text-align: left;
	text-decoration: underline;
	width: 160px;
}

.btn.btn-search button:before {
	background: url(/assets/img/common/icon_chevron_middle_white_01.png) no-repeat 0 0;
	background-size: 16px 12px;
	height: 12px;
	left: 34px;
	margin: -6px 0 0;
	width: 8px;
}

.btn.btn-search button:hover {
	background-color: #fff;
	border-color: #000f77;
	color: #000f77;
	text-decoration: none;
}

.btn.btn-search button:hover:before {
	background-position: -8px 0;
}

.cont-search-side .btn.btn-search button {
	margin: 0;
	padding: 0;
	text-align: center;
	width: 100%;
}

.cont-search-side .btn.btn-search button:before {
	display: inline-block;
	margin: 0 10px 0 0;
	position: static;
}

.btn.btn-search.btn-large button {
	width: 380px;
}

.btn.btn-toggle button {
	background: url(/assets/img/common/btn_toggle_01.png) no-repeat 0 0;
	background-size: 40px 20px;
	display: block;
	height: 20px;
	overflow: hidden;
	position: relative;
	text-indent: 200%;
	white-space: nowrap;
	width: 20px;
}

.btn.btn-toggle button img {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.btn.btn-toggle.is-close button,
.btn.btn-toggle.is-close span {
	background-position: 100% 0;
}

.btn.btn-toggle.is-close + .toggle-target {
	display: none;
}

.btn.btn-toggle span {
	background: url(/assets/img/common/btn_toggle_01.png) no-repeat 100% 0;
	background-size: 40px 20px;
	display: block;
	height: 20px;
	overflow: hidden;
	position: relative;
	text-indent: 200%;
	white-space: nowrap;
	width: 20px;
}

.btn.btn-toggle span img {
	pointer-events: none;
}

.is-active + .btn.btn-toggle.btn-toggle span {
	background-position: 0 0;
}

@media only screen and (max-width: 767px) {
	.btn a,
    .btn button,
    .btn span {
		display: block;
		letter-spacing: 0.1em;
		position: relative;
	}

	.btn a:before,
    .btn button:before,
    .btn span:before {
		content: ' ';
		display: block;
		position: absolute;
		top: 50%;
	}

	.btn.btn-default a {
		padding: 6px;
		text-align: center;
	}

	.btn.btn-default a:before {
		background: url(/assets/img/common/icon_chevron_middle_01_sp.png) no-repeat 0 0;
		background-size: 4px 6px;
		display: inline-block;
		height: 6px;
		margin: 0 8px 0 0;
		position: static;
		width: 4px;
	}

	.btn.btn-default a:hover {
		color: #000f77;
		text-decoration: underline;
	}

	.btn.btn-default a:hover:before {
		background-position: 0 0;
	}

	.content-sup .btn.btn-default a {
		padding: 9px 5px 8px 28px;
		width: 100%;
	}

	.content-sup .btn.btn-default a:before {
		left: 12px;
	}

	.btn.btn-default a .icon {
		background-image: url(/assets/img/common/icon_window_03_sp.png);
		background-size: 14px 11px;
		height: 11px;
		width: 14px;
	}

	.btn.btn-default.btn-large a,
    .btn.btn-default.btn-middle a {
		padding-bottom: 8px;
		padding-top: 9px;
		width: 100%;
	}

	.btn.btn-default.btn-narrow a {
		padding-bottom: 5px;
		padding-top: 5px;
	}

	.btn.btn-apply a {
		font-size: 1.4rem;
		font-weight: normal;
	}

	.btn.btn-apply a:before {
		background-image: url(/assets/img/common/icon_chevron_white_01_sp.png);
		background-size: 6px 8px;
		height: 8px;
		width: 6px;
	}

	.btn.btn-search button {
		font-size: 1.4rem;
		padding: 0;
		text-align: center;
		width: 100%;
	}

	.btn.btn-search button:before {
		display: inline-block;
		margin: 0 8px 0 0;
		position: static;
	}

	.btn.btn-search.btn-large button {
		padding-bottom: 8px;
		padding-top: 9px;
		width: 100%;
	}
}

/*
---
name: cont-box
category: module
---
```html
```
*/
.cont-box .cont-box-inner {
	margin: 0 auto;
	padding: 0 20px;
	width: 1100px;
}

.contents-inner-column .cont-box .cont-box-inner {
	width: 100%;
}

.cont-box .cont-box-inner.section-common-info {
	padding: 75px 20px 80px;
}

.article .cont-box .cont-box-inner.section-common-info {
	padding: 0 0 80px;
}

.cont-box .cont-box-inner.section-common-info .heading1 {
	font-size: 3.2rem;
	letter-spacing: 0.1em;
	line-height: 1.3125;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner.section-common-info .heading1 {
		font-size: 2.1rem;
		line-height: 1.33333;
	}
}

.cont-box .cont-box-inner.section-common-info .lead {
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	margin: 16px 0 0;
	text-align: center;
}

.cont-box .cont-box-inner.section-common-info .lead a {
	color: #000f77;
}

.cont-box .cont-box-inner.section-common-info .lead a:hover {
	color: #c00;
}

.cont-box .cont-box-inner.section-common-info .lead2 {
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	line-height: 1.44444;
	margin: 32px 0 0;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner.section-common-info .lead2 {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-box .cont-box-inner.section-common-info .lead3 {
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	line-height: 1.44444;
	margin: 27px 0 0;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner.section-common-info .lead3 {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-box .cont-box-inner.section-common-info .lead3 a {
	color: #000f77;
}

.cont-box .cont-box-inner.section-common-info .lead3 a:hover {
	color: #c00;
}

.cont-box .cont-box-inner.section-common-info .text1 {
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	line-height: 1.44444;
	margin: 14px 0 0;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner.section-common-info .text1 {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-box .cont-box-inner.section-common-info .text2 {
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	line-height: 1.44444;
	margin: 40px 0 0;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner.section-common-info .text2 {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-result + .cont-box .cont-box-inner.section-common-info {
	padding: 0 0 35px;
}

.contents-inner-column .cont-box .cont-box-inner.section-common-info {
	padding: 75px 0 95px;
}

.article .cont-box .cont-box-inner.section-common-info {
	padding: 0 0 95px;
}

.cont-box .cont-box-inner.section-common-info .list-text {
	font-size: 1.8rem;
	line-height: 1.77778;
	margin: 40px 0 0;
	text-align: center;
}

.cont-box .cont-box-inner.section-common-info .list-text li:before {
	content: '・';
}

.cont-search-value + .cont-box .cont-box-inner.section-common-info {
	padding: 0;
}

.cont-box:last-child .cont-box-inner.section-common-info {
	padding-bottom: 0;
}

@media only screen and (max-width: 767px) {
	.cont-box .cont-box-inner {
		width: auto;
	}

	.cont-box .cont-box-inner.section-common-info {
		padding: 40px 20px 65px;
	}

	.cont-box .cont-box-inner.section-common-info .lead {
		margin: 36px 0 0;
	}

	.cont-box .cont-box-inner.section-common-info .text2 {
		text-align: left;
	}

	.cont-box .cont-box-inner.section-common-info .list-text {
		font-size: 1.4rem;
		margin: 0;
		text-align: left;
	}
}

.cont-box2 {
	background: #fff;
	border: 1px solid #ccc;
	margin: 40px 0 0;
}

.cont-box2 header {
	background: #f2f2f2;
	border: 1px solid #fff;
	border-bottom: none;
	padding: 13px 26px;
}

.cont-box2 header .heading2 {
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	line-height: 1.33333;
	margin: 0;
}

@media only screen and (max-width: 767px) {
	.cont-box2 header .heading2 {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-box2 .cont-body {
	display: block;
	padding: 30px;
}

@media only screen and (max-width: 767px) {
	.cont-box2 header .heading2 {
		font-weight: bold;
		text-align: center;
	}

	.cont-box2 .cont-body {
		padding: 16px 5px;
	}
}

.cont-box-info {
	background: #f2f2f2;
	border: 1px solid #ccc;
	margin: 40px auto 0;
	padding: 20px 0;
	width: 1060px;
}

.cont-box-info.column-inner {
	width: auto;
}

@media only screen and (max-width: 767px) {
	.cont-box-info {
		margin: 38px 20px 0;
		padding: 15px 10px;
		width: auto;
	}

	.cont-box-info.column-inner {
		margin: 38px 0 0;
	}

	.cont-box-info.sp-outer-none {
		background: transparent;
		border: none;
		margin: 38px 0 0;
		padding: 0;
	}
}

.cont-box-info .list-link {
	letter-spacing: -0.4em;
	position: relative;
	text-align: center;
}

.cont-box-info .list-link > * {
	letter-spacing: normal;
}

.cont-box-info .list-link li {
	display: inline-block;
	margin: 0 40px;
}

.cont-box-info .list-link .btn.btn-default a {
	width: 300px;
}

@media only screen and (max-width: 767px) {
	.cont-box-info .list-link {
		letter-spacing: normal;
	}

	.cont-box-info .list-link li {
		display: block;
		margin: 15px 0 0;
	}

	.cont-box-info .list-link li:first-child {
		margin: 0;
	}

	.cont-box-info .list-link .btn.btn-default a {
		padding-bottom: 10px;
		padding-top: 9px;
		width: 100%;
	}
}

.cont-box-aside {
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	width: 1100px;
}

.cont-box-aside:before {
	background: url(/assets/img/pages/top/bg_about_01.png) no-repeat 0 0;
	bottom: 0;
	content: ' ';
	display: block;
	height: 143px;
	left: 50%;
	margin: 0 0 0 -490px;
	position: absolute;
	width: 979px;
	z-index: 1;
}

@media only screen and (max-width: 767px) {
	.cont-box-aside {
		-ms-flex-direction: column;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		flex-direction: column;
		width: auto;
	}

	.cont-box-aside:before {
		display: none;
	}
}

.aside-inner {
	border: 1px solid #ccc;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 40px auto 0;
	position: relative;
	vertical-align: top;
	width: 520px;
	z-index: 5;
}

@media only screen and (max-width: 767px) {
	.aside-inner {
		margin-left: 0;
		padding: 10px;
		position: relative;
		width: auto;
	}

	.aside-inner + .aside-inner {
		margin: 10px 0 0;
	}
}

.aside-left {
	background: #fffce5;
	border-right: 1px solid #ccc;
	-webkit-box-ordinal-group: 2;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	float: left;
	height: 178px;
	max-width: 178px;
	min-width: 178px;
	width: 178px;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-webkit-box-pack: center;
	-ms-flex-align: center;
	-ms-flex-order: 1;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-order: 1;
	order: 1;
}

@media only screen and (max-width: 767px) {
	.aside-left {
		background: transparent;
		border-right: none;
		display: block;
		height: 89px;
		left: 10px;
		max-width: 89px;
		min-width: 89px;
		position: absolute;
		top: 10px;
		width: 89px;
	}

	.aside-left figure {
		background: #fffce5;
		border: 1px solid #ccc;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		height: 100%;
		width: 100%;
		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-webkit-box-pack: center;
		-ms-flex-align: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
	}

	.aside-left img {
		height: auto;
		width: 42px;
	}
}

.aside-right {
	-webkit-box-ordinal-group: 3;
	padding: 20px;
	width: 340px;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

.aside-right .heading {
	font-size: 1.8rem;
}

.aside-right .text {
	font-size: 1.4rem;
	line-height: 1.57143;
	margin: 10px 0 0;
}

.aside-right .btn {
	margin: 16px 0 0;
}

.aside-right .btn a {
	display: block;
}

@media only screen and (max-width: 767px) {
	.aside-right {
		border-left: none;
		min-height: 130px;
		padding: 0 0 0 100px;
		position: relative;
		width: 100%;
	}

	.aside-right .heading {
		font-size: 1.4rem;
	}

	.aside-right .text {
		font-size: 1.2rem;
		line-height: 1.33333;
		padding-bottom: 38px;
	}

	.aside-right .btn {
		bottom: 0;
		left: 0;
		margin: 8px 0 0;
		padding: 0;
		position: absolute;
		width: 100%;
	}
}

/*
---
name: article-box
category: module
---
```html
```
*/
.article-box {
	background: #fff;
	border: 1px solid #ccc;
	margin: 40px 0 0;
}

.article-box header {
	background: #f2f2f2;
	border: 1px solid #fff;
	border-bottom: none;
	padding: 13px 26px;
}

.article-box header .heading-article span {
	display: block;
}

.article-box header .heading-article .name {
	font-size: 2.4rem;
	letter-spacing: 0.04em;
	line-height: 1.33333;
	margin: 5px 0 0;
}

@media only screen and (max-width: 767px) {
	.article-box header .heading-article .name {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.article-box header .heading-article .title {
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	line-height: 1.71429;
	margin: 5px 0 0;
}

@media only screen and (max-width: 767px) {
	.article-box header .heading-article .title {
		font-size: 1.2rem;
		line-height: 1.33333;
	}
}

.article-box .article-close-info {
	margin: 20px 0 0;
	padding: 0 30px;
}

.article-box .article-close-info p {
	border: 2px solid #c00;
	color: #c00;
	font-size: 14px;
	font-weight: bold;
	padding: 6px 0;
	text-align: center;
}

.article-box .article-body {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 30px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.article-box .article-left {
	max-width: 230px;
	min-width: 230px;
	width: 230px;
}

.article-box .list-category-small {
	letter-spacing: -0.4em;
	margin: -20px 0 0 0;
}

.article-box .list-category-small > * {
	letter-spacing: normal;
}

.article-box .list-category-small li {
	display: inline-block;
	margin: 20px 0 0 40px;
	vertical-align: top;
	width: 80px;
}

.article-box .list-category-small li:nth-child(2n+1) {
	margin-left: 0;
}

.article-box .list-category-small p {
	font-size: 1.4rem;
	margin: 10px -10px 0;
	text-align: center;
}

.article-box .content-sup {
	margin: 0;
	padding: 0 30px 0 0;
}

.article-box .content-sup li {
	margin: 40px 0 0;
}

.article-box .article-right {
	padding: 0 0 15px 30px;
	position: relative;
	width: calc(100% - 230px);
}

.article-box .article-right:before {
	border-left: 1px dotted #ccc;
	content: ' ';
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 1px;
}

.article-box .article-right figure {
	margin: 40px 0 0;
}

.article-box .article-right figure:first-child {
	margin: 0;
}

.article-box .article-right figure img {
	max-width: 100%;
}

.article-box .article-right dl {
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	line-height: 1.71429;
}

@media only screen and (max-width: 767px) {
	.article-box .article-right dl {
		font-size: 1.2rem;
		line-height: 1.33333;
	}
}

.article-box .article-right dl:first-child dt:first-child {
	margin: 0;
}

.article-box .article-right dt {
	margin: 14px 0 0;
}

.article-box .article-right dd {
	margin: 4px 0 0;
}

.article-box .btn {
	margin: 40px 0 0;
}

@media only screen and (max-width: 767px) {
	.article-box {
		margin: 20px 0 0;
	}

	.heading1 + .article-box {
		margin: 40px 0 0;
	}

	.article-box header {
		padding: 8px 10px 12px;
	}

	.article-box header .heading-article {
		font-size: 1.4rem;
		font-weight: bold;
	}

	.article-box header .heading-article:first-child {
		margin: 0;
	}

	.article-box header .heading-article .title {
		margin: 10px 0 0;
	}

	.article-box .article-close-info {
		margin: 10px 0 0;
		padding: 0 10px;
	}

	.article-box .article-close-info p {
		font-size: 12px;
	}

	.article-box .article-body {
		-ms-flex-direction: column;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		flex-direction: column;
		padding: 10px;
	}

	.article .article-box .article-body {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-direction: column;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		flex-direction: column;
	}

	.article-box .article-left {
		max-width: none;
		min-width: 0;
		padding: 0 0 20px;
		width: auto;
	}

	.article .article-box .article-left {
		border-top: 1px dotted #ccc;
		-webkit-box-ordinal-group: 3;
		margin: 20px 0 0;
		padding: 20px 0 0;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
	}

	.article-box .list-category-small {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		margin: 0;
		width: 100%;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}

	.article-box .list-category-small li {
		margin: 0;
		width: 23.65385%;
	}

	.article-box .list-category-small li img {
		height: auto;
		width: 100%;
	}

	.isAndroidBrowser .article-box .list-category-small {
		display: inline-block;
		letter-spacing: -0.4em;
		margin-left: -6px;
		text-align: center;
		width: 258px;
	}

	.isAndroidBrowser .article-box .list-category-small > * {
		letter-spacing: normal;
	}

	.isAndroidBrowser .article-box .list-category-small li {
		display: inline-block;
		margin-left: 6px;
		width: 60px;
	}

	.article-box .list-category-small p {
		font-size: 1.2rem;
		margin: 5px 0 0;
	}

	.article-box .article-right {
		border-top: 1px dotted #ccc;
		padding: 0;
		width: auto;
	}

	.article-box .article-right:before {
		display: none;
	}

	.article .article-box .article-right {
		border-top: 0;
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
	}

	.article .article-box .article-right > *:first-child {
		margin: 0;
	}

	.article-box .article-right figure {
		margin: 20px 0 0;
	}

	.article-box .article-right figure:first-child {
		margin: 20px 0 0;
	}

	.article-box .article-right dl:first-child dt:first-child {
		margin: 20px 0 0;
	}

	.article-box .article-right dt,
    .article-box .article-right dt:first-child {
		margin: 15px 0 0;
	}

	.article-box .article-right dd {
		line-height: 1.64286;
		margin: 4px 0 0;
	}

	.article-box .btn {
		margin: 20px 0 0;
	}

	.article-box .content-sup {
		margin: 0;
		padding: 0;
	}

	.article-box .content-sup li {
		font-size: 1.4rem;
		margin: 15px 0 0;
	}
}

.article-result {
	border: 1px solid #ccc;
	margin: 40px 0 0;
	padding: 40px;
}

.article-result p {
	font-size: 1.4rem;
	line-height: 1.57143;
	margin: 36px 0 0;
}

.article-result figure {
	margin: 40px 0 0;
	text-align: center;
	width: 100%;
}

.article-result figure img {
	max-width: 100%;
	width: auto;
}

.article-result > *:first-child {
	margin-top: 0;
}

@media only screen and (max-width: 767px) {
	.article-result {
		margin: 20px 0 0;
		padding: 10px;
	}

	.article-result p {
		margin: 12px 0 0;
	}

	.article-result figure {
		margin: 20px 0 0;
	}
}

/*
---
name: form
category: module
---
```html
```
*/
.form-item {
	position: relative;
}

.cont-search-side .form-item {
	padding: 0;
}

.form-item label {
	cursor: pointer;
	font-size: 1.8rem;
	letter-spacing: -0.025em;
	vertical-align: bottom;
}

.cont-search-side .form-item label {
	display: block;
	font-size: 1.4rem;
	padding: 15px 20px 18px;
}

.form-item input[type='checkbox'] {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	border: 0;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	font-size: inherit;
	height: 8px;
	left: 5px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 7px;
	vertical-align: middle;
	width: 8px;
	z-index: -1;
	-moz-appearance: none;
}

.form-item input[type='checkbox']::-ms-clear {
	display: none;
}

.form-item input[type='checkbox']::-ms-reveal {
	display: none;
}

.form-item input[type='checkbox']::-ms-expand {
	display: none;
}

.cont-search-side .form-item input[type='checkbox'] {
	left: 0;
	top: 6px;
}

.form-item input[type='checkbox'] + label span {
	background: #fff;
	border: 1px solid #000f77;
	display: inline-block;
	height: 20px;
	margin: 0 8px 0 0;
	position: relative;
	vertical-align: middle;
	width: 20px;
}

.cont-search-side .form-item input[type='checkbox'] + label span {
	height: 12px;
	width: 12px;
}

.form-item input[type='checkbox'] + label span:before {
	background: url(/assets/img/common/icon_check_01.png) no-repeat 0 0;
	content: ' ';
	display: block;
	height: 13px;
	position: absolute;
	right: -1px;
	top: 1px;
	visibility: hidden;
	width: 17px;
}

.cont-search-side .form-item input[type='checkbox'] + label span:before {
	background: url(/assets/img/common/icon_check_02.png) no-repeat 0 0;
	background-size: 11px 10px;
	height: 10px;
	right: -2px;
	top: -1px;
	width: 11px;
}

.form-item input[type='checkbox']:checked + label span:before {
	visibility: visible;
}

.form-item input[type='checkbox']:focus + label span {
	outline: 1px dashed #333;
}

@media only screen and (max-width: 767px) {
	.form-item label {
		font-size: 1.2rem;
	}

	.cont-search-side .form-item label {
		font-size: 1.4rem;
		padding: 0 0 0 25px;
		position: relative;
	}

	.form-item input[type='checkbox'] + label span {
		height: 15px;
		margin: 0 7px 0 0;
		width: 15px;
	}

	.cont-search-side .form-item input[type='checkbox'] + label span {
		display: block;
		height: 10px;
		left: 10px;
		margin: -5px 0 0;
		position: absolute;
		top: 50%;
		width: 10px;
	}

	.form-item input[type='checkbox']:checked + label span:before {
		right: -3px;
		top: -1px;
		visibility: visible;
	}
}

/*
---
name: nav-global
category: module
---
```html
```
*/
.nav-global-inner {
	letter-spacing: -0.4em;
	position: relative;
	text-align: center;
}

.nav-global-inner > * {
	letter-spacing: normal;
}

.nav-global-inner > li {
	display: inline-block;
	margin: 0 38px;
	position: relative;
	vertical-align: top;
}

.nav-global-inner > li > a {
	display: block;
	font-size: 1.6rem;
	font-weight: bold;
	padding: 18px 0 22px;
}

.nav-global-inner > li > a:link,
.nav-global-inner > li > a:visited {
	color: #333;
}

.nav-global-inner > li > a:hover {
	color: #c00;
	text-decoration: none;
}

.nav-global-inner > li:hover {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.nav-global-inner > li.current > a {
	color: #c00;
}

.nav-child {
	background: #fff;
	border: 1px solid #ccc;
	opacity: 0;
	padding: 0 20px;
	position: absolute;
	top: 30px;
	visibility: hidden;
	white-space: nowrap;
	width: auto;
	z-index: 10;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.nav-child:before {
	background: url(/assets/img/common/icon_balloon_up_01.png) no-repeat 0 0;
	content: ' ';
	display: block;
	height: 8px;
	left: 25%;
	position: absolute;
	top: -8px;
	width: 16px;
}

.nav-global-inner > li.is-hover .nav-child {
	opacity: 1;
	top: 59px;
	visibility: visible;
}

.nav-child ul {
	text-align: left;
}

.nav-child li {
	border-top: 1px dotted #ccc;
	padding: 10px 0;
}

.nav-child li:first-child {
	border-top: none;
}

.nav-child li a {
	color: #000f77;
	display: block;
	font-size: 1.4rem;
	padding: 0 0 0 16px;
	position: relative;
	text-decoration: underline;
}

.nav-child li a:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	background-size: 16px 12px;
	content: ' ';
	display: block;
	height: 12px;
	left: 0;
	margin: -6px 0 0;
	position: absolute;
	top: 50%;
	width: 8px;
}

.nav-child li a:hover {
	color: #c00;
	text-decoration: none;
}

.nav-child li a:hover:before {
	background-position: -8px 0;
}

.nav-child li a:focus:before {
	outline: none;
}

/*
---
name: nav-breadcrumb
category: module
---
```html
```
*/
.nav-breadcrumb {
	margin: 8px auto 11px;
	max-width: 1100px;
	padding: 0 20px;
}

.nav-breadcrumb a {
	font-size: 1.4rem;
}

.nav-breadcrumb ol {
	letter-spacing: -0.4em;
}

.nav-breadcrumb ol > * {
	letter-spacing: normal;
}

.nav-breadcrumb ol li {
	display: inline-block;
	font-size: 1.4rem;
}

.nav-breadcrumb ol li:after {
	content: '>';
	display: inline-block;
	margin: 0 0.25em;
}

.nav-breadcrumb ol li:last-child:after {
	display: none;
}

@media only screen and (max-width: 767px) {
	.nav-breadcrumb {
		height: 0;
		margin: 0;
		overflow: hidden;
		padding: 0;
	}
}

/*
---
name: nav-category
category: module
---
```html
```
*/
.category .nav-category {
	border-bottom: 7px solid #ffafac;
}

.area .nav-category {
	border-bottom: 7px solid #b2eacc;
}

.calendar .nav-category {
	border-bottom: 7px solid #a4dff7;
}

.list-nav-category {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 40px auto 0;
	padding: 0 20px;
	width: 1100px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.list-nav-category li {
	display: block;
	height: 90px;
	width: 340px;
}

.list-nav-category a {
	border: 1px solid #ccc;
	display: block;
	font-size: 2.4rem;
	font-weight: normal;
	height: 80px;
	letter-spacing: 0.1em;
	line-height: 1;
	padding: 30px 20px 0 70px;
	position: relative;
}

.list-nav-category a em {
	font-weight: normal;
}

.list-nav-category a:before {
	background: url(/assets/img/common/icon_chevron_large_00.png) no-repeat -14px 0;
	background-size: 42px 20px;
	content: ' ';
	display: block;
	height: 20px;
	left: 32px;
	margin: -9px 0 0;
	position: absolute;
	top: 50%;
	width: 14px;
}

.list-nav-category a:hover:before {
	background-position: -28px 0;
}

.list-nav-category .current a {
	border: none;
	height: 100%;
	padding: 35px 20px 0 70px;
}

.list-nav-category .current a:before {
	background: url(/assets/img/common/icon_chevron_large_00.png) no-repeat 0 0;
	background-size: 42px 20px;
}

.list-nav-category .current a:hover:before {
	background-position: -28px 0;
}

.category .list-nav-category .current a {
	background: #ffafac;
}

.area .list-nav-category .current a {
	background: #b2eacc;
}

.calendar .list-nav-category .current a {
	background: #a4dff7;
}

@media only screen and (max-width: 767px) {
	.list-nav-category {
		display: table;
		margin: 10px 0 0;
		padding: 0;
		table-layout: fixed;
		width: 100%;
	}

	.list-nav-category li {
		border-left: 10px solid #fff;
		display: table-cell;
		height: 85px;
		vertical-align: middle;
		width: 33%;
	}

	.list-nav-category li:first-child {
		border-left: none;
	}

	.list-nav-category a {
		color: #000f77;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		font-size: 1.2rem;
		height: 74px;
		letter-spacing: normal;
		line-height: 1.33333;
		padding: 0;
		text-align: center;
		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-webkit-box-pack: center;
		-ms-flex-align: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
	}

	.list-nav-category a:before {
		display: none;
	}

	.list-nav-category .current a {
		padding: 0;
	}
}

/*
---
name: pager
category: module
---
```html
```
*/
.pager {
	margin: 35px 0 0;
	text-align: center;
}

.list-pager {
	letter-spacing: -0.4em;
}

.list-pager > * {
	letter-spacing: normal;
}

.list-pager li {
	display: inline-block;
	margin: 0 3px;
	vertical-align: middle;
}

.list-pager a,
.list-pager li > span {
	display: block;
	font-size: 1.8rem;
	height: 22px;
	width: 24px;
}

.list-pager a {
	color: #000f77;
}

.list-pager a:hover {
	color: #c00;
}

.list-pager a.prev,
.list-pager a.next {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	background-size: 16px 12px;
	height: 12px;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 8px;
}

.list-pager a.prev img,
.list-pager a.next img {
	display: block;
	height: 12px;
	width: 8px;
}

.list-pager a.prev:hover,
.list-pager a.next:hover {
	background-position: -8px 0;
}

.list-pager a.prev {
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

/* -----------------------------------------------------
 * cont-search
 * -------------------------------------------------- */
.cont-search-header {
	padding: 46px 0 0;
	position: relative;
}

.page-top .cont-search-header {
	padding: 82px 0 0;
}

.cont-search-header .pic {
	left: 50%;
	margin: 0 0 0 369px;
	position: absolute;
	top: 29px;
}

.area .cont-search-header .pic {
	margin: 0 0 0 308;
	top: 72px;
}

.calendar .cont-search-header .pic {
	margin: 0 0 0 305px;
	top: 50px;
}

@media only screen and (max-width: 767px) {
	.cont-search-header {
		padding: 38px 0 0;
	}

	.page-top .cont-search-header {
		padding: 38px 0 0;
	}

	.cont-search-header .pic {
		margin: 0 0 0 113px;
	}

	.cont-search-header .pic img {
		height: 86px;
		width: 36px;
	}

	.area .cont-search-header .pic {
		margin: 0 0 0 78px;
		top: 46px;
	}

	.area .cont-search-header .pic img {
		height: auto;
		width: 79px;
	}

	.calendar .cont-search-header .pic {
		display: none;
		margin: 0 0 0 91px;
		top: 69px;
	}

	.calendar .cont-search-header .pic img {
		height: auto;
		width: 92px;
	}
}

#refine-event {
	letter-spacing: -0.4em;
	margin: 39px auto 0;
	padding: 0 20px;
	text-align: center;
	width: 1100px;
}

#refine-event > * {
	letter-spacing: normal;
}

#refine-event .form-item {
	display: inline-block;
	margin: 0 10px;
}

@media only screen and (max-width: 767px) {
	#refine-event {
		margin: 7px auto 0;
		text-align: center;
		width: 100%;
	}

	#refine-event fieldset {
		display: inline-block;
		text-align: left;
	}

	#refine-event .form-item {
		margin: 10px 10px 0;
	}
}

.cont-search-body {
	margin: 0 auto;
	padding: 0 0 75px;
	width: 1100px;
}

.area .cont-search-body {
	padding: 0 20px 80px;
}

.cont-search-body .cont-box-info {
	border-bottom: none;
	border-left: none;
	border-right: none;
	margin: 40px -19px 0;
	width: auto;
}

.cont-search-body .btn-search {
	vertical-align: baseline;
}

@media only screen and (max-width: 767px) {
	.cont-search-body {
		padding: 0 20px 20px;
		width: auto;
	}

	.page-event-top.area .cont-search-body {
		margin-top: 32px;
	}

	.cont-search-body .cont-box-info {
		margin: 40px -9px 0;
	}

	.cont-search-body .btn-search button {
		line-height: 1;
	}
}

.cont-search-body-inner {
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 75%, white 85%, white 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 75%, white 85%, white 100%);
	border: 1px solid #cecece;
	margin: 40px 0 0;
	padding: 40px 19px 0;
}

@media only screen and (max-width: 767px) {
	.cont-search-body-inner {
		margin: 20px 0 0;
		padding: 20px 9px 0;
	}
}

.section-search {
	margin: 40px 0 0;
}

.cont-search-body-inner .section-search:first-child {
	margin: 0;
}

.page-event-top.area .section-search {
	margin-top: 50px;
}

.page-event-top.calendar .section-search {
	margin-top: 80px;
}

.section-search .heading {
	background: #fff5ea;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	padding: 12px 0 10px;
	text-align: center;
}

.section-search#refine-aim .heading {
	background: #fff3f3;
}

.section-search .section-inner.col-3 {
	margin: 0 auto;
	width: 790px;
}

@media only screen and (max-width: 767px) {
	.section-search.margin-narrow {
		margin: 20px 0 0;
	}

	.page-event-top.area .section-search {
		margin-top: 32px;
	}

	.cont-search-side .section-search#refine-theme {
		border-top: 1px solid #ccc;
	}

	.section-search .heading {
		font-size: 1.4rem;
		font-weight: normal;
		padding: 15px 0 13px;
	}

	.section-search .section-inner.col-3 {
		width: auto;
	}
}

/* list-refine-category */
.list-refine-category {
	letter-spacing: -0.4em;
	margin: 0 0 0 -20px;
}

.list-refine-category > * {
	letter-spacing: normal;
}

.list-refine-category li {
	display: inline-block;
	height: 250px;
	margin: 20px 0 0 20px;
	position: relative;
	vertical-align: top;
	width: 250px;
}

.list-refine-category a {
	background-position: 0 0;
	background-repeat: no-repeat;
	display: block;
	height: 100%;
	overflow: hidden;
	text-indent: 200%;
	white-space: nowrap;
	width: 100%;
}

.list-refine-category a img {
	height: 250px;
	width: 250px;
	pointer-events: none;
}

.list-refine-category a.refine-11 {
	background-image: url(/assets/img/common/pic_category_large_top_01.jpg);
}

.list-refine-category a.refine-12 {
	background-image: url(/assets/img/common/pic_category_large_top_02.jpg);
}

.list-refine-category a.refine-13 {
	background-image: url(/assets/img/common/pic_category_large_top_03.jpg);
}

.list-refine-category a.refine-14 {
	background-image: url(/assets/img/common/pic_category_large_top_04.jpg);
}

.list-refine-category a.refine-15 {
	background-image: url(/assets/img/common/pic_category_large_top_05.jpg);
}

.list-refine-category a.refine-16 {
	background-image: url(/assets/img/common/pic_category_large_top_06.jpg);
}

.list-refine-category a.refine-17 {
	background-image: url(/assets/img/common/pic_category_large_top_07.jpg);
}

.list-refine-category a.refine-18 {
	background-image: url(/assets/img/common/pic_category_large_top_08.jpg);
}

.list-refine-category a.refine-21 {
	background-image: url(/assets/img/common/pic_category_large_top_09.jpg);
}

.list-refine-category a.refine-22 {
	background-image: url(/assets/img/common/pic_category_large_top_10.jpg);
}

.list-refine-category a.refine-23 {
	background-image: url(/assets/img/common/pic_category_large_top_11.jpg);
}

.list-refine-category a.refine-24 {
	background-image: url(/assets/img/common/pic_category_large_top_12.jpg);
}

.list-refine-category a.refine-25 {
	background-image: url(/assets/img/common/pic_category_large_top_13.jpg);
}

.list-refine-category a.refine-26 {
	background-image: url(/assets/img/common/pic_category_large_top_14.jpg);
}

.list-refine-category a:hover {
	background-position: 100% 0;
}

.list-refine-category input {
	left: 5px;
	position: absolute;
	top: 5px;
	z-index: -1;
}

.list-refine-category input + label {
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 750px 250px;
	cursor: pointer;
	display: block;
	height: 100%;
	overflow: hidden;
	position: relative;
	text-indent: 200%;
	white-space: nowrap;
	width: 100%;
	z-index: 1;
}

.list-refine-category input + label img {
	display: block;
	height: auto;
	width: 100%;
}

.list-refine-category input + label span {
	display: block;
	height: 0;
	overflow: hidden;
}

.list-refine-category input + label.refine-11 {
	background-image: url(/assets/img/common/pic_category_large_01.jpg);
}

.list-refine-category input + label.refine-12 {
	background-image: url(/assets/img/common/pic_category_large_02.jpg);
}

.list-refine-category input + label.refine-13 {
	background-image: url(/assets/img/common/pic_category_large_03.jpg);
}

.list-refine-category input + label.refine-14 {
	background-image: url(/assets/img/common/pic_category_large_04.jpg);
}

.list-refine-category input + label.refine-15 {
	background-image: url(/assets/img/common/pic_category_large_05.jpg);
}

.list-refine-category input + label.refine-16 {
	background-image: url(/assets/img/common/pic_category_large_06.jpg);
}

.list-refine-category input + label.refine-17 {
	background-image: url(/assets/img/common/pic_category_large_07.jpg);
}

.list-refine-category input + label.refine-18 {
	background-image: url(/assets/img/common/pic_category_large_08.jpg);
}

.list-refine-category input + label.refine-21 {
	background-image: url(/assets/img/common/pic_category_large_09.jpg);
}

.list-refine-category input + label.refine-22 {
	background-image: url(/assets/img/common/pic_category_large_10.jpg);
}

.list-refine-category input + label.refine-23 {
	background-image: url(/assets/img/common/pic_category_large_11.jpg);
}

.list-refine-category input + label.refine-24 {
	background-image: url(/assets/img/common/pic_category_large_12.jpg);
}

.list-refine-category input + label.refine-25 {
	background-image: url(/assets/img/common/pic_category_large_13.jpg);
}

.list-refine-category input + label.refine-26 {
	background-image: url(/assets/img/common/pic_category_large_14.jpg);
}

.list-refine-category input + label:hover {
	background-position: -250px 0;
}

.list-refine-category input:focus + label:after {
	border: 4px solid #ffaeaa;
	content: ' ';
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
}

.list-refine-category input:checked + label {
	background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
	.list-refine-category {
		margin: 0;
	}

	.list-refine-category li {
		height: auto;
		margin: 10px 0 0 3.57143%;
		position: relative;
		width: 48.21429%;
	}

	.list-refine-category li:nth-child(2n+1) {
		margin-left: 0;
	}

	.list-refine-category li:before {
		content: ' ';
		display: block;
		padding-top: 100%;
	}

	.list-refine-category a {
		background-size: cover;
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
	}

	.list-refine-category a img {
		height: 100%;
		width: 100%;
	}

	.list-refine-category a.refine-11 {
		background-image: url(/assets/img/common/pic_category_large_top_01_sp.jpg);
	}

	.list-refine-category a.refine-12 {
		background-image: url(/assets/img/common/pic_category_large_top_02_sp.jpg);
	}

	.list-refine-category a.refine-13 {
		background-image: url(/assets/img/common/pic_category_large_top_03_sp.jpg);
	}

	.list-refine-category a.refine-14 {
		background-image: url(/assets/img/common/pic_category_large_top_04_sp.jpg);
	}

	.list-refine-category a.refine-15 {
		background-image: url(/assets/img/common/pic_category_large_top_05_sp.jpg);
	}

	.list-refine-category a.refine-16 {
		background-image: url(/assets/img/common/pic_category_large_top_06_sp.jpg);
	}

	.list-refine-category a.refine-17 {
		background-image: url(/assets/img/common/pic_category_large_top_07_sp.jpg);
	}

	.list-refine-category a.refine-18 {
		background-image: url(/assets/img/common/pic_category_large_top_08_sp.jpg);
	}

	.list-refine-category a.refine-21 {
		background-image: url(/assets/img/common/pic_category_large_top_09_sp.jpg);
	}

	.list-refine-category a.refine-22 {
		background-image: url(/assets/img/common/pic_category_large_top_10_sp.jpg);
	}

	.list-refine-category a.refine-23 {
		background-image: url(/assets/img/common/pic_category_large_top_11_sp.jpg);
	}

	.list-refine-category a.refine-24 {
		background-image: url(/assets/img/common/pic_category_large_top_12_sp.jpg);
	}

	.list-refine-category a.refine-25 {
		background-image: url(/assets/img/common/pic_category_large_top_13_sp.jpg);
	}

	.list-refine-category a.refine-26 {
		background-image: url(/assets/img/common/pic_category_large_top_14_sp.jpg);
	}

	.list-refine-category a:hover {
		background-position: 0 0;
	}

	.list-refine-category a:hover img {
		visibility: visible;
	}

	.list-refine-category input {
		left: auto;
		right: 9px;
		top: 9px;
	}

	.list-refine-category input + label {
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: cover;
		cursor: pointer;
		left: 0;
		position: absolute;
		top: 0;
	}

	.list-refine-category input + label.refine-11 {
		background-image: url(/assets/img/common/pic_category_large_01_sp.jpg);
	}

	.list-refine-category input + label.refine-12 {
		background-image: url(/assets/img/common/pic_category_large_02_sp.jpg);
	}

	.list-refine-category input + label.refine-13 {
		background-image: url(/assets/img/common/pic_category_large_03_sp.jpg);
	}

	.list-refine-category input + label.refine-14 {
		background-image: url(/assets/img/common/pic_category_large_04_sp.jpg);
	}

	.list-refine-category input + label.refine-15 {
		background-image: url(/assets/img/common/pic_category_large_05_sp.jpg);
	}

	.list-refine-category input + label.refine-16 {
		background-image: url(/assets/img/common/pic_category_large_06_sp.jpg);
	}

	.list-refine-category input + label.refine-17 {
		background-image: url(/assets/img/common/pic_category_large_07_sp.jpg);
	}

	.list-refine-category input + label.refine-18 {
		background-image: url(/assets/img/common/pic_category_large_08_sp.jpg);
	}

	.list-refine-category input + label.refine-21 {
		background-image: url(/assets/img/common/pic_category_large_09_sp.jpg);
	}

	.list-refine-category input + label.refine-22 {
		background-image: url(/assets/img/common/pic_category_large_10_sp.jpg);
	}

	.list-refine-category input + label.refine-23 {
		background-image: url(/assets/img/common/pic_category_large_11_sp.jpg);
	}

	.list-refine-category input + label.refine-24 {
		background-image: url(/assets/img/common/pic_category_large_12_sp.jpg);
	}

	.list-refine-category input + label.refine-25 {
		background-image: url(/assets/img/common/pic_category_large_13_sp.jpg);
	}

	.list-refine-category input + label.refine-26 {
		background-image: url(/assets/img/common/pic_category_large_14_sp.jpg);
	}

	.list-refine-category input + label:hover {
		background-position: 0 0;
	}

	.list-refine-category input:checked + label {
		background-position: 100% 0;
	}
}

/* list-refine-area */
.list-refine-area {
	letter-spacing: -0.4em;
	margin: -20px 0 0 -20px;
}

.list-refine-area > * {
	letter-spacing: normal;
}

.list-refine-area > li {
	background: #fff;
	border: 1px solid #ccc;
	display: inline-block;
	margin: 20px 0 0 20px;
	vertical-align: top;
	width: 340px;
}

.page-event-top .list-refine-area > li {
	position: relative;
}

.list-refine-area > li:before {
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 340px 90px;
	border-bottom: 1px solid #ccc;
	content: ' ';
	display: block;
	height: 90px;
	width: 100%;
}

.page-event-top .list-refine-area > li:before {
	left: 0;
	position: absolute;
	top: 0;
}

.list-refine-area > li.refine-area-01:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_01.jpg);
}

.page-event-top .list-refine-area > li.refine-area-01:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_01.jpg);
}

.list-refine-area > li.refine-area-02:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_02.jpg);
}

.page-event-top .list-refine-area > li.refine-area-02:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_02.jpg);
}

.list-refine-area > li.refine-area-03:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_03.jpg);
}

.page-event-top .list-refine-area > li.refine-area-03:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_03.jpg);
}

.list-refine-area > li.refine-area-04:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_04.jpg);
}

.page-event-top .list-refine-area > li.refine-area-04:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_04.jpg);
}

.list-refine-area > li.refine-area-05:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_05.jpg);
}

.page-event-top .list-refine-area > li.refine-area-05:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_05.jpg);
}

.list-refine-area > li.refine-area-06:before {
	background-image: url(/assets/img/pages/top/bg_refine_area_06.jpg);
}

.page-event-top .list-refine-area > li.refine-area-06:before {
	background-image: url(/assets/img/pages/event/bg_refine_area_06.jpg);
}

.list-refine-area > li > a {
	display: inline-block;
	font-size: 1.8rem;
	margin: 30px 45px 30px 30px;
	padding: 0 0 0 16px;
	position: relative;
}

.list-refine-area > li > a:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	content: ' ';
	display: block;
	height: 12px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 8px;
}

.list-refine-area > li > a:hover:before {
	background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
	.list-refine-area {
		letter-spacing: normal;
		margin: 0;
	}

	.list-refine-area > li {
		display: block;
		margin: 10px auto 0;
		width: 280px;
	}

	.list-refine-area > li:before {
		background-position: 100% 100%;
		background-size: auto 53px;
		height: 53px;
	}

	.page-event-top .list-refine-area > li:before {
		position: static;
	}

	.list-refine-area > li.refine-area-01:before,
    .page-event-top .list-refine-area > li.refine-area-01:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_01_sp.jpg);
	}

	.list-refine-area > li.refine-area-02:before,
    .page-event-top .list-refine-area > li.refine-area-02:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_02_sp.jpg);
	}

	.list-refine-area > li.refine-area-03:before,
    .page-event-top .list-refine-area > li.refine-area-03:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_03_sp.jpg);
	}

	.list-refine-area > li.refine-area-04:before,
    .page-event-top .list-refine-area > li.refine-area-04:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_04_sp.jpg);
	}

	.list-refine-area > li.refine-area-05:before,
    .page-event-top .list-refine-area > li.refine-area-05:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_05_sp.jpg);
	}

	.list-refine-area > li.refine-area-06:before,
    .page-event-top .list-refine-area > li.refine-area-06:before {
		background-image: url(/assets/img/pages/top/bg_refine_area_06_sp.jpg);
	}

	.list-refine-area > li > a {
		font-size: 1.4rem;
		margin: 12px 18px 14px 18px;
		padding: 0 0 0 15px;
	}

	.list-refine-area > li > a:before {
		background: url(/assets/img/common/icon_chevron_middle_01_sp.png) no-repeat 0 0;
		background-size: 6px 9px;
		height: 9px;
		top: 3px;
		width: 6px;
	}
}

.list-refine-area-inner {
	background: #fff url(/assets/img/pages/event/bg_list_area_01.png) no-repeat 100% 0;
	background-size: contain;
	border-top: 1px solid #ccc;
	height: 170px;
	letter-spacing: -0.4em;
	margin: 0;
	padding: 4px 30px 17px 14px;
}

.list-refine-area-inner > * {
	letter-spacing: normal;
}

.page-event-top .list-refine-area-inner {
	height: 250px;
}

.list-refine-area-inner > li {
	display: inline-block;
	margin: 16px 0 0 16px;
}

.list-refine-area-inner > li > a {
	display: inline-block;
	font-size: 1.8rem;
	padding: 0 0 0 22px;
	position: relative;
}

.list-refine-area-inner > li > a:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	content: ' ';
	display: block;
	height: 12px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 8px;
}

.list-refine-area-inner > li > a:hover:before {
	background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
	.list-refine-area-inner {
		height: auto;
		letter-spacing: normal;
		padding: 4px 10px 12px 18px;
	}

	.page-event-top .list-refine-area-inner {
		height: auto;
	}

	.list-refine-area-inner > li {
		margin: 8px 0 0 28px;
	}

	.list-refine-area-inner > li:nth-child(3n+1) {
		margin: 8px 0 0;
	}

	.list-refine-area-inner > li > a {
		font-size: 1.4rem;
		padding: 0 0 0 15px;
	}

	.list-refine-area-inner > li > a:before {
		background: url(/assets/img/common/icon_chevron_middle_01_sp.png) no-repeat 0 0;
		background-size: 6px 9px;
		height: 9px;
		top: 3px;
		width: 6px;
	}
}

.section-search-word {
	margin: 80px 0 0;
	text-align: center;
}

.section-search-word label {
	color: #666;
	display: block;
	font-size: 1.8rem;
}

.cont-search-side .section-search-word .section-inner {
	background: #fff;
	border: 1px solid #ccc;
	border-top: none;
	padding: 20px;
}

.cont-search-side .section-search-word .section-inner .search-box {
	box-sizing: border-box;
	display: block;
	margin: 0;
	width: 100%;
}

.section-search-word .search-box {
	background: #fff;
	border: 1px solid #000f77;
	display: inline-block;
	height: 50px;
	margin: 22px 0 0;
	padding: 0 10px;
}

.section-search-word .search-box.input-large {
	width: 640px;
}

@media only screen and (max-width: 767px) {
	.section-search-word {
		margin: 40px 0 0;
	}

	.section-search-word label {
		font-size: 1.4rem;
	}

	.section-search-word .search-box {
		box-sizing: border-box;
		height: 36px;
		margin: 13px 0 0;
		width: 100%;
	}

	.section-search-word .search-box.input-large {
		width: 100%;
	}
}

/* box-calendar */
.box-calendar {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	width: 734px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.box-calendar span {
	color: #333;
	display: block;
	font-size: 1.8rem;
	line-height: 1;
}

.box-calendar input {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(/assets/img/common/icon_calendar_01.png) no-repeat 292px 50%;
	border: 0;
	border: 1px solid #ccc;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	color: #000f77;
	font-size: inherit;
	font-size: 1.8rem;
	height: 50px;
	line-height: 1;
	margin: 0;
	margin: 8px 0 0;
	padding: 0;
	padding: 0 60px 0 20px;
	vertical-align: middle;
	width: 100%;
	-moz-appearance: none;
}

.box-calendar input::-ms-clear {
	display: none;
}

.box-calendar input::-ms-reveal {
	display: none;
}

.box-calendar input::-ms-expand {
	display: none;
}

.box-calendar .box-calendar-left,
.box-calendar .box-calendar-right {
	width: 346px;
}

@media only screen and (max-width: 767px) {
	.box-calendar {
		display: block;
		width: auto;
	}

	.box-calendar span {
		font-size: 1.2rem;
		padding: 0 0 0 10px;
	}

	.box-calendar input {
		background: url(/assets/img/common/icon_calendar_01_sp.png) no-repeat 100% 50%;
		background-size: 30px 18px;
		font-size: 1.6rem;
		height: 35px;
		padding: 0 35px 0 10px;
	}

	.box-calendar .box-calendar-left,
    .box-calendar .box-calendar-right {
		width: auto;
	}

	.box-calendar .box-calendar-right {
		margin: 20px 0 0;
	}
}

#refine-calendar .btn {
	margin-top: 40px;
}

.cont-search-side #refine-calendar .btn {
	margin-top: 0;
}

@media only screen and (max-width: 767px) {
	#refine-calendar {
		margin: 12px 0 0;
	}

	.cont-search-side-body #refine-calendar {
		margin: 0;
	}
}

/* pickdate.js customized */
.picker__box {
	padding: 24px 24px 14px;
}

@media only screen and (max-width: 767px) {
	.picker__box {
		padding: 12px;
	}
}

.picker__header {
	line-height: 1;
	margin: 0;
}

.picker__year,
.picker__month {
	color: #333;
	font-size: 2.1rem;
	font-style: normal;
	font-weight: bold;
}

.picker__year span,
.picker__month span {
	display: inline;
	font-size: 1.6rem;
	font-weight: normal;
}

@media only screen and (max-width: 767px) {
	.picker__year,
    .picker__month {
		font-size: 1.4rem;
	}

	.picker__year span,
    .picker__month span {
		font-size: 1.2rem;
	}
}

.picker__select--year {
	padding: 0;
}

@media only screen and (max-width: 767px) {
	.picker__select--year {
		margin-top: 0;
		width: 27%;
	}
}

.picker__nav--prev,
.picker__nav--next {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	border: 0;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	color: #000f77;
	font-size: inherit;
	font-size: 20px;
	line-height: 1;
	margin: 0;
	padding: 0;
	text-decoration: underline;
	top: 0;
	vertical-align: middle;
	width: 100px;
	-moz-appearance: none;
}

.picker__nav--prev::-ms-clear,
.picker__nav--next::-ms-clear {
	display: none;
}

.picker__nav--prev::-ms-reveal,
.picker__nav--next::-ms-reveal {
	display: none;
}

.picker__nav--prev::-ms-expand,
.picker__nav--next::-ms-expand {
	display: none;
}

.picker__nav--prev:before,
.picker__nav--prev:after,
.picker__nav--next:before,
.picker__nav--next:after {
	background: url(/assets/img/common/icon_chevron_large_02.png) no-repeat 0 0;
	border: none;
	display: block;
	height: 18px;
	position: absolute;
	top: 2px;
	width: 12px;
}

.picker__nav--prev:hover,
.picker__nav--next:hover {
	background-color: transparent;
	color: #c00;
	text-decoration: none;
}

.picker__nav--prev:hover:before,
.picker__nav--prev:hover:after,
.picker__nav--next:hover:before,
.picker__nav--next:hover:after {
	background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
	.picker__nav--prev,
    .picker__nav--next {
		font-size: 1.4rem;
		top: 6px;
		width: 70px;
	}

	.picker__nav--prev:before,
    .picker__nav--prev:after,
    .picker__nav--next:before,
    .picker__nav--next:after {
		background-size: 12px 9px;
		height: 9px;
		top: 3px;
		width: 6px;
	}
}

.picker__nav--prev {
	left: 0;
	padding: 0 0 0 26px;
	text-align: left;
}

.picker__nav--prev:before {
	left: 0;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

@media only screen and (max-width: 767px) {
	.picker__nav--prev {
		padding: 0 0 0 14px;
	}
}

.picker__nav--next {
	padding: 0 26px 0 0;
	right: 0;
	text-align: right;
}

.picker__nav--next:before {
	display: none;
}

.picker__nav--next:after {
	content: ' ';
	right: 0;
}

@media only screen and (max-width: 767px) {
	.picker__nav--next {
		padding: 0 14px 0 0;
	}
}

.picker__weekday {
	color: #333;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}

.picker__day {
	color: #333;
	font-size: 2.1rem;
	font-weight: bold;
	line-height: 1;
	padding: 14px 0;
}

.picker__day--outfocus {
	color: #d4d4d4;
}

.picker__day--today:before {
	display: none;
}

.picker__day:hover {
	background: #021575;
	color: #fff;
}

@media only screen and (max-width: 767px) {
	.picker__day {
		font-size: 1.8rem;
		padding: 8px 0;
	}
}

.picker--focused .picker__day--selected,
.picker--focused .picker__day--selected:hover,
.picker--focused .picker__day--highlighted,
.picker--focused .picker__day--highlighted:hover {
	background: #021575;
	color: #fff;
}

.picker__footer {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.picker__footer button {
	border: 1px solid #ccc;
	color: #000f77;
	display: block;
	font-size: 1.8rem;
	font-weight: normal;
	height: 40px;
	padding: 0;
	text-decoration: underline;
	width: 134px;
}

.picker__footer button:before {
	top: 0;
}

.picker__footer button:hover {
	background-color: transparent;
	border-color: #ccc;
	color: #c00;
	text-decoration: none;
}

@media only screen and (max-width: 767px) {
	.picker__footer button {
		font-size: 1.4rem;
		height: 35px;
		width: 90px;
	}

	.picker__footer button:before {
		top: 2px;
	}
}

.picker__button--today:before,
.picker__button--clear:before {
	background: url(/assets/img/common/icon_chevron_middle_01.png) no-repeat 0 0;
	border: none;
	height: 12px;
	width: 8px;
}

.picker__button--today:hover:before,
.picker__button--clear:hover:before {
	background-position: 100% 0;
}

.picker__button--clear {
	margin: 0 auto 0 20px;
}

@media only screen and (max-width: 767px) {
	.picker__button--clear {
		margin: 0 10px;
	}
}

.picker__button--close:before {
	background: url(/assets/img/common/icon_times_01.png) no-repeat 0 0;
	content: ' ';
	height: 12px;
	top: 0;
	vertical-align: baseline;
	width: 12px;
}

.picker__button--close:hover:before {
	background-position: 100% 0;
}

.picker__nav--disabled {
	display: none;
}

/* -----------------------------------------------------
 * cont-result
 * -------------------------------------------------- */
.cont-result .heading {
	border-bottom: 1px solid #ccc;
	font-size: 1.8rem;
	height: 42px;
	margin: 130px 0 0;
	position: relative;
}

.cont-result .count-result {
	bottom: 0;
	line-height: 1;
	position: absolute;
	right: 0;
}

.cont-result .count-result .hit {
	font-size: 4.2rem;
	font-weight: bold;
	letter-spacing: 0.05em;
}

.cont-result .count-result .total {
	font-size: 1.8rem;
	font-weight: normal;
}

@media only screen and (max-width: 767px) {
	.cont-result .heading {
		border-bottom: none;
		font-size: 2.1rem;
		height: auto;
		margin: 40px 0 0;
		text-align: center;
	}

	.cont-result .count-result {
		display: block;
		position: static;
		text-align: center;
	}

	.cont-result .count-result .hit {
		display: inline-block;
		font-size: 3.4rem;
		margin: 10px 0 0;
		position: relative;
	}

	.cont-result .count-result .total {
		bottom: 4px;
		display: block;
		font-size: 1.2rem;
		left: 101%;
		position: absolute;
		white-space: nowrap;
	}
}

.list-result-category {
	letter-spacing: -0.4em;
	margin: 20px 0 0 -1.78571%;
}

.list-result-category > * {
	letter-spacing: normal;
}

.list-result-category li {
	display: inline-block;
	margin: 20px 0 0 20px;
}

@media only screen and (max-width: 767px) {
	.list-result-category li {
		margin: 10px 0 0 2.67857%;
		width: 46.42857%;
	}

	.list-result-category li img {
		height: auto;
		width: 100%;
	}
}

/* -----------------------------------------------------
 * cont-search-value
 * -------------------------------------------------- */
.cont-search-value {
	margin: 40px 0 0;
}

.cont-search-value > p {
	display: inline;
	font-size: 1.8rem;
}

.cont-search-value > p.caution {
	display: block;
	font-size: 2.4rem;
	line-height: 1.83333;
}

@media only screen and (max-width: 767px) {
	.cont-search-value > p {
		font-size: 1.4rem;
	}

	.cont-search-value > p.caution {
		font-size: 1.4rem;
		line-height: 1.42857;
		margin: -11px 0 0;
	}
}

.list-search-value {
	display: inline;
	letter-spacing: -0.4em;
}

.list-search-value > * {
	letter-spacing: normal;
}

.list-search-value li {
	display: inline-block;
	font-size: 2.4rem;
	line-height: 1.85833;
}

.list-search-value li:after {
	content: '、';
}

.list-search-value li:last-child:after {
	display: none;
}

@media only screen and (max-width: 767px) {
	.list-search-value li {
		font-size: 1.4rem;
		line-height: 1.28571;
	}
}

/* -----------------------------------------------------
 * cont-search-side
 * -------------------------------------------------- */
.cont-search-side {
	padding: 130px 0 0;
}

@media only screen and (max-width: 767px) {
	.cont-search-side {
		padding: 40px 0 0;
	}
}

.cont-search-side-body > * {
	margin: 0;
	position: relative;
}

.cont-search-side-body > *:first-child .heading {
	background: transparent;
	border: none;
	border-bottom: 1px solid #ccc;
	font-size: 1.8rem;
	margin: 0 0 12px;
	padding: 3px 0 20px;
}

.cont-search-side-body > *:first-child .section-inner {
	border-top: 1px solid #ccc;
}

.cont-search-side-body .heading,
.cont-search-side-body .heading-label {
	background: #f2f2f2;
	border: 1px solid #ccc;
	border-top: none;
	font-size: 1.4rem;
	font-weight: normal;
	padding: 19px 20px 17px;
	text-align: left;
}

.cont-search-side-body .btn {
	position: absolute;
	right: 21px;
	top: 17px;
}

@media only screen and (max-width: 767px) {
	.cont-search-side-body .btn {
		right: 11px;
		top: 11px;
	}

	.cont-search-side-body .heading,
    .cont-search-side-body .heading-label {
		padding: 16px 10px 14px;
	}

	.cont-search-side-body .heading {
		border-bottom: none;
	}

	.cont-search-side-body #refine-more .heading {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.cont-search-side-body #refine-more .section-inner {
		border-top: 0;
	}

	.cont-search-side-body #refine-more .list-refine-side-category {
		border-bottom: 0;
	}
}

.list-refine-side-category li {
	background: #fff;
	border: 1px solid #ccc;
	border-top: none;
	padding: 15px 20px 18px;
}

@media only screen and (max-width: 767px) {
	.list-refine-side-category {
		border-bottom: 1px solid #ccc;
		border-left: 1px solid #ccc;
		overflow: hidden;
	}

	.list-refine-side-category li {
		border: none;
		border-right: 1px solid #ccc;
		border-top: 1px solid #ccc;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		float: left;
		height: 40px;
		padding: 0 5px 0 10px;
		width: 50%;
		-webkit-align-items: center;
		align-items: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
	}

	.list-refine-side-category li:last-child:nth-child(2n+1) {
		position: relative;
	}

	.list-refine-side-category li:last-child:nth-child(2n+1):before {
		border: 1px solid #ccc;
		border-bottom: none;
		box-sizing: content-box;
		content: ' ';
		display: block;
		height: 100%;
		left: 100%;
		position: absolute;
		top: -1px;
		width: 100%;
	}
}

.list-refine-side-area {
	border: 1px solid #ccc;
	border-top: none;
	padding: 18px 20px 20px;
}

.list-refine-side-area li {
	margin: 20px 0 0;
}

.list-refine-side-area li:first-child {
	margin: 0;
}

.list-refine-side-area .title {
	font-size: 1.4rem;
}

.list-refine-side-area select {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(/assets/img/common/icon_triangle_01.png) no-repeat 100% 50%;
	border: 0;
	border: 1px solid #ccc;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	color: #000f77;
	display: block;
	font-size: inherit;
	font-size: 1.4rem;
	height: 50px;
	margin: 0;
	margin: 10px 0 0;
	padding: 0;
	padding: 0 55px 0 20px;
	vertical-align: middle;
	width: 100%;
	-moz-appearance: none;
}

.list-refine-side-area select::-ms-clear {
	display: none;
}

.list-refine-side-area select::-ms-reveal {
	display: none;
}

.list-refine-side-area select::-ms-expand {
	display: none;
}

@media only screen and (max-width: 767px) {
	.list-refine-side-area {
		border-top: 1px solid #ccc;
	}

	.list-refine-side-area select {
		background-size: 22px 5px;
		height: 36px;
		padding: 0 30px 0 10px;
	}
}

.box-calendar-side {
	border: 1px solid #ccc;
	border-top: none;
	padding: 18px 20px 20px;
}

.box-calendar-side .box-calendar-side-inner {
	margin: 20px 0 0;
}

.box-calendar-side .box-calendar-side-inner:first-child {
	margin: 0;
}

.box-calendar-side .box-calendar-side-inner span {
	display: block;
	font-size: 1.4rem;
}

.box-calendar-side .box-calendar-side-inner input {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(/assets/img/common/icon_calendar_01.png) no-repeat 224px 50%;
	border: 0;
	border: 1px solid #ccc;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	color: #000f77;
	display: block;
	font-size: inherit;
	font-size: 1.4rem;
	height: 50px;
	margin: 0;
	margin: 10px 0 0;
	padding: 0;
	padding: 0 65px 0 20px;
	vertical-align: middle;
	width: 100%;
	-moz-appearance: none;
}

.box-calendar-side .box-calendar-side-inner input::-ms-clear {
	display: none;
}

.box-calendar-side .box-calendar-side-inner input::-ms-reveal {
	display: none;
}

.box-calendar-side .box-calendar-side-inner input::-ms-expand {
	display: none;
}

.box-calendar-side .box-calendar-side-inner .picker__month span {
	display: inline;
}

@media only screen and (max-width: 767px) {
	.box-calendar-side {
		border-top: 1px solid #ccc;
	}

	.box-calendar-side .box-calendar-side-inner input {
		background: url(/assets/img/common/icon_calendar_01_sp.png) no-repeat 100% 50%;
		background-size: 30px 18px;
		height: 36px;
		padding: 0 32px 0 10px;
	}
}

/* -----------------------------------------------------
 * cont-sns
 * -------------------------------------------------- */
.cont-sns {
	background: #fff;
	border: 1px solid #ccc;
	margin: 40px 0 0;
	padding: 0 0 17px;
}

.cont-sns figure {
	margin: 18px 0 0;
	text-align: center;
}

.cont-sns p {
	font-size: 1.8rem;
	line-height: 2;
	margin: 4px 0 0;
	text-align: center;
}

.cont-sns .list-sns {
	letter-spacing: -0.4em;
	text-align: center;
}

.cont-sns .list-sns > * {
	letter-spacing: normal;
}

.cont-sns .list-sns li {
	display: inline-block;
	margin: 18px 10px 0;
	vertical-align: top;
}

@media only screen and (max-width: 767px) {
	.cont-sns {
		margin: 20px 0 0;
	}
}

/* -----------------------------------------------------
 * cont-recommend
 * -------------------------------------------------- */
.cont-recommend,
.cont-early {
	letter-spacing: -0.4em;
	margin: 40px 0 0 -20px;
}

.cont-recommend > *,
.cont-early > * {
	letter-spacing: normal;
}

.cont-recommend article,
.cont-early article {
	background: #f2f2f2;
	border: 1px solid #ccc;
	display: inline-block;
	margin: 0 0 0 20px;
	width: 250px;
}

.cont-recommend .article-inner,
.cont-early .article-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.cont-recommend figure,
.cont-early figure {
	background: #fff;
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}

.cont-recommend .heading,
.cont-early .heading {
	-webkit-box-ordinal-group: 3;
	font-size: 1.4rem;
	padding: 16px 20px 0;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

.cont-recommend .heading .title,
.cont-early .heading .title {
	display: block;
	font-size: 1.8rem;
	letter-spacing: 0.04em;
	line-height: 1.44444;
}

@media only screen and (max-width: 767px) {
	.cont-recommend .heading .title,
    .cont-early .heading .title {
		font-size: 1.4rem;
		line-height: 1.42857;
	}
}

.cont-recommend .heading .name,
.cont-early .heading .name {
	display: block;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	line-height: 1.71429;
	margin: 12px 0 0;
}

@media only screen and (max-width: 767px) {
	.cont-recommend .heading .name,
    .cont-early .heading .name {
		font-size: 1.2rem;
		line-height: 1.33333;
	}
}

.cont-recommend dl,
.cont-early dl {
	-webkit-box-ordinal-group: 4;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
	line-height: 1.71429;
	margin: 20px 0 0;
	padding: 0 20px;
	-ms-flex-order: 3;
	-webkit-order: 3;
	order: 3;
}

@media only screen and (max-width: 767px) {
	.cont-recommend dl,
    .cont-early dl {
		font-size: 1.2rem;
		line-height: 1.33333;
	}
}

.cont-recommend dl.list-dl-span dt,
.cont-recommend dl.list-dl-span dd,
.cont-early dl.list-dl-span dt,
.cont-early dl.list-dl-span dd {
	display: block;
}

.cont-recommend dl.list-dl-span dt:after,
.cont-early dl.list-dl-span dt:after {
	content: '：';
	display: inline;
}

.cont-recommend hr,
.cont-early hr {
	-webkit-box-ordinal-group: 5;
	margin: 20px 20px 0;
	-ms-flex-order: 4;
	-webkit-order: 4;
	order: 4;
}

.cont-recommend .btn,
.cont-early .btn {
	-webkit-box-ordinal-group: 6;
	margin: 20px;
	-ms-flex-order: 5;
	-webkit-order: 5;
	order: 5;
}

@media only screen and (max-width: 767px) {
	.cont-recommend,
    .cont-early {
		margin: 40px 0 0;
	}

	.cont-recommend article,
    .cont-early article {
		margin: 0 0 0 10px;
		width: 212px;
	}

	.cont-recommend img,
    .cont-early img {
		height: auto;
		width: 100%;
	}

	.cont-recommend .heading,
    .cont-early .heading {
		padding: 20px 17px 0;
	}

	.cont-recommend dl,
    .cont-early dl {
		margin: 18px 0 0;
		padding: 0 17px;
	}

	.cont-recommend dl dd,
    .cont-early dl dd {
		margin: 4px 0 0;
	}

	.cont-recommend dl.list-dl-span,
    .cont-early dl.list-dl-span {
		margin: 10px 0 0;
		padding-left: 20px;
		text-indent: 0;
	}

	.cont-recommend dl.list-dl-span dt,
    .cont-recommend dl.list-dl-span dd,
    .cont-early dl.list-dl-span dt,
    .cont-early dl.list-dl-span dd {
		display: block;
		font-size: 1.4rem;
		line-height: 1.33333;
	}

	.cont-recommend dl.list-dl-span dd,
    .cont-early dl.list-dl-span dd {
		margin: 0;
	}

	.cont-recommend hr,
    .cont-early hr {
		display: none;
	}
}

/* -----------------------------------------------------
 * cont-404
 * -------------------------------------------------- */
.cont-404 {
	padding: 65px 20px 160px;
	text-align: center;
}

@media only screen and (max-width: 767px) {
	.cont-404 {
		padding: 30px 20px 70px;
	}
}

.cont-404-inner {
	margin: 0 auto;
	width: 1100px;
}

.cont-404-inner .heading {
	font-size: 4.2rem;
	line-height: 1.71429;
}

.cont-404-inner figure {
	margin: 20px 0 0;
}

.cont-404-inner figure img {
	width: 66px;
}

.cont-404-inner p {
	font-size: 1.8rem;
	line-height: 1.77778;
	margin: 32px 0 0;
}

@media only screen and (max-width: 767px) {
	.cont-404-inner {
		width: auto;
	}

	.cont-404-inner .heading {
		font-size: 2.1rem;
	}

	.cont-404-inner figure {
		margin: 10px 0 0;
	}

	.cont-404-inner p {
		font-size: 1.4rem;
		line-height: 1.64286;
		margin: 16px 0 0;
	}

	.cont-404-inner .btn.btn-default.btn-middle a {
		margin: 36px 0;
		width: 100%;
	}
}

/* -----------------------------------------------------
 * slick
 * -------------------------------------------------- */
.wrap-slider {
	overflow: hidden;
}

.slider {
	position: relative;
}

.slider:before,
.slider:after {
	background: -webkit-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, white 0%, rgba(255, 255, 255, 0) 100%);
	content: ' ';
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	width: 120px;
	z-index: 1;
}

.slider:before {
	left: 19px;
}

.slider:after {
	right: 0;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.slider.unslick:before,
.slider.unslick:after {
	display: none;
}

.slider .slick-arrow {
	-webkit-appearance: none;
	appearance: none;
	background: none transparent;
	background: url(/assets/img/common/icon_slider_arrow_01.png) no-repeat 0 0;
	border: 0;
	border-radius: 0;
	box-sizing: border-box;
	color: inherit;
	font-size: inherit;
	height: 90px;
	margin: 0;
	margin: -45px 0 0;
	overflow: hidden;
	padding: 0;
	position: absolute;
	text-indent: 200%;
	top: 50%;
	vertical-align: middle;
	white-space: nowrap;
	width: 60px;
	z-index: 5;
	-moz-appearance: none;
}

.slider .slick-arrow::-ms-clear {
	display: none;
}

.slider .slick-arrow::-ms-reveal {
	display: none;
}

.slider .slick-arrow::-ms-expand {
	display: none;
}

.slider .slick-prev {
	left: 20px;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.slider .slick-next {
	right: 0;
}

@media only screen and (max-width: 767px) {
	.wrap-slider {
		margin: 0 -20px;
	}

	.slider .slick-arrow {
		background-size: 30px 45px;
		height: 45px;
		margin: -23px 0 0;
		width: 30px;
	}

	.slider:before,
    .slider:after {
		height: 100%;
		width: 40px;
	}

	.slider:before {
		left: 0;
	}

	.slider .slick-prev {
		left: 0;
	}
}

.slider-sp {
	position: relative;
}

@media only screen and (max-width: 767px) {
	.slider-sp {
		margin: 40px 0 0;
	}

	.slider-sp .slick-slide {
		margin: 0 20px;
	}

	.slider-sp .slick-track {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}

	.slider-sp .slick-arrow {
		-webkit-appearance: none;
		appearance: none;
		background: none transparent;
		background: url(/assets/img/common/icon_slider_arrow_01.png) no-repeat 0 0;
		background-size: 30px 45px;
		border: 0;
		border-radius: 0;
		box-sizing: border-box;
		color: inherit;
		font-size: inherit;
		height: 45px;
		margin: 0;
		margin: -23px 0 0;
		overflow: hidden;
		padding: 0;
		position: absolute;
		text-indent: 200%;
		top: 50%;
		vertical-align: middle;
		white-space: nowrap;
		width: 30px;
		z-index: 5;
		-moz-appearance: none;
	}

	.slider-sp .slick-arrow::-ms-clear {
		display: none;
	}

	.slider-sp .slick-arrow::-ms-reveal {
		display: none;
	}

	.slider-sp .slick-arrow::-ms-expand {
		display: none;
	}

	.slider-sp:before,
    .slider-sp:after {
		height: 100%;
		width: 40px;
	}

	.slider-sp:before {
		left: 0;
	}

	.slider-sp .slick-prev {
		left: 0;
		-webkit-transform: rotateY(180deg);
		transform: rotateY(180deg);
	}

	.slider-sp .slick-next {
		right: 0;
	}
}

/* -----------------------------------------------------
 * modaal
 * -------------------------------------------------- */
.modaal-wrapper .modaal-container {
	overflow: visible !important;
}

.modaal-wrapper .modaal-close {
	background: none;
	position: absolute;
	right: 0;
	top: -45px;
	width: auto;
}

.modaal-wrapper .modaal-close:before,
.modaal-wrapper .modaal-close:after {
	left: -25px;
	-webkit-transition: none;
	transition: none;
}

.modaal-wrapper .modaal-close span {
	font-size: 1.8rem;
	height: auto !important;
	position: static !important;
	text-decoration: underline;
	width: auto !important;
}

.modaal-wrapper .modaal-close:hover:before,
.modaal-wrapper .modaal-close:hover:after {
	background-color: #c00;
}

.modaal-wrapper .modaal-close:hover span {
	color: #c00;
	text-decoration: none;
}

.modaal-wrapper .modaal-close:focus {
	outline: 1px dotted #fff;
}

.modaal-wrapper .modaal-close:focus:before,
.modaal-wrapper .modaal-close:focus:after {
	background-color: #fff;
}

/*
---
name: list-download
category: module
---
```html
```
*/
.list-download-pdf {
	letter-spacing: -0.4em;
	margin: 0;
	text-align: center;
}

.list-download-pdf > * {
	letter-spacing: normal;
}

.list-download-pdf li {
	display: inline-block;
	margin: 40px 0 0;
	vertical-align: top;
	width: 210px;
}

.list-download-matsuri li {
	display: inline-block;
	margin: 40px 0 0;
	vertical-align: middle;
	width: auto;
	text-align: left;
	padding: 0 20px;
}

.list-download-pdf li a {
	color: #000f77;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	flex-direction: column;
	text-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
}

.list-download-matsuri li a {
	color: #000f77;
	display: inline-block;
	text-align: center;
}

.list-download-pdf li a:hover {
	color: #c00;
}

.list-download-pdf li img {
	-webkit-box-ordinal-group: 2;
	height: 80px;
	max-width: 80px;
	min-width: 80px;
	width: 80px;
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}
.list-download-matsuri li img {
	-webkit-box-ordinal-group: 2;
	height: auto;
	max-width: 240px;
	width: 240px;
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}

.list-download-pdf li p {
	-webkit-box-ordinal-group: 3;
	font-size: 1.4rem;
	line-height: 1.71429;
	margin: 14px 0 0;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

.list-download-matsuri li p a:nth-child(6){
	margin-left: 4.4rem;
}

.text + .list-download-pdf {
	margin: 72px 0 0;
}

@media only screen and (max-width: 767px) {
	.list-download-pdf {
		margin: 0;
	}

	.list-download-pdf li {
		display: block;
		margin: 40px 0 0;
		width: auto;
	}
	.list-download-matsuri li {
		padding: 0;
	}

	.list-download-pdf li:first-child {
		margin: 27px 0 0;
	}

	.list-download-pdf li a {
		-ms-flex-direction: row;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		flex-direction: row;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		-webkit-box-align: start;
		-ms-flex-align: start;
	}

	.list-download-pdf li img {
		height: 51px;
		margin: 0 20px 0 0;
		max-width: 51px;
		min-width: 51px;
		width: 51px;
	}
	.list-download-matsuri li {
		text-align: left;
		margin-top: 20px;
	}
	.list-download-matsuri li img {
		height: auto;
		max-width: 120px;
		width: 120px;
		margin: 0 auto;
	}

	.list-download-pdf li p {
		line-height: 1.28571;
		margin: 0;
		text-align: left;
	}
	.list-download-matsuri li p {
		line-height: 2.0;
	}

	.list-download-matsuri li p a:nth-child(7){
		margin-left: 4.4rem;
	}
	.list-download-matsuri li p a:nth-child(6){
		margin-left: 4.4rem;
	}
	.list-download-matsuri li p a:nth-child(4){
		margin-left: 4.4rem;
	}

	.list-download-pdf li p .size {
		display: inline-block;
	}

	.isAndroidBrowser .list-download-pdf li {
		display: block;
		height: 51px;
	}

	.isAndroidBrowser .list-download-pdf li a {
		display: block;
		position: relative;
	}

	.isAndroidBrowser .list-download-pdf li a img {
		left: 0;
		position: absolute;
		top: 0;
	}

	.isAndroidBrowser .list-download-pdf li a p {
		padding-left: 71px;
	}

	.text + .list-download-pdf {
		margin: 0;
	}
}

/* =====================================================
 * Pages
 * ================================================== */
