/* CSS Document */
@charset "utf-8";

:root {
	--banpaku-red: #d81418;
	--banpaku-blue: #206bae;
}

div#header {
	max-width: 650px;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

div.logo h1 {
	margin: 5px 0 0 0;
	padding: 0;
	font-size: 18pt;
}

div#main_contents {
	max-width: 650px;
	width: 98%;
	margin: 0 auto;
	padding: 15px 0;
}

p,
ul,
dl,
.th,
.td,
h2,
h3,
h4,
div.main_body .table,
div.main_body .table02 {
	line-height: 165%;
}

div.main_image {
	max-width: 650px;
	width: 100%;
	margin: 0;
}

p.text {
	text-indent: 1em;
}

span.mark {
	font-family: Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

img {
	width: 100%;
}

div.image90 {
	max-width: 580px;
	width: 94%;
	margin: 0 auto;
}

div.image80 {
	max-width: 520px;
	width: 84%;
	margin: 0 auto;
}

div.image60 {
	max-width: 390px;
	width: 64%;
	margin: 0 auto;
}

div.image50 {
	max-width: 320px;
	width: 52%;
	margin: 0 auto;
}

div.image40 {
	max-width: 260px;
	width: 42%;
	margin: 0 auto;
}

div.image30 {
	max-width: 190px;
	width: 32%;
	margin: 0 auto;
}

div.image20 {
	max-width: 120px;
	width: 20%;
	margin: 0 auto;
}

div.image10 {
	max-width: 80px;
	width: 10%;
	margin: 0 auto;
}

div.pic_caption {
	margin: 3px 0 0 0;
	text-align: right;
	font-size: 75%;
	font-weight: bold;
	line-height: 160%;
}

div.rubi div.pic_caption {
	line-height: 180%;
}

div#footer {
	max-width: 650px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

div.pagetop {
	text-align: right;
	margin-right: 10px;
	font-size: 80%;
}

div.mokuji {
	margin: 15px 0;
}

div.mokuji img {
	width: 100px;
	border: 0;
}

div.copyright {
	border-top: 1px solid #999;
	font-size: 80%;
	padding-top: 10px;
}


rt {
	font-size: 65%\9;
}

.style:not(:target) {
	rt {
		font-size: 65%;
	}
}


.i_block {
	display: inline-block;
}

/* page-link */

.page-link {
	display: flex;
}

.page-link .link-box {
	width: 32%;
	margin: 0 2% 0 0;
	box-sizing: border-box;
	background-color: #fff;
	border: 2px solid #0068b7;
	border-radius: 15px;
	color: #0068b7;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 0 25px;
	text-decoration: none;
}

.page-link .link-box:last-child {
	margin: 0;
}

.page-link .link-box.recruiting {
	border-color: #D63F08;
	color: #D63F08;
}

.page-link .link-box.event {
	border-color: #E51959;
	color: #E51959;
}

.page-link .link-box:hover {
	color: #fff;
	background-color: #0068b7;
}

.page-link .link-box.recruiting:hover {
	background-color: #D63F08;
}

.page-link .link-box.event:hover {
	background-color: #E51959;
}

.page-link .link-box .link-title {
	margin: 0;
	font-size: 18px;
	font-weight: bold;
	position: relative;
}

.page-link .link-box .link-title::after {
	content: '\025bc';
	display: inline-block;
	font-size: 0.8em;
	position: absolute;
	bottom: -1.5em;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

/* topics title */

.topics-box {
	max-width: 240px;
	width: 100%;
	margin: 50px auto 10px;
	border-radius: 50px;
	padding: 15px;
	box-sizing: border-box;
}

.topics-box.news {
	background-color: #0068b7;
}

.topics-box.recruiting {
	background-color: #D63F08;
}

.topics-box.event {
	background-color: #E51959;
}

.topics-box .topics-title {
	text-align: center;
	margin: 0;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	;
}

.topics-box .topics-title span {
	font-size: 24px;
	color: #fff;
	line-height: normal;
	position: relative;
	padding-right: 50px;
	font-weight: bold
}

.topics-box.logo-none .topics-title span {
	padding: 0;
}

.topics-box .topics-title span::after {
	content: '';
	display: inline-block;
	width: 45px;
	height: 45px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.topics-box.news .topics-title span::after {
	background-image: url(../images/icon-news.png);
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
}

.topics-box.recruiting .topics-title span::after {
	background-image: url(../images/icon-recruiting.png);
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
}

.topics-box.event .topics-title span::after {
	background-image: url(../images/icon-event.png);
	background-position: center right;
	background-repeat: no-repeat;
	background-size: contain;
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {
	.pc_contents {
		display: none;
	}

}

/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {
	.sp_contents {
		display: none;
	}

}


@media all and (-ms-high-contrast:none) {
	rt {
		font-size: 65%;
	}
}

ruby rt {
	position: relative;
	top: 0.4ex;
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {

	div.logo {
		width: 100%;
		display: table;
		line-height: 0;
		margin: 0 auto;
	}

	div.logo_th {
		width: 60%;
		display: table-cell;
		vertical-align: middle;
		text-align: right;
	}

	div.logo_td {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
	}

	div.logo_td span.number {
		background: #D63F08;
		color: #fff;
		padding: 2px 3px;
	}

	div.header_text {
		width: 100%;
		text-align: center;
	}

	div.header_text p {
		font-size: 80%;
	}

	div.pankuzu {
		background: #eee;
		padding: 8px 10px 5px 10px;
	}

	div.pankuzu p {
		font-size: 90%;
		line-height: 120%;
		margin: 0;
		padding: 0;
	}

	div.main_body {
		width: 98%;
		padding: 10px;
		margin: 15px auto;
		border: 1px solid #999;
		box-sizing: border-box;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}

	div.tbl {
		width: 100%;
		margin-top: 15px;
		line-height: 165%;
	}

	div.tbl_tr {}

	div.tbl_th {
		margin-bottom: 5px;
		font-weight: bold;
	}

	div.tbl_td {
		margin-bottom: 15px;
	}
}


/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {

	div.logo {
		width: 190px;
		display: table;
		float: left;
		line-height: 0;
	}

	div.logo_th {
		width: 130px;
		display: table-cell;
		vertical-align: middle;
	}

	div.logo_td {
		width: 60px;
		display: table-cell;
		vertical-align: middle;
	}

	div.logo_td span.number {
		background: #D63F08;
		color: #fff;
		padding: 2px 3px;
	}

	div.header_text {
		width: 460px;
		float: right;
		text-align: right;
	}

	div.header_text p {
		font-size: 80%;
	}

	div.pankuzu {
		background: #eee;
		padding: 8px 10px 5px 10px;
	}

	div.pankuzu p {
		font-size: 90%;
		line-height: 120%;
		margin: 0;
		padding: 0;
	}

	div.main_body {
		max-width: 650px;
		padding: 10px;
		margin: 15px 0;
		border: 1px solid #999;
		box-sizing: border-box;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
	}

	div.tbl {
		display: table;
		width: 100%;
		margin-top: 15px;
		line-height: 165%;
	}

	div.tbl_tr {
		display: table-row;
	}

	div.tbl_th {
		display: table-cell;
		vertical-align: baseline;
		padding-bottom: 10px;
		width: 9em;
		font-weight: bold;
	}

	div.tbl_td {
		display: table-cell;
		vertical-align: baseline;
		padding-bottom: 10px;
	}

}



/*　common　*/

.img_center {
	text-align: center;
}

.img_right {
	padding: 5px 0 5px 10px;
	float: right;
}

.img_left {
	padding: 5px 10px 5px 0;
	float: left;
}

.clear {
	clear: both;
}

.bold {
	font-weight: bold;
}

.big {
	font-size: 120%;
}

.small {
	font-size: 80%;
}

.red {
	color: #D81418;
}

.opac a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

a:hover img.opac {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}



/*　個別ページ　*/
div.main_body p,
div.main_body dd {
	text-align: justify;
	text-justify: inter-ideograph;
}




div.fumei {
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #666;
}


div.chapter0201_title {
	font-size: 100%;
	background: #C8E3BB;
	padding: 5px 15px 1px 15px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	margin: 15px 0 0 0;
	text-align: center;
	font-weight: bold;
}

.chapter0201_info {
	display: table;
	width: 100%;
	margin: 3px 0 0 0;
	font-size: 90%;
}

.chapter0201_info .tr {
	display: table-row;
}

.chapter0201_info .th {
	display: table-cell;
	background: #fce9ed;
	width: 20%;
	padding: 10px 10px 5px 10px;
	vertical-align: middle;
	text-align: center;
}

.chapter0201_info .td {
	display: table-cell;
	background: #fdf7f9;
	width: 80%;
	padding: 10px 10px 5px 10px;
}

div#chapter0201 {
	position: relative;
}


div#chapter0201 #news.section01 h2 {
	font-size: 130%;
	padding: 10px 15px;
	margin: 20px 0 0 0;
	background: #ebe7f3;
	color: #000;
	box-sizing: border-box;
}

div#chapter0201 #recruiting.section01 h2 {
	font-size: 130%;
	padding: 10px 15px;
	margin: 20px 0 0 0;
	background: #fef3cc;
	color: #000;
	box-sizing: border-box;
}

div#chapter0201 #event.section01 h2 {
	font-size: 130%;
	padding: 10px 15px;
	margin: 20px 0 0 0;
	background: #fdedec;
	color: #000;
	box-sizing: border-box;
}



div#chapter0201 .section01 h2.y_title {
	font-size: 130%;
	padding: 15px 1em 10px 1em;
	margin: 20px 0 0 0;
	background: #FFFFBF;
	color: #000;
	border-top: 0;
}

div#chapter0201 .section01 h3 {
	font-size: 110%;
	margin: 30px 0 0 0;
	color: #0068b7;
}

div#chapter0201 .section01 .blue-line {
	border: 1px solid #0081cc;
	padding: 0 10px;
}

div#chapter0201 .section01 .blue-line h3 {
	margin-top: 10px;
}


div#chapter0201 .section01_01 {
	border: 4px solid #0068b7;
	margin: 40px 0 30px 0;
}

