@charset "utf-8";

/*--------------------------------------------------
	common
	全ページ共通ヘッダー
	全ページ共通グローバルメニュー
	スマホメニュー
	全ページ共通フッター
	ホーム
	パンくず
	ページ上部（ページタイトル、ページ説明文）
----------------------------------------------------*/



/*--------------------------------------
	common
--------------------------------------*/
* {
	-webkit-text-size-adjust: 100%;
}
body {
	line-height: 1.6em;
/*  	font-family: "KozGoPro-Light", "小塚ゴシック Pro L", "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Robot,"Droid Sans",sans-serif; */
	font-size: 15px;
	color: #221815;
	word-break: break-all;
}
@media screen and (max-width: 767px) {
	body {
		padding-top: 75px;
		line-height: 1.4em;
		font-size: 14px;
		word-break: break-all;
	}
}
li {
	list-style: none;
}
img {
	max-width: 100%;
	height: auto;
	border: none;
	vertical-align: bottom;
}

a {
	color: #00A6A5;
	text-decoration: none;
}
a.anchor{
	padding-top: 90px;
        margin-top: -90px;
        text-decoration: none;
        color: #333333;
}

a.anchor2{
        display: block;
	padding-top: 35px;
        margin-top: -35px;
        text-decoration: none;
        color: #333333;
}

a.link {
	color: #00A6A5;
        text-decoration: underline;
}

/*----20220202(青山) リンクのスタイル追加-----*/
.guide-link {
	color: #00A6A5;
}
.guide-link:hover {
       text-decoration: underline;
       transition: all 0.2s ease-out;
}  
/*--------------------------------------------*/

@media screen and (max-width: 767px) {
	.sp-none {
		display: none !important;
	}
	.pc-none {
		display: block !important;
	}
}
@media screen and (min-width: 767px) {
	.sp-none {
		display: block !important;
	}
	.pc-none {
		display: none !important;
	}
}


.inner {
	margin: 0 auto;
	max-width: 1200px;
}
.inner2 {
	margin: 0 auto;
	max-width: 1080px;
}
.inner3 {
	margin: 0 auto;
	max-width: 930px;
}
@media screen and (max-width: 767px) {
	.inner,
	.inner2,
	.inner3 {
		padding: 0 15px;
		max-width: 100%;
		width: 100%;
	}
}

#wrapper {
	position: relative;
}
/*
@media screen and (max-width: 767px) {
	#wrapper {
	}
}*/

/* 画面用qr */
@media screen {
.manual_qr { display: none; }
}

/*--------------------------------------
	全ページ共通ヘッダー
--------------------------------------*/
header#header {
	width: 100%;
}

/*----------------------------------------
20211102(青山) ヘッダボーダーコメントアウト

header#header .ht {
	height: 30px;
	background-color: #fff;
}
header#header .ht .inner {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
	align-items: center;
	-webkit-align-items: center;
	height: 30px;
}
header#header .ht ul {
	display: flex;
	display: -webkit-flex;
}
header#header .ht ul li {
	margin: 0 10px;
}
header#header .ht ul li a {
	position: relative;
	letter-spacing: 1px;
	font-size: 12px;
	color: #000;
}

20211025(青山)リンクアイコンコメントアウト

header#header .ht ul li:nth-child(1) a {
	padding-left: 16px;
}
header#header .ht ul li:nth-child(1) a:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin-top: -6px;
	width: 12px;
	height: 12px;
	background: transparent url(rainbow/assets/images/common/icon_desk.png) no-repeat 0 0;
	background-size: 12px 12px;
}
header#header .ht ul li:nth-child(2) a {
	padding-left: 16px;
}
header#header .ht ul li:nth-child(2) a:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin-top: -6px;
	width: 14px;
	height: 12px;
	background: transparent url(rainbow/assets/images/common/icon_link.png) no-repeat 0 0;
	background-size: 14px 12px;
}
----------------------------------------*/

header#header .hb {
	height: 115px;
	background-color: #fff;
}
header#header .hb .inner {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	height: 115px;
}
header#header .hb .logo {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
}
header#header .hb .logo a {
	z-index: 100;
}
header#header .hb .logo img {
	width: 232px;
	height: auto;
}
header#header .hb .info {
	width: 390px;
	margin-top: 20px;
}
header#header .hb .hnavi ul {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	margin-left: auto;
	padding: 6px 0 8px 0;
	width: 150px;
	background-color: #20b2aa;
	border-radius: 40px;
}
header#header .hb .hnavi ul li {
	line-height: 1;
}
header#header .hb .hnavi ul li a {
	position: relative;
	padding: 5px;
	letter-spacing: 1px;
	font-size: 16px;
	color: #fff;
}
/*--------------------------------------
　20180912 padding-left サイズ変更
--------------------------------------*/
header#header .hb .hnavi ul li:nth-child(1) a {
	padding-left: 0px;
}
/*--------------------------------------
　20180912 コメントアウト

header#header .hb .hnavi ul li:nth-child(1) a:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin-top: -10px;
	width: 20px;
	height: 20px;
	background: transparent url(rainbow/assets/images/common/icon_search.png) no-repeat 0 0;
	background-size: 20px 20px;
}
--------------------------------------*/

header#header .hb .hnavi ul li:nth-child(2) a {
	padding-left: 10px;
}
header#header .hb .hnavi ul li:nth-child(2) a:before {
	content: "|";
	position: absolute;
	left: 0;
	top: 4px;
	font-size: 12px;
	color: #fff;
}

.hsearch {
	position: absolute;
	left: 200px;
	top: 70px;
	width: 100%;
}
.hsearch .hinner {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
	margin: 0 auto;
	max-width: 1200px;
}
.hsearch .in {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	align-items: center;
	-webkit-align-items: center;
	width: 390px;
}
.hsearch #hsnavi1 {
	flex: 0 0 34%;
	-webkit-flex: 0 0 34%;
}
.hsearch #hsnavi2 {
	flex: 0 0 63%;
	-webkit-flex: 0 0 63%;
}
.hsearch .gsc-search-box-tools .gsc-search-box .gsc-input {
	padding-right: 0px !important;
}
.gsib_a {
	padding: 2px 6px !important;
}
.hsearch .cse .gsc-control-cse, .hsearch .gsc-control-cse {
	padding: 0 !important;
}
.hsearch .gsc-input-box {
	height: auto !important;
}
.hsearch .cse .gsc-search-button-v2, .hsearch .gsc-search-button-v2 {
	padding: 0px 15px 4px !important;
	border-radius: 0 !important;
}
@media screen and (max-width: 767px) {
	.hsearch .cse .gsc-search-button-v2, .hsearch .gsc-search-button-v2 {
		padding: 4px 15px 4px !important;
	}
}
@media screen and (max-width: 767px) {
	header#header {
		position: fixed;
		left: 0;
		top: 0;
		border-top: 15px solid #fff;
		z-index: 10;
	}
	header#header .hb {
		height: 60px;
	}
	header#header .hb .inner {
		height: 60px;
	}
	header#header .hb .logo {
		width: auto;
	}
	header#header .hb .logo img {
		max-width: none;
		width: auto;
		height: 45px;
	}
	.hsnavi {
		position: fixed;
		right: 20px;
		top: 26px;
		z-index: 200;
	}
	.hsnavi ul {
		display: flex;
		display: -webkit-flex;
	}
	.hsnavi ul li {
		margin: 0 7px;
	}
	.hsnavi ul li:nth-child(1) img {
		width: 40px;
		height: auto;
	}
	.hsnavi ul li:nth-child(2) img {
		width: 25px;
		height: auto;
	}
	#hsnavi1 {
		display: none;
		position: fixed;
		left: 0;
		top: 75px;
		padding: 10px;
		width: 100%;
		text-align: center;
		background-color: #fff;
		z-index: 210;
	}
	#hsnavi1.open {
		display: block;
	}
	#hsnavi2 {
		display: none;
		position: fixed;
		left: 0;
		top: 75px;
		padding: 10px;
		width: 100%;
		text-align: center;
		background-color: #fff;
		z-index: 210;
	}
	#hsnavi2.open {
		display: block;
	}
}



/*--------------------------------------
	全ページ共通グローバルメニュー
--------------------------------------*/
#gnavi {
	background-color: #083052;
	border-bottom: 1px solid #000;
}
#gnavi .inner {
	height: 65px;
}
#gnavi ul {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	height: 65px;
	border-top: 1px solid #000;
}
#gnavi li {
	flex: 0 0 25%;
	-webkit-flex: 0 0 25%;
	height: 100%;
	text-align: center;
	border-right: 1px solid #000;
}
#gnavi li:nth-child(1) {
	border-left: 1px solid #000;
}
#gnavi li a {
	display: flex;
	display: -webkit-flex;
	align-content: center;
	-webkit-align-content: center;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	position: relative;
	width: 100%;
	height: 100%;
	color: #fff;
}
#gnavi li a:hover {
	background-color: #155A97;
}
#gnavi > .inner > ul > li:nth-child(1) > a:after,
#gnavi > .inner > ul > li:nth-child(2) > a:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	display: block;
	margin-top: -5px;
	width: 15px;
	height: 9px;
	background: transparent url(rainbow/assets/images/common/cursor_down.png) no-repeat 0 0;
	background-size: 15px 9px;
}
#gnavi li:nth-child(1) a span:nth-child(1) img {
	margin-right: 10px;
	width: 15px;
	height: auto;

/*--------------------------------------
20180529 グローバルメニュー
Get Startedの左アイコンの位置調整の為
コメントアウト

	vertical-align: text-top;を
	vertical-align: baseline;に変更

------------------------------------*/

	vertical-align: baseline;


}
#gnavi li a span {
	flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	display: block;
}
#gnavi li a span:nth-child(1) {
	letter-spacing: 2px;
	font-size: 22px;
}
#gnavi li a span:nth-child(2) {
	font-size: 12px;
}

#gnavi > .inner > ul > li > ul {
	display: none;
	position: absolute;
	background-color: #083052;
	z-index: 3;
}
#gnavi > .inner > ul > li > ul > li {
	flex: 0 0 100%;
	-webkit-flex: 0 0 100%;
	height: 100%;
	background-color: #083052;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
#gnavi > .inner > ul > li > ul > li > a {
	display: flex;
	display: -webkit-flex;
	align-content: center;
	-webkit-align-content: center;
	align-items: center;
	-webkit-align-items: center;
	width: 100%;
	height: 100%;
	color: #fff;
}
#gnavi > .inner > ul > li > ul > li > a > span {
	font-size: 18px;
}



