@charset "EUC-JP";


/* -------------------------------------------------- *
 * PHOTO
 * -------------------------------------------------- */

#content dl.photo {
	margin-top: 1em;
	background-color: #f1f1f1;
	padding: 10px;
}
#content dl.photo dt {
	margin: 0;
	padding: 5px;
}
#content dl.photo dd {
	margin: 0;
	padding :0 5px;
	line-height: 1.5em;
}



/* -------------------------------------------------- *
 * 追加
 * -------------------------------------------------- */

.top_space {
	margin-top: 30px;
}
.content-inner{
	padding: 10px;
}
h4.box3{
	font-size:1.2em; 
	font-weight: 50;
	color: #505050;/*文字色*/
	padding: 0.5em;/*文字周りの余白*/
	line-height: 1.3;/*行高*/
	background: #e1f0fa;/*背景色*/
	vertical-align: middle;/*上下中央*/
	border-radius: 0px 0px 0px 0px;/*左側の角を丸く*/
	margin:10px 0;
	border-bottom: solid 1px #217dbb;
}
h4.box3:before {
	font-size:1.2em; 
	content: '●';
	color: white;
	margin:20px 10px;
}
.container_nav {
    margin-right: 10px;
    margin-left: 10px;
    padding: 10px 15px;
}
.header-nav .container {
	padding: 10px 12px;
	margin: 0px auto;
}
.header-nav {
	color: #000;
	background-color: #fff;
	background: #e1f0fa;
}
h5 {
	font-size: 1.1em;
	padding: 0.7em 0 0.7em 0.7em;
	border-left: 6px solid #217dbb;
	border-bottom:1px solid #ddd;
}
h6 {
	font-size: 0.9em;
	padding: 0.7em 0 0.7em 0.7em;
	border-bottom:1px solid #ddd;
}
#content a {
	text-decoration: none;
}
@media screen and (max-width: 480px) {
	.content_full{
		margin: 0 -10px;
	}
}
.top_btnmenu .btn {
	height: 40px;
	padding: 5px;
	white-space: normal;
}
.top_btnmenu {
	display: table;
	width: 100%;
}
.top_btnmenu .row_center {
	display: table-cell;
	vertical-align: middle;
}
@media (max-width: 768px) {
	.top_btnmenu .btn {
		height: 50px;
	}
	.nav-tabs > li {
		float: left;
		margin-bottom: -1px;
		font-size: 0.8em;
	}
	h4.box3{
		font-size:0.9em; 
		font-weight: 50;
		color: #505050;/*文字色*/
		padding: 0.5em;/*文字周りの余白*/
		line-height: 1.3;/*行高*/
		background: #e1f0fa;/*背景色*/
		vertical-align: middle;/*上下中央*/
		border-radius: 0px 0px 0px 0px;/*左側の角を丸く*/
		margin:10px 0;
		border-bottom: solid 1px #217dbb;
	}
	h4.box3:before {
		font-size:1.2em; 
		content: '●';
		color: white;
		margin:10px 5px;
	}
	h5 {
		font-size: 0.9em;
		padding: 0.7em 0 0.7em 0.7em;
		border-left: 4px solid #217dbb;
		border-bottom:1px solid #ddd;
	}
	h6 {
		font-size: 0.9em;
		padding: 0.7em 0 0.7em 0.7em;
		border-bottom:1px solid #ddd;
	}
}



/* -------------------------------------------------- *
 * スマホでの表の表示切り替え3
 * -------------------------------------------------- */

#content table.table01 {
	width:100%;
	border-top:#217dbb solid 1px;
	border-right:#217dbb solid 1px;
	border-collapse: collapse;
	border-bottom:#217dbb solid 1px;
}
#content table.table01 thead th {
	background:#217dbb;
	color:#FFF;
	padding:10px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
}
#content table.table01 thead th:last-child {
	border-right:#217dbb solid 0px;
}
#content table.table01 tbody th {
	background:#217dbb;
	color:#FFF;
	padding:10px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:top;
}
#content table.table01 tbody tr:last-child th {
	border-bottom:#217dbb solid 0px;
}
#content table.table01 tbody td {
	background:#EFF7FC;
	padding:10px 15px;
	border-left:#217dbb solid 1px;
	border-bottom:#217dbb solid 1px;
	display: table-cell;
	vertical-align: middle;
}
#content table.table01 tbody td.bottom_b {
	border-bottom:#217dbb solid 2px;
}
@media (max-width: 768px) {
	#content table.table01 {
		width:100%;
		border-top:#217dbb solid 1px;
		border-right:#217dbb solid 1px;
		border-collapse: collapse;
	}
	#content table.table01 thead th {
		font-size:0.8em;
		background:#217dbb;
		color:#FFF;
		padding:5px 5px;
		border-right:#FFF solid 1px;
		border-bottom:#FFF solid 1px;
	}
	#content table.table01 thead th:last-child {
		border-right:#217dbb solid 0px;
	}
	#content table.table01 tbody th {
		background:#217dbb;
		color:#FFF;
		padding:5px 5px;
		border-bottom:#FFF solid 1px;
		vertical-align:top;
	}
	#content table.table01 tbody tr:last-child th {
		border-bottom:#217dbb solid 0px;
	}
	#content table.table01 tbody td {
		font-size:0.8em;
		background:#EFF7FC;
		padding:5px 5px;
		border-left:#217dbb solid 1px;
		border-bottom:#217dbb solid 1px!important;
		display: table-cell;
		vertical-align: middle;
	}
}