div#chapter0201 #news .section01_01 h2 {
	font-size: 130%;
	padding: 10px 10px 5px 10px;
	margin: 0;
	background: #0068b7;
	color: #fff;
	border: 0;
	text-align: center;
}



div#chapter0201 .section01_01 h2 {
	font-size: 130%;
	padding: 10px 10px 5px 10px;
	margin: 0;
	background: #FDF59E;
	color: #000;
	border: 0;
}

div#chapter0201 .section01_01 h3 {
	font-size: 110%;
	margin: 30px 0 0 0;
	padding: 5px 10px 0 10px;
	color: #009944;
	text-align: center;
	box-sizing: border-box;
	border: 1px solid #009944;
	background: #fff;
}

div#chapter0201 .section01_01 span.mark.green {
	color: #579544;
}

div#chapter0201 .section02 h2 {
	font-size: 120%;
	padding: 10px 0;
	margin: 0;
	background: #0097b2;
	text-align: center;
	color: #fff;
}

div#chapter0201 .section02 h3 {
	font-size: 110%;
	padding: 10px 0 0 0;
	margin: 30px 0 0 0;
	border-top: 1px solid #333;
	color: #0097b2;
}


div#chapter0202 {
	position: relative;
}

div#chapter0202 .section01 h2 {
	font-size: 120%;
	padding: 10px 5px;
	box-sizing: border-box;
	margin: 0;
	background: #b9e1ed;
	color: #000;
}

div#chapter0202 .section01 h3 {
	font-size: 110%;
	padding: 10px 0 0 0;
	margin: 30px 0 0 0;
	border-top: 1px solid #333;
	color: #4040ff;
}

#chapter0201 div.bk_yellow {
	background: #fffef1;
	box-sizing: border-box;
	padding: 5px 10px 5px;
}



#chapter0201 #news.section01 span.mark {
	color: #0081cc;
}

#chapter0201 #recruiting.section01 span.mark {
	color: #D63F08;
}

#chapter0201 #event.section01 span.mark {
	color: #E51959;
}


#chapter0201 div.kakomi_blue {
	box-sizing: border-box;
	padding: 5px 10px 5px;
	background: #fff;
	border: 1px solid #0070bd;
}

#chapter0201 div.kakomi_blue h3 {
	margin-top: 10px;
}

div#chapter0201 .section01 h3.noborder {
	border: none;
}

/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {

	div#chapter02 .title .left {
		width: 100%;
		line-height: 0;
	}

	div#chapter02 .title .right {
		width: 100%;
	}

	div#chapter02 h3.title {
		font-size: 150%;
		background: #008842;
		color: #fff;
		padding: 10px 15px 5px 15px;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		margin: 0;
		text-align: center;

	}

	div#chapter02 h4.title {
		font-size: 100%;
		background: #C8E3BB;
		padding: 10px 15px 5px 15px;
		display: inline-block;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		margin: 0;
	}

	div#chapter02 p span.title {
		background: #008842;
		color: #fff;
		padding: 5px 5px 3px 5px;
		display: inline-block;
		margin-left: 5px;
		margin-right: 5px;
		font-weight: bold;
	}

	div#chapter02 div.contact {
		width: 100%;
		margin: 15px auto;
	}

	div#chapter02 div.contact .tr {}

	div#chapter02 div.contact .th {
		background: #888;
		padding: 10px 10px 5px 10px;
		color: #fff;
		font-weight: bold;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		display: inline-block;
		margin-top: 10px;
	}

	div#chapter02 div.contact .td {
		display: block;
		margin-top: 10px;
	}

}

/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {

	div#chapter02 .title .left {
		width: 70%;
		float: left;
		line-height: 0;
	}

	div#chapter02 .title .right {
		width: 28%;
		height: 98%;
		margin-top: 1%;
		margin-bottom: 1%;
		margin-right: 1%;
		float: right;
		text-align: center;
		background: #fff;
	}

	div#chapter02 h3.title {
		font-size: 150%;
		background: #008842;
		padding: 20px;
		display: inline-block;
		border-radius: 40px;
		-webkit-border-radius: 40px;
		-moz-border-radius: 40px;
		margin: 15px 0 0 0;
		color: #fff;
	}

	div#chapter02 .rubi h3.title {
		margin-top: 10px;
	}

	div#chapter02 h4.title {
		font-size: 100%;
		background: #b9e1ed;
		padding: 10px 15px 5px 15px;
		display: inline-block;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		margin: 0;
	}

	div#chapter02 p span.title {
		background: #008842;
		padding: 5px 5px 3px 5px;
		display: inline-block;
		margin: 5px;
		font-weight: bold;
		color: #fff;
	}

	div#chapter02 div.contact {
		width: 100%;
		margin: 15px auto;
		display: table;
	}

	div#chapter02 div.contact .tr {
		display: table-row;
	}

	div#chapter02 div.contact .th {
		background: #888;
		padding: 10px 1% 5px 1%;
		color: #fff;
		font-weight: bold;
		width: 28%;
		border-radius: 5px;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		display: table-cell;
		vertical-align: middle;
	}

	div#chapter02 div.contact .td {
		padding: 10px 0 5px 2%;
		width: 68%;
		display: table-cell;
		vertical-align: middle;
	}

}


div#chapter0102 .section01 h2.banpaku {
	font-size: 150%;
	margin: 20px 0 0 0;
	color: #1e50a2;
	border-top: 0;
	text-align: center;
}

table.banpaku {
	margin: 0 auto;
	line-height: 160%;
}

table.banpaku th {
	background: #1e50a2;
	color: #fff;
	padding: 10px 10px 5px 10px;
	text-align: center;
}

table.banpaku td {
	padding: 10px 10px 5px 10px;
}

table.banpaku td.month {
	background: #a9e3fb;
	text-align: center;
	border-right: 0;
}

table.banpaku td span.kaisai {
	width: 100%;
	display: block;
	background: #1e50a2;
	color: #fff;
	font-size: 150%;
	padding: 15px 15px 10px 15px;
	text-align: center;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	font-weight: bold;
	box-sizing: border-box;
}


div#chapter0301 .section01 {
	background: #E1F2FC;
	padding: 15px;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	box-sizing: border-box;
	margin: 15px auto;
}

div#chapter0301 .section01 h3 {
	font-size: 130%;
	color: #0173BC;
	margin: 15px 0 10px 0;
}


div#chapter0301 .section01 .mozuyan_present {
	width: 100%;
	position: relative;
}

div#chapter0301 .section01 .mozuyan_present span {
	width: 50px;
	position: absolute;
	left: 10px;
}

div#chapter0301 .section01 h3.present {
	background: #0173BC;
	color: #fff;
	padding: 10px 10px 5px 65px;
	margin: 15px 0 10px 0;
}


div#chapter0301 .section02 h2 {
	font-size: 110%;
	padding: 10px 10px 5px 10px;
	background: #eb613b;
	color: #fff;
	margin: 15px 0 10px 0;
	display: inline-block;
}

div#chapter0301 .section02 h3 {
	font-size: 130%;
	color: #eb613b;
	margin: 15px 0 10px 0;
}

div#chapter0301 img.tri {
	width: 10px;
}

div#chapter0301 img.qr {
	width: 120px;
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {

	div#chapter0301 .section01 dt {
		margin-top: 10px;
		font-weight: bold;
	}

	div#chapter0301 .section01 dd {
		margin-left: 1em;
	}

}

/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {

	div#chapter0301 .section01 dt {
		margin-top: 10px;
		font-weight: bold;
	}

	div#chapter0301 .section01 dd {
		margin-left: 6em;
		margin-top: -1.5em;
	}

}


div#chapter0401 h2 {
	font-size: 110%;
	padding: 10px 0;
	color: #fff;
	text-align: center;
	margin-top: 15px;
}

div#chapter0401 .section01 h2 {
	background: #D63F08;
	margin: 0;
	border-radius: 100px;
}

div#chapter0401 .section02 h2 {
	background: #0f417a;
	margin: 15px 0 0 0;
	border-radius: 50px;
}

div#chapter0401 .section02 h3 {
	text-align: center;
}

div#chapter0401 .section02 .caption-box {
	background: #f5f1d2;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 15px;
}

div#chapter0401 .section02 .caption-box p {
	margin: 5px 0 0;
}

div#chapter0401 .section02-01 {
	margin: 15px 0;
	border: 3px dotted #9fa0a0;
	border-radius: 5px;
	box-sizing: border-box;
	padding: 15px;
}

div#chapter0401 .section02-01 h3 {
	margin: 8px auto;
	padding: 10px 0;
	border-top: 2px solid #de442b;
	border-bottom: 2px solid #de442b;
	max-width: 320px;
	width: 100%;
}

div#chapter0401 .section02-01 h3 .mark {
	background: #de442b;
	color: #fff;
	border-radius: 100px;
	font-weight: bold;
	padding: 4px 6px;
	margin-right: 8px;

}

div#chapter0401 .section03 h2 {
	background: #637d40;
	margin: 15px 0 0 0;
	border-radius: 50px;
}

#chapter0401 .section03.minami h2 {
	background: #e51520;
	margin: 15px 0 0 0;
	border-radius: 50px;
}

div#chapter0401 .section04 h2 {
	background: #990000;
	border-radius: 50px;
}

div#chapter0401 .section05 {
	background: #f1f9cd;
	box-sizing: border-box;
	padding: 10px;
}

div#chapter0401 .table.next {
	margin-top: 0;
}

div#chapter0401 .th {
	border-collapse: collapse;
	border-bottom: 2px solid #666;
	padding: 15px 0;
	text-align: center;
	font-weight: bold;
}

div#chapter0401 .td {
	border-collapse: collapse;
	padding: 10px;
}

#chapter0401 .section01-01 {
	background: #e6efba;
	box-sizing: border-box;
	padding: 15px;
}

#chapter0401 .section01-01 h3 {
	margin: 10px 0;
}

#chapter0401 .section01-01 h3 .orange {
	color: #f39700;
	font-size: 130%;
}

#chapter0401 .section01-01 .section01-01-body {
	background: #fff;
	border-radius: 10px;
	border: 1px solid #000;
	padding: 10px;
	box-sizing: border-box;
	margin-bottom: 10px;
}