/*--------------------------------------
	スマホメニュー
--------------------------------------*/
.btn-sp {
	display: block;
	width: 40px;
	height: 40px;
	background: transparent;
	border: none;
	user-select: none;
	-webkit-touch-callout: none;
}
.btn-sp .bar {
	display: block;
	height: 1px;
	border: 1px solid #083052;
	background-color: #083052;
}
.btn-sp.open .bar {
	border: 1px solid #083052;
	background-color: #083052;
}
.btn-sp .bar:first-child {
	margin-top: 0;
}
@media screen and (max-width: 767px) {
	body.openbody .overlay {
		z-index: 4;
		display: block;
		width: 100%;
		background-color: #eee;
	}
	.overlay {
		position: fixed;
		top: 75px;
		left: 0;
		right: 0;
		bottom: 0;
		display: none;
		width: 0;
		height: 100%;
		margin: auto;
		background: transparent;
		-webkit-transition: 180ms ease-in-out;
		        transition: 180ms ease-in-out;
	}
	.sp-navi-wrap {
		position: fixed;
		top: 75px;
		left: 100%;
		z-index: 101;
		width: 100%;
		height: 86%;
	}
	.sp-navi-wrap.openbody {
		-webkit-transform: translate3d(-100%, 0, 0);
	        transform: translate3d(-100%, 0, 0);
	}
	.sp-navi-wrap .btn-sp {
		position: absolute;
		top: -50px;
		right: 104%;
		z-index: 999;
		cursor: pointer;
		outline: 0;
	}
	.sp-navi-wrap .btn-sp.open {
		right: 4%;
		top: -55px;
	}
	.sp-navi-wrap .btn-sp:before {
		content: "";
		position: absolute;
		top: 0px;
		left: 0;
		width: 40px;
		height: 40px;
		border-radius: 5px;
		background-color: transparent;
	}
	.sp-navi-wrap .btn-sp .bar {
		position: absolute;
		width: 82%;
		left: 0;
		top: 17px;
		left: 0;
		margin: auto;
	}
	.sp-navi-wrap .btn-sp.open .bar {
		top: 23px;
	}
	.sp-navi-wrap .btn-sp .bar:nth-child(1) {
		-webkit-transform: translateY(-9px);
		    -ms-transform: translateY(-9px);
		        transform: translateY(-9px);
	}
	.sp-navi-wrap .btn-sp .bar:nth-child(3) {
		-webkit-transform: translateY(9px);
		    -ms-transform: translateY(9px);
		        transform: translateY(9px);
	}
	.sp-navi-wrap .btn-sp .bar:nth-child(3):before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		opacity: 0;
		border-radius: 80%/30px;
		-webkit-transform: rotate(0deg);
		    -ms-transform: rotate(0deg);
		        transform: rotate(0deg);
		-webkit-transition: 280ms ease-in-out;
		        transition: 280ms ease-in-out;
	}
	.sp-navi-wrap .btn-sp .txt:before {
		-webkit-transition: 280ms ease-in-out;
		        transition: 280ms ease-in-out;
	}
	.sp-navi-wrap .btn-sp.open .bar:nth-child(1) {
		-webkit-transform: rotate(-45deg) translateX(0) translateY(0);
		    -ms-transform: rotate(-45deg) translateX(0) translateY(0);
		        transform: rotate(-45deg) translateX(0) translateY(0);
	}
	.sp-navi-wrap .btn-sp.open .bar:nth-child(2) {
		opacity: 0;
	}
	.sp-navi-wrap .btn-sp.open .bar:nth-child(3) {
		-webkit-transform: rotate(45deg) translateX(0) translateY(0);
		    -ms-transform: rotate(45deg) translateX(0) translateY(0);
		        transform: rotate(45deg) translateX(0) translateY(0);
	}
	.sp-navi-wrap .btn-sp.open .bar:nth-child(3):before {
		opacity: 1;
		-webkit-transform: rotate(-90deg);
		    -ms-transform: rotate(-90deg);
		        transform: rotate(-90deg);
	}
	.sp-navi-wrap .btn-sp.open .txt {
		display: none;
	}
	.sp-navi-wrap .btn-sp.open .txt:before {
		content: "";
		color: #fff;
	}
	.sp-navi-wrap .sp-navi {
		height: 100%;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi {
		background-color: #083052;
	}


	.sp-navi-wrap .sp-navi ul#sp_gnavi {
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		text-align: center;
		border-bottom: 1px solid #000;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(1) img {
		width: 15px;
		height: auto;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > a {
		display: flex;
		display: -webkit-flex;
		align-content: center;
		-webkit-align-content: center;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		position: relative;
		padding: 15px 10px;
		width: 100%;
		letter-spacing: 2px;
		color: #fff;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(1) > a:after,
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(2) > a:after {
		content: "";
		position: absolute;
		right: 15%;
		top: 50%;
		display: block;
		margin-top: -5px;
		width: 15px;
		height: 9px;
		background: transparent url(rainbow/assets/images/common/cursor_down.png) no-repeat 0 0;
		background-size: 15px 9px;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(1) > a > span:nth-child(1) img {
		margin-right: 10px;
		width: 15px;
		height: auto;
/*--------------------------------------
20180529 SP版グローバルメニュー
Get Startedの左アイコンの位置調整の為
コメントアウト

		vertical-align: text-top;

-------------------------------------*/
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > a > span {
		flex: 1 1 100%;
		-webkit-flex: 1 1 100%;
		display: block;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > a > span:nth-child(1) {
		letter-spacing: 2px;
		font-size: 26px;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > a > span:nth-child(2) {
		margin-top: 10px;
		font-size: 14px;
	}

	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > ul {
		display: none;
		width: 100%;
		background-color: #083052;
		border-top: 1px solid #000;
		z-index: 3;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(1) > ul > li:last-child,
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li:nth-child(2) > ul > li:last-child {
		border-bottom: none;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > ul > li {
		height: 50px;
		background-color: #083052;
		border-bottom: 1px solid #000;
	}
	.sp-navi-wrap .sp-navi ul#sp_gnavi > li > ul > li > a {
		display: block;
		padding: 15px 10px;
		width: 100%;
		height: 49px;
		letter-spacing: 2px;
		font-size: 20px;
		color: #fff;
		background: #06476c;
	}
	.sp-navi-wrap .mbtn {
		padding: 10px 15px;
		background-color: #083052;
	}
	.sp-navi-wrap .mbtn a {
		display: block;
		padding: 12px 15px;
		text-align: center;
		background-color: #eee;
		border-radius: 2px;
		font-size: 14px;
		color: #083052;
	}
	.sp-navi-wrap .mbtn a span {
		position: relative;
	}
	.sp-navi-wrap .mbtn a span:before {
		content: "";
		display: inline-block;
		margin-right: 10px;
		vertical-align: middle;
		width: 20px;
		height: 20px;
		background: transparent url(rainbow/assets/images/common/sp_icon1.png) no-repeat 0 0;
		background-size: 20px 20px;
	}
	.sp-navi-wrap .mbbtn div {
		border-bottom: 2px solid #083052;
	}
	.sp-navi-wrap .mbbtn a {
		display: block;
		padding: 8px 10px;
		text-align: center;
		background-color: #eee;
		font-size: 11px;
		color: #083052;
	}
	.sp-navi-wrap .mbbtn a span {
		position: relative;
	}
	.sp-navi-wrap .mbbtn a span:before {
		content: "";
		display: inline-block;
		margin-right: 5px;
		vertical-align: text-bottom;
	}
	.sp-navi-wrap .mbbtn div:nth-child(1) a span:before {
		width: 15px;
		height: 13px;
		background: transparent url(rainbow/assets/images/common/sp_icon2.png) no-repeat 0 0;
		background-size: 15px 13px;
	}
	.sp-navi-wrap .mbbtn div:nth-child(2) a span:before {
		width: 13px;
		height: 13px;
		background: transparent url(rainbow/assets/images/common/sp_icon3.png) no-repeat 0 0;
		background-size: 13px 13px;
	}
}


/*--------------------------------------
	全ページ共通フッター
20211101(青山) Guide用にスタイル変更
--------------------------------------*/
footer#footer {
	margin-top: 150px;
	width: 100%;
	height: 120px;
	background-color: #333;
}
footer#footer .inner {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	position: relative;
	height: 120px;
}
footer#footer .pagetop {
	position: fixed;
	right: 20px;
	bottom: 200px;
	opacity: 0;
	transition: opacity 0.4s;
	-moz-transition: opacity 0.4s;
	-webkit-transition: opacity 0.4s;
	-o-transition: opacity 0.4s;
}
footer#footer .pagetop a {
	display: block;
	width: 60px;
	height: 60px;
	text-align: center;
	line-height: 37px;
	background-color: #00A6A5;
	border-radius: 50%;
}
footer#footer .pagetop img {
	width: 30px;
	height: auto;
}
footer#footer #fnavi {
	margin: 0 auto;
	width: 900px;
}
footer#footer #fnavi ul {
	display: flex;
	display: -webkit-flex;
	justify-content: space-around;
	-webkit-justify-content: space-around;
}
footer#footer #fnavi li a {
	position: relative;
	padding-right: 10px;
	color: #fff;
}
footer#footer #fnavi li a:after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	display: inline-block;
	margin-top: -5px;
	width: 7px;
	height: 10px;
	background: transparent url(rainbow/assets/images/common/cursor_right.png) no-repeat 0 0;
	background-size: 7px 10px;
}
footer#footer .copyright {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	align-items: center;
	-webkit-align-items: center;
	width: 100%;
	height: 50px;
	text-align: center;
	letter-spacing: 1px;
	background-color: #333;
	font-size: 14px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	footer#footer {
		margin-top: 0;
		height: auto;
	}
	footer#footer .inner {
		padding: 10px 30px;
		height: auto;
	}
	footer#footer .pagetop {
		right: 5px;
		bottom: 50px;
	}
	footer#footer .pagetop a {
		width: 40px;
		height: 40px;
		line-height: 25px;
	}
	footer#footer .pagetop img {
		width: 20px;
	}
	footer#footer #fnavi {
		width: 100%;
	}
	footer#footer #fnavi ul {
		display: block;
	}
	footer#footer #fnavi li a {
		line-height: 1.8;
		font-size: 11px;
	}
	footer#footer .copyright {
		display: block;
		padding: 5px 10px;
		height: auto;
		text-align: left;
		font-size: 10px;
	}
}


.sec h2.midashi {
	position: relative;
	padding: 0 10px 15px 0;
	letter-spacing: 1px;
	border-bottom: 4px solid #083052;
	font-size: 28px;
}
@media screen and (max-width: 767px) {
	.sec h2.midashi {
		padding: 5px 10px 5px 0;
		letter-spacing: 0;
		border-bottom: 2px solid #083052;
		font-size: 18px;
	}
}


/*--------------------------------------
	ホーム
--------------------------------------*/
#TOP .sec {
	padding: 0 0 50px 0;
}
#TOP #sec1 {
	padding: 40px 0;
	background-color: #f1f1f1;
	border-bottom: 1px solid #ccc;
}
#TOP #sec1 .inner {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
#TOP #sec1 .list {
	width: 570px;
	height: 240px;
	border-radius: 5px;
}
#TOP #sec1 .list:nth-child(1) {
	margin-right: 10px;
	background: transparent url(image.jsp?id=375552) no-repeat 0 0;
	background-size: cover;
}
#TOP #sec1 .list:nth-child(2) {
	margin-left: 10px;
	background: transparent url(image.jsp?id=375553) no-repeat 0 0;
	background-size: cover;
}
#TOP #sec1 .list a {
	display: block;
	border-radius: 5px;
	box-shadow: 3px 3px 6px #ccc;
	color: #fff;
	transition: .3s;
}
#TOP #sec1 .list a:hover {
	box-shadow: 3px 3px 6px #ddd;
}
#TOP #sec1 .list .info {
	position: relative;
	width: 50%;
	height: 240px;
	border-radius: 5px 0 0 5px;
}
#TOP #sec1 .list .info .layer {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 240px;
	background-color: #083052;
	border-radius: 5px 0 0 5px;
	z-index: 1;
	opacity: .8;
}
#TOP #sec1 .list .info .blk {
	position: absolute;
	left: 0;
	top: 0;
	padding: 20px;
	width: 100%;
	height: 240px;
	z-index: 2;
}
#TOP #sec1 .list .info .blk .icon {
	text-align: center;
}
#TOP #sec1 .list:nth-child(1) .info .blk .icon img {
	width: 25px;
	height: auto;
}

/*--------------------------------------
20180912 width  サイズ変更
--------------------------------------*/

#TOP #sec1 .list:nth-child(2) .info .blk .icon img {
	width: 35px;
	height: auto;
}
#TOP #sec1 .list .info .blk .midashi {
	margin-top: 15px;
	text-align: center;
	letter-spacing: 2px;
	font-size: 25px;
}

/*--------------------------------------
20180912 margin-top サイズ変更
--------------------------------------*/
#TOP #sec1 .list .info .blk .midashi2 {
	margin-top: 5px;
	text-align: center;
	letter-spacing: 2px;
	font-size: 30px;
}


#TOP #sec1 .list .info .blk .date {
	margin-top: 25px;
	font-size: 13px;
}
#TOP #sec1 .list .info .blk .date span {
	padding: 5px 15px;
	border: 1px solid #fff;
}
#TOP #sec1 .list .info .blk .title {
	margin-top: 20px;
	line-height: 1.4;
	font-size: 16px;
}
#TOP #sec1 .list:nth-child(2) .info .blk .title {
	margin-top: 30px;
	text-align: center;
	line-height: 1.6;
	font-size: 20px;
}
@media screen and (max-width: 767px) {
	#TOP .sec {
		padding: 20px 0;
	}
	#TOP #sec1 {
		padding: 5px 0 15px 0;
		background-color: #f1f1f1;
		border-bottom: 1px solid #ccc;
	}
	#TOP #sec1 .inner {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	#TOP #sec1 .list {
		margin-top: 10px;
		width: 100%;
		height: 150px;
		border-radius: 5px;
	}
	#TOP #sec1 .list:nth-child(1) {
		margin-right: 0;
	}
	#TOP #sec1 .list:nth-child(2) {
		margin-left: 0;
	}
	#TOP #sec1 .list .info {
		position: relative;
		width: 72%;
		height: 150px;
		border-radius: 5px 0 0 5px;
	}
	#TOP #sec1 .list .info .layer {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 150px;
		background-color: #083052;
		border-radius: 5px 0 0 5px;
		z-index: 1;
		opacity: .8;
	}
	#TOP #sec1 .list .info .blk {
		position: absolute;
		left: 0;
		top: 0;
		padding: 10px 15px;
		width: 100%;
		height: 150px;
		z-index: 2;
	}
	#TOP #sec1 .list .info .blk .icon {
		text-align: center;
	}
	#TOP #sec1 .list:nth-child(1) .info .blk .icon img {
		width: 22px;
		height: auto;
	}

/*--------------------------------------
20180912 width  サイズ変更
--------------------------------------*/

	#TOP #sec1 .list:nth-child(2) .info .blk .icon img {
		width: 30px;
		height: auto;
	}
	#TOP #sec1 .list .info .blk .midashi {
		margin-top: 5px;
		text-align: center;
		letter-spacing: 2px;
		font-size: 16px;
	}
	#TOP #sec1 .list .info .blk .date {
		margin-top: 5px;
		font-size: 10px;
	}
	#TOP #sec1 .list .info .blk .date span {
		padding: 3px 10px;
		border: 1px solid #fff;
	}
	#TOP #sec1 .list .info .blk .title {
		margin-top: 5px;
		line-height: 1.4;
		font-size: 12px;
	}
	#TOP #sec1 .list:nth-child(2) .info .blk .title {
		margin-top: 20px;
		text-align: center;
		line-height: 1.4;
		font-size: 12px;
	}
}

