@charset "UTF-8";

/** ************************************* **

	TABLE CONTENTS
	---------------------------
		01. Globals
		02. 囲み文字の基本形
		03. インデント追加
		04. module 追加
		05. 文字列にスラッシュ追加
		06. 丸数字カウンターリスト
	---------------------------

 ** ************************************* **/

/** 01. Globals
 **************************************************************** **/
#content .box {
	padding: 1em;
	border: none;
	margin-bottom: 3rem;
	box-shadow: 1px 1px 2px 2px rgba(0,0,0,0.1);
}
#content .box.radius {
	border-radius: 10px;
}
#content .box h3 {
	margin-top: 0;
}
#content .box p {
	margin-top: 0;
	line-height: 1.4;
}
#content .flexbox {
	display: flex;
	align-items: center;
	justify-content: space-around;
}

#content .flexbox.reverse {
	flex-direction: row-reverse;
}
#content .flexbox .flexitem.width30 {
	width:30%;
}
#content .flexbox .flexitem {
	padding: 2rem;
	max-width: 50%;
}
#content .flexbox .flexitem.width70 {
	width:70%;
	max-width: 70%;
}
#content .box.gray {
	background-color: #444444;
	color: #FFFFFF;
}
#content .box.blue {
	background-color: #2F98B7;
	color: #FFFFFF;
}
#content .box.green {
	background-color: #00AC56;
	color: #FFFFFF;
}
#content .box.lightgreen {
	background-color: #6fd09f;
	color: #333333;
}
#content .box.olive {
	background-color: #6C8F28;
	color: #FFFFFF;
}
#content .box.pink {
	background-color: #F56883;
	color: #FFFFFF;
}
#content .box.orange {
	background-color: #F46600;
	color: #FFFFFF;
}
#content a .box {
	text-decoration-line: none;
}
#content .box.default {
	background-color: #FFFFFF;
}
#content .mbtm1rem {
	margin-bottom: 1rem;
}
#content .mbtm3rem {
	margin-bottom: 3rem;
}
#content .mtop1rem {
	margin-top: 1rem;
}
#content .mtop3rem {
	margin-top: 3rem;
}
#content .md {
	font-size: 200%;
}
#content .bg {
	font-size: 400%;
}
#content .sm {
	font-size: 140%;
}
@media all and (max-width: 515px) {
#content .flexbox .flexitem {
	padding: 0.5rem;
	width: auto;
}
#content .bg {
	font-size: 5.6vw;
}
#content .md {
	font-size: 4.7vw;
}
#content .sm {
	font-size: 4.0vw;
}
}
#content .label.label-block {
	display: block;
}
#content .label.label-outline.label-pink {
	color: #F56883;
	background: #FFFFFF;
}
#content .section {
	margin-right: -10px;
	margin-left: -10px;
	padding: 10px;
	background: #FFF1CE;
}
#content span.text_bg {
	display: inline-block;
	padding: 0.5em 1em;
}
#content span.text_bg.bg_gray {
	background: #DDD;
}
#content span.text_bg.bg_pink {
	background: #ffe1e3;
}
#content span.text_bg.text-block {
	display: block;
	text-align: center;
}
.marker.blue.thin {
background: linear-gradient(transparent 80%, #3498db 80%);
}


/** 02. 囲み文字の基本形
 **************************************************************** **/
.maru {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	flex-flow: column; 
	vertical-align: middle;
	margin-right: 0.2em;
}
/* 円の大きさ */
.size_normal{
	width: 20px;
	height: 20px;
	text-indent: 0;
}
/* 文字の大きさ */
.letter3 {
	font-size: 1.1em;
	line-height: 1.75;
}
.letter4 {
	font-size: 1em;
	line-height: 1.75;
}
/* 囲みと文字の色 */
.gray1 {
	color: #5F5F5F;
	border: 1px solid #5F5F5F;
	background: #fff;
}


/** 03. インデント追加
 **************************************************************** **/
span.rev_ind {
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}
.ind_02 a.btn {
	text-indent: 0;
	margin-bottom: 5px;
}
.rev_ind i {
	text-indent: 0;
}
.ind_005 {
	display: block;
	padding-left: 0.5em;
	text-indent: -0.5em;
}
.ind_01 {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}
.ind_015 {
	display: block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.ind_02 {
	display: block;
	padding-left: 2em;
	text-indent: -2em;
}
.ind_025 {
	display: block;
	padding-left: 2.5em;
	text-indent: -2.5em;
}
.ind_03 {
	display: block;
	padding-left: 3em;
	text-indent: -3em;
}
.ind_04 {
	display: block;
	padding-left: 4em;
	text-indent: -4em;
}
.ind_05 {
	display: block;
	padding-left: 5em;
	text-indent: -5em;
}
.ind_06 {
	display: block;
	padding-left: 6em;
	text-indent: -6em;
}

/** 04. module 追加
 **************************************************************** **/
.module_inner {
	padding: 20px 20px;
}
@media screen and (max-width: 767px){
	.module_inner {
		padding: 10px 20px;
	}
}
/* 枠のradius指定 */
.module.r5 {
	border-radius: 5px;
}
.module.r6 {
	border-radius: 6px;
}
.module.r7 {
	border-radius: 7px;
}
.module.r8 {
	border-radius: 8px;
}
.module.r9 {
	border-radius: 9px;
}
.module.r10 {
	border-radius: 10px;
}


/** 05. 文字列にスラッシュ追加
 **************************************************************** **/
.slash {
	position: relative;
	display: inline-block;
	padding: 0px 40px;
	font-size: 1.5em;
	color: #3498db;
}
@media (max-width: 991px) {
	.slash {
		font-size: 2vw;
	}
}
@media (max-width: 768px) {
	.slash {
		font-size: 2.5vw;
	}
}
@media (max-width: 575px) {
	.slash {
		font-size: 2.3vw;
	}
}
@media (max-width: 480px) {
	.slash {
		font-size: 4.3vw;
		padding: 0px 28px;
	}
}
.slash::before {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #3498db;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
}
.slash::after {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #3498db;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
}
.slash::before {
	left: 0;
}
.slash::after {
	right: 0;
}



/** 06. スマホでの表の表示切り替え
 **************************************************************** **/


#content  .res_table table.tblFull {
	border-bottom: 1px solid #dcdcdc;
}
#content .res_table table.tblFull th {
	padding: 8px;
	line-height: 1.5;
	vertical-align: middle;
	text-align: center;
}
#content  .res_table table.tblFull td{
	padding: 8px;
	line-height: 1.5;
	vertical-align: middle;
	text-align: left;
}
@media (max-width: 767px) {
	#content .res_table table.tblFull td, #content  .res_table table.tblFull th {
		padding: 8px 4px;
		line-height: 1.5;
		vertical-align: middle;
		text-align: left;
	}
	#content .res_table table.tblFull {
		border-bottom: 1px solid #dcdcdc;
	}
	#content .res_table table.tblFull td {
		background-color: #FFFFFF;
		padding-left: 20px;
		padding-right: 20px;
	}
	#content .res_table table.tblFull td.title {
		background-color: #f4f4f4;
		border-bottom: 1px solid #dddddd;
		text-indent:-2em;
		padding-left:2em;
	}
	#content .res_table table.tblFull th.title {
		background-color: #f4f4f4;
		border-bottom: 1px solid #dddddd;
		text-indent:-2em;
		padding-left:2em;
	}
	#content table.tblFull th {
		border-top: 1px solid #dcdcdc; 
	}
	#content .res_table table.tblFull td {
		border-top: 0px solid #dcdcdc; 
	}
	#content table.tblFull td.td_bottom{
		border-bottom: 1px solid #dcdcdc; 
	}
	#content .res_table table.tblFull td.td_top{
		border-top: 1px solid #dcdcdc; 
	}
	#content .res_table table.tblFull tr.tr_top{
		border-top: 1px solid #dcdcdc; 
	}
	#content .res_table table.tblFull td.td_bottom_b{
		border-bottom: 3px solid #dcdcdc; 
	}
	.res_table {
		border-collapse: separate;
		border-spacing: 0  20px;
		margin:20px 5px;
	}
	.res_table thead {
		display: none;
	}
	.res_table tr {
		background-color: #f6f6f6;
	}
	.res_table td {
		border: none;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.res_table td.col-6 {
		float: left;
		width: 50%;
	}
	.res_table td.txt-right {
		text-align: right;
	}
	.res_table td:before {
		content: attr(data-title) " ";
	}
	.res_table th {
		border: none;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.res_table th.col-6 {
		float: left;
		width: 50%;
	}
	.res_table th.txt-right {
		text-align: right;
	}
	.res_table th:before {
		content: attr(data-title) " ";
	}
	.res_table .clear {
		clear: both;
	}
}



/** 06. 丸数字カウンターリスト
 **************************************************************** **/
ol.calender_list {
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
}
#content ol.calender_list> li {
	margin-bottom: 10px;
	padding-left: 30px;
	position: relative;
	line-height: 1.5;
}
ol.calender_list>li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #52A7E0;
	color: #fff;
	display: block;
	float: left;
	line-height: 22px;
	margin-left: -30px;
	text-align: center;
	height: 22px;
	width: 22px;
	border-radius: 50%;
	vertical-align: middle;
}

ol.calender_list.back_orange>li::before {
	background-color: #e67e22;
}