#chapter0401 .section01-01 .section01-01-body p .circle {
	background: #4ab134;
	border-radius: 100px;
	color: #fff;
	font-weight: bold;
	padding: 4px 10px;
	margin-right: 8px;
}

#chapter0401 .section01-01 .section01-01-body p .green {
	color: #4ab134;
}

#chapter0401 .section01-02 .section01-02-body {
	background: #f4f4f4;
	box-sizing: border-box;
	padding: 15px;
	margin: 20px 0 0 0;
}

#chapter0401 .section01-02 .section01-02-body h3 {
	display: inline-block;
	padding: 5px 10px;
	border: 2px solid #5fba4b;
	background: #e2edba;
	box-sizing: border-box;
	border-radius: 8px;
	margin-bottom: 0;
}

#chapter0401 .section01-02 .section01-02-body .qn {
	color: #4ab134;
}

#chapter0401 .section01-02 .section01-02-body .qn .bk-green {
	background: #4ab134;
	color: #fff;
	border-radius: 100px;
	font-weight: bold;
	padding: 4px 10px;
	margin-right: 8px;
}

div#chapter0401 .table.next {
	margin-top: 0;
}

div#chapter0401 .table.next .left {
	border-top: 0;
}

div#chapter0401 .table.next .right {
	border-top: 0;
}

div#chapter0401 ul {
	margin: 15px 0 5px 0;
	padding: 0 0 0 1em;
	list-style: none;
}

div#chapter0401 ul li {
	margin: 5 0 0 10px;
	padding: 0;
}

div#chapter0401 ul li {
	margin: 5 0 0 10px;
	padding: 0;
}

div#chapter0401 .section01 ul li {
	list-style-image: url(../images/tri_orange.png);
}

div#chapter0401 .section02 ul li {
	list-style-image: url(../images/tri_blue.png);
}

div#chapter0401 .section03 ul li {
	list-style-image: url(../images/tri_green.png);
}

div#chapter0401 .section03.minami ul li {
	list-style-image: url(../images/tri_red.png);
}

div#chapter0401 .section04 ul li {
	list-style-image: url(../images/tri_purplu.png);
}

div#chapter0401 dl {}

div#chapter0401 dt {
	margin-top: 10px;
	font-weight: bold;
}

div#chapter0401 dt.ans {
	margin-left: 10px;
	color: #4ab134;
}

div#chapter0401 dd {
	margin-left: 2.5em;
	margin-top: -1.4em;
}


div#chapter0401 .long-table dd {
	margin-left: 12em;
}

.rubi div#chapter0401 dd {
	margin-top: -2.0em;
}

span.waribiki {
	color: #cc0000;
	font-weight: bold;
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {

	div#chapter04 .title .left {
		width: 100%;
		line-height: 0;
	}

	div#chapter04 .title .right {
		width: 100%;
	}

	div#chapter04 h3.title {
		font-size: 150%;
		background: #FDDE43;
		padding: 10px 15px 5px 15px;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		margin: 0;
		text-align: center;
	}

	div#chapter0401 .table {
		width: 100%;
		box-sizing: border-box;
		margin-top: 4px;
	}

	div#chapter0401 .table .left {
		width: 100%;
		box-sizing: border-box;
		border: 2px solid #666;
		border-collapse: collapse;
	}

	div#chapter0401 .table .right {
		width: 100%;
		box-sizing: border-box;
		border: 2px solid #666;
		border-top: 0;
		border-collapse: collapse;
	}

	div#chapter0401 .section04 dt {
		margin-top: 10px;
		font-weight: bold;
	}

	div#chapter0401 .section04 dd {
		margin-left: 1em;
		margin-top: 0;
	}

}

/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {

	div#chapter04 .title .left {
		width: 70%;
		float: left;
		line-height: 0;
	}

	div#chapter04 .title .right {
		width: 28%;
		height: 98%;
		margin-top: 1%;
		margin-bottom: 1%;
		margin-right: 1%;
		float: right;
		text-align: center;
		background: #fff;
	}

	div#chapter04 h3.title {
		font-size: 105%;
		background: #FDDE43;
		padding: 20px 15px;
		display: inline-block;
		border-radius: 40px;
		-webkit-border-radius: 40px;
		-moz-border-radius: 40px;
		margin: 25px 0 0 0;
	}

	div#chapter0401 .table {
		width: 100%;
		box-sizing: border-box;
		margin-top: 4px;
		display: table;
	}

	div#chapter0401 .table .left {
		width: 55%;
		box-sizing: border-box;
		border: 2px solid #666;
		border-collapse: collapse;
		display: table-cell;
	}

	div#chapter0401 .table .right {
		width: 45%;
		box-sizing: border-box;
		border: 2px solid #666;
		border-left: 0;
		border-collapse: collapse;
		display: table-cell;
	}

	div#chapter0401 .table.first .left {
		border-bottom: 1px dotted #666;
	}

	div#chapter0401 .table.first .right {
		border-bottom: 1px dotted #666;
	}

	div#chapter0401 .table.second .left {
		border-top: 1px dotted #666;
	}

	div#chapter0401 .table.second .right {
		border-top: 1px dotted #666;
	}

	div#chapter0401 .section04 dt {
		margin-top: 10px;
		font-weight: bold;
	}

	div#chapter0401 .section04 dd {
		margin-left: 7em;
		margin-top: -1.5em;
	}

	.rubi div#chapter0401 .section04 dd {
		margin-top: -2.0em;
	}

}

@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) and (min-width: 741px) {

	.rubi div#chapter0401 dt {
		margin-top: 1.5em;
	}

	.rubi div#chapter0401 dd {
		margin-top: -2.4em;
	}

	.rubi div#chapter0401 .section04 dd {
		margin-top: -2.4em;
	}

	.rubi div#chapter0401 dd.hiragana {
		margin-top: -1.5em;
	}

}


div#chapter0401 span.number {
	font-weight: bold;
	margin-right: 1em;
}


div#chapter0401 span.number.space {
	margin-right: 1.5em;
}

span.hituyo {
	display: inline-blick;
	padding: 2px 5px 0 5px;
	background: #000;
	color: #fff;
}

div.rubi span.hituyo {
	padding-top: 10px;
}



div#chapter0302 .section_body {
	width: 94%;
	margin: 0 auto;
}

div#chapter0302 .section01_01 {
	background: #cfebfb;
	box-sizing: border-box;
	padding: 10px;
	border-radius: 8px 8px 0 0;
}

div#chapter0302 .section02_01 {
	background: #cfebfb;
	box-sizing: border-box;
	padding: 10px;
	border-radius: 8px 8px 0 0;
}

div#chapter0302 .section03_01 {
	background: #e2e4f3;
	box-sizing: border-box;
	padding: 10px;
	border-radius: 8px 8px 0 0;
}

div#chapter0302 .section01_01 .sub_title {
	font-weight: bold;
	margin-bottom: 0;
}

div#chapter0302 .section02_01 .sub_title {
	font-weight: bold;
	margin-bottom: 0;
}


div#chapter0302 .section01_01 h2 {
	margin: 0;
}

div#chapter0302 .dotline {
	border-top: 4px dotted #7ecef4;
	margin: 10px 0;
}

div#chapter0302 .section01_02 .blue {
	color: #0081cc;
}

div#chapter0302 .section01_02 h3.title {
	background-color: #0081cc;
	text-align: center;
	padding: 7px 0;
	color: #fff;
}

div#chapter0302 .section01_02 table th {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 8px;
	box-sizing: border-box;
	background: #fcfbf5;
	border-left: 1px solid #000;
	font-size: 90%;
	min-width: 11em;
}

div#chapter0302 .section01_02 table td {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 8px;
	box-sizing: border-box;
	font-size: 90%;
}

div#chapter0302 .section01_02 table th.tbl_thy {
	background: #fcfbf5;
}

div#chapter0302 .section01_02 table {
	border-collapse: collapse;
}

div#chapter0302 .section01_03 {
	background: #f6f6f6;
	box-sizing: border-box;
	padding: 10px;
	border-radius: 10px;
	margin-top: 15px;
}

div#chapter0302 .section01_03 h3 {
	color: #0081cc;
}

div#chapter0302 .section01_03 h3 span.q {
	color: #fff;
	background: #0081cc;
	padding: 3px 8px;
	border-radius: 100px;
	margin-right: 10px;
}

div#chapter0302 .section01_03 p span.a {
	font-weight: bold;
	color: #0081cc;
	margin-right: 10px;
}

div#chapter0302 .section02_01 h2 {
	color: #0081cc;
	text-align: center;
	margin: 8px 0;
}

div#chapter0302 .section02_01 p {
	text-align: center;
	margin: 8px 0;
}

div#chapter0302 .section02 table td {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 8px;
	box-sizing: border-box;
}

div#chapter0302 .section02 table td.border_left {
	border-left: 1px solid #000;
}

div#chapter0302 .section02 table th {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 8px;
	box-sizing: border-box;
	background: #fcfbf5;
	border-left: 1px solid #000;
	font-size: 90%;
}

div#chapter0302 .section02 table td {
	font-size: 90%;
}

div#chapter0302 .section02 table th.tbl_thy {
	background: #fcfbf5;
}

div#chapter0302 .section02 table {
	border-collapse: collapse;
	margin: 20px 0;
	text-align: center;
}

div#chapter0302 p .allow img {
	width: 12px;
	margin-right: 3px;
}

div#chapter0302 .section03_01 h2 {
	font-size: 120%;
	text-align: center;
}

div#chapter0302 .section03_01 h2 .purple {
	color: #7d4698;
	font-size: 150%;
}

div#chapter0302 .section03 .blue {
	color: #0081cc;
	margin-right: 3px;
}