#TOP #sec2 .sec_midashi {
	padding-left: 40px;
}
#TOP #sec2 .sec_midashi:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin: -24px 15px 0 0;
	width: 33px;
	height: 31px;
	background: transparent url(rainbow/assets/images/top/sec2_icon1.png) no-repeat 0 0;
	background-size: 33px 31px;
}
#TOP #sec2 .rows {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
#TOP #sec2 .rows .list {
	margin: 30px 15px 0;
	width: 210px;
	height: 150px;
	text-align: center;
}
#TOP #sec2 .rows .list a {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	align-content: center;
	-webkit-align-content: center;
	width: 210px;
	height: 150px;
	background-color: #eee;
	border-radius: 4px;
	box-shadow: 0 2px #ccc;
	transition: .3s;
}
#TOP #sec2 .rows .list a .img img.off {
	display: inline-block;
}
#TOP #sec2 .rows .list a .img img.on {
	display: none;
}
@media screen and (min-width: 769px) {
	#TOP #sec2 .rows .list a:hover {
		background-color: #0e5999;
			border-radius: 4px;
		color: #fff;
	}
	#TOP #sec2 .rows .list a:active .img img.off,
	#TOP #sec2 .rows .list a:hover .img img.off {
		display: none;
	}
	#TOP #sec2 .rows .list a:active .img img.on,
	#TOP #sec2 .rows .list a:hover .img img.on {
		display: inline-block;
	}
}
#TOP #sec2 .rows .list a span {
	flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	display: block;
	line-height: 1.4;
	font-weight: bold;
}
#TOP #sec2 .rows .list a span:nth-child(2) {
	margin-top: 20px;
}
@media screen and (min-width: 768px) {
	#TOP #sec2 .rows .list a:hover .img img.off {
		display: none;
	}
	#TOP #sec2 .rows .list a:hover .img img.on {
		display: inline-block;
	}
}
@media screen and (max-width: 767px) {
	#TOP #sec2 h2.midashi {
		padding-left: 25px;
	}
	#TOP #sec2 h2.midashi:before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		display: inline-block;
		margin: -12px 15px 0 0;
		width: 20px;
		height: 21px;
		background: transparent url(rainbow/assets/images/top/sec2_icon1.png) no-repeat 0 0;
		background-size: 20px 21px;
	}
	#TOP #sec2 .rows .list {
		flex: 0 0 48%;
		-webkit-flex: 0 0 49%;
		margin: 10px 0 0;
		width: 100%;
		height: auto;
		background-color: #eee;
		border-radius: 4px;
		box-shadow: 0 2px #ccc;
	}
	#TOP #sec2 .rows .list a {
		display: flex;
		display: -webkit-flex;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		align-content: center;
		-webkit-align-content: center;
		padding: 20px 0;
		width: 100%;
		height: 100%;
		background-color: transparent;
		border-radius: 0;
		box-shadow: none;
	}
	#TOP #sec2 .rows .list a span {
		font-size: 12px;
	}
}
#TOP #sec3 {
	padding: 40px 0 100px;
	background-color: #f1f1f1;
	border-bottom: 1px solid #ccc;
}
#TOP #sec3 .rows {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
#TOP #sec3 .rows .blk {
	flex: 0 0 48%;
	-webkit-flex: 0 0 48%;
}
#TOP #sec3 .rows .blk:nth-child(1) .sec_midashi {
	margin-top: 0;
	padding-left: 40px;
}
#TOP #sec3 .rows .blk:nth-child(1) .sec_midashi:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin: -24px 15px 0 0;
	width: 30px;
	height: 30px;
	background: transparent url(rainbow/assets/images/top/sec3_icon1.png) no-repeat 0 0;
	background-size: 30px 30px;
}
#TOP #sec3 .rows .blk:nth-child(2) .sec_midashi {
	margin-top: 0;
	padding-left: 55px;
}
#TOP #sec3 .rows .blk:nth-child(2) .sec_midashi:before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	display: inline-block;
	margin: -28px 15px 0 0;
	width: 40px;
	height: 34px;
	background: transparent url(rainbow/assets/images/top/sec3_icon2.png) no-repeat 0 0;
	background-size: 40px 34px;
}
#TOP #sec3 .body {
	margin-top: 30px;
	padding: 0 15px;
}
#TOP #sec3 .blk .body .tabs ul {
	display: flex;
	display: -webkit-flex;
	border-bottom: 3px solid #0e5999;
}
#TOP #sec3 .blk .body .tabs ul li {
	flex: 0 0 16%;
	-webkit-flex: 0 0 16%;
	margin-right: 4px;
}
#TOP #sec3 .blk .body .tabs ul li a {
	display: block;
	padding: 6px 0;
	text-align: center;
	letter-spacing: 2px;
	background-color: #fff;
	border-radius: 4px 4px 0 0;
	font-weight: bold;
	font-size: 14px;
	transition: .3s;
}
#TOP #sec3 .blk .body .tabs ul li a:hover,
#TOP #sec3 .blk .body .tabs ul li.active a {
	background-color: #0e5999;
	color: #fff;
}
#TOP #sec3 .body .box {
	padding: 50px 20px;
	background-color: #fff;
}
#TOP #sec3 .body .box .content {
	display: none;
}
#TOP #sec3 .body .box .content.active {
	display: block;
}
#TOP #sec3 .body .box .btitle {
	font-weight: bold;
	font-size: 18px;
}
#TOP #sec3 .rows .blk:nth-child(2) .body .box .content .inbox:nth-child(1) .btitle:before {
	content: url(rainbow/assets/images/top/icon1.png);
	margin-right: 5px;
	vertical-align: middle;
}
#TOP #sec3 .rows .blk:nth-child(2) .body .box .content .inbox:nth-child(2) .btitle:before {
	content: url(rainbow/assets/images/top/icon2.png);
	margin-right: 5px;
	vertical-align: middle;
}
#TOP #sec3 .body .inbox:nth-child(2) {
	margin-top: 40px;
}
#TOP #sec3 .body .box .list {
	padding: 15px 5px;
	border-bottom: 1px solid #ccc;
}
#TOP #sec3 .body .box .list .post {
	display: flex;
	display: -webkit-flex;
	margin-top: 10px;
}
#TOP #sec3 .body .box .list .post .date {
	flex: 0 0 19%;
	-webkit-flex: 0 0 19%;
	line-height: 1.4;
	font-size: 14px;
}
#TOP #sec3 .body .box .list .post .title {
	flex: 0 0 81%;
	-webkit-flex: 0 0 81%;
	line-height: 1.4;
	font-size: 14px;
}
.list .post .title.danger a {
	font-weight: bold;
	color: #ad181f;
}
.list .post .title.danger a:before {
	content: url(rainbow/assets/images/top/icon3.png);
	margin-right: 5px;
	vertical-align: middle;
}
#TOP #sec3 .body .box .more {
	margin-top: 20px;
	text-align: right;
	font-size: 13px;
}
#TOP #sec3 .body .box .more a {
	position: relative;
	display: inline-block;
	padding: 5px 40px 5px 20px;
	background-color: #083052;
	border-radius: 4px;
	font-size: 12px;
	color: #fff;
}
#TOP #sec3 .body .box .more a:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	display: inline-block;
	margin-top: -5px;
	width: 7px;
	height: 10px;
	background: transparent url(rainbow/assets/images/common/cursor_right.png) no-repeat 0 0;
	background-size: 7px 10px;
}
@media screen and (max-width: 767px) {
	#TOP #sec3 {
		padding: 20px 0;
	}
	#TOP #sec3 .rows {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	#TOP #sec3 .rows .blk {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	#TOP #sec3 .rows .blk:nth-child(2) {
		margin-top: 20px;
	}
	#TOP #sec3 .rows .blk:nth-child(1) .sec_midashi {
		padding-left: 25px;
	}
	#TOP #sec3 .rows .blk:nth-child(1) .sec_midashi:before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		display: inline-block;
		margin: -12px 15px 0 0;
		width: 20px;
		height: 20px;
		background: transparent url(rainbow/assets/images/top/sec3_icon1.png) no-repeat 0 0;
		background-size: 20px 20px;
	}
	#TOP #sec3 .rows .blk:nth-child(2) .sec_midashi {
		padding-left: 25px;
	}
	#TOP #sec3 .rows .blk:nth-child(2) .sec_midashi:before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		display: inline-block;
		margin: -12px 15px 0 0;
		width: 21px;
		height: 20px;
		background: transparent url(rainbow/assets/images/top/sec3_icon2.png) no-repeat 0 0;
		background-size: 21px 20px;
	}
	#TOP #sec3 .blk .body {
		margin-top: 20px;
		padding: 0;
	}
	#TOP #sec3 .blk .body .tabs ul {
		display: flex;
		display: -webkit-flex;
		border-bottom: 3px solid #0e5999;
	}
	#TOP #sec3 .blk .body .tabs ul li {
		flex: 0 0 85px;
		-webkit-flex: 0 0 85px;
		margin-right: .5%;
	}
	#TOP #sec3 .blk:nth-child(1) .body .tabs ul li {
		flex: 0 0 24.5%;
		-webkit-flex: 0 0 24.5%;
		margin-right: .5%;
	}
	#TOP #sec3 .blk:nth-child(2) .body .tabs ul li {
		flex: 0 0 16.2%;
		-webkit-flex: 0 0 16.2%;
		margin-right: .5%;
	}
	#TOP #sec3 .blk .body .tabs ul li a {
		display: block;
		padding: 10px 0;
		text-align: center;
		letter-spacing: 0;
		background-color: #fff;
		border-radius: 0;
		font-weight: bold;
		font-size: 16px;
	}
	#TOP #sec3 .blk .body .tabs ul li a:hover,
	#TOP #sec3 .blk .body .tabs ul li.active a {
		background-color: #0e5999;
		color: #fff;
	}
	#TOP #sec3 .body .box {
		padding: 20px 5px 20px;
		background-color: #fff;
	}
	#TOP #sec3 .body .box .btitle {
		padding: 0 5px;
		font-weight: bold;
		font-size: 16px;
	}
	#TOP #sec3 .body .inbox:nth-child(2) {
		margin-top: 20px;
	}
	#TOP #sec3 .body .box .list {
		padding: 15px 5px;
		border-bottom: 1px solid #ccc;
	}
	#TOP #sec3 .body .box .list .post {
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
		margin-top: 10px;
	}
	#TOP #sec3 .body .box .list .post .date {
		flex: 0 0 17%;
		-webkit-flex: 0 0 17%;
		line-height: 1.8;
		font-size: 10px;
	}
	#TOP #sec3 .body .box .list .post .title {
		flex: 0 0 79%;
		-webkit-flex: 0 0 79%;
		font-size: 14px;
	}
	#TOP #sec3 .body .box .more {
		margin-top: 20px;
		padding: 0 10px;
		text-align: center;
	}
	#TOP #sec3 .body .box .more a {
		display: block;
		padding: 10px 20px;
		background-color: #083052;
		border-radius: 0;
		font-size: 12px;
		color: #fff;
	}
}



/*--------------------------------------
	パンくず
--------------------------------------*/
#bread {
	padding: 10px 0;
	background-color: #333;
}
#bread li {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	font-size: 12px;
	color: #fff;
}
#bread li:first-child {
	padding-left: 0;
}
#bread li::before {
	content: ">";
	position: absolute;
	left: 5px;
	top: 0;
	font-size: 12px;
}
#bread li:first-child::before {
	content: "";
	padding-left: 0;
}
#bread li a {
	font-size: 12px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	#bread {
		padding: 5px 0;
	}
	#bread .inner {
		padding: 0 15px;
	}
	#bread li {
		font-size: 11px;
	}
	#bread li::before {
		font-size: 11px;
	}
	#bread li a {
		font-size: 11px;
	}
}


/*--------------------------------------
ページ上部（ページタイトル、ページ説明文）
20211101(青山) h1スタイル変更
------------------------------------------*/
#pheader {
	background-color: #fff;
	border-bottom: 1px solid #d9d9d9;
}
#pheader .inner {
	padding-top: 50px;
	padding-bottom: 50px;
}
h1 {
	line-height: 1.3;
	letter-spacing: 1px;
	font-size: 32px;
        color: #00a6a5;
}
h1 span {
	font-size: 24px;
}
#pheader .text {
	margin-top: 20px;
	line-height: 2;
	font-size: 14px;
}
@media screen and (max-width: 767px) {
	#pheader .inner {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	h1.midashi {
		line-height: 1.3;
		letter-spacing: 1px;
		font-size: 22px;
                color: #00a6a5;
	}
	h1.midashi span {
		font-size: 16px;
	}
	#pheader .text {
		margin-top: 20px;
		line-height: 1.8;
		font-size: 14px;
	}
}


/*--------------------------------------
	共通タイトル
--------------------------------------*/
.sec_midashi {
	position: relative;
	margin-top: 40px;
	padding: 0 10px 15px 0;
	letter-spacing: 1px;
	border-bottom: 4px solid #083052;
	font-weight: bold;
	font-size: 28px;
}
@media screen and (max-width: 767px) {
	.sec_midashi {
		margin-top: 30px;
		padding: 5px 10px 5px 0;
		letter-spacing: 0;
		border-bottom: 2px solid #083052;
		font-size: 18px;
	}
	.sec_midashi.type2 {
		margin-top: 0;
		margin-left: -15px;
		margin-right: -15px;
		padding: 10px;
		letter-spacing: 0;
		background-color: #083052;
		border-bottom: 1px solid #fff;
		color: #fff;
		font-size: 18px;
	}
}
h2 {
	padding-top: 90px;
	line-height: 1.3;
	letter-spacing: 2px;
	font-weight: bold;
	font-size: 30px;
}
h2.center {
	text-align: center;
}
h3 {
	padding: 10px 20px;
	line-height: 1.3;
	letter-spacing: 2px;
	background-color: #eee;
	font-weight: bold;
	font-size: 18px;
}
h4 {
	padding: 10px 20px;
/*--------------------------------------
　　　　20180718　line-heightを1.3を1.0に変更
--------------------------------------*/
	line-height: 1.0;
	letter-spacing: 2px;
	border-bottom: 1px solid #333;
	font-weight: bold;
	font-size: 24px;
}
h5 {
	padding: 10px 0;
	line-height: 1.3;
	letter-spacing: 1px;
/*--------------------------------------
　　　　20180706　コメントアウト
	border-bottom: 2px solid #eee;
	box-shadow: 0 6px 0 #f6f6f6;
--------------------------------------*/
	font-weight: bold;
	font-size: 18px;
}
h6 {
	padding: 10px 20px;
	line-height: 1.3;
	letter-spacing: 2px;
	background-color: #083052;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
}
.horizon {
	border-top:solid 3px ;
}
.hr {
	border-top:solid 3px ;
}
.mtitle {
	position: relative;
	margin-top: 20px;
	padding-left: 20px;
	font-weight: bold;
	font-size: 16px;
}
.mtitle:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 4px;
	width: 16px;
	height: 16px;
	background: transparent url(rainbow/assets/images/common/icon_check.png) no-repeat 0 0;
	background-size: 16px 16px;
}