/* -------------------------------------------------- *
 * タブを修正
 * -------------------------------------------------- */

.nav-tabs-outer {
	overflow-x:scroll;
}
.nav-tabs-outer::-webkit-scrollbar {
	display: none;
}
.nav-tabs-outer .nav-tabs li {
	display: block;
	width: 290px;
}
@media (max-width: 768px) {
	.nav-tabs-outer{
		overflow-x: scroll;
		margin-bottom: -10px;
	}
	.nav-tabs-outer .nav-tabs li {
		display: block;
		width: 118px;
	}
	.nav-tabs-outer .nav-tabs li a {
		padding:2px;
	}
}



/* -------------------------------------------------- *
 * リボン付きのbox
 * -------------------------------------------------- */

.ribbon_box {
	display: block;
	position: relative;
	margin: 13px auto;
	padding: 10px 0;
	width: 90%;
	background: #fff;
	border: solid 3px #f1f1f1;
}
.ribbon_box p{
	padding: 10px;
	word-break: break-all;
}
.ribbon_box .red {
	color: #f44336;
}
.ribbon1 {
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	padding: 10px;
	margin: 0 0 0 -20px;
	width: calc(100% + 20px);
	font-size: 22px;
	color: white;
	background: #f44336;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
.ribbon1:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px #f44336;
}
.ribbon2 {
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	padding: 10px;
	margin: 0 0 0 -20px;
	width: calc(100% + 20px);
	font-size: 18px;
	color: white;
	background: #217dbb;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
.ribbon2:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 15px transparent;
    border-right: solid 20px #1C6697;
}
.box01{
	margin: 1em 5em;
	position: relative;
	padding: 0.5em 1.5em;
	border-top: solid 2px #ea0d4b;
	border-bottom: solid 2px #ea0d4b;
}
.box01 .inner{
	margin: -0.5em -0.8em;
	/* position: relative; */
	padding: 1em 1em;
	/* border-top: solid 2px #ea0d4b; */
	/* border-bottom: solid 2px #ea0d4b; */
	background: #fff;
}
.box01:before, .box01:after{
	content: '';
	position: absolute;
	top: -10px;
	width: 2px;
	height: -webkit-calc(100% + 20px);
	height: calc(100% + 20px);
	background-color: #ea0d4b;
}
.box01:before {left: 10px;}
.box01:after {right: 10px;}
.box01 p {
	margin: 0; 
	padding: 0;
	word-break: break-all;
}
.box02{
	margin: 1em 5em;
	position: relative;
	padding: 0.5em 1.5em;
	border-top: solid 2px #217dbb;
	border-bottom: solid 2px #217dbb;
}
.box02 .inner{
	margin: -0.5em -0.8em;
	/* position: relative; */
	padding: 1em 1em;
	/* border-top: solid 2px #ea0d4b; */
	/* border-bottom: solid 2px #ea0d4b; */
	background: #fff;
}
.box02:before, .box02:after{
	content: '';
	position: absolute;
	top: -10px;
	width: 2px;
	height: -webkit-calc(100% + 20px);
	height: calc(100% + 20px);
	background-color: #217dbb;
}
.box02:before {left: 10px;}
.box02:after {right: 10px;}
.box02 p {
	margin: 0; 
	padding: 0;
	word-break: break-all;
}
@media (max-width: 768px) {
	.box01{
		margin: 1em 1em;
	}
	.ribbon2 {
		display: inline-block;
		position: relative;
		box-sizing: border-box;
		padding: 10px;
		margin: 0 0 0 -20px;
		width: calc(100% + 20px);
		font-size: 13px;
		color: white;
		background: #217dbb;
		box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
	}
	.ribbon2:before {
		position: absolute;
		content: '';
		top: 100%;
		left: 0;
		border: none;
		border-bottom: solid 15px transparent;
		border-right: solid 20px #1C6697;
	}
}



/* -------------------------------------------------- *
 * テーブル背景
 * -------------------------------------------------- */

#content table.table01 tbody td.module-gray {
	background-color: #EEEEEE;
}
#content table.table01 tbody td.module-blue {
	background-color: #D2DEEF;
}
#content table.table01 tbody td.module-lightblue {
	background-color: #EAEFF7;
}
#content table.table01 tbody td.module-pink {
	background-color: #fae6ee;
}
#content table.table01 tbody td.module-white {
	background-color: #fff;
}
#content table.table01 tbody td.module-green {
	background-color: #d9eadd;
}
#content table.table01 tbody td.module-purple {
	background-color: #ecdeec;
}
#content table.table01 tbody td.module-yellow {
	background-color: #fce7bb;
}
#content table.table01 tbody td.module-orange {
	background-color: #fed2b0;
}