/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {
	div#chapter0302 .section01_01 h2 span.fukuro {
		text-shadow: 1px 0px 0px #0081cc, 0px 1px 0px #0081cc, -1px 0px 0px #0081cc, 0px -1px 0px #0081cc;
		color: #fff;
		font-size: 100%;
	}

	div#chapter0302 .section01_01 h2 span.main {
		color: #0081cc;
		font-size: 120%;
	}

	div#chapter0302 .section03 table {
		font-size: 95%;
		border-collapse: collapse;
	}

	div#chapter0302 .section03 table td {
		padding: 8px;
		box-sizing: border-box;
		font-size: 65%;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
	}

	div#chapter0302 .section03 table td.border_left,
	div#chapter0302 .section03 table th.border_left {
		border-left: 1px solid #000;
	}

	div#chapter0302 .section03 table td.border_top {
		border-top: 1px solid #000;
	}

	div#chapter0302 .section03 table th {
		padding: 8px;
		box-sizing: border-box;
		background: #fcfbf5;
		font-size: 80%;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		min-width: 5em;
	}

	div#chapter0302 .section03 table th.cr01 {
		background: #e1efd5;
	}

	div#chapter0302 .section03 table th.cr02 {
		background: #e9d5b6;
	}

	div#chapter0302 .section03 table th.cr03 {
		background: #fffbc7;
	}

	div#chapter0302 .section03 table th.cr04 {
		background: #fadce2;
	}

	#chapter0102 .section02 {
		border-top: 1px solid;
	}

	#chapter0202 div.bk_yellow {
		background: #fffef1;
		box-sizing: border-box;
		padding: 5px 10px 5px;
	}

	#chapter0202 div.bk_yellow h3 {
		border-top: none;
	}

	div#chapter0302 .section02 {
		background: #ffffcc;
		border: 1px solid #D96D00;
		padding: 10px 15px;
		border-radius: 15px;
	}

	div#chapter0302 .section02 h2 {
		font-size: 120%;
	}

	div#chapter0302 .section03 {
		background: #ffebcd;
		padding: 10px 15px;
		margin: 10px 0 0 0;
	}

	div#chapter0302 .section03 h2 {
		font-size: 130%;
		color: #006EAD;
		text-align: center;
		margin-top: 15px;
	}

	div#chapter0302 .section04 {
		padding: 5px 15px;
		margin: 10px 0 0 0;
	}


	div#chapter0302 .section02 .kenkatu10 .left {
		float: left;
		width: 10%;
	}

	div#chapter0302 .section02 .kenkatu10 .right {
		float: right;
		width: 88%;
	}

	div#chapter0302 .section02 .kenkatu10 .right p {
		font-size: 80%;
		margin-top: 0;
		padding: 0 5px 0 5px;
	}

	div#chapter0302 .section02 .kenkatubox01 {
		background: #fff;
		margin-bottom: 15px;
		box-sizing: border-box;
		padding: 0 15px 15px;
		border-top: 15px solid #bcd89a;
	}

	div#chapter0302 .section02 .kenkatubox01 h2 .gr {
		font-size: 200%;
		color: #008542;
	}

	div#chapter0302 .section02 p .green {
		color: #008542;
		font-weight: bold;
		font-size: 140%;
	}


	div#chapter0302 .section02 .kenkatubox01 h2 .red {
		color: #c0443d;
	}

	div#chapter0302 .section03 {
		background: #ffebcd;
		padding: 10px 15px;
		margin: 10px 0 0 0;
	}

	div#chapter0302 .section03 h2 {
		font-size: 130%;
		color: #008cd6;
		text-align: center;
		margin-top: 15px;
	}


}

/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {

	div#chapter0302 .section01_01 h2 span.fukuro {
		text-shadow: 1px 0px 0px #0081cc, 0px 1px 0px #0081cc, -1px 0px 0px #0081cc, 0px -1px 0px #0081cc;
		color: #fff;
		font-size: 120%;
	}

	div#chapter0302 .section01_01 h2 span.main {
		color: #0081cc;
		font-size: 140%;
	}

	div#chapter0302 .section03 table {
		font-size: 95%;
		border-collapse: collapse;
	}

	div#chapter0302 .section03 table td {
		padding: 8px;
		box-sizing: border-box;
		font-size: 85%;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
	}

	div#chapter0302 .section03 table td.border_left,
	div#chapter0302 .section03 table th.border_left {
		border-left: 1px solid #000;
	}

	div#chapter0302 .section03 table td.border_top {
		border-top: 1px solid #000;
	}

	div#chapter0302 .section03 table th {
		padding: 8px;
		box-sizing: border-box;
		background: #fcfbf5;
		font-size: 90%;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		min-width: 5em;
	}

	div#chapter0302 .section03 table th.cr01 {
		background: #e1efd5;
	}

	div#chapter0302 .section03 table th.cr02 {
		background: #e9d5b6;
	}

	div#chapter0302 .section03 table th.cr03 {
		background: #fffbc7;
	}

	div#chapter0302 .section03 table th.cr04 {
		background: #fadce2;
	}

	div#chapter0102 .section02 {
		border-top: 1px solid;
	}


	#chapter0202 div.bk_yellow {
		background: #fffef1;
		box-sizing: border-box;
		padding: 5px 10px 5px;
	}

	#chapter0202 div.bk_yellow h3 {
		border-top: none;
	}

	div#chapter0302 .section02 {
		background: #ffffcc;
		border: 1px solid #D96D00;
		padding: 10px 15px;
		border-radius: 15px;
	}

	div#chapter0302 .section02 p .green {
		color: #008542;
		font-weight: bold;
		font-size: 140%;
	}


	div#chapter0302 .section02 h2 {
		color: #000000;
		margin: 0 0 10px;
		font-size: 110%;
		line-height: 1.3;
		position: relative;
		top: -20px;
	}

	div#chapter0302 .section02 .kenkatu10 {
		width: 100%;
	}

	div#chapter0302 .section02 .kenkatu10 .left {
		float: left;
		width: 10%;
	}

	div#chapter0302 .section02 .kenkatu10 .right {
		float: right;
		width: 88%;
	}

	div#chapter0302 .section02 .kenkatu10 .right p {
		font-size: 80%;
		margin-top: 0;
		padding: 0 5px 0 5px;
	}

	div#chapter0302 .section02 .kenkatu {
		width: 100%;
		display: table;
		border-collapse: separate;
		border-spacing: 10px 0;
		margin-bottom: 12px;
	}

	div#chapter0302 .section02 .kenkatubox01 {
		width: 50%;
		display: table-cell;
		background: #fff;
		margin-bottom: 15px;
		box-sizing: border-box;
		padding: 0 15px 15px;
		border-top: 15px solid #bcd89a;
	}

	div#chapter0302 .section02 .kenkatubox01 h2 .gr {
		font-size: 280%;
		color: #008542;
		text-shadow: 2px 2px 0 #FFFFFF,
			-2px 2px 0 #FFFFFF,
			2px -2px 0 #FFFFFF,
			-2px -2px 0 #FFFFFF;
	}

	div#chapter0302 .section02 .kenkatubox01 h2 .red {
		color: #c0443d;
	}

	div#chapter0302 .section03 {
		background: #ffebcd;
		padding: 10px 15px;
		margin: 10px 0 0 0;
	}

	div#chapter0302 .section03 h2 {
		font-size: 130%;
		color: #008cd6;
		text-align: center;
		margin-top: 15px;
	}

	div#chapter0302 .section04 {
		padding: 5px 15px;
		margin: 10px 0 0 0;
	}

}



/* cts0101 */

div#chapter0101 p,
div#chapter0101 h2,
div#chapter0101 h3,
div#chapter0101 h4 {
	margin: 0
}

div#chapter0101 .img-wrap {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}

div#chapter0101 .img-wrap .img {
	margin: 0;
	width: 100%;
}

div#chapter0101 .img-wrap .img:first-child {
	margin-right: 40px;
}

div#chapter0101 .fukidashi {
	padding: 5px 10px;
	margin-bottom: 9px;
	border-radius: 7px;
	background-color: var(--banpaku-red);
	display: inline-block;
	position: relative;
}

div#chapter0101 .fukidashi::after {
	content: '';
	display: inline-block;
	height: calc(15px / 2 * tan(60deg));
	width: 15px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: var(--banpaku-red);
	position: absolute;
	bottom: -12px;
}

div#chapter0101 .fukidashi p {
	color: #fff;
	font-weight: bold;
	line-height: normal;
}

div#chapter0101 .main-ttl .ttl {
	padding: 0;
}

div#chapter0101 .main-ttl .ttl-caption {
	font-size: 80%;
	text-align: right;
	line-height: normal;
	margin-bottom: 20px;
}

div#chapter0101 .main-ttl .summary-ttl {
	margin-bottom: 5px;
}

div#chapter0101 .main-ttl .summary-text span {
	color: var(--banpaku-blue);
	font-weight: bold;
}

div#chapter0101 .main-ttl .summary-caution {
	font-size: 80%;
	text-align: right;
}

div#chapter0101 .section01,
div#chapter0101 .section03,
div#chapter0101 .section05,
div#chapter0101 .section07 {
	margin: 30px 0;
}

div#chapter0101 .section01 .ttl {
	font-size: 200%;
	margin-bottom: 20px;
}

div#chapter0101 .section01 .ttl span {
	color: var(--banpaku-blue);
	-webkit-text-stroke: 5px #fff;
	paint-order: stroke fill;
	letter-spacing: 2px;
	text-align: center;
	background-color: var(--banpaku-red);
	padding: 3px 7px;
	display: inline-block;
	line-height: normal;
}

div#chapter0101 .section01 .ttl .small {
	font-size: 80%;
	margin-bottom: 7px;
}

div#chapter0101 .section01 .flow-box,
div#chapter0101 .section01 .event-wrap {
	margin-bottom: 50px;
	border: 2px solid var(--banpaku-blue);
	border-radius: 30px;
	position: relative;
	box-sizing: border-box;
}

div#chapter0101 .section01 .flow-box:last-child {
	margin-bottom: 0;
}

div#chapter0101 .section01 .flow-box::after {
	content: '';
	display: inline-block;
	height: calc(50px / 2);
	width: 50px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: var(--banpaku-red);
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

div#chapter0101 .section01 .flow-box:last-child::after {
	display: none;
}

div#chapter0101 .section01 .flow-box .flow-ttl-wrap {
	background-color: var(--banpaku-blue);
	border: 2px solid var(--banpaku-blue);
	border-radius: 24px 24px 0 0;
	padding: 10px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

div#chapter0101 .section01 .flow-box .flow-ttl-wrap .flow-number {
	background-color: #fff;
	min-width: 50px;
	min-height: 50px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
}

