@charset "UTF-8";
/**
 * 1.0 - Normalize
 * 2.0 - Common
 * 3.0 - Header
 * 4.0 - Footer
 * 5.0 - Contents
 *    5.1 - Main
 *    5.2 - Side
 *        5.2.1 - Side Navigation
 * 6.0 - Option
 *    6.1 - Index
 *    6.2 - Program
 * 0.0 - Text
 */
/*----------------------------------------------------
	1.0 - Normalize-HTML5 Reset
----------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}
/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
/*----------------------------------------------------
	2.0 - Common Setting
----------------------------------------------------*/
/* - option sp [base] - */
html {
	font-size: 62.5%; /* base-font-size:10px */
}
body {
	background: rgba(153, 167, 196, 0.2);
	color: #333;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "Arial", "Osaka", "Verdana", sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	letter-spacing: 0;
	overflow-y: scroll;
	min-width: 320px;
	min-width: 1000px;
}
body * {
	box-sizing: border-box;
	/*word-break: break-all; /* 記号・英字の改行対策 */
	white-space: normal;
}
body * img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
a:hover img, a:active img {
	filter: alpha(opacity=75);
	-ms-filter: "alpha( opacity=75 )";
	opacity: 0.75;
	transition: 0.3s;
}
.page {
	display: flex;
	width: 100%;
}
/*----------------------------------------------------
	3.0 - Header Setting
----------------------------------------------------*/
/* - option pc [base] - */
header {
	background-color: #123865;
	width: 100%;
	position: relative;
	z-index: 2;
}
.header-container {}
.header-title {
	margin: 0 auto;
	padding: 20px;
	text-align: center;
}
.header-title img {
	width: auto;
	height: 100px;
}
/*----------------------------------------------------
	4.0 - Footer Setting
----------------------------------------------------*/
/* - option pc [base] - */
footer {
	background-color: #ede7e4;
	letter-spacing: 0.04em;
	width: 100%;
	position: relative;
	z-index: 2;
}
footer li {
	list-style-type: none;
}
footer a:link, footer a:visited {
	color: #28a3a0;
}
footer a:hover, footer a:active, footer a:focus {
	color: #EC7834;
	transition: 0.3s;
}
.footer-container {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end; /*垂直位置を下にそろえる*/
	margin: 0 auto;
	padding: 50px 0;
	width: 100%;
	max-width: 1000px;
}
/* contact */
.footer-contacts {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start; /*垂直位置を上にそろえる*/
	justify-content: center; /*水平位置を上にそろえる*/
	margin: 0 auto;
	padding: 50px 20px;
	width: 100%;
	max-width: 100%;
}
.contact {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start; /*垂直位置を上にそろえる*/
	justify-content: center; /*水平位置を中央にそろえる*/
	width: auto; /* 基本の幅を設定 */
	max-width: 100%; /* 冗長にならないように最大幅を設定 */
	flex-basis: 100%; /* IEのwidth無視対策 */
}
.contact:nth-of-type(2) {
	margin-top: 40px;
}
.contact h3 {
	color: #0c3966;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.8rem;
	font-weight: 700;
	padding: 0 0 0.75em;
	position: relative;
	width: auto;
	display: inline-block;
}
.contact h3:after {
	background-color: #0c3966;
	content: " ";
	display: block;
	margin-left: -20px;
	position: relative;
	left: 50%;
	bottom: -0.75em;
	width: 40px;
	height: 1px;
}
.contact dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: center; /*水平位置を中央にそろえる*/
	margin-top: -1px;
	padding-top: 0.5em;
	text-align: center;
	width: 100%;
}
.contact dt, .contact dd {
	line-height: 1.8;
	width: 100%;
	max-width: 100%;
	flex-basis: 100%;
}
.contact dt {
	font-size: 1.6rem;
	font-weight: 700;
}
.contact dd {
	font-size: 1.3rem;
}
.contact dd.contact-tel, .contact dd.contact-fax {
	position: relative;
	width: auto; /*幅を自動取得にして横並びにする*/
	flex-basis: auto;
}
.contact dd.contact-tel:after {
	content: " /"; /*枠の間に仕切りを入れる*/
	padding-right: 0.5em;
}
/* copyright */
.copyright {
	background-color: #123865;
	color: rgba(255, 255, 255, 0.8);
	display: block;
	font-size: 1.1rem;
	line-height: 1.5;
	padding: 20px;
	text-align: center;
}
/* pagetop */
.footer-pagetop {
	position: fixed;
	font-size: 1.2rem;
	bottom: 0;
	right: 0;
}
.footer-pagetop a {
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	text-decoration: none;
	width: 64px;
	height: 64px;
}
.footer-pagetop a:link, .footer-pagetop a:visited {
	background-color: #28a3a0;
	color: #fff;
}
.footer-pagetop a:hover, .footer-pagetop a:active, .footer-pagetop a:focus {
	background-color: #7AD3D1;
	transition: 0.3s;
}
.footer-pagetop a:before {
	background-image: url(../img/common/link_head.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	background-size: cover;
	content: " ";
	margin: -0.75em 0 -1em;
	font-size: 1.6rem;
	width: 50px;
	height: 50px;
}
/*----------------------------------------------------
	5.0 - Contents Setting
----------------------------------------------------*/
#contents {
	color: #222;
	width: 100%;
}
.contents-container {
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
	display: flex;
	margin: 0 auto;
	padding: 0;
	position: relative;
	width: 100%;
	max-width: 1000px;
	z-index: 0;
}
.contents-header {
	background-color: rgba(57, 40, 137, 0.65);
	background-image: url("../img/contents/bg_contents_header.jpg");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 750px;
	padding: 2em 30px 1.5em;
	width: 100%;
}
.contents-header h1 {
	color: #fff;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-family: 'Noto Serif JP', serif;
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1.2;
	margin: 0;
	padding-bottom: 0.5em;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.75), -2px -2px 5px rgba(0, 0, 0, 0.75), 2px -2px 5px rgba(0, 0, 0, 0.75), -2px 2px 5px rgba(0, 0, 0, 0.75);
}
.sections {
	background-color: #fcfbfa;
	padding: 0 30px 20px;
	position: relative;
	width: 100%;
}
section {
	padding: 30px 0;
	position: relative;
	width: 100%;
}
section h2 {
	background-color: #123865;
	color: #fff;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: 1.2;
	margin: 0 0 0.75em 0;
	padding: 0.45em 0.75em 0.65em;
	text-align: left;
	position: relative;
	z-index: 1;
}
section h3 {
	border-bottom: 2px solid #123865;
	color: #123865;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2;
	margin: 1.5em 0 1em;
	padding: 0 0 0.65em;
	text-align: left;
	position: relative;
	z-index: 1;
}
section h4 {
	border-bottom: 1px dotted #ccc;
	margin: 1.5em 0 1em;
	padding-bottom: 1.0em;
}
section p, section li, section dt, section dd {
	line-height: 1.8;
}
section ul li {
	list-style-type: none;
}
section a:link, section a:visited {
	color: #28a3a0;
}
section a:hover, section a:active, section a:focus {
	color: #EC7834;
}
/*----------------------------------------------------
	5.1 - Main Setting
----------------------------------------------------*/
#main {
	background-color: #fff;
	order: 2;
	flex-basis: 750px;
	width: 750px;
	max-width: 750px;
	z-index: 0;
}
/*----------------------------------------------------
	5.2 - Side Setting
----------------------------------------------------*/
#side {
	background-color: #fff;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
	flex-basis: 250px;
	order: 1;
	width: 250px;
	max-width: 250px;
	z-index: 1;
}
/*----------------------------------------------------
	5.2.1 - Header Navigation
----------------------------------------------------*/
/* - option pc [base] - */
/* navigation */
.side-navigation {
	background-color: #fff;
	overflow-y: auto;
	width: 100%;
}
.side-navigation li {
	list-style-type: none;
}
.nav-list {
	background-color: #fff;
	color: #252d33;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-weight: 500;
	margin-bottom: 1em;
}
.nav-list li {
	background-color: #fff;
	border-bottom: 1px solid #dddddd;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	line-height: 1.2;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
	height: 50px;
}
.nav-list li a, .nav-list li.off {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 32px 0 20px;
	position: relative;
	text-decoration: none;
	width: 100%;
	max-width: 100%;
}
.nav-list li a {
	height: 100%;
}
.nav-list li.off {
	background-color: #f3f3f3;
	color: #888;
}
.nav-list li a:link, .nav-list li a:visited {
	background-color: #fff;
	color: #252d33;
}
.nav-list li a:hover, .nav-list li a:hover, .nav-list li a:focus, .nav-list li.on a {
	background-color: #28a3a0;
	color: #fff;
	transition: 0.3s;
}
.nav-list li a:after, .nav-list li.off:after {
	background-image: url(../img/common/bg_icon.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	content: " ";
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -6px;
	width: 7px;
	height: 12px;
}
.nav-list li a:hover:after, .nav-list li a:hover:after, .nav-list li a:focus:after, .nav-list li.on a:after {
	background-position: -20px 0px;
}
.nav-list .caption {
	background-color: red;
	color: #fff;
	font-size: 90%;
	padding: 0.2em 0.35em 0.35em;
	border-radius: 4px;
}
/* banner */
.nav-banner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0 13px 0 12px;
}
.nav-banner li {
	list-style-type: none;
	margin-bottom: 1em;
	overflow: hidden;
	width: 100%;
	max-width: 250px;
	flex-basis: 100%;
}
.nav-banner li a {
	display: block;
	background: #fff;
}
.nav-banner li.poster {
	border: 1px solid #ddd;
	list-style-type: none;
	margin-bottom: 1em;
	overflow: hidden;
	width: 100%;
	max-width: 250px;
	flex-basis: 100%;
}
/*----------------------------------------------------
	6.0 - Option Setting Containar
----------------------------------------------------*/
/* containar */
.items {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	max-width: 100%;
}
.items .item, [class^="col"] .item, [class*=" col"] .item {
	width: 100%;
	max-width: 320px;
	flex-basis: 100%;
}
.col1 .item {
	width: 100%;
	max-width: 480px;
	flex-basis: 100%;
}
.col2 .item {
	width: 50%;
	max-width: 50%;
	flex-basis: 50%;
}
.col2 .item:nth-of-type(odd) {
	padding-left: 0;
	padding-right: 1em;
}
.col2 .item:nth-of-type(even) {
	padding-left: 1em;
	padding-right: 0;
}
.col3 .item {
	width: 33.333%;
	max-width: 33.333%;
	flex-basis: 33.333%;
}
.col3 .item:nth-of-type(3n+1) {
	padding-left: 0;
	padding-right: 1em;
}
.col3 .item:nth-of-type(3n+2) {
	padding-left: 0.5em;
	padding-right: 0.5em;
}
.col3 .item:nth-of-type(3n) {
	padding-left: 1em;
	padding-right: 0;
}
.col4 .item {
	width: 25%;
	max-width: 25%;
	flex-basis: 25%;
}
.col4 .item:nth-of-type(4n+1) {
	padding-left: 0;
	padding-right: 16px;
}
.col4 .item:nth-of-type(4n+2) {
	padding-left: 5px;
	padding-right: 11px;
}
.col4 .item:nth-of-type(4n+3) {
	padding-left: 11px;
	padding-right: 5px;
}
.col4 .item:nth-of-type(4n) {
	padding-left: 16px;
	padding-right: 0;
}
.col5 .item {
	width: 20%;
	max-width: 20%;
	flex-basis: 20%;
}
.col5 .item:nth-of-type(5n+1) {
	padding-left: 0;
	padding-right: 14px;
}
.col5 .item:nth-of-type(5n+2) {
	padding-left: 4px;
	padding-right: 10px;
}
.col5 .item:nth-of-type(5n+3) {
	padding-left: 7px;
	padding-right: 7px;
}
.col5 .item:nth-of-type(5n+4) {
	padding-left: 10px;
	padding-right: 4px;
}
.col5 .item:nth-of-type(5n) {
	padding-left: 14px;
	padding-right: 0;
}
/*----------------------------------------------------
	6.0 - Option Setting List
----------------------------------------------------*/
/* list */
[class^="list_"] li, [class*=" list_"] li {
	list-style-type: none;
}
.list-text-jp {
	margin-left: 1em;
}
.list-text-jp li {
	text-indent: -1em;
}
.list-text-jp li ul li {
	text-indent: 0;
}
.list-text-en {
	margin-left: 0.5em;
}
.list-text-en li {
	text-indent: -0.5em;
}
.list_disc {
	margin-left: 1em;
}
.list_disc li {
	position: relative;
}
.list_disc li:before, .list_disc li .list_disc li:before {
	color: #94949C;
	content: "\025cf";
	display: inline-block;
	font-size: 0.6em;
	margin-right: 1.6em;
	padding-right: 0.666em;
	position: absolute;
	top: 1em;
	left: -1.6em;
	line-height: 1.0;
}
.list_disc li ul li:before {
	display: none;
}
.list_decimal {
	margin-left: 2em;
	counter-reset: num;
}
.list_decimal > li {
	position: relative;
}
.list_decimal > li:before {
	box-sizing: border-box;
	counter-increment: num;
	content: counter(num) ".";
	display: inline-block;
	position: absolute;
	width: 2em;
	top: 0;
	left: -2.25em;
	margin-right: 2em;
	padding-right: 0.25em;
	text-align: right;
}
/* text */
.list-num- {}
.list-num- {}
.list-num- {}
.list-num- {}
/* mark */
/* link */
.list-link {
	margin-left: 1em;
}
.list-link li:before {
	content: "\025b6";
	color: #94949C;
	font-size: 80%;
	margin-left: -1.3em;
	padding-right: 0.3em;
}
/* banner */
.list-banner {
	width: 100%;
}
.list-banner li {}
.list-banner a, .list-banner span {
	border-radius: 12px;
	color: #fff;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-content: center;
	align-items: center;
	font-weight: 500;
	line-height: 1.2;
	padding-left: 1em;
	padding-right: 1em;
	padding-bottom: 0.2em;
	overflow: hidden;
	text-decoration: none;
	width: 100%;
	height: 3.5em;
	text-align: center;
}
.list-banner span {
	background-color: #ccc;
	color: #555;
}
.list-banner a span, .list-banner span span {
	background-color: transparent;
	width: auto;
}
.list-banner a:link, .list-banner a:visited {
	background-color: #ED1B42;
	color: #fff;
}
.list-banner a:hover, .list-banner a:active, .list-banner a:focus {
	background-color: #FF90A4;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
	color: #fff;
	transition: 0.3s;
}
.banner-bgY a:link, .banner-bgY a:visited {
	background-color: #F78D07;
}
.banner-bgY a:hover, .banner-bgY a:active, .banner-bgY a:focus {
	background-color: #FFC243;
}
.banner-bgB a:link, .banner-bgB a:visited {
	background-color: #3964C7;
}
.banner-bgB a:hover, .banner-bgB a:active, .banner-bgB a:focus {
	background-color: #6C8CD5;
}
.banner-bgG a:link, .banner-bgG a:visited {
	background-color: #2CAC3E;
}
.banner-bgG a:hover, .banner-bgG a:active, .banner-bgG a:focus {
	background-color: #56CD67;
}
.banner-bgBg a:link, .banner-bgBg a:visited {
	background-color: #38A5C7;
}
.banner-bgBg a:hover, .banner-bgBg a:active, .banner-bgBg a:focus {
	background-color: #7DC4DA;
}
/*----------------------------------------------------
	6.0 - Option Setting Table
----------------------------------------------------*/
table .nowrap {
	white-space: nowrap;
}
/* border */
.table-border {}
.table-border th, .table-border td {
	border: 1px solid #999;
	line-height: 1.5;
	padding: 0.5em 0.75em 0.7em;
}
.table-border th {
	background-color: #27476E;
	color: #fff;
}
.table-border td {
	background-color: #fff;
}
.table-border-btm {
	border-top: 1px solid #ddd;
	width: 100%;
}
.table-border-btm th, .table-border-btm td {
	border-bottom: 1px solid #ddd;
	line-height: 1.8;
	padding-top: 1em;
	padding-bottom: 1.1em;
	display: table-cell;
	width: auto;
}
.table-border-btm th {
	color: #123865;
	font-weight: 700;
	padding-right: 1em;
	text-align: left;
	vertical-align: top;
}
/* no border */
.table-noborder {}
.table-noborder th, .table-noborder td {
	border: none;
	line-height: 1.8;
	margin: 0;
	padding: 0;
}
.table-noborder th {
	font-weight: 400;
	text-align: left;
}
.table-noborder td {}
/*----------------------------------------------------
	6.0 - Option Setting Other
----------------------------------------------------*/
/* space */
.mgnT0 {
	margin-top: 0;
}
.mgnT10 {
	margin-top: 1em;
}
.mgnT20 {
	margin-top: 2em;
}
.mgnB0 {
	margin-bottom: 0;
}
.mgnB10 {
	margin-bottom: 1em;
}
.mgnB20 {
	margin-bottom: 2em;
}
.pdgT0 {
	padding-top: 0;
}
.pdgT10 {
	padding-top: 1em;
}
.pdgT20 {
	padding-top: 2em;
}
.pdgB0 {
	padding-bottom: 0;
}
.pdgB10 {
	padding-bottom: 1em;
}
.pdgB20 {
	padding-bottom: 2em;
}
section .pdgR10 {
	padding-right: 1em;
}
/* width */
.w100 {
	width: 100%;
}
.w50 {
	width: 50%;
}
.w33 {
	width: 33.3%;
}
.w25 {
	width: 25%;
}
/* text */
.indent01 {
	text-indent: 1em;
}
.indent_01 {
	text-indent: -1em;
	padding-left: 1em;
}
/* icon */
.icon_pdf, .icon_word, .icon_excel, .icon_ppt {
	padding-right: 36px;
	position: relative;
}
.icon_pdf_s, .icon_word_s, .icon_excel_s, .icon_ppt_s, .icon_out {
	padding-right: 16px;
	position: relative;
}
[class^="icon_"]:after, [class*=" icon_"]:after {
	background-image: url(../img/common/bg_icon.png);
	background-repeat: no-repeat;
	content: " ";
	position: absolute;
	right: -4px;
	top: 50%;
}
.icon_pdf:after, .icon_word:after, .icon_excel:after, .icon_ppt:after {
	width: 32px;
	height: 32px;
	margin-top: -16px;
}
.icon_pdf:after, .icon_word:after, .icon_excel:after, .icon_ppt:after {}
.icon_pdf:after {
	background-position: 0px -20px;
}
.icon_word:after {
	background-position: -40px -20px;
}
.icon_excel:after {
	background-position: -80px -20px;
}
.icon_ppt:after {
	background-position: -120px -20px;
}
.icon_pdf_s:after, .icon_word_s:after, .icon_excel_s:after, .icon_ppt_s:after, .icon_out:after {
	width: 14px;
	height: 14px;
	margin-top: -6px;
	position: relative;
	top: 2px;
	left: 5px;
	display: inline-block;
}
.icon_out:after {
	background-position: -80px 0px;
}
.icon_pdf_s:after {
	background-position: -100px 0px;
}
.icon_word_s:after {
	background-position: -120px 0px;
}
.icon_excel_s:after {
	background-position: -140px 0px;
}
.icon_ppt_s:after {
	background-position: -160px 0px;
}
/* preparation */
.preparation {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 25vh;
	height: 25vh;
	width: 100%;
}
.preparation p {
	color: #999;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: 0.5em;
	position: relative;
}
.preparation p:before {
	content: "―";
}
.preparation p:after {
	content: "―";
}
/*----------------------------------------------------
	6.0 - Option Setting Message
----------------------------------------------------*/
.message-data {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
}
.message-data .message-image {
	width: 120px;
	height: auto;
}
.message-data .message-text {
	width: 100%;
}
/*----------------------------------------------------
	6.0 - Option Setting Program
----------------------------------------------------*/
.speaker-data {
	display: flex;
	width: 100%;
}
.speaker-data .speaker-image {
	background-color: rgba(192,192,192,1.00);
	width: 110px;
	height: 110px;
	margin-left: 10px;
}
.speaker-data .speaker-text {
	width: calc(100% - 120px);
}
/*----------------------------------------------------
	0.0 - Text Setting
----------------------------------------------------*/
.sans {
	font-family: 'Noto Sans JP', sans-serif;
}
.serif {
	font-family: 'Noto Serif JP', serif;
}
.txRed {
	color: #F80927;
}
.txGreen {
	color: #06AA4C;
}
.txBlue {
	color: #0869ED;
}
.txBlack {
	color: #333;
}
.txC {
	text-align: center;
}
.txL {
	text-align: left;
}
.txR {
	text-align: right;
}
.txMd {
	vertical-align: middle;
}
.txUl {
	text-decoration: underline;
}
.tx32 {
	font-size: 32px;
	font-size: 3.2rem;
}
.tx22 {
	font-size: 22px;
	font-size: 2.2rem;
}
.tx20 {
	font-size: 20px;
	font-size: 2.0rem;
}
.tx18 {
	font-size: 18px;
	font-size: 1.8rem;
}
.tx15 {
	font-size: 15px;
	font-size: 1.5rem;
}
.tx14 {
	font-size: 14px;
	font-size: 1.4rem;
}
.lh18 {
	line-height: 1.8;
}
.lh14 {
	line-height: 1.4;
}
.lh12, #side *, #main h1, #main h2, #main h3, #main h4, #main h5 {
	line-height: 1.2;
}
.lh10, footer .footer-pagetop {
	line-height: 1.0;
}
/*----------------------------------------------------
	6.1 - Index Setting
----------------------------------------------------*/
/* containar */
.index .contents-container {
	margin: 0 auto;
	padding: 30px 0;
	min-height: 0;
}
/* event date */
section.index-event {
	background-color: transparent;
	background-image: url("../img/contents/bg_index.jpg");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 0;
	position: relative;
}
.event-date {
	margin: 0 auto;
	padding: 0;
	max-width: 750px;
}
.event-link {
	margin: 0 auto;
	padding: 20px 35px 35px;
	max-width: 700px;
	position: absolute;
	bottom: 0;
	right: 0;
}
/* information */
.index-info {
	background-color: rgba(0, 0, 0, 0.75);
	border: 1px solid rgba(255, 255, 255, 0.75);
	border-right: none;
	box-sizing: border-box;
	padding: 0;
	overflow: auto;
	position: absolute;
	top: 335px;
	right: 0;
	width: calc(100% - 390px);
}
.info-title {
	background-color: transparent;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2;
	text-align: left;
	margin: 0;
	padding: 16px 20px 4px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.info-title:after {
	background-color: #fff;
	content: " ";
	display: table;
	margin-top: 0.25em;
	width: calc(100% - 7em);
	height: 1px;
}
.info-list {
	padding: 0 20px;
	overflow-y: auto;
	width: 100%;
	height: 128px;
}
.info-list dt, .info-list dd {
	color: #fff;
	line-height: 1.6;
	position: relative;
	z-index: 1;
}
.info-list dt {
	font-size: 1.3rem;
	padding-top: 0.6em;
	width: 6.5em;
}
.info-list dd {
	font-size: 1.4rem;
	padding-bottom: 0.5em;
	width: 100%;
}
.info-list dt.blank, .info-list dd.blank {
	border-bottom: 1px solid #e3e3e3;
}
/* add 211115 */
.add-link01 {
	background-color: #F80927;
	border-radius: 80px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: -0.04em;
	line-height: 1.25;
	position: absolute;
	top: 20px;
	right: 20px;
	text-align: center;
	width: 160px;
	height: 160px;
}
.add-link01 a {
	border-radius: 80px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	text-decoration: none;
	width: 100%;
	height: 100%;
	transition: 0.3s;
}
.add-link01 a:link,.add-link01 a:visited {
	background-color: #F80927;
	color: #fff;
}
.add-link01 a:hover,.add-link01 a:active {
	background-color: #FA6779;
	color: #fff;
}