@media screen and (max-width: 767px) {
	h2 {
		font-size: 20px;
	}
	h3 {
		padding: 10px 15px;
		font-size: 14px;
	}
	h4 {
		padding: 10px 15px;
		font-size: 18px;
	}
	h5 {
		padding: 7px 0;
		font-size: 14px;
	}
	h6 {
		padding: 10px 15px;
		font-size: 14px;
	}
}
.ititle, .icon_new, .icon_popular, .icon_contents {
	letter-spacing: 2px;
	font-size: 32px;
	color: #333;
}
.icon_new:before {
	content: url(rainbow/assets/images/common/icon_new.png);
	margin-right: 5px;
	vertical-align: middle;
}
.icon_popular:before {
	content: url(rainbow/assets/images/common/icon_popular.png);
	margin-right: 5px;
	vertical-align: middle;
}
.icon_contents:before {
	content: url(rainbow/assets/images/common/icon_contents.png);
	margin-right: 5px;
	vertical-align: middle;
}


/*--------------------------------------
	共通コンテンツ
--------------------------------------*/
#main_contents .sec {
	padding: 50px 0;
}
#main_contents .sec.gray {
	background-color: #eee;
}
#main_contents .sec .inbody {
	margin-top: 20px;
	padding: 40px;
	background-color: #fff;
}
@media screen and (max-width: 767px) {
	#main_contents .sec {
		padding: 30px 0;
	}
	#main_contents .sec .inbody {
		margin-top: 20px;
		padding: 15px;
	}
}

.lead {
	padding: 20px;
	line-height: 1.8;
}
@media screen and (max-width: 767px) {
	.lead {
		padding: 10px;
	}
}

.plead {
	margin-top: 60px;
}
.plead.dot p {
	position: relative;
	padding-left: 20px;
	line-height: 1.8;
}
.plead.dot p:before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
}
@media screen and (max-width: 767px) {
	.plead {
		margin-top: 20px;
	}
}