div#chapter0101 .section01 .flow-box .flow-ttl-wrap .flow-number span {
	color: var(--banpaku-red);
	font-weight: bold;
	font-size: 26px;
	line-height: 1;
}

div#chapter0101 .section01 .flow-box .flow-ttl-wrap .flow-ttl {
	color: #fff;
}

div#chapter0101 .section01 .flow-box .flow-inner {
	padding: 15px;
}

div#chapter0101 .section01 .flow-box .register-ttl {
	margin: 15px 0 7px;
	padding: 3px 7px;
	border: 2px solid var(--banpaku-blue);
	color: var(--banpaku-blue);
	font-weight: bold;
	display: inline-block;
	font-size: 110%;
}

div#chapter0101 .section01 .flow-box .register-box {
	background-color: #e5f4f6;
	padding: 10px;
	border-radius: 15px;
	margin-bottom: 30px;
	position: relative;
}

div#chapter0101 .section01 .flow-box .register-box:last-child {
	margin-bottom: 0;
}

div#chapter0101 .section01 .flow-box .register-box::after {
	content: '';
	display: inline-block;
	height: calc(30px / 2);
	width: 30px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: var(--banpaku-blue);
	position: absolute;
	bottom: -25px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

div#chapter0101 .section01 .flow-box .register-box:last-child::after {
	display: none;
}

div#chapter0101 .section01 .flow-box .register-flow-ttl {
	font-size: 110%;
	padding-bottom: 4px;
	margin-bottom: 4px;
	border-bottom: 4px dotted var(--banpaku-blue);
}

div#chapter0101 .section01 .flow-box .register-flow-ttl span,
div#chapter0101 .section01 .flow-box .img-wrap .pic_caption,
div#chapter0101 .section01 .flow-box .img-wrap .pic_caption a {
	color: var(--banpaku-blue);
}

div#chapter0101 .section01 .flow-box .present-wrap {
	background-color: #fffac1;
	padding: 10px;
	border-radius: 15px;
}

div#chapter0101 .section01 .flow-box .present-ttl,
div#chapter0101 .section01 .flow-box .present-caution {
	color: #f05022;
	-webkit-text-stroke: 5px #fff;
	paint-order: stroke fill;
	letter-spacing: 2px;
}


div#chapter0101 .section01 .flow-box .present-ttl {
	font-weight: bold;
	text-align: center;
	font-size: 120%;
	margin-bottom: 10px;
}

div#chapter0101 .section01 .flow-box .present-caution {
	font-weight: bold;
	margin-top: 1em;
}

div#chapter0101 .section01 .arrow {
	margin: 12.5px auto;
	max-width: 80px;
	width: 100%;
}

div#chapter0101 .section01 .event-wrap {
	padding: 10px;
	margin-bottom: 20px;
}

div#chapter0101 .section01 .event-wrap .event-ttl {
	color: var(--banpaku-red);
	font-size: 120%;
}

div#chapter0101 .section01 .event-table {
	border-collapse: collapse;
	width: 98%;
	margin: 10px auto;
}

div#chapter0101 .section01 .event-table th,
div#chapter0101 .section01 .event-table td {
	padding: 7px;
	border: 1px solid #000;
}

div#chapter0101 .section01 .event-table th {
	background-color: var(--banpaku-blue);
	color: #fff;
	min-width: 8em;
}

div#chapter0101 .section01 .event-table th .fukidashi {
	background-color: #fff;
}

div#chapter0101 .section01 .event-table th .fukidashi::after {
	background-color: #fff;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

div#chapter0101 .section01 .event-table th .fukidashi p {
	color: var(--banpaku-blue);
	font-size: 90%;
}

div#chapter0101 .section01 .event-table td span.bold {
	color: var(--banpaku-red);
}

div#chapter0101 .section01 .event-table td span.announce {
	background-color: #fcd2c0;
	padding: 3px 7px;
	display: inline-block;
	margin-top: 3px;
}

div#chapter0101 .section01 .qr-wrap .pic_caption,
div#chapter0101 .section01 .qr-wrap .pic_caption a {
	color: var(--banpaku-red);
}

div#chapter0101 .section01 .reservation {
	background-color: var(--banpaku-red);
	padding: 10px 20px;
	border-radius: 20px;
	color: #fff;
	margin: 30px 0 0;
}

div#chapter0101 .section02 {
	padding: 10px;
	background-color: #fff0aa;
}

div#chapter0101 .section02 .ttl {
	color: var(--banpaku-red);
	line-height: normal;
	margin-bottom: 15px;
}

div#chapter0101 .section02 .mark {
	color: var(--banpaku-red);
}

div#chapter0101 .section02 .img-mozu {
	max-width: 80px;
	width: 20%;
	margin: 0 auto;
}

div#chapter0101 .section03 .ttl-wrap {
	background: linear-gradient(145deg, rgba(65, 176, 185, 1) 0%, rgba(26, 108, 181, 1) 100%);
	padding: 30px 20px;
}

div#chapter0101 .section03 .ttl-wrap .sub-ttl {
	margin-bottom: 7px;
	color: #fff;
	font-weight: bold;
	text-align: center;
}

div#chapter0101 .section03 .ttl-wrap .sub-ttl span {
	padding: 0 1em;
	position: relative;
	font-size: 150%;
}

div#chapter0101 .section03 .ttl-wrap .sub-ttl span::before,
div#chapter0101 .section03 .ttl-wrap .sub-ttl span::after {
	content: '';
	display: inline-block;
	width: 2px;
	height: 1em;
	background-color: #fff;
	position: absolute;
	top: 50%;
}

div#chapter0101 .section03 .ttl-wrap .sub-ttl span::before {
	left: 0;
	transform: rotate(-45deg) translateY(-50%);
	-webkit-transform: rotate(-45deg) translateY(-50%);
}

div#chapter0101 .section03 .ttl-wrap .sub-ttl span::after {
	right: 0;
	transform: rotate(45deg) translateY(-50%);
	-webkit-transform: rotate(45deg) translateY(-50%);
}

div#chapter0101 .section03 .ttl-wrap .ttl span {
	background-color: var(--banpaku-red);
	padding: 7px;
	line-height: 1;
	color: #fff;
	margin-top: 7px;
	display: inline-block;
}

div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(1) {
	font-size: 150%;
}

div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(2) {
	font-size: 100%;
}

div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(3) {
	font-size: 200%;
}

div#chapter0101 .section03 .lead {
	margin: 15px 0;
}

div#chapter0101 .section04 {
	background-image: url(../images/cts101_p101.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 15px;
}

div#chapter0101 .section04 .inner {
	background-color: #fff;
	padding: 10px;
}

div#chapter0101 .section04 .ttl {
	background-color: #fffce0;
	text-align: center;
	padding: 10px;
	border-radius: 30px;
	box-shadow: 3px 3px 3px rgb(0 0 0 / 30%);
	margin-bottom: 15px;
}

div#chapter0101 .section04 .list-ttl p {
	font-weight: bold;
	color: #905645;
	text-align: center;
	font-size: 110%;
}

div#chapter0101 .section04 .list-ttl h4 {
	text-align: center;
	margin-top: 7px;
}

div#chapter0101 .section04 .list-ttl h4 span {
	font-size: 180%;
	background: linear-gradient(transparent 70%, #fbc3b3 70%);
}

div#chapter0101 .section04 .ring-list {
	list-style-type: none;
}

div#chapter0101 .section04 .ring-list li {
	position: relative;
}

div#chapter0101 .section04 .ring-list li::before {
	content: '';
	display: inline-block;
	width: 0.7em;
	height: 0.7em;
	border-radius: 50%;
	background-color: #905645;
	position: absolute;
	top: 8px;
	left: -1.1em;
}

div#chapter0101 .section04 .pic_caption {
	font-size: 80%;
	text-align: center;
}

div#chapter0101 .section04 .img-wrap .img {
	max-height: 151px;
	height: 100%;
	width: auto;
}

div#chapter0101 .section05 {
	background: linear-gradient(90deg, rgba(65, 176, 185, 1) 0%, rgba(26, 108, 181, 1) 100%);
	padding: 3px;
	border-radius: 30px;
}

div#chapter0101 .section05 .access-inner {
	background-color: #fff;
	padding: 10px;
	border-radius: 27px;
}

div#chapter0101 .section05 h2.ttl {
	background: linear-gradient(90deg, rgba(65, 176, 185, 1) 0%, rgba(26, 108, 181, 1) 100%);
	text-align: center;
	padding: 10px;
	border-radius: 30px;
	margin-bottom: 15px;
	color: #fff;
}

div#chapter0101 .section05 .line {
	width: 100%;
	height: 2px;
	margin: 15px auto 20px;
	background: linear-gradient(90deg, rgba(65, 176, 185, 1) 0%, rgba(26, 108, 181, 1) 100%);
	position: relative;
}

div#chapter0101 .section05 .line::before,
div#chapter0101 .section05 .line::after {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

div#chapter0101 .section05 .line::before {
	background-color: #41b0b9;
	left: 0;
}

div#chapter0101 .section05 .line::after {
	background-color: #1a6cb5;
	right: 0;
}

div#chapter0101 .section05 .access-box {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 2px dotted #78787b;
}

div#chapter0101 .section05 .access-box:last-child {
	padding-bottom: 0;
	border: none;
}

div#chapter0101 .section05 .access-ttl {
	display: flex;
	align-items: center;
}

div#chapter0101 .section05 .access-ttl .img {
	margin-right: 15px;
}

div#chapter0101 .section05 .access-ttl h3 {
	color: var(--banpaku-blue);
	line-height: normal;
}

div#chapter0101 .section05 .access-ttl h3 span {
	font-size: 80%;
}

div#chapter0101 .section05 .access-text .under {
	background: linear-gradient(transparent 70%, #bfe7fa 70%);
}

div#chapter0101 .section05 .access-text .access-caution {
	color: var(--banpaku-red);
}

div#chapter0101 .section05 ul {
	padding-left: 1em;
	list-style: none;
	margin-bottom: 0;
}

div#chapter0101 .section05 ul li {
	position: relative;
}

div#chapter0101 .section05 ul li::before {
	content: '・';
	display: inline-block;
	color: var(--banpaku-blue);
	position: absolute;
	left: -1em;
	top: 0;
}

div#chapter0101 .section05 .access-box .etc {
	font-size: 120%;
	font-weight: bold;
	color: var(--banpaku-blue);
	text-align: right;
}

div#chapter0101 .section05 .access-info {
	background-color: #def3fc;
	border-radius: 20px;
	padding: 10px;
}

div#chapter0101 .section05 .access-info .ttl {
	color: var(--banpaku-blue);
}

div#chapter0101 .section06 {
	border: 3px solid #d81418;
	border-radius: 30px;
}

div#chapter0101 .section06 .ttl {
	background-color: #d81418;
	border-radius: 24px 24px 0 0;
	padding: 5px 10px 10px;
	color: #fff;
	text-align: center;
	line-height: normal;
	font-size: 200%;
}

div#chapter0101 .section06 .ttl span {
	font-size: 70%;
}

div#chapter0101 .section06 .app-under {
	padding: 15px;
}

div#chapter0101 .section06 .app-wrap {
	display: flex;
	flex-wrap: wrap;
}

div#chapter0101 .section06 .app-wrap .app-box {
	text-align: center;
	display: flex;
	flex-direction: column;
}

div#chapter0101 .section06 .app-wrap .app-box h3 {
	color: var(--banpaku-blue);
	line-height: normal;
}

div#chapter0101 .section06 .app-wrap .app-box h3 span {
	color: #000;
	font-size: 90%;
}

div#chapter0101 .section06 .app-wrap .app-box .img {
	max-width: 120px;
	width: 100%;
	margin: 0 auto;
	flex-grow: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

div#chapter0101 .section06 .app-wrap .app-box:last-child .img {
	max-width: 145px;
}

div#chapter0101 .section06 .fukidashi {
	margin: 15px 0 30px auto;
	max-width: 320px;
	display: block;
}

div#chapter0101 .section06 .fukidashi::after {
	bottom: unset;
	top: -12px;
	right: 5em;
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

div#chapter0101 .section07 .ttl {
	text-align: center;
	position: relative;
	z-index: 2;
}

div#chapter0101 .section07 .ttl span {
	color: var(--banpaku-red);
	background-color: #fff;
	line-height: 1;
	padding: 3px 1em;
	display: inline-block;
}

div#chapter0101 .section07 .ttl::before {
	content: '';
	display: inline-block;
	max-width: 650px;
	width: 100%;
	height: 6px;
	background-image: url(../images/cts101_p100.png);
	background-position: left center;
	background-repeat: repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	z-index: -1;
}

div#chapter0101 .section07 ul {
	list-style: none;
	padding-left: 0;
}

div#chapter0101 .section07 .inner-list {
	margin: 0 0 15px;
}

div#chapter0101 .section07 li {
	position: relative;
	padding-left: 1em;
}

div#chapter0101 .section07 li::before {
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
}

div#chapter0101 .section07 .request-ttl,
div#chapter0101 .section07 .request-ttl::before {
	color: var(--banpaku-red);
}

div#chapter0101 .section07 .request-ttl::before {
	content: '\025cb';
}

div#chapter0101 .section07 .inner-list li,
div#chapter0101 .section07 .pic_caption {
	color: #000;
}

div#chapter0101 .section07 .inner-list li::before {
	content: '・';
}

div#chapter0101 .section07 .request-ttl:last-child {
	background-color: #e9e9e9;
	padding: 10px 10px 10px 1.8em;
	border-radius: 15px;
}

div#chapter0101 .section07 .request-ttl:last-child::before {
	left: 0.7em;
	top: 10px;
}

div#chapter0101 .section08 {
	background-color: var(--banpaku-red);
	color: #fff;
	box-sizing: border-box;
	padding: 15px;
}

div#chapter0101 .section08 h2 {
	font-size: 110%;
	margin: 10px 0 20px 0;
	color: #fff;
}


/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {
	div#chapter0101 .section06 .app-wrap .app-box {
		width: 32%;
		margin-right: 2%;
		margin-bottom: 2%;
	}

	div#chapter0101 .section06 .app-wrap .app-box:nth-of-type(3n) {
		margin-right: 0;
	}

	div#chapter0101 .section06 .app-wrap .app-box:nth-of-type(n+4) {
		margin-bottom: 0;
	}
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {
	div#chapter0101 .section01 .ttl {
		font-size: 125%;
	}

	div#chapter0101 .section01 .ttl span {
		-webkit-text-stroke: 3px #fff;
	}

	div#chapter0101 .section01 .flow-box .present-wrap {
		padding: 9px;
	}

	div#chapter0101 .section01 .event-table th {
		min-width: 4em;
	}

	div#chapter0101 .section03 .ttl-wrap {
		padding: 20px 10px;
	}

	div#chapter0101 .section03 .ttl-wrap .sub-ttl span {
		padding: 0 10px;
		font-size: 110%;
	}

	div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(1) {
		font-size: 100%;
	}

	div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(2) {
		font-size: 90%;
	}

	div#chapter0101 .section03 .ttl-wrap .ttl span:nth-of-type(3) {
		font-size: 116%;
	}

	div#chapter0101 .section04 {
		padding: 7px;
	}

	div#chapter0101 .section04 .ttl {
		padding: 7px;
		border-radius: 54px;
	}

	div#chapter0101 .section04 .list-ttl h4 {
		font-size: 90%;
	}

	div#chapter0101 .section04 .ring-list {
		padding-left: 1em;
	}

	div#chapter0101 .section04 .img-wrap .img:first-child {
		margin-right: 10px;
	}

	div#chapter0101 .section05 .access-inner {
		padding: 7px;
	}

	div#chapter0101 .section05 .access-ttl .img {
		margin-right: 10px;
	}

	div#chapter0101 .section06 .app-wrap .app-box {
		width: 48%;
		margin-right: 4%;
		margin-bottom: 4%;
	}

	div#chapter0101 .section06 .app-wrap .app-box:nth-of-type(2n) {
		margin-right: 0;
	}

	div#chapter0101 .section06 .app-wrap .app-box:nth-of-type(n+5) {
		margin-bottom: 0;
	}

	div#chapter0101 .section06 .fukidashi::after {
		right: 3em;
	}

	div#chapter0101 .section07 .ttl span {
		line-height: 1.2;
		padding: 3px 0.5em;
	}

}




/* cts0103 */

div#chapter0103 p,
div#chapter0103 h2,
div#chapter0103 h3,
div#chapter0103 h4 {
	margin: 0
}

div#chapter0103 .img-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
}

div#chapter0103 .img-wrap .img {
	margin: 0;
	width: 100%;
}

div#chapter0103 .img-wrap.img-height .img {
	height: 100%;
	width: auto;
}

div#chapter0103 .img-wrap .img:nth-of-type(2) {
	margin-left: 20px;
}

div#chapter0103 h2 {
	font-size: 180%;
	color: var(--banpaku-blue);
	text-align: center;
}

div#chapter0103 h2 span {
	color: var(--banpaku-red);
}

div#chapter0103 .section01 .pdf-btn {
	margin: 5px auto 10px;
	max-width: 140px;
	border: 2px solid var(--banpaku-red);
	border-radius: 20px;
	background: var(--banpaku-red);
	padding: 5px;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

div#chapter0103 .section01 .pdf-btn::after {
	content: '\025b6';
	display: inline-block;
	font-size: 80%;
	position: absolute;
	right: 7px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	color: #fff;
}

div#chapter0103 .section01 .pdf-btn span {
	color: #fff;
	font-weight: bold;
}

div#chapter0103 .section01 .pdf-btn:hover {
	background-color: #fff;
}

div#chapter0103 .section01 .pdf-btn:hover::after,
div#chapter0103 .section01 .pdf-btn:hover span {
	color: var(--banpaku-red);
}

div#chapter0103 .section01 .map-caution {
	font-size: 80%;
	text-align: right;
	line-height: normal;
}

div#chapter0103 .section01 .zone-box {
	margin: 20px 0;
	padding: 10px;
	border-radius: 20px;
}

div#chapter0103 .section01 .zone-box .zone-ttl {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

div#chapter0103 .section01 .zone-box .zone-ttl .alphabet {
	min-width: 40px;
	min-height: 40px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
}

div#chapter0103 .section01 .zone-box .zone-ttl .alphabet span {
	color: #fff;
	font-weight: bold;
	font-size: 26px;
	line-height: 1;
}

div#chapter0103 .map-number,
div#chapter0104 .map-number {
	color: #fff;
	line-height: 1;
	font-size: 80%;
	padding: 1px 3px;
	margin-right: 0.3em;
}

/* Aゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(1) {
	background-color: #c6eafa;
}

div#chapter0103 .section01 .zone-box:nth-of-type(1) .zone-ttl .alphabet,
div#chapter0103 .map-number.blue {
	background-color: #00aeef;
}

/* Bゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(2) {
	background-color: #fee1c8;
}

div#chapter0103 .section01 .zone-box:nth-of-type(2) .zone-ttl .alphabet,
div#chapter0103 .map-number.yellow {
	background-color: #f58220;
}

/* Cゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(3) {
	background-color: #d5d3e9;
}

div#chapter0103 .section01 .zone-box:nth-of-type(3) .zone-ttl .alphabet,
div#chapter0103 .map-number.purple {
	background-color: #625ea9;
}

/* Dゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(4) {
	background-color: #cae7e2;
}

div#chapter0103 .section01 .zone-box:nth-of-type(4) .zone-ttl .alphabet,
div#chapter0103 .map-number.green {
	background-color: #00a78e;
}

/* Eゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(5) {
	background-color: #fcd2c0;
}

div#chapter0103 .section01 .zone-box:nth-of-type(5) .zone-ttl .alphabet,
div#chapter0103 .map-number.red,
div#chapter0104 .map-number.red {
	background-color: #ee1d23;
}

/* Fゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(6) {
	background-color: #cad3c8;
}

div#chapter0103 .section01 .zone-box:nth-of-type(6) .zone-ttl {
	margin-bottom: 0;
}

div#chapter0103 .section01 .zone-box:nth-of-type(6) .zone-ttl .alphabet,
div#chapter0103 .map-number.dark-green,
div#chapter0104 .map-number.dark-green {
	background-color: #047147;
}


/* Gゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(7) {
	background-color: #e9dac7;
}

div#chapter0103 .section01 .zone-box:nth-of-type(7) .zone-ttl .alphabet,
div#chapter0103 .map-number.brown,
div#chapter0104 .map-number.brown {
	background-color: #a67435;
}


/* Hゾーン */
div#chapter0103 .section01 .zone-box:nth-of-type(8) {
	background-color: #c6d5ed;
}