.lmenu .rows {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
.lmenu .rows .list {
	margin: 30px 15px 0;
	width: 210px;
	height: 150px;
	text-align: center;
}
.lmenu.bt .rows {
	justify-content: center;
	-webkit-justify-content: center;
}
.lmenu.bt .rows .list {
	width: 330px;
}
.lmenu .rows .list a {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	align-content: center;
	-webkit-align-content: center;
	width: 210px;
	height: 150px;
	border-radius: 4px;
	background-color: #eee;
	border-radius: 4px;
	box-shadow: 0 2px #ccc;
	transition: .3s;
}
.lmenu.bt .rows .list a {
	width: 330px;
}
.lmenu .rows .list a .img img.off {
	display: inline-block;
}
.lmenu .rows .list a .img img.on {
	display: none;
}
@media screen and (min-width: 769px) {
	.lmenu .rows .list a:hover,
	.lmenu .rows .list.on a {
		background-color: #0e5999;
		color: #fff;
	}
	.lmenu .rows .list a:active .img img.off,
	.lmenu .rows .list a:hover .img img.off {
		display: none;
	}
	.lmenu .rows .list a:active .img img.on,
	.lmenu .rows .list a:hover .img img.on {
		display: inline-block;
	}
}
.lmenu .rows .list a span {
	flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	display: block;
	line-height: 1.4;
	font-weight: bold;
}
@media screen and (max-width: 768px) {
	.lmenu.type2 .rows {
		background-color: #083052;
	}
}

@media screen and (min-width: 769px) {
	.lmenu .rows .list a:hover .img img.off,
	.lmenu .rows .list.on a .img img.off {
		display: none;
	}
	.lmenu .rows .list a:hover .img img.on,
	.lmenu .rows .list.on a .img img.on {
		display: inline-block;
	}
}
@media screen and (max-width: 767px) {
	.lmenu.type2 .rows .list a span {
	font-weight: normal;
	}
}

.lmenu .rows .list a span:nth-child(2) {
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	.lmenu.type2 {
		margin-left: -15px;
		margin-right: -15px;
	}
	.lmenu .rows .list {
		flex: 0 0 48%;
		-webkit-flex: 0 0 49%;
		margin: 10px 0 0 0;
		width: 100%;
		height: 120px;
		text-align: center;
		background-color: #eee;
		border-radius: 4px;
		box-shadow: 0 2px #ccc;
		transition: .3s;
	}

	.lmenu.bt .rows .list {
		width: 100%;
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	.lmenu.bt .rows .list a {
		width: 100%;
	}

	.lmenu.type2 .rows .list {
		flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		margin: 0;
		width: 100%;
		height: auto;
		border-bottom: 1px solid #fff;
	}
	.lmenu.type2 .rows .list:nth-child(odd) {
		border-right: 1px solid #fff;
	}
	.lmenu .rows .list a {
		display: flex;
		display: -webkit-flex;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		align-items: center;
		-webkit-align-items: center;
		padding: 15px 5px 15px 4px;
		width: 100%;
		height: 120px;
	}
	.lmenu.type2 .rows .list a {
		display: flex;
		display: -webkit-flex;
		display: -webkit-box; /* Androidブラウザ用 */
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		justify-content: center;
		-webkit-justify-content: center;
		-webkit-box-pack: center; /* Androidブラウザ用 */
		align-items: center;
		-webkit-box-align: center; /* Androidブラウザ用 */
		-webkit-align-items: center;
		padding: 15px 5px 15px 10px;
		width: 100%;
		height: 66px;
		background-color: #083052;
		border-radius: 0;
		box-shadow: none;
		color: #fff;
	}
	.lmenu .rows .list a span {
		font-size: 13px;
	}
	.lmenu.type2 .rows .list a span:nth-child(1) {
		display: none;
	}
	.lmenu.type2 .rows .list a span:nth-child(2) {
		margin-top: 0;
	}
	.lmenu.type2 .rows .list.on a {
		background-color: #155A97;
	}
}

.blk1 .rows {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

.blk1 .rows:after {
	content:"";
	display: block;
	width:32%;
}
.blk1 .rows .list {
	flex: 0 0 32%;
	-webkit-flex: 0 0 32%;
	margin-top: 25px;
	border: 1px solid #a3a3a3;
	border-radius: 5px;
}
.blk1 .rows .list:nth-child(1),
.blk1 .rows .list:nth-child(2),
.blk1 .rows .list:nth-child(3) {
	margin-top: 0;
}
.blk1 .rows .list .title {
	position: relative;
	padding: 15px 20px 15px 45px;
	height: 81px;
	line-height: 1.6;
	background-color: #083052;
	border-bottom: 1px solid #a3a3a3;
	font-size: 16px;
	color: #fff;
}
.blk1 .rows .list .title:before {
	content: url(rainbow/assets/images/common/icon_helpcheck.png);
	position: absolute;
	left: 20px;
	top: 17px;
}
.blk1 .rows .list .body {
	padding: 20px 25px;
	font-size: 16px;
}
ul.style1 li {
	position: relative;
	margin: 7px 0;
	padding-left: 20px;
}
ul.style1 li a {
	font-weight: bold;
	color: #0e5999;
	text-decoration: underline;
}
ul.style1 li:before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
	margin-right: 3px;
	color: #0e5999;
}
ul.none li {
	padding-left: 0;
}
ul.none li:before {
	content: "";
}
@media screen and (max-width: 767px) {
	.blk1 .rows .list {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-top: 20px;
	}
	.blk1 .rows .list .title {
		padding: 15px 20px 15px 45px;
		height: auto;
		line-height: 1.6;
		background-color: #083052;
		border-bottom: 1px solid #a3a3a3;
		font-size: 14px;
		color: #fff;
	}
	.blk1 .rows .list:nth-child(1),
	.blk1 .rows .list:nth-child(2),
	.blk1 .rows .list:nth-child(3) {
		margin-top: 20px;
	}
	.blk1 .rows .list:nth-child(1) {
		margin-top: 0;
	}
	.blk1 .rows .list .body {
		padding: 10px;
		font-size: 14px;
	}
	.blk1 .rows .list .body li {
		position: relative;
		margin: 7px 0;
		padding-left: 20px;
	}
	.blk1 .rows .list .body li a {
		font-weight: bold;
		color: #0e5999;
		text-decoration: underline;
	}
	.blk1 .rows .list .body li:before {
		content: "・";
		position: absolute;
		left: 0;
		top: 0;
		margin-right: 3px;
		color: #0e5999;
	}
}

.blk2 {
	margin-top: 20px;
}
.blk2 .body {
	padding: 20px 25px;
	font-size: 16px;
}
.blk2 .body p {
	margin-top: 20px;
}
.blk2 .body .style1 p {
	margin-top: 0;
}
.blk2 .body ul li {
	margin: 5px 0;
}
.blk2 .body ul.style1 li {
	margin: 10px 0;
}
.blk2 .body a {
	font-weight: bold;
        color: #0e5999;
	text-decoration: underline;
}
.blk2 .body a.anchor{
        display: block;
	padding-top: 90px;
        margin-top: -90px;
        text-decoration: none;
        color: #333333;
}

.blk2 .body a.anchor2{
	padding-top: 35px;
        margin-top: -35px;
        text-decoration: none;
        color: #333333;
}


.blk2 .body img {
	margin-top: 20px;
}
.blk2 .body .img.center {
	text-align: center;
}
.blk2 .body .img.center img {
	margin-left: 20px;
	margin-right: 20px;
}
.blk2 .body .indent {
	padding-left: 1em;
	text-indent: -1em;
}
@media screen and (max-width: 767px) {
	.blk2 .body {
		padding: 10px 15px;
		font-size: 14px;
	}
	.blk2 .body .style1 p {
		margin-top: 10px;
		line-height: 1.6;
	}
	.blk2 .body ul.style1 li {
		margin: 20px 0;
	}
	.blk2 .body .img.center img {
		margin-left: 10px;
		margin-right: 10px;
	}
	.blk2 .body ul li {
		margin: 15px 0;
	}
}

.body .cat {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
}
.body .cat span {
	display: inline-block;
	margin-right: 2px;
	padding: 4px 13px;
	line-height: 1;
	letter-spacing: 1px;
	background-color: #d2d2d2;
	font-size: 12px;
	color: #fff;
}
.body .cat span.on {
	background-color: #448aca;
	color: #fff;
}
.body .cat p {
	line-height: 1.4;
}
.body .cat .attention {
	margin: 0 10px;
	padding: 3px 5px;
	line-height: 1;
	background-color: #c80000;
	font-size: 10px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.body .cat {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	.body .cat span {
		margin-right: 1px;
		padding: 4px 12px;
		line-height: 1;
		background-color: #d2d2d2;
		font-size: 13px;
		color: #fff;
	}
}


/*--------------------------------------
	フォーム
--------------------------------------*/
.form_midashi {
	margin-top: 50px;
	line-height: 1.3;
	font-weight: bold;
	font-size: 20px;
}
.form_midashi .sub {
	display: inline-block;
	margin-left: 10px;
	font-weight: normal;
	font-size: 14px;
}
.form_midashi .sub:before {
	content: "必須";
	display: inline-block;
	margin-right: 7px;
	padding: 3px 8px 4px;
	line-height: 1.2;
	background-color: #ad181f;
	border-radius: 4px;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.form_blk {
	margin-top: 15px;
	padding: 20px;
	background-color: #fafafa;
}
.form_blk table {
	width: 100%;
}
.form_blk table th {
	padding: 20px 20px 15px;
	width: 30%;
	text-align: right;
	vertical-align: top;
}
.form_blk table tr.any th:before {
	content: "任意";
	display: inline-block;
	margin-right: 10px;
	padding: 3px 8px 4px;
	line-height: 1.2;
	background-color: #a3a3a3;
	border-radius: 4px;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.form_blk table tr.required th:before {
	content: "必須";
	display: inline-block;
	margin-right: 10px;
	padding: 3px 8px 4px;
	line-height: 1.2;
	background-color: #ad181f;
	border-radius: 4px;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.form_blk table tr.which th:before {
	content: "どちらか必須";
}
.form_blk table td {
	padding: 15px 20px;
	width: 70%;
}
.form_blk table td span.red {
	color: #ad181f;
}
.form_blk table td .error {
	margin-top: 10px;
	text-align: right;
}
.form_blk table td .error span {
	/* padding: 4px 30px; */
	background-color: #f00;
	font-size: 13px;
	color: #fff;
}
.form_blk table tr.captcha input[type="text"] {
	width: 150px;
}
.form_blk .notes {
	position: relative;
	padding-left: 17px;
	font-weight: normal;
	font-size: 14px;
}
.form_blk .notes:before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
}
.form_blk .notes.red:before {
	color: #ad181f;
}
.form_blk table td .ttitle {
	padding: 5px 0;
	font-weight: bold;
}
.form_blk table td .trows {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	align-items: center;
	-webkit-align-items: center;
}
.form_blk table td .trows div.tcol {
	flex: 0 0 48%;
	-webkit-flex: 0 0 48%;
}
select,
option {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 7px 40px 7px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid #999;
	background: #fff;
	background: url(rainbow/assets/images/common/cursor_select.png) right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#fff 100%);
	background: url(rainbow/assets/images/common/cursor_select.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#fff 100%);
	background-size: 28px, 100%;
	border-radius: 4px;
	font-size: 16px;
}
select.t2,
select.t2 option {
	display: block;
	margin: 5px auto 0;
	padding: 3px 10px 3px 5px;
	width: auto;
	background: #fff;
	background: url(rainbow/assets/images/common/cursor_select2_guide.png) 95% 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#fff 100%);
	background: url(rainbow/assets/images/common/cursor_select2_guide.png) 95% 50% no-repeat, linear-gradient(to bottom, #fff 0%,#fff 100%);
	background-size: 7px, 100%;
	border: 1px solid #999;
	font-size: 10px;
	height: 10px;
	width: 20px;
	box-sizing: content-box;
}
select.t2 option {
	color: #221815;
	font-size: 12px;
}
select.t2::-ms-expand {
    display: none;
}
input[type="text"],
input[type="email"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 7px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	border: 1px solid #999;
	background: #fff;
	border-radius: 4px;
	font-size: 16px;
}
input.input_year[type="text"] {
	margin-right: 5px;
	width: 100px;
}
input.input_month[type="text"] {
	margin-right: 5px;
	width: 60px;
}
input.input_time[type="text"] {
	margin-right: 5px;
	width: 50px;
}
label {
	padding-right: 30px;
}
.form_blk table td.cl3 {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	padding-top: 0;
	padding-bottom: 0;
	width: 100%;
}
.form_blk table td.cl3 label {
	flex: 0 0 20%;
	-webkit-flex: 0 0 25%;
	margin-bottom: 10px;
}

.form_blk table td.cl3 label:nth-child(2),
.form_blk table td.cl3 label:nth-child(5) {
	flex: 0 0 40%;
	-webkit-flex: 0 0 50%;
}
input[type="radio"],input[type="checkbox"]  {
	margin-right: 8px;
	vertical-align: middle;
}
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 7px 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	height: 200px;
	border: 1px solid #999;
	background: #fff;
	border-radius: 4px;
	font-size: 12px;
}
textarea.heigh {
	height: 300px;
}
.form_blk .description {
	margin-top: 60px;
	padding: 0 30px;
}
/*-----20220209 送信ボタンスタイル変更-----*/

input[type="submit"].submit {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	margin: 0 10px;
	padding: 23px 10px;
	width: 500px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-align: center;
	background-color: #00a6a5;
	border-radius: 30px;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
	cursor: pointer;
        box-shadow: 5px 5px #d3d3d3;
}
input[type="submit"].submit:hover {
	background-color: #004040;
         transition: all 0.2s ease-out;
}
/*-----------------------------------------*/

/*------20220209 戻るボタン丸み変更-------*/

input[type="button"].back {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	margin: 0 10px;
	padding: 23px 10px;
	width: 120px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-align: center;
	background-color: #a3a3a3;
	border-radius: 30px;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
	cursor: pointer;
}
input[type="button"].back:hover {
	background-color: #d9d9d9;
        transition: all 0.2s ease-out;
}
/*-----------------------------------------*/

@media screen and (max-width: 767px) {
	.form_midashi {
		margin-top: 30px;
		font-size: 15px;
	}
	.form_blk {
		padding: 0;
		background-color: #fafafa;
	}
	.form_blk table {
		display: block;
	}
	.form_blk table tbody {
		display: block;
		width: 100%;
	}
	.form_blk table tr {
		display: block;
		width: 100%;
	}
	.form_blk table th {
		display: block;
		padding: 10px 10px 0;
		width: 100%;
		text-align: left;
	}
	.form_blk table td {
		display: block;
		padding: 10px;
		width: 100%;
	}
	input.input_year[type="text"] {
		margin-right: 3px;
		width: 65px;
	}
	input.input_month[type="text"] {
		margin-right: 3px;
		width: 40px;
	}
	input.input_time[type="text"] {
		margin-right: 3px;
		width: 40px;
	}
	label {
		display: block;
		padding-right: 0;
	}
	.form_blk table td.cl3 label {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-bottom: 10px;
	}

	.form_blk table td.cl3 label:nth-child(2),
	.form_blk table td.cl3 label:nth-child(5) {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	select,
	option {
		padding: 5px 7px;
	}
	textarea {
		padding: 5px 7px;
		height: 150px;
		font-size: 14px;
	}
	.form_blk table td .trows {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	.form_blk table td .trows div.tcol {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin: 2px 0;
	}
	.form_blk .description {
		margin-top: 30px;
		padding: 0 10px;
	}
	input[type="submit"].submit {
		margin: 0 5px;
		padding: 15px 10px;
		width: 70%;
		font-size: 14px;
	}
	input[type="button"].back {
		margin: 0 5px;
		padding: 15px 10px;
		width: 20%;
		font-size: 14px;
	}
}



.btn_blk {
	margin-top: 70px;
	text-align: center;
}
/*-----20220209 ボタンスタイル変更-----*/
.btn {
	display: inline-block;
	margin: 0 10px;
	padding: 18px 70px;
	text-align: center;
	background-color: #a3a3a3;
	border-radius: 30px;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
}
.btn.gray {
	background-color: #a3a3a3;
}
.btn.gray:hover {
	background-color: #d9d9d9;
        transition: all 0.2s ease-out;
}
/*------------------------------------*/

@media screen and (max-width: 767px) {
	.btn_blk {
		margin-top: 30px;
	}
	.btn {
		margin: 0 5px;
		padding: 15px 30px;
		font-size: 14px;
	}
}
.btn2 {
	margin-top: 25px;
	text-align: right;
}
.btn2.center {
	text-align: center;
}
.btn2.right {
	text-align: right;
}

/*20220201 よくある質問ボタンスタイル変更*/
.btn2 a {
	position: relative;
	padding: 15px 40px;
	background-color: #00a6a5;
	border-radius: 30px;
	font-size: 14px;
	font-weight: 600;
	color: #fff;
	box-shadow: 5px 5px #d3d3d3;
}
.btn2 a:hover{
        background-color: #004040;
        transition: all 0.2s ease-out;
}
/*---------------------------------------*/

.btn2 a:after {
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	display: inline-block;
	margin-top: -5px;
	width: 7px;
	height: 10px;
	background: transparent url(rainbow/assets/images/common/cursor_right.png) no-repeat 0 0;
	background-size: 7px 10px;
}

/*--------------------------------------
	20181206 追加
--------------------------------------*/
.blk2 .body .btn2 a {
	text-decoration: none;
	position: relative;
	padding: 10px 40px 10px 20px;
	background-color: #083052;
	border-radius: 4px;
	font-size: 12px;
	color: #fff;
}


.btn_print.right {
	text-align: right;
}
.btn_print a {
	padding: 10px 20px;
	vertical-align: top;
	background-color: #0e5999;
	border-radius: 4px;
	font-size: 14px;
	color: #fff;
}
.btn_print a:before {
	content: url(rainbow/assets/images/common/cursor_print.png);
	margin-right: 10px;
}


.incident_tab_blk {
	margin-bottom: 50px;
}
.incident_tab_blk ul {
	display: flex;
	display: -webkit-flex;
	margin: 0 auto;
	width: 930px;
}
.incident_tab_blk ul li {
	flex: 0 0 50%;
	-webkit-flex: 0 0 50%;
	text-align: center;
}
.incident_tab_blk ul li a {
	display: inline-block;
	padding: 25px 0;
	width: 100%;
	background-color: #d9d9d9;
	font-weight: bold;
	font-size: 24px;
	color: #808080;
	transition: .3s;
}
.incident_tab_blk ul li a:hover,
.incident_tab_blk ul li.active a {
	background-color: #0e5999;
	border-right: none;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.incident_tab_blk {
		margin-bottom: 30px;
	}
	.incident_tab_blk ul {
		padding: 0 15px;
		width: 100%;
	}
	.incident_tab_blk ul li {
		flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		text-align: center;
	}
	.incident_tab_blk ul li a {
		padding: 15px 0;
		width: 100%;
		font-size: 18px;
	}
}
.incident_disp_blk .contents {
	display: none;
}
.incident_disp_blk .contents.active {
	display: block;
}


.tab_blk {
	border-bottom: 3px solid #0e5999;
}
.tab_blk.col6 {
	margin-top: 50px;
}
.tab_blk ul {
	display: flex;
	display: -webkit-flex;
	margin: 0 auto;
	width: 930px;
}
.tab_blk ul li {
	flex: 0 0 25%;
	-webkit-flex: 0 0 25%;
	text-align: center;
}
.tab_blk.col6 ul li {
	flex: 0 0 16.66%;
	-webkit-flex: 0 0 16.66%;
}
.tab_blk ul li a {
	display: inline-block;
	padding: 15px 0;
	width: 100%;
	background-color: #fff;
	font-weight: bold;
	font-size: 20px;
	color: #221815;
	transition: .3s;
}
.tab_blk ul li a span {
	display: inline-block;
	width: 100%;
	border-right: 1px solid #999;
}
.tab_blk ul li a:hover,
.tab_blk ul li.active a {
	background-color: #0e5999;
	border-right: none;
	color: #fff;
}
.tab_blk ul li a:hover span,
.tab_blk ul li.active a span {
	border-right: none;
}
@media screen and (max-width: 767px) {
	.tab_blk {
		padding: 0 15px;
		border-bottom: none;
	}
	.tab_blk.col6 {
		margin-top: 20px;
	}
	.tab_blk ul {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		width: 100%;
	}
	.tab_blk ul li {
		flex: 0 0 49%;
		-webkit-flex: 0 0 49%;
		margin-left: 2%;
		margin-top: 2%;
	}
	.tab_blk.col6 ul li {
		flex: 0 0 49%;
		-webkit-flex: 0 0 49%;
		margin-left: 2%;
		margin-top: 2%;
	}
	.tab_blk ul li:nth-child(2n+1) {
		margin-left: 0;
	}
	.tab_blk ul li a {
		padding: 15px 0;
		background-color: #f1f1f1;
		font-size: 16px;
	}
	.tab_blk ul li a span {
		border-right: none;
	}
}
.tab_disp_blk {
	margin-top: 50px;
}
.tab_disp_blk .row {
	margin: 0 auto;
	width: 930px;
}
.tab_disp_blk .row .content {
	display: none;
}
.tab_disp_blk .row .content.active {
	display: block;
}
.tab_disp_blk .list {
	display: flex;
	display: -webkit-flex;
	align-items: flex-start;
	-webkit-align-items: flex-start;
	margin-top: 20px;
	padding: 20px 0;
	border-bottom: 1px solid #ccc;
}
.tab_disp_blk .list .date {
	flex: 0 0 10%;
	-webkit-flex: 0 0 10%;
}
.tab_disp_blk .list .cat {
	flex: 0 0 24%;
	-webkit-flex: 0 0 24%;
	padding:  0 20px;
}
.tab_disp_blk.type2 .list .cat {
	flex: 0 0 35%;
	-webkit-flex: 0 0 35%;
	padding-top: 3px;
}
.tab_disp_blk .list .post {
	flex: 0 0 66%;
	-webkit-flex: 0 0 66%;
}
.tab_disp_blk.type2 .list .post {
	flex: 0 0 55%;
	-webkit-flex: 0 0 55%;
}
@media screen and (max-width: 767px) {
	.tab_disp_blk .row {
		padding: 0 15px;
		width: 100%;
	}
	.tab_disp_blk .list {
		position: relative;
		padding-top: 40px;
	}
	.tab_disp_blk .list .date {
		flex: 0 0 25%;
		-webkit-flex: 0 0 25%;
		padding-right: 20px;
	}
	.tab_disp_blk .list .cat {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		position: absolute;
		left: 0;
		top: 0;
		padding:  0 0 10px 0;
		width: 100%;
	}
	.tab_disp_blk.type2 .list .cat {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	.tab_disp_blk .list .cat span {
/*--------------------------------------
20181009 margin-left 1%から0%に変更
----------------------------------------*/
		margin-left: 0%;
		width: 32.33%;
		text-align: center;
	}
	.tab_disp_blk.type2 .list .cat span {
/*--------------------------------------
20181009 margin-left 1%から0%に変更
----------------------------------------*/
		margin-left: 0%;
/*--------------------------------------
20181009 width 19%から20%に変更
----------------------------------------*/
		width: 20%;
		font-size: 11px;
	}
	.tab_disp_blk .list .cat span:nth-child(3n+1) {
		margin-left: 0;
	}
	.tab_disp_blk .list .post {
		flex: 0 0 75%;
		-webkit-flex: 0 0 75%;
	}
	.tab_disp_blk.type2 .list .post {
		flex: 0 0 75%;
		-webkit-flex: 0 0 75%;
	}
}

.pagenation {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	align-items: center;
	-webkit-align-items: center;
	padding: 15px 0;
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
}
.pagenation .num_list ul {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
}
.pagenation .num_list ul li {
	margin: 0 5px;
}
.pagenation .num_list ul li span,
.pagenation .num_list ul li a {
	display: block;
	width: 43px;
	height: 43px;
	text-align: center;
	line-height: 43px;
	transition: .3s;
}
.pagenation .num_list ul li span,
.pagenation .num_list ul li a:hover {
	background-color: #0e5999;
	color: #fff;
}
.pagenation .prev {
	width: 120px;
	text-align: center;
}
.pagenation .prev a:before {
	content: "«";
	margin-right: 10px;
	font-size: 20px;
}
.pagenation .next {
	width: 120px;
	text-align: center;
}
.pagenation .next a:after {
	content: "»";
	margin-left: 10px;
	font-size: 20px;
}
.pagenation .back {
	padding: 0 20px;
	text-align: center;
}
.pagenation .back:before {
	content: url(rainbow/assets/images/common/icon_back.png);
	margin-right: 7px;
}
@media screen and (max-width: 767px) {
	.pagenation {
		margin-top: 0;
		padding: 10px;
	}
}

.title_blk {
	border-bottom: 1px solid #ccc;
}
.title_blk .in {
	margin: 0 auto;
	padding: 20px 0;
	width: 930px;
}
.title_blk .info {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	-webkit-justify-content: flex-end;
	align-items: center;
	-webkit-align-items: center;
	flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
}
.title_blk .info .date {
	margin-right: 20px;
}
.title_blk .title {
	margin-top: 20px;
	line-height: 1.4;
	font-weight: bold;
	font-size: 18px;
	color: #083052;
}
.body_blk .in {
	margin: 0 auto;
	padding: 20px 0;
	width: 930px;
}
.body_blk .in p {
	margin-bottom: 20px;
	word-break: break-all;
}
.body_blk p {
	line-height: 1.8em;
}
.body_blk p a {
	color: #083052;
	text-decoration: underline;
}
.body_blk .contact {
	margin-top: 30px;
	padding: 30px;
	line-height: 1.4em;
	background-color: #e9eef4;
	font-weight: bold;
	font-size: 14px;
	color: #083052;
}
@media screen and (max-width: 767px) {
	.title_blk .in {
		padding: 0 0 20px;
		width: 100%;
	}
	.title_blk .info {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	.title_blk .info .date {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-right: 0;
		margin-top: 15px;
		padding: 0 10px;
	}
	.title_blk .info .cat {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	.title_blk .info .cat span {
		margin-left: 1.33%;
		margin-bottom: 5px;
		width: 32%;
		text-align: center;
	}
	.title_blk .info .cat span:nth-child(3n+1) {
		margin-left: 0;
	}
	.title_blk .title {
		margin-top: 10px;
		font-size: 16px;
	}
	.body_blk .in {
		padding: 20px 0;
		width: 100%;
	}
	.body_blk .contact {
		padding: 20px;
	}
}

.check_box {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	margin-top: 10px;
	padding: 0 20px;
}
.check_box .list {
	flex: 0 0 12.5%;
	-webkit-flex: 0 0 12.5%;
	margin-top: 7px;
	font-weight: bold;
	font-size: 13px;
}
.check_box .list label {
	padding: 0;
}
.check_box .list input[type="checkbox"] {
	margin-right: 5px;
	vertical-align: middle;
}
@media screen and (max-width: 767px) {
	.check_box {
		padding: 0;
	}
	.check_box .list {
		flex: 0 0 50%;
		-webkit-flex: 0 0 50%;
		margin-top: 7px;
		font-weight: bold;
		font-size: 14px;
	}
}

.icon_box {
	margin-top: 20px;
}
.icon_box .ib_title {
	position: relative;
	padding: 10px 30px;
	background-color: #083052;
	font-size: 16px;
	color: #fff;
	cursor: pointer;
}
.icon_box .ib_title:after {
	content: "＋";
	position: absolute;
	right: 10px;
	top: 12px;
	line-height: 1;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
}
.icon_box.open .ib_title:after {
	content: "ー";
}
.icon_box .ib_box {
	display: none;
}
.icon_box .ib_box .in {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	padding: 10px 20px 30px;
	background-color: #eee;
}
.icon_box.open .ib_box {
	display: block;
}
.icon_box .ib_box .list {
	flex: 0 0 14.28%;
	-webkit-flex: 0 0 14.28%;
	margin-top: 20px;
	font-weight: bold;
	font-size: 13px;
	color: #083052;
}
.icon_box .ib_box .list img {
	margin-right: 10px;
	width: 28px;
	height: auto;
}
@media screen and (max-width: 767px) {
	.icon_box {
		margin-left: -10px;
		margin-right: -10px;
	}
	.icon_box .ib_title {
		padding: 10px 15px;
		font-size: 14px;
	}
	.icon_box .ib_box .in {
		padding: 0 10px 20px;
	}
	.icon_box .ib_box .list {
		display: flex;
		display: -webkit-flex;
		flex: 0 0 33.33%;
		-webkit-flex: 0 0 33.33%;
		align-items: center;
		position: relative;
		margin-top: 20px;
		padding-left: 30px;
		height: 24px;
		line-height: 1.2;
		font-size: 12px;
	}
	.icon_box .ib_box .list img {
		position: absolute;
		left: 0;
		top: 0;
		margin-right: 0;
		width: 25px;
		height: auto;
		vertical-align: middle;
	}
}

.scroll_wrapper {
	overflow-x: scroll;
}

/*20220201(青山) 小さいボタンスタイル変更*/
.btn3 {
	display: inline-block;
	margin: 0px 10px 0 10px;
	padding: 5px 20px;
	text-align: center;
	background-color: #00a6a5;
	border-radius: 30px;
	font-size: 12px;
        color: #fff;
}

.btn3:hover {
       background-color: #004040;
       transition: all 0.2s ease-out;
}
/*--------------------------------------*/

.view_box {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}

.view_box .box {
    margin-top: 10px;
    padding: 0 20px;
    line-height: 1.8;
    font-size: 12px;
}
@media screen and (max-width: 768px) {
	.view_box .box {
	    margin: 5px 0;
    	padding: 0 10px;
	}
}
/*--------------------------------------
教室設備一覧
----------------------------------------*/

table.data {
	table-layout: fixed;
	margin-top: 20px;
	/* width: 1490px; */
	border-top: 1px solid #999;
	border-left: 1px solid #999;
border-collapse: collapse;
}
table.data thead {
	/* display: block; */
	/* width: 1490px; */
}
table.data thead th {
	padding: 10px 0 8px;
	min-width: 50px;
	line-height: 1.2;
	vertical-align: bottom;
	background-color: #f5f9f8;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	font-weight: normal;
	font-size: 11px;
        color: #000;
	box-sizing: border-box;
}
table.data tbody {
	/* display: block; */
	/* overflow: scroll; */
	/* width: 1490px; */
	/* height: 650px; */
}
table.data tbody td {
	padding: 10px 0 8px 5px;
	min-width: 50px;
	text-align: center;
	line-height: 1.2;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	font-size: 12px;
}
table.data tbody td.left {
	text-align: left;
}
table.data tbody td.center {
	text-align: center;
}
table.data tbody td.right {
	text-align: right;
}
table.data tr:nth-child(even) td {
	background-color: #eee;
}
table.data tbody td a {
	font-weight: bold;
	color: #083052;
	text-decoration: underline;
}
table.data thead th:nth-child(1),
table.data tbody td:nth-child(1) {
	min-width: 66px;
}
table.data thead th:nth-child(2),
table.data tbody td:nth-child(2) {
	min-width: 55px;
}
table.data thead th:nth-child(3),
table.data tbody td:nth-child(3) {
	min-width: 65px;
}
table.data thead th:nth-child(4),
table.data tbody td:nth-child(4) {
	min-width: 65px;
}
table.data thead th:nth-child(5),
table.data tbody td:nth-child(5) {
	min-width: 49px;
}
table.data thead th.m,
table.data tbody td.m {
	min-width: 80px;
}
table.data thead th.w,
table.data tbody td.w {
	min-width: 160px;
}
table.data thead th.vc {
	vertical-align: middle;
}
table.data thead th.w img {
	margin-right: 5px;
}

@media screen and (max-width: 767px) {
	table.data tbody {
		max-height: 450px;
	}
}

.other_box {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: center;
	-webkit-justify-content: center;
}
.other_box .box {
	margin-top: 25px;
	padding: 0 20px;
	line-height: 1.8;
	font-size: 12px;
}

.attention {
	color: #f00;
}


.topic_blk {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
.topic_blk .list {
	flex: 0 0 31%;
	-webkit-flex: 0 0 31%;
	position: relative;
	margin-left: 2%;
	margin-top: 30px;
	border-radius: 5px;
}
.topic_blk .list:nth-child(3n+1) {
	margin-left: 0;
}
.topic_blk .list a {
	display: block;
	border-radius: 5px;
	color: #fff;
	transition: .3s;
}
.topic_blk .list .info {
	position: absolute;
	left: 0;
	top: 0;
	padding: 20px;
	width: 63%;
	height: 100%;
	background-color: rgba(8,48,82,0.8);
	border-radius: 5px 0 0 5px;
	z-index: 2;
}
.topic_blk .list a:hover .info {
	background-color: rgba(8,48,82,1);
}
.topic_blk .list .info:after {
	content: "";
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	width: 8px;
	height: 15px;
	background: transparent url(rainbow/assets/images/common/cursor_right.png) no-repeat 0 0;
	background-size: 8px 15px;
}
.topic_blk .list .info .date {
	margin-top: 10px;
	font-size: 13px;
}
.topic_blk .list .info .date span {
	padding: 5px 15px;
	border: 1px solid #fff;
}
.topic_blk .list .info .title {
	margin-top: 22px;
	line-height: 1.8;
	font-size: 15px;
}
@media screen and (max-width: 767px) {
	.topic_blk .list {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-left: 0;
		margin-top: 20px;
	}
	.topic_blk .list .info .date {
		margin-top: 10px;
		font-size: 12px;
	}
	.topic_blk .list .info .title {
		margin-top: 20px;
		line-height: 1.8;
		font-size: 14px;
	}
}
.topic_title {
	display: flex;
	display: -webkit-flex;
}
.topic_title .date span {
	display: block;
	padding: 7px 25px;
	line-height: 1;
	border: 1px solid #083052;
	font-size: 18px;
	color: #083052;
}
.topic_title .title {
	padding-left: 30px;
	line-height: 1.4;
	font-weight: bold;
	font-size: 24px;
	color: #083052;
}
.topic_post_date {
	font-size: 12px;
	color: #a3a3a3;
}
.topic_post_date.right {
	text-align: right;
}
.topic_post_date span:before {
	content: url(rainbow/assets/images/common/icon_time2.png);
	margin-right: 5px;
}
.topic_main_img {
	margin-top: 10px;
}
.topic_main_img img {
	border-radius: 5px;
}
.topic_notes {
	margin-top: 20px;
	padding: 8px 15px;
	background-color: #eee;
	font-size: 14px;
	color: #989ba4;
}
@media screen and (max-width: 767px) {
	.topic_title {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	.topic_title .date span {
		display: block;
		padding: 5px 15px;
		font-size: 14px;
	}
	.topic_title .title {
		margin-top: 10px;
		padding-left: 0;
		line-height: 1.4;
		font-size: 18px;
	}
	.topic_notes {
		margin-top: 20px;
		padding: 5px 12px;
		font-size: 12px;
	}
}


.post_date {
	font-size: 15px;
	color: #083052;
}
.post_date.right {
	text-align: right;
}
.post_date span:before {
	content: url(rainbow/assets/images/common/icon_time1.png);
	margin-right: 5px;
}

.qa_blk {
	margin-top: 30px;
}
.qa_blk .q {
	position: relative;
	padding-left: 100px;
	line-height: 1.4;
	font-size: 24px;
	color: #083052;
}
.qa_blk .q:before {
	content: "Q";
	position: absolute;
	left: 35px;
	top: -6px;
	padding: 5px 10px;
	line-height: 1;
	background-color: #083052;
	border-radius: 4px;
	font-size: 30px;
	color: #fff;
}
.qa_blk .a {
	position: relative;
	margin-top: 30px;
	padding-left: 100px;
}
.qa_blk .a:before {
	content: "A";
	position: absolute;
	left: 35px;
	top: -6px;
	padding: 5px 10px;
	line-height: 1;
	background-color: #fdb13d;
	border-radius: 4px;
	font-size: 30px;
	color: #fff;
}
.qa_blk .a .a1 {
	line-height: 1.4;
	font-size: 20px;
}
.qa_blk .a .a2 {
	margin-top: 20px;
	font-size: 16px;
}
@media screen and (max-width: 767px) {
	.qa_blk {
		margin-top: 30px;
	}
	.qa_blk .q {
		position: relative;
		padding-left: 25px;
		line-height: 1.4;
		font-size: 16px;
		color: #083052;
	}
	.qa_blk .q:before {
		content: "Q";
		position: absolute;
		left: -10px;
		top: -2px;
		padding: 4px 8px;
		line-height: 1;
		background-color: #083052;
		border-radius: 4px;
		font-size: 18px;
		color: #fff;
	}
	.qa_blk .a {
		position: relative;
		margin-top: 20px;
		padding-left: 25px;
	}
	.qa_blk .a:before {
		content: "A";
		position: absolute;
		left: -10px;
		top: -2px;
		padding: 4px 8px;
		line-height: 1;
		background-color: #fdb13d;
		border-radius: 4px;
		font-size: 18px;
		color: #fff;
	}
	.qa_blk .a .a1 {
		line-height: 1.4;
		font-size: 16px;
	}
	.qa_blk .a .a2 {
		margin-top: 20px;
		font-size: 14px;
	}
}

.line_box {
	padding: 20px;
	width: 50%;
	border: 2px solid #333;
}
.line_box.red {
	border: 2px solid #ad181f;
}
.line_box3 {
	padding: 20px;
	width: 50%;
	border: 2px solid #ad181f;
}
.line_box .title {
	font-weight: bold;
	font-size: 18px;
}
.line_box.red .title {
	color: #ad181f;
}
.line_box p {
	margin-top: 20px;
	font-size: 16px;
}
@media screen and (max-width: 767px) {
	.line_box {
		padding: 15px;
		width: 100%;
	}
	.line_box .title {
		font-size: 16px;
	}
	.line_box p {
		margin-top: 10px;
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	.line_box3 {
		padding: 15px;
		width: 100%;
	}
}
table.style1 {
	width: 100%;
	border-top: 1px solid #a3a3a3;
	border-left: 1px solid #a3a3a3;
	font-size: 16px;
}
table.style1.cs2 {
	width: 50%;
}

table.style1 th {
	padding: 15px 20px;
	text-align: left;
	vertical-align: top;
	background-color: #eee;
	border-right: 1px solid #a3a3a3;
	border-bottom: 1px solid #a3a3a3;
	font-weight: normal;
}
table.style1 th.center {
	text-align: center;
}
table.style1.nth2 th {
	width: 50%;
}
table.style1.nth3 th {
	width: 33.33%;
}
/*--------------------------------------------
20181112 nth4
----------------------------------------------*/
table.style1.nth4 th {
	width: 25%;
}
table.style1 td {
	padding: 15px 20px;
	text-align: left;
	vertical-align: top;
	border-right: 1px solid #a3a3a3;
	border-bottom: 1px solid #a3a3a3;
}
table.style1 td.center {
	text-align: center;
}
@media screen and (max-width: 767px) {
	table.style1 {
		font-size: 13px;
	}
	table.style1.cs2 {
		width: 100%;
	}
	table.style1 th {
		padding: 10px 15px;
	}
	table.style1 td {
		padding: 10px 15px;
	}
}
.topimg_blk {
	display: flex;
	display: -webkit-flex;
}

.topimg_blk .img {
	padding-right: 50px;
}

.topimg_blk .text {
	line-height: 2;
}

/*--------------------------------------------
20180608 topimg_blk内のリンクスタイル追加
----------------------------------------------*/
.topimg_blk a {
	font-weight: bold;
	color: #0e5999;
	text-decoration: underline;
}
/*--------------------------------------*/

/*--------------------------------------
20180608 リンクカラーラインスタイル追加
20211109 ホバー時の色変更追加
20220202 リンクラインスタイル削除

.linklinecolor {
	color: #00A6A5;  
	}
.linklinecolor a:hover
        text-decoration: underline;
        color: #00A6A5;
        transition: all 0.2s ease-out;
}
----------------------------------------*/  
/*--------------------------------------*/

@media screen and (max-width: 767px) {
	.topimg_blk {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		justify-content: center;
		-webkit-justify-content: center;
	}

	.topimg_blk .img {
		margin-bottom: 20px;
		padding-right: 0;
	}
	.topimg_blk .text {
		line-height: 1.6;
	}
}
/*--------------------------
20180608 リンクバースタイル追加
------------------------*/
.topimg_blk a {
	font-weight: bold;
	color: #0e5999;
	text-decoration: underline;
}

.confirm_blk {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
	-webkit-justify-content: center;
	align-items: center;
	-webkit-align-items: center;
	margin: 50px auto 0;
	width: 690px;
	height: 180px;
	border-radius: 4px;
	border: 1px solid #999;
}
.confirm_blk:before {
	content: url(rainbow/assets/images/common/icon_question.png);
	margin-right: 50px;
}
@media screen and (max-width: 767px) {
	.confirm_blk {
		margin: 30px auto 0;
		width: 100%;
		height: 100px;
	}
	.confirm_blk:before {
		content: "";
		margin-right: 0;
	}
}

.number_blk {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	counter-reset: number 0;
	padding: 0 20px;
}
.number_blk.reverse {
	flex-direction: row-reverse;
	-webkit-flex-direction: row-reverse;
}
.number_blk .fl {
	flex: 0 0 56%;
	-webkit-flex: 0 0 56%;
}
.number_blk .list {
	position: relative;
	margin-top: 35px;
	padding-left: 55px;
}
.number_blk .list:before {
	counter-increment: number 1;
	content: "0"counter(number);
	position: absolute;
	left: 0;
	top: -9px;
	padding: 8px;
	width: 40px;
	height: 40px;
	text-align: center;
	background-color: #fdb13d;
	border-radius: 20px;
	font-size: 18px;
	color: #fff;
}
.number_blk .fl .list .lt {
	font-weight: bold;
}
.number_blk .fl .list .lb {
	margin-top: 10px;
}
.number_blk .fr {
	flex: 0 0 40%;
	-webkit-flex: 0 0 40%;
	padding-top: 30px;
}
@media screen and (max-width: 767px) {
	.number_blk {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		padding: 0 10px;
	}
	.number_blk .fl {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-top: 20px;
	}
	.number_blk .fl .list {
		position: relative;
		margin-top: 20px;
		padding-left: 35px;
	}
	.number_blk .fl .list:before {
		counter-increment: number 1;
		content: "0"counter(number);
		position: absolute;
		left: 0;
		top: -5px;
		padding: 5px;
		width: 26px;
		height: 26px;
		text-align: center;
		background-color: #fdb13d;
		border-radius: 13px;
		font-size: 14px;
		color: #fff;
	}
	.number_blk .fr {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
}

.number_blk2 {
	counter-reset: number 0;
	padding: 0 20px;
}
.number_blk2 .list {
	position: relative;
	margin-top: 50px;
}
.number_blk2 .list:before {
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	left: 0;
	top: 0;
	padding: 2px;
	width: 26px;
	height: 26px;
	text-align: center;
	background-color: #333;
	border-radius: 13px;
	font-size: 13px;
	color: #fff;
}
.number_blk2 .list .lt {
	padding-left: 35px;
}
.number_blk2 .img {
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	.number_blk2 {
		padding: 0;
	}
	.number_blk2 .list:before {
		width: 22px;
		height: 22px;
		border-radius: 11px;
	}
	.number_blk2 .list .lt {
		padding-left: 30px;
	}
	.number_blk2 .img {
		margin-top: 0;
	}
}

.menu_blk {
	margin-top: 40px;
}
.menu_blk ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}
.menu_blk li {
	margin: 30px 0 0;
	width: 270px;
	height: 200px;
	text-align: center;
}
.menu_blk li a {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	align-content: center;
	-webkit-align-content: center;
	width: 100%;
	height: 200px;
	background-color: #eee;
	border-radius: 4px;
	box-shadow: 0 2px #ccc;
	transition: .3s;
}
.menu_blk li a .img img.off {
	display: inline-block;
}
.menu_blk li a .img img.on {
	display: none;
}
.menu_blk li a:hover {
	background-color: #0e5999;
	color: #fff;
}
.menu_blk li a span {
	flex: 1 1 100%;
	-webkit-flex: 1 1 100%;
	display: block;
	line-height: 1.4;
	font-weight: bold;
	font-size: 24px;
}
.menu_blk li a span:nth-child(2) {
	margin-top: 20px;
}
@media screen and (min-width: 768px) {
	.menu_blk li a:hover .img img.off {
		display: none;
	}
	.menu_blk li a:hover .img img.on {
		display: inline-block;
	}
}
@media screen and (max-width: 767px) {
	.menu_blk {
		margin-top: 20px;
	}
	.menu_blk li {
		margin: 20px 0 0;
		width: 100%;
		height: 100px;
	}
	.menu_blk li a {
		display: flex;
		display: -webkit-flex;
		flex-wrap: nowrap;
		-webkit-flex-wrap: nowrap;
		align-items: center;
		-webkit-align-items: center;
		justify-content: flex-start;
		-webkit-justify-content: flex-start;
		padding-left: 30px;
		width: 100%;
		height: 100px;
		background-color: #eee;
		border-radius: 4px;
		box-shadow: 0 2px #ccc;
		transition: .3s;
	}
	.menu_blk li a span {
		flex: 0 0 auto;
		-webkit-flex: 0 0 auto;
		font-size: 20px;
	}
	.menu_blk li a span:nth-child(1) {
		margin-right: 20px;
	}
	.menu_blk li a span:nth-child(2) {
		margin-top: 0;
	}
}
.hissu
{}
.hissu:after {
	content: "必須";
	display: inline-block;
	margin-left: 20px;
	padding: 5px 10px 6px;
	line-height: 1.2;
	vertical-align: middle;
	background-color: #ad181f;
	font-weight: normal;
	font-size: 14px;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.hissu:after {
		margin-left: 10px;
		padding: 4px 8px 5px;
		font-size: 11px;
	}
}
.color_red {
	font-weight: bold;
/*--------------------------------------
	font-sizeコメントアウト　20180724


	font-size: 14px;

--------------------------------------*/
	color: #ad181f;
}
.icon_request {
	margin-left: 15px;
	padding: 4px 6px 4px 3px;
	line-height: 1.2;
	vertical-align: middle;
	text-indent: 0;
	background-color: #c80000;
	font-style: normal;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.icon_request:before {
	content: url(rainbow/assets/images/common/icon_request.png);
	margin-right: 3px;
	vertical-align: middle;
}
.icon_dl {
	margin-left: 15px;
	padding: 4px 6px 4px 3px;
	line-height: 1.2;
	vertical-align: middle;
	text-indent: 0;
	background-color: #c80000;
	font-style: normal;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.icon_dl:before {
	content: url(rainbow/assets/images/common/icon_dl.png);
	margin-right: 3px;
	vertical-align: middle;
}
.icon_important {
	margin-left: 15px;
	padding: 4px 6px;
	line-height: 1.2;
	vertical-align: middle;
	text-indent: 0;
	background-color: #c80000;
	font-style: normal;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.icon_important:before {
	content: url(rainbow/assets/images/common/icon_important.png);
	margin-right: 3px;
	vertical-align: middle;
}

#search_keyword .inner {
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	height: 100px;
	background-color: #d2d2d2;
        border-radius: 5px;
}
/*--------------------------------------
	20180912 font-size変更
--------------------------------------*/
#search_keyword .fl {
	flex: 0 0 25%;
	-webkit-flex: 0 0 25%;
	text-align: center;
	font-weight: bold;
	font-size: 22px;
	color: #333333;
}
#search_keyword .fl:before {
	content: url(rainbow/assets/images/common/icon_key.png);
	margin-right: 10px;
	vertical-align: middle;
}
#search_keyword .fr {
	flex: 0 0 75%;
	-webkit-flex: 0 0 75%;
	text-align: center;
}
#search_keyword .gsc-search-box input#gsc-i-id2 {
	box-sizing: border-box;
	height: 50px;
	padding: 10px !important;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	background-position: 5px center !important;
}
 
#search_keyword .gsc-search-box .gsc-input-box,
#search_keyword .gsc-search-box .gsc-input-box-hover,
#search_keyword .gsc-search-box .gsc-input-box-focus {
	border: none !important;
	background: none;
	height: auto;
}
#search_keyword .fr .gsc-control-cse, #search_keyword .gsc-control-cse {
	font-family: inherit;
	font-size: inherit;
	width: 600px !important;
	margin: auto !important;
	padding: none;
	border: none;
	background: none;
}
#search_keyword .fr input[type="text"] {
	display: inline-block;
	width: 580px !important;
	height: 59px !important;
	vertical-align: middle;
	border: 1px solid #989ba4 !important;
	font-size: 20px !important;
}
#search_keyword .fr .gsc-search-box .gsc-search-button-v2 {
	display: inline-block;
	margin-left: 5px;
	width: 100px;
	height: 60px;
	text-align: center;
	line-height: 60px;
	background-color: #eee;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border: 1px solid #989ba4;
	background: #eee url("/rainbow/assets/images/common/icon_ksearch.png") center no-repeat;
	cursor: pointer;
}
#search_keyword .fr .gsc-search-box .gsc-search-button-v2 svg {
	display: none;
}
#search_keyword .fr a img {
	vertical-align: middle;
}
#search_keyword .gsib_b {
	display: none;
}
@media screen and (max-width: 767px) {
	.icon_dl {
		display: inline-block;
		margin-left: 5px;
		padding: 2px 6px 2px 3px;
		font-size: 11px;
	}
	.icon_important {
		display: inline-block;
		margin-left: 5px;
		padding: 2px 6px 2px 3px;
		font-size: 11px;
	}
	.icon_request {
		display: inline-block;
		margin-left: 5px;
		padding: 2px 6px 2px 3px;
		font-size: 11px;
	}
	#search_keyword .inner {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		padding: 20px 0;
		height: auto;
	}
/*--------------------------------------
	20180912 font-size変更
--------------------------------------*/
	#search_keyword .fl {
		flex: 0 0 86%;
		-webkit-flex: 0 0 86%;
		margin: 0 auto;
		text-align: left;
		font-weight: bold;
		font-size: 18px;
		color: #333333;
	}
	#search_keyword .fl:before {
		content: url(rainbow/assets/images/common/icon_key.png);
		margin-right: 5px;
		vertical-align: middle;
	}
	#search_keyword .fr {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-top: 15px;
	}
	#search_keyword .fr .gsc-search-box-tools .gsc-search-box .gsc-input {
		padding: 0 !important;
	}
	#search_keyword .fr .gsib_a {
		padding: 0 !important;
	}
	#search_keyword .fr .gsc-control-cse, #search_keyword .gsc-control-cse {
		width: 100% !important;
		padding-top: 0;
		padding-bottom: 0;
	}
	#search_keyword .fr input[type="text"] {
		display: inline-block;
		width: 100% !important;
		height: 40px !important;
		vertical-align: middle;
		border: 1px solid #fff;
		font-size: 14px;
	}
	#search_keyword .fr .gsc-search-box .gsc-search-button-v2 {
		width: 16% !important;
		height: 40px !important;
	}