div#chapter0103 .section01 .zone-box:nth-of-type(8) .zone-ttl .alphabet,
div#chapter0103 .map-number.dark-blue,
div#chapter0104 .map-number.dark-blue {
	background-color: #0072bc;
}

/* ゾーン END */

div#chapter0103 .map-number.white {
	border: 2px solid #fff;
	margin-left: 0.5em;
}



div#chapter0103 .section01 .zone-box .zone-detail p {
	display: inline-block;
	margin-right: 1em;
}

div#chapter0103 .section02 {
	margin-top: 50px;
}

div#chapter0103 .section02 .area-wrap {
	margin: 20px 0;
}

div#chapter0103 .section02 .area-wrap .ttl-wrap {
	margin-bottom: 15px;
}

div#chapter0103 .section02 .area-wrap .ttl-wrap h3 {
	border-radius: 20px 0 0 0;
	padding: 10px;
	color: #fff;
	font-size: 150%;
	background-color: var(--banpaku-red);
}

div#chapter0103 .section02 .area-wrap .ttl-wrap .img_right {
	margin-right: 7px;
}

div#chapter0103 .section02 .area-wrap.signature .ttl-wrap h3 {
	background-color: #1c6bae;
}

div#chapter0103 .section02 .area-wrap.private .ttl-wrap h3 {
	background-color: #d63f08;
}

div#chapter0103 .section02 .area-wrap.event .ttl-wrap h3 {
	background-color: #008000;
}

div#chapter0103 .section02 .area-wrap.future .ttl-wrap h3 {
	background-color: #1a7b83;
}

div#chapter0103 .section02 .detail-box {
	margin-bottom: 20px;
}

div#chapter0103 .section02 .detail-box.bg,
div#chapter0103 .section02 .area-wrap .detail-info,
div#chapter0103 .section02 .area-wrap .no-reserve {
	border-radius: 20px;
	padding: 10px;
}

div#chapter0103 .section02 .area-wrap.overseas .detail-box.bg,
div#chapter0103 .section02 .area-wrap.japan .detail-box.bg {
	background-color: #f9dbce;
}

div#chapter0103 .section02 .area-wrap .no-reserve {
	background-color: #f2f9f0;
}

div#chapter0103 .section02 .area-wrap.future .detail-box.bg {
	background-color: #dfeef0;
}

div#chapter0103 .section02 .area-wrap.signature .detail-box.bg {
	border: 2px solid var(--banpaku-red);
}

div#chapter0103 .section02 .area-wrap.signature .detail-box.bg:nth-of-type(2) {
	border-color: var(--banpaku-blue);
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-ttl {
	padding-left: 0.5em;
	border-left: 5px solid var(--banpaku-red);
	font-weight: bold;
	margin-bottom: 10px;
}

div#chapter0103 .section02 .area-wrap.signature .detail-box .detail-ttl {
	border-color: #1c6bae;
}

div#chapter0103 .section02 .area-wrap.private .detail-box .detail-ttl {
	border-color: #d63f08;
}

div#chapter0103 .section02 .area-wrap.event .detail-box .detail-ttl {
	border-color: #008000;
}

div#chapter0103 .section02 .area-wrap.future .detail-box .detail-ttl {
	border-color: #1a7b83;
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-ttl h4 {
	font-size: 130%;
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-ttl h4 span {
	margin-left: 7px;
}

div#chapter0103 .section02 .detail-desc {
	margin-bottom: 15px;
}

div#chapter0103 .section02 .bg .detail-desc {
	margin-bottom: 0;
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-flex .right,
div#chapter0103 .section02 .area-wrap.japan .japan-ttl .date-wrap {
	background-color: var(--banpaku-blue);
	padding: 5px 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 30px;
	max-width: 140px;
	width: 100%;
	box-sizing: border-box;
}

div#chapter0103 .section02 .area-wrap.japan .japan-ttl .date-wrap {
	margin-top: 10px;
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-flex .right .date,
div#chapter0103 .section02 .area-wrap.japan .japan-ttl .date {
	color: #fff;
	text-align: center;
	line-height: normal;
	font-weight: bold;
}

div#chapter0103 .section02 .area-wrap .detail-box .detail-flex .right .date span {
	font-size: 90%;
}

div#chapter0103 .section02 .area-wrap.signature .detail-people {
	display: flex;
	align-items: center;
}

div#chapter0103 .section02 .area-wrap.signature .detail-people .img {
	max-width: 100px;
	width: 100%;
	margin-right: 20px;
}

div#chapter0103 .section02 .area-wrap.signature .detail-people .people-name {
	font-size: 130%;
}

div#chapter0103 .section02 .area-wrap.signature .people-cap .pic_caption {
	margin: 0;
	text-align: left;
}

div#chapter0103 .section02 .area-wrap .detail-info {
	margin-top: 10px;
	border: 2px solid #d63f08;
}

div#chapter0103 .section02 .area-wrap.japan .theme {
	font-weight: bold;
	font-size: 110%;
	margin-bottom: 10px;
}

div#chapter0103 .section02 .area-wrap.japan .theme span {
	font-size: 90%;
	margin-right: 10px;
}

div#chapter0103 .section02 .area-wrap.japan .detail-info {
	border-color: var(--banpaku-red);
}

div#chapter0103 .section02 .area-wrap.japan .detail-info.bg {
	border: none;
	background-color: #f9dbce;
}

div#chapter0103 .section02 .area-wrap.japan .detail-info .info-ttl {
	color: var(--banpaku-red);
	font-size: 120%;
	margin-bottom: 10px;
}

div#chapter0103 .section02 .area-wrap.event .bold {
	margin-bottom: 10px;
}

div#chapter0103 .section02 .area-wrap .no-reserve .no-reserve-ttl {
	font-size: 140%;
	color: #008000;
	font-weight: bold;
	text-align: center;
	margin-bottom: 15px;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date {
	font-weight: bold;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date ul {
	padding-left: 1em;
	margin-top: 0;
	list-style: none;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date ul li {
	position: relative;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date ul li::before {
	content: '・';
	display: inline-block;
	position: absolute;
	left: -1em;
	top: 0;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date ul li span {
	position: relative;
}

div#chapter0103 .section02 .area-wrap .no-reserve .event-date ul li img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	width: 30px;
	margin-left: 10px
}


/* --- PC ---------- */
@media print,
screen and (min-width: 741px) {
	div#chapter0103 .section02 .area-wrap .detail-box .detail-flex {
		display: flex;
		align-items: center;
	}

	div#chapter0103 .section02 .area-wrap .detail-box .detail-flex .left {
		margin-right: 2em;
	}
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {

	div#chapter0103 .img-wrap .img:nth-of-type(2) {
		margin-left: 10px;
	}

	div#chapter0103 h2 {
		font-size: 140%;
	}

	div#chapter0103 .section01 .map-caution {
		text-align: left;
	}

	div#chapter0103 .section01 .zone-box,
	div#chapter0103 .section02 .detail-box.bg,
	div#chapter0103 .section02 .area-wrap .detail-info,
	div#chapter0103 .section02 .area-wrap .no-reserve {
		border-radius: 10px;
		padding: 7px;
	}

	div#chapter0103 .section02 .area-wrap .detail-box .detail-flex .right {
		margin-top: 10px;
	}

	div#chapter0103 .section02 .area-wrap .ttl-wrap h3 {
		font-size: 120%;
	}

	div#chapter0103 .section02 .area-wrap.signature .detail-people .people-name {
		font-size: 110%;
	}
}

/* 102 start */
div#chapter0102 .skyblue {
	background-color: #4169e1;
	padding: 5px;
	box-sizing: border-box;
}

div#chapter0102 .asmile {
	background-color: #fef79a;
	padding: 15px;
	box-sizing: border-box;
}

div#chapter0102 .asmile .bk {
	background-image: url(../images/cts102_p00.png);
	border-radius: 15px;
	padding: 12px 8px;
	box-sizing: border-box;
}

div#chapter0102 .asmile .bk .inner {
	background-color: #fff;
	padding: 15px;
	border-radius: 8px;
	box-sizing: border-box;
}

div#chapter0102 .asmile .title2 {
	display: inline-block;
	background-color: var(--banpaku-blue);
	border-radius: 8px;
	margin: 0;
	padding: 5px;
	box-sizing: border-box;
	color: #fff;
}

div#chapter0102 .asmile .title2 span {
	font-size: 120%;
	color: #fef79a;
}

div#chapter0102 .asmile .lead {
	font-size: 18px;
	font-weight: bold;
}

div#chapter0102 .asmile .lead b {
	color: var(--banpaku-red);
	font-size: 150%;
}

div#chapter0102 .asmile .lead span {
	font-size: 120%;
}

div#chapter0102 .asmile dl {
	display: flex;
}

div#chapter0102 .asmile dl dt {
	display: grid;
	place-content: center;
	align-self: flex-start;
	background-color: var(--banpaku-blue);
	padding: 5px;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	border-radius: 5px;
	width: 60px;
}

div#chapter0102 .asmile dl dd {
	width: calc(100% - 72px);
	margin-left: 12px;
}

div#chapter0102 .asmile dl dd>ol {
	font-size: 14px;
	margin: 0;
	padding-left: 2em;
}

div#chapter0102 .indent {
	padding-left: 1em;
	text-indent: -1em;
}

div#chapter0102 .asmile .wrap {
	margin: 30px auto;
}

div#chapter0102 .asmile .wrap .bold {
	font-size: 18px;
	border-bottom: 4px dotted #000;
}

div#chapter0102 .asmile .wrap .step {}

div#chapter0102 .asmile .wrap .step .box {
	position: relative;
	text-align: center;
}

div#chapter0102 .asmile .wrap .step .box::after {
	content: '';
	margin: 15px auto;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 20px 30px 0 30px;
	border-color: #008080 transparent transparent transparent;
	transform: rotate(0deg);
}