/*
	#search_keyword .fr a {
		display: inline-block;
		margin-left: 3px;
		width: 16%;
		height: 40px;
		text-align: center;
		line-height: 40px;
		background-color: #eee;
		border-radius: 5px;
	}
	#search_keyword .fr a img {
		vertical-align: middle;
	}*/
}

/*--------------------------------------
	20181130　コメントアウト

span.pdf:after {
	content: url(rainbow/assets/images/common/icon_pdf.png);
	margin: 0 5px;
	vertical-align: text-top;
}
--------------------------------------*/

/*--------------------------------------
	pdf2 ファイルアイコン
20180711 span削除
20181204 margin調整
--------------------------------------*/
.pdf2
{}
.pdf2:before {
	content: url(rainbow/assets/images/common/icon_pdf.png);
	margin: 0 7px 0 5px;
	vertical-align: middle;
}
/*--------------------------------------
	20181130 コメントアウト

span.html2:before {
	content: url(rainbow/assets/images/common/icon_html.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/

.mt0 {
	margin-top: 0px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.pt0 {
	padding-top: 0px !important;
}

/*--------------------------------------
	ファイルアイコン　20180510追加
20180711 span削除
20181204 margin調整
--------------------------------------*/
.word
{}
.word:before {
	content: url(rainbow/assets/images/common/icon_word.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
.excel
{}
.excel:before {
	content: url(rainbow/assets/images/common/icon_excel.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
.ppt
{}
.ppt:before {
	content: url(rainbow/assets/images/common/icon_ppt.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
.acs
{}
.acs:before {
	content: url(rainbow/assets/images/common/icon_acs.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
.helpcheck
{}
.helpcheck:before {
	content: url(rainbow/assets/images/common/icon_helpcheck.png);
	margin: 0 5px;
	vertical-align: middle;
}
/*--------------------------------------
	icon_arrow01　20180709コメントアウト

span.weblink:before {
	content: url(rainbow/assets/images/common/icon_weblink.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/
/*--------------------------------------
	20181112 span削除
20181204 margin調整
--------------------------------------*/
.file
{}
.file:before {
	content: url(rainbow/assets/images/common/icon_file.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
.manualpage
{}
.manualpage:before {
	content: url(rainbow/assets/images/common/icon_manualpage.png);
	margin: 0 11px 0 5px;
	vertical-align: middle;
}
/*--------------------------------------
	icon_arrow01　20180709コメントアウト

span.arrow01:before {
	content: url(rainbow/assets/images/common/icon_arrow01.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/
/*--------------------------------------
	icon_ 　20180601追加
20180711 span削除
--------------------------------------*/
/*--------------------------------------
20181130　map01 コメントアウト

.map01
{}
.map01:before {
	content: url(rainbow/assets/images/common/icon_map.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/
/*--------------------------------------
20181130 downloadコメントアウト

.download
{}
.download:before {
	content: url(rainbow/assets/images/common/icon_download.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/

/*--------------------------------------
20180711 margin左右サイズ変更
--------------------------------------*/
.application
{}
.application:before {
	content: url(rainbow/assets/images/common/icon_application.png);
	margin: 0 5px 0 15px;
	vertical-align: middle;
}
/*--------------------------------------
	icon_arrow01　20180709コメントアウト
span.important2:before {
	content: url(rainbow/assets/images/common/icon_important2.png);
	margin: 0 5px;
	vertical-align: middle;
}
--------------------------------------*/
/*--------------------------------------
	icon_ 　20180709追加
20180711 span削除
--------------------------------------*/
.linkiconself
{}
.linkiconself:after {
	content: url(rainbow/assets/images/common/icon_linkiconself.png);
	margin: 0 3px 0 3px;
	vertical-align: text-bottom;
}
.linkiconblank
{}
.linkiconblank:after {
	content: url(rainbow/assets/images/common/icon_linkiconblank.png);
	margin: 0 4px;
	vertical-align: middle;
}
.caution
{}
.caution:before {
	content: url(rainbow/assets/images/common/icon_coution.png);
	margin: 0 5px;
	vertical-align: middle;
}
.error2
{}
.error2:before {
	content: url(rainbow/assets/images/common/icon_error.png);
	margin: 0 5px;
	vertical-align: middle;
}
.notice
{}
.notice:before {
	content: url(rainbow/assets/images/common/icon_notice.png);
	margin: 0 5px;
	vertical-align: middle;
}
.question2
{}
.question2:before {
	content: url(rainbow/assets/images/common/icon_question2.png);
	margin: 0 5px;
	vertical-align: middle;
}
.forbidden
{}
.forbidden:before {
	content: url(rainbow/assets/images/common/icon_forbidden.png);
	margin: 0 5px;
	vertical-align: middle;
}
/*--------------------------------------
	indent1　20180709追加
20180711 span削除
--------------------------------------*/
.indent1{
	display:inline-block;
	padding-left:4em;
	text-indent:-2em;
}
/*--------------------------------------
	indent2　20180710追加
20180711 span削除
--------------------------------------*/
.indent2{
	display:inline-block;
	padding-left:2em;
	text-indent:-2em;
}
/*--------------------------------------
	indent3　20180710追加
20180711 span削除
--------------------------------------*/
.indent3{
	display:inline-block;
	padding-left:4em;
	text-indent:-2.6em;
}
/*--------------------------------------
	indent4　20180710追加
20180711 span削除
--------------------------------------*/
.indent4{
	display:inline-block;
	padding-left:2.6em;
	text-indent:-2.6em;
}



/*--------------------------------------
半角英数字ピリオド半角スペースインデント
--------------------------------------*/
.materialindent1{
	display:inline-block;
	padding-left:2.2em;
	text-indent:-1.2em;
}
.materialindent2{
	display:inline-block;
	padding-left:1.2em;
	text-indent:-1.2em;
}



/*--------------------------------------
	line_box2　20180511追加
--------------------------------------*/
.line_box2 {
	padding: 20px;
	width: 75%;
	border: 2px solid #333;
}
.line_box2.red {
	border: 2px solid #ad181f;
}
.line_box4 {
	padding: 20px;
	width: 75%;
	border: 2px solid #ad181f;
}
/*--------------------------------------
	line_box2 title　20180620追加
--------------------------------------*/
.line_box2 .title {
	font-weight: bold;
	font-size: 18px;
}
.line_box2.red .title {
	color: #ad181f;
}
.line_box2 p {
	margin-top: 20px;
	font-size: 16px;
}
@media screen and (max-width: 767px) {
	.line_box2 {
		padding: 15px;
		width: 100%;
	}
/*--------------------------------------
	line_box2 title　20180620追加
--------------------------------------*/
	.line_box2 .title {
		font-size: 16px;
       	}
	.line_box2 p {
		margin-top: 10px;
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	.line_box4 {
		padding: 15px;
		width: 100%;
	}

}
/*--------------------------------------
	箇条書き表示　20180712追加
　　　　20181130　コメントアウト

.kome {
	padding-left: 1em;
	text-indent: -1em;
}
.kome:before {
	content: "※";
}

.white-circle {
	padding-left: 1em;
	text-indent: -1em;
}
.white-circle:before {
	content: "○";
}

.black-circle {
	padding-left: 1em;
	text-indent: -1em;
}
.black-circle:before {
	content: "●";
}
--------------------------------------*/

/*--------------------------------------
	余白対応　20180712追加
--------------------------------------*/
@media screen and (min-width: 768px) {
	#TOP #sec1 .inner {
		padding-left: 15px;
		padding-right: 15px;
	}
	header#header .hb {
		padding-left: 15px;
		padding-right: 15px;
	}
	.hsearch {
		padding-right: 15px;
		padding-left: 15px;
	}
	#bread .inner {
		padding-left: 15px;
	}
	h1 {
		padding-left: 15px;
	}
	#pheader .text {
		padding-left: 15px;
	}
	#pheader2 span {
		padding-left: 15px;
	}
	.sec_midashi {
		padding-left: 15px;
		padding-right: 15px;
	}
	#main_contents .inner {
		padding-left: 15px;
		padding-right: 15px;
	}
	.lmenu .rows .list {
		margin-left: 10px;
		margin-right: 10px;
	}
}

/*--------------------------------------
	DB a　20180907追加
--------------------------------------*/
.db a {
	font-weight: bold;
	color: #0e5999;
	text-decoration: underline;
}

/*--------------------------------------
	hr　20181116追加
--------------------------------------*/
hr {
	height: 1px;
	border: none;
	border-top: 2.5px #000000 solid;
}
/*--------------------------------------
	数字アイコン　20181129追加
--------------------------------------*/
.num01 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num01:before {
	content: url(rainbow/assets/images/common/icon_num01.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}

.num02 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num02:before {
	content: url(rainbow/assets/images/common/icon_num02.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num03 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num03:before {
	content: url(rainbow/assets/images/common/icon_num03.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num04 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num04:before {
	content: url(rainbow/assets/images/common/icon_num04.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num05 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num05:before {
	content: url(rainbow/assets/images/common/icon_num05.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num06 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num06:before {
	content: url(rainbow/assets/images/common/icon_num06.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num07 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num07:before {
	content: url(rainbow/assets/images/common/icon_num07.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num08 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num08:before {
	content: url(rainbow/assets/images/common/icon_num08.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num09 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num09:before {
	content: url(rainbow/assets/images/common/icon_num09.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num10 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num10:before {
	content: url(rainbow/assets/images/common/icon_num10.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num11 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num11:before {
	content: url(rainbow/assets/images/common/icon_num11.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num12 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num12:before {
	content: url(rainbow/assets/images/common/icon_num12.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num13 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num13:before {
	content: url(rainbow/assets/images/common/icon_num13.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num14 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num14:before {
	content: url(rainbow/assets/images/common/icon_num14.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num15 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num15:before {
	content: url(rainbow/assets/images/common/icon_num15.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num16 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num16:before {
	content: url(rainbow/assets/images/common/icon_num16.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num17 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num17:before {
	content: url(rainbow/assets/images/common/icon_num17.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num18 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num18:before {
	content: url(rainbow/assets/images/common/icon_num18.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num19 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num19:before {
	content: url(rainbow/assets/images/common/icon_num19.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}
.num20 {
	display:inline-block;
	padding-left:40px;
	text-indent:-40px;
}
.num20:before {
	content: url(rainbow/assets/images/common/icon_num20.png);
	margin: 0 13px 0 5px;
	vertical-align: middle;
}


/*--------------------------------------
	箇条書きインデント　20181129追加
--------------------------------------*/

.kajyo_suji1{
	display:inline-block;
	padding-left:2.4ex;
	text-indent:-2.4ex;
}
.kajyo_suji2{
	display:inline-block;
	margin-left: 40px;
	padding-left:2.4ex;
	text-indent:-2.4ex;
}
.kajyo_kigo1{
	display:inline-block;
	padding-left:1em;
	text-indent:-1em;
}
.kajyo_kigo2{
	display:inline-block;
	margin-left: 40px;
	padding-left:1em;
	text-indent:-1em;
}

/*--------------------------------------
	アイコン頭出し　20181204追加
--------------------------------------*/
.icon_atamadashi{
	display:inline-block;
	padding-left:32px;
	text-indent:-32px;
}
/*--------------------------------------
	フォーム
	20181211 form_blk2　追加
--------------------------------------*/
.form_blk2 {
	margin-top: 15px;
	padding: 20px;
	background-color: #fafafa;
}
.form_blk2 table {
	width: 100%;
}
.form_blk2 table th {
	padding: 20px 20px 15px;
	width: 45%;
	text-align: left;
	vertical-align: top;
}
.form_blk2 table tr.any th:before {
	content: "任意";
	display: inline-block;
	margin-right: 10px;
	padding: 3px 8px 4px;
	line-height: 1.2;
	background-color: #a3a3a3;
	border-radius: 4px;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.form_blk2 table tr.required th:before {
	content: "必須";
	display: inline-block;
	margin-right: 10px;
	padding: 3px 8px 4px;
	line-height: 1.2;
	background-color: #ad181f;
	border-radius: 4px;
	font-weight: normal;
	font-size: 12px;
	color: #fff;
}
.form_blk2 table tr.which th:before {
	content: "どちらか必須";
}
.form_blk2 table td {
	padding: 15px 20px;
	width: 55%;
}
.form_blk2 table td span.red {
	color: #ad181f;
}
.form_blk2 table td .error {
	margin-top: 10px;
	text-align: right;
}
.form_blk2 table td .error span {
	/* padding: 4px 30px; */
	background-color: #f00;
	font-size: 13px;
	color: #fff;
}
.form_blk2 table tr.captcha input[type="text"] {
	width: 150px;
}
.form_blk2 .notes {
	position: relative;
	padding-left: 17px;
	font-weight: normal;
	font-size: 14px;
}
.form_blk2 .notes:before {
	content: "※";
	position: absolute;
	left: 0;
	top: 0;
}
.form_blk2 .notes.red:before {
	color: #ad181f;
}
.form_blk2 table td .ttitle {
	padding: 5px 0;
	font-weight: bold;
}
.form_blk2 table td .trows {
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	align-items: center;
	-webkit-align-items: center;
}
.form_blk2 table td .trows div.tcol {
	flex: 0 0 48%;
	-webkit-flex: 0 0 48%;
}
.form_blk2 table td.cl3 {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	padding-top: 0;
	padding-bottom: 0;
	width: 100%;
}
.form_blk2 table td.cl3 label {
	flex: 0 0 20%;
	-webkit-flex: 0 0 25%;
	margin-bottom: 10px;
}

.form_blk2 table td.cl3 label:nth-child(2),
.form_blk2 table td.cl3 label:nth-child(5) {
	flex: 0 0 40%;
	-webkit-flex: 0 0 50%;
}
.form_blk2 .description {
	margin-top: 60px;
	padding: 0 30px;
}
@media screen and (max-width: 767px) {
	.form_blk2 {
		padding: 0;
		background-color: #fafafa;
	}
	.form_blk2 table {
		display: block;
	}
	.form_blk2 table tbody {
		display: block;
		width: 100%;
	}
	.form_blk2 table tr {
		display: block;
		width: 100%;
	}
	.form_blk2 table th {
		display: block;
		padding: 10px 10px 0;
		width: 100%;
		text-align: left;
	}
	.form_blk2 table td {
		display: block;
		padding: 10px;
		width: 100%;
	}
	.form_blk2 table td.cl3 label {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin-bottom: 10px;
	}
	.form_blk2 table td.cl3 label:nth-child(2),
	.form_blk2 table td.cl3 label:nth-child(5) {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
	}
	.form_blk2 table td .trows {
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	.form_blk2 table td .trows div.tcol {
		flex: 0 0 100%;
		-webkit-flex: 0 0 100%;
		margin: 2px 0;
	}
	.form_blk2 .description {
		margin-top: 30px;
		padding: 0 10px;
	}
}