div#chapter0102 .asmile .wrap .step .box:last-child:after {
	content: none;
}

div#chapter0102 .asmile .wrap .step .box .num {
	background-color: #4169e1;
	display: inline-block;
	color: #fff;
	font-weight: bold;
	border-radius: 5px;
	padding: 5px 5px 0 5px;
	box-sizing: border-box;
	margin: 0;
}

div#chapter0102 .asmile .wrap .step .box .num b {
	font-size: 150%;
	display: inline-block;
	font-weight: normal;
}

div#chapter0102 .asmile .wrap .step .box .pic_caption{
	text-align: center;
}


div#chapter0102 .asmile .wrap .step ul li b {
	background: linear-gradient(180deg, transparent 80%, #00a0e9 80%, #00a0e9 90%, transparent 90%);
}

div#chapter0102 .asmile .wrap .step .box .registration{
    display: flex;
    justify-content: center;
}

div#chapter0102 .asmile .wrap .step .box .registration .image20{
	margin: 0 10px;
}



div#chapter0102 .asmile .pink-ribbon {
	background-color: #e4007f;
	border-radius: 5px;
	padding: 5px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 21px;
}

div#chapter0102 .asmile .pink-ribbon b {
	background-color: #fff;
	color: #e4007f;
	padding: 5px 10px;
	box-sizing: border-box;
	border-radius: 20px;
	display: inline-block;
	margin-right: 4px;
}

div#chapter0102 .skyblue .info {
	color: #fff;
}

div#chapter0102 .skyblue .info .lead {
	font-weight: bold;
}

div#chapter0102 .notice {
	position: relative;
	margin: 50px auto 0;
	border: 0;
}

div#chapter0102 .notice .ttl {
	position: relative;
	color: #008842;
	padding: 10px 20px;
	box-sizing: border-box;
	line-height: 1.5em;
	z-index: 0;
	border-left: 15px solid #008842;
	display: flex;
	justify-content: space-between;
	border-top-right-radius: 40px;
}

div#chapter0102 .notice.mynumber .ttl {
	color: #d63f08;
	border-color: #d63f08;
}

div#chapter0102 .notice .ttl h2 {
	display: flex;
	align-items: center;
	font-size: 21px;
	margin: 0;
	padding: 5px 0;
	box-sizing: border-box;
}

div#chapter0102 .notice .ttl div {
	align-self: flex-end;
	margin: 0;
}


div#chapter0102 .notice table {
	font-size: 90%;
	border-collapse: collapse;
	border: 2px solid #000;
}

div#chapter0102 .notice table th,
div#chapter0102 .notice table td {
	border: 1px solid #333;
	padding: 1%;
	vertical-align: middle;
}

div#chapter0102 .notice table .backslash {
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg"><line x1="0" y1="0" x2="100%" y2="100%" stroke="gray" /></svg>');
	text-align: left;
}

div#chapter0102 .notice table .backslash div {
	text-align: right;
}

div#chapter0102 .notice table .bold {
	background: #e8eee3;
}

div#chapter0102 .notice.mynumber table .bold {
	background-color: #fee4d2;
}

div#chapter0102 .notice .box {
	background-color: #fffdd7;
	padding: 5px;
	box-sizing: border-box;
	margin: 15px auto;
}

div#chapter0102 .notice .box .indent {
	margin: 0;
}

div#chapter0102 .notice .underline {
	background: linear-gradient(180deg, transparent 80%, #509b40 80%, #509b40 90%, transparent 90%);
}

div#chapter0102 .notice.mynumber .underline {
	background: linear-gradient(180deg, transparent 80%, #f26421 80%, #f26421 90%, transparent 90%);
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {
	div#chapter0102 .asmile {
		padding: 5px;
	}

	div#chapter0102 .asmile .bk {
		padding: 5px;
	}

	div#chapter0102 .asmile .bk .inner {
		padding: 5px;
	}

	div#chapter0102 .asmile .title2 {
		font-size: 18px;
	}

	div#chapter0102 .asmile .lead {
		font-size: 14px;
	}

	div#chapter0102 .asmile dl dt {
		font-size: 14px;
		width: 52px
	}

	div#chapter0102 .asmile dl dd {
		width: calc(100% - 60px);
		margin-left: 8px;
	}

	div#chapter0102 .notice .ttl {
		padding: 5px 8px;
		border-width: 10px;
	}

	div#chapter0102 .notice .ttl h2 {
		font-size: 15px;
	}

	div#chapter0102 .notice .info {
		margin: 15px auto;
		padding: 8px;
	}
}

/* 102 end */



/* cts0104 */
div#chapter0104 p,
div#chapter0104 h2,
div#chapter0104 h3,
div#chapter0104 h4 {
	margin: 0
}

div#chapter0104 .img-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
}

div#chapter0104 .img-wrap .img {
	margin: 0;
	width: 100%;
}

div#chapter0104 .img-wrap .img:nth-of-type(n+2) {
	margin-left: 20px;
}

div#chapter0104 .section01 {
	background-color: #4169E1;
	padding: 10px;
	margin-bottom: 20px;
}

div#chapter0104 .section01 h2.ttl {
	text-align: center;
	color: #fff;
	font-size: 180%;
	line-height: 1.4;
}

div#chapter0104 .section01 .lead {
	color: #fff;
	margin: 10px 0 20px;
}

div#chapter0104 .section01 .app-wrap {
	border-radius: 20px;
	padding: 10px;
	background-color: #dfeff9;
	border: 2px solid var(--banpaku-blue);
}

div#chapter0104 .section01 .app-wrap .app-ttl,
div#chapter0104 .section01 .app-wrap .app-desc span {
	color: var(--banpaku-blue);
}

div#chapter0104 .section01 .app-wrap .app-desc {
	margin: 10px 0;
}

div#chapter0104 .section01 .app-wrap .red {
	font-weight: bold;
	margin-bottom: 10px;
}

div#chapter0104 .section01 .future-wrap {
	margin: 30px 0 0;
}

div#chapter0104 .section01 .future-wrap .future-box .future-ttl {
	font-size: 150%;
	color: #008242;
	-webkit-text-stroke: 5px #fff;
	paint-order: stroke fill;
	letter-spacing: 2px;
}

div#chapter0104 .section01 .future-wrap .future-box:last-child .future-ttl {
	color: var(--banpaku-blue);
}

div#chapter0104 .map-number {
	margin: 0 0.5em;
}

div#chapter0104 .section01 .map-wrap .map-box {
	border-radius: 15px;
	padding: 4px;
	margin: 15px 0;
}

div#chapter0104 .section01 .map-wrap .map-box .area {
	text-align: center;
	color: #fff;
	font-weight: bold;
	padding: 0 0 7px;
	font-size: 120%;
}

div#chapter0104 .section01 .map-wrap .map-box .map-inner {
	border-radius: 10px;
	padding: 10px;
	background-color: #fff;
}

div#chapter0104 .section01 .map-wrap .map-ttl {
	font-size: 120%;
}

div#chapter0104 .section01 .future-wrap .map-wrap.other .map-number,
div#chapter0104 .section01 .map-wrap.other .map-box {
	background-color: #d63f08;
}

div#chapter0104 .section01 .map-wrap.other .map-ttl {
	color: #d63f08;
}

div#chapter0104 .section01 .future-wrap .map-wrap.city .map-number,
div#chapter0104 .section01 .map-wrap.city .map-box {
	background-color: #008242;
}

div#chapter0104 .section01 .map-wrap.city .map-ttl {
	color: #008242;
}

div#chapter0104 .section01 .future-wrap .map-wrap.health .map-number,
div#chapter0104 .section01 .map-wrap.health .map-box {
	background-color: var(--banpaku-blue);
}

div#chapter0104 .section01 .map-wrap.health .map-ttl {
	color: var(--banpaku-blue);
}

div#chapter0104 .section02 .ttl-wrap {
	margin-bottom: 15px;
}

div#chapter0104 .section02 .ttl-wrap h2 {
	max-width: 390px;
	margin: 0 auto;
}

div#chapter0104 .section02 .ttl-wrap .date {
	font-weight: bold;
	font-size: 110%;
	text-align: center;
}

div#chapter0104 .section02 .week-box:nth-of-type(2) {
	margin: 30px 0;
}

div#chapter0104 .section02 .week-top {
	padding: 10px;
	border-width: 2px 2px 0 2px;
	border-style: solid;
	border-color: #f1708b;
	background-color: #fff9b8;
}

div#chapter0104 .section02 .week-top .week-ttl {
	font-size: 120%;
	color: var(--banpaku-blue);
}

div#chapter0104 .section02 .week-top .week-date {
	font-weight: bold;
}

div#chapter0104 .section02 .week-box .week-img .img-ttl {
	border-radius: 30px;
	padding: 7px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	background-color: var(--banpaku-red);
	margin-top: 15px;
}

div#chapter0104 .section02 .week-box:last-child .week-img .img-ttl {
	background-color: var(--banpaku-blue);
}

div#chapter0104 .section02 .week-box .week-img .img-wrap {
	margin-top: 10px;
}

div#chapter0104 .section02 .week-box:last-child .week-img .img-wrap {
	flex-wrap: wrap;
}

div#chapter0104 .section02 .week-box:last-child .week-img .img {
	min-height: 150px;
	width: auto;
}

div#chapter0104 .section02 .week-box .week-img .img-desc {
	font-weight: bold;
	margin: 10px 0;
}

div#chapter0104 .section02 .week-caution {
	text-align: right;
	font-size: 85%;
	margin: 20px 0 7px;
}


/* --- SP ---------- */
@media print,
screen and (max-width: 740px) {
	div#chapter0104 .section01 h2.ttl {
		font-size: 140%;
	}

	div#chapter0104 .section01 .app-wrap {
		border-radius: 15px;
		padding: 7px;
	}

	div#chapter0104 .section01 .app-wrap .app-ttl {
		text-align: center;
	}

	div#chapter0104 .section01 .map-wrap .map-ttl {
		font-size: 110%;
	}

	div#chapter0104 .section01 .future-wrap .future-box .future-ttl {
		font-size: 130%;
	}
}