@charset "utf-8";
/* ******************************************************************
 *	File name		: style.css
 *	Summary			: css style
 * ******************************************************************
 */
 /*

緑カラーはbodyに
base_green

青　 #0080CC rgba(0,128,204,1.0)　文字等
濃青 #0061B1 rgba(0,97,177,1.0)

黄緑 #ABCD07 rgba(171,205,7,1.0)
緑　 #6FB92C rgba(111,185,44,1.0)
濃緑 #00632F rgba(0,99,47,1.0)
見やすい緑　 rgba(68,159,6,1)

*/

/*-----------------------------------
  base
-----------------------------------*/

body main{
	display:block;
	position:relative;
	width:calc(100% - 220px);
	padding:10px 0 0px !important;
	text-align:center;
	background:rgba(0,128,204,0) !important;
	-webkit-border-radius:6px;
	-moz-border-radius:6px;
	border-radius:0px;
	}
	body #main_contents{
		position:relative;
		width:1000px;
		max-width:100%;
		min-height:0px;
		background:none;
		margin:0px auto 0;
		padding:0px;
		text-align:left;
		-webkit-border-radius:0px;
		-moz-border-radius:0px;
		border-radius:0px;
		-moz-box-shadow:none;
		-webkit-box-shadow:none;
		box-shadow:none;
		transition-duration:0.5s;
}

@media only screen and (max-width:767px){
	.left,.right{
		width:100%;
		margin:0 0 10px !important;
		padding:0px !important;
		float:none !important;
	}
}

/*----------------------------------------------------------------------------------------- NEW!
  contents_body
-----------------------------------------------------------------------------------------*/

#contents_body{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	position:relative;
	width:100%;
	max-width:100%;
	margin:0px auto 20px;
	padding:0 20px 40px;
	overflow:hidden;
	}
	#contents_body::before{
	    content:" ";
	    display:block;
	    position:absolute;
	    top:0px;
	    left:0px;
	    width:100%;
	    height:140px;
		background:#0061B1;
		background:linear-gradient(-90deg, rgba(0,97,177,0.8), #0061B1);
	}
	#contents_body::after{
		content:" ";
		position:absolute;
		bottom:0px;
		left:0px;
		width:100%;
		height:10px;
		background:url(../../img/base/arrow_border.png) repeat;
}

#contents_body > h1{
	display:-webkit-flex;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	position:relative;
	width:1060px;
	max-width:100%;
	height:140px;
	min-height:55px;
	margin:0 auto;
	padding:0 20px;
	font-family: 'Kosugi Maru', sans-serif;
	font-weight:500;
	font-size:2.3rem;
	overflow:hidden;
	white-space:nowrap;
	color:#FFF;
}

#pnkz{
	position:relative;
	width:calc(100% + 40px);
	margin:0 -20px 15px;
	padding:7px 20px 7px 20px;
	text-align:left;
	font-size:1.0rem;
	background:rgba(0,128,204,0.15);
	z-index:100;
	}
	#pnkz a{
		display:inline-block;
		color:#0060B1;
		text-decoration:none;
		font-size:1.0rem;
		}
		#pnkz a:hover{
			text-decoration:underline !important;
		}
		#pnkz a:nth-child(1){
			padding-left:18px;
			background:url(../../img/base/home_b.png) no-repeat 0 8px;
	}
	.color-black #pnkz,
	.color-black #pnkz a{
		color:#FFF;
}


/* --- responsive --- */
@media only screen and (max-width:767px){
	#contents_body{
		width:100%;
		padding:0 0px;
		}
		#contents_body::after{
			display:none;
		}
		#contents_body::before{
		    height:100px;
	}
	#contents_body > h1{
		height:100px;
		margin:0 auto 15px;
		font-size:1.7rem;
	}
	#pnkz{
		display:none !important;
	}
}

/* -----------------------------------
   h2 h3 h4
----------------------------------- */

/* h2 */
#main_contents h2,
#main_contents .h2{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 0 15px 0;
	padding:0px 0 0px 25px;
	font-weight:bold;
	font-size:1.5rem;
	border:none;
	background:none;
	border:none;
	color:#000;
	}
	#main_contents h2 *,
	#main_contents .h2 *{
		font-weight:inherit;
		font-size:inherit;
	}
	#main_contents h2:before,
	#main_contents .h2:before{
		content:" ";
		position:absolute;
		top:11px;
		left:0px;
		width:15px;
		height:20px;
		background:#0080CC;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents h2,
	#main_contents .h2{
		font-size:1.4rem;
	}
	#main_contents h2:before,
	#main_contents .h2:before{
		top:8px;
	}
}

/* h3 */
#main_contents h3,
#main_contents .h3{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:25px 0 10px 0;
	padding:0px;
	font-weight:bold;
	font-size:1.25rem;
	border:none;
	background:none;
	color:#0080CC;
	}
	#main_contents .box > h3:first-of-type,
	#main_contents .box > .h3:first-of-type{
		margin:0px 0 10px 0;
	}
	#main_contents h3 *,
	#main_contents .h3 *{
		font-weight:inherit;
		font-size:inherit;
	}
	#main_contents h4:before,
	#main_contents h4:after,
	#main_contents .h4:before,
	#main_contents .h4:after{
		display:none;
}
@media only screen and (max-width:767px){
	#main_contents h3,
	#main_contents .h3{
		font-size:1.3rem;
	}
}

/* h4 */
#main_contents h4,
#main_contents .h4{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:20px 0 7px 0;
	padding:0px;
	font-weight:bold;
	font-size:1.15rem;
	border:none;
	background:none;
	color:#000;
	}
	.color-black #main_contents h4,
	.color-black #main_contents .h4{
		color:#FFF;
		border-left:5px solid #FFF;
		background:rgba(0,128,204,0.5);
	}
	#main_contents .box > h4:first-of-type,
	#main_contents .box > .h4:first-of-type{
		margin:0px 0 7px 0;
	}
	#main_contents h4:before,
	#main_contents h4:after,
	#main_contents .h4:before,
	#main_contents .h4:after{
		display:none;
}

/*-----------------------------------
  h0 (default)
-----------------------------------*/

#main_contents .h0{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px !important;
	font-weight:normal;
	font-size:1em;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none !important;
	background:none !important;
	color:inherit;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	}
	.base_green #main_contents .h0{
		border:none;
		background:none;
		color:inherit;
	}
	#main_contents .h0:before,
	#main_contents .h0:after{
		display:none !important;
}

/*-----------------------------------
  ex head decoration
-----------------------------------*/
/* .arrow */
#main_contents .arrow{
	display:block;
	position:relative;
	width:770px;
	max-width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 0 0px 30px;
	font-weight:normal;
	font-size:1.3rem;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none;
	background:none;
	color:#222222;
	}
	.base_green #main_contents .arrow{
		border:none;
		background:none;
		color:#222222;
	}
	.color-black #main_contents .arrow,
	.color-black.base_green #main_contents .arrow{
		color:#FFF;
	}
	#main_contents .arrow::before{
		content:" ";
		display:block;
		position:absolute;
		top:5px;
		left:0px;
		width:20px;
		height:20px;
		margin-left:0;
		background:url(../../img/base/arrow_b.png) no-repeat 0 0;
		}
		.base_green #main_contents .arrow::before{
			background:url(../../img/base/arrow_g.png) no-repeat 0 0;
	}
	#main_contents .arrow:after{
		display:none;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents .arrow{
		font-size:1.1rem;
	}
}

/* .arrowline */
#main_contents .arrowline{
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 10px 10px 30px;
	font-weight:normal;
	font-size:1.3rem;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none !important;
	background:url(../../img/base/arrow_border.png) repeat-x 0 bottom !important;
	color:#222222;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
	.base_green #main_contents .arrowline{
		border:none !important;
		background:url(../../img/base/arrow_border.png) repeat-x 0 bottom !important;
		color:#222222;
	}
	.color-black #main_contents .arrowline,
	.color-black.base_green #main_contents .arrowline{
		color:#FFF;
	}
	#main_contents .arrowline:before{
		content:" ";
		display:block;
		position:absolute;
		top:5px;
		left:0px;
		width:20px;
		height:20px;
		margin-left:0;
			background:url(../../img/base/arrow_b.png) no-repeat 0 0;
		}
		.base_green #main_contents .arrowline:before{
			background:url(../../img/base/arrow_g.png) no-repeat 0 0;
	}
	#main_contents .arrowline:after{
		display:none;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents .arrowline{
		font-size:1.1rem;
	}
}


/* .lineonly */
#main_contents .lineonly{
	display:block;
	position:relative;
	width:770px;
	max-width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:0px 0 10px 0px;
	font-weight:bold;
	font-size:1em;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:none;
	background:url(../../img/base/arrow_border.png) repeat-x 0 bottom;
	color:#0080CC;
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	}
	.base_green #main_contents .lineonly{
		border:none;
		background:url(../../img/base/arrow_border.png) repeat-x 0 bottom;
		color:#609F26;
	}
	#main_contents .lineonly:before,
	#main_contents .lineonly:after{
		display:none;
}

/* squareline */
#main_contents .squareline{
	display:table;
	position:relative;
	width:auto;
	height:auto;
	margin:0 0 10px 0;
	padding:3px 20px 2px 20px;
	font-weight:normal;
	font-size:1.25em;
	border-radius:0;
	-webkit-border-radius:0;
	-moz-border-radius:0;
	border:2px solid rgba(0,128,204,0.4);
	background:rgba(0,128,204,0.03);
	color:#0080CC;
	}
	.base_green #main_contents .squareline{
		border:2px solid rgba(7,163,62,0.5);
		background:rgba(7,163,62,0.05);
		color:#07A33E;
	}
	#main_contents .squareline::before{
		content:" ";
		display:block;
		position:absolute;
		top:50%;
		left:0px !important;
		width:calc(770px - 100%) !important;
		max-width:auto;
		height:1px;
		margin-left:100%;
		background:rgba(0,128,204,0.5);
		}
		.base_green #main_contents .squareline::before{
			background:rgba(7,163,62,0.5);
	}
	#main_contents .squareline::after{
		display:none;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#main_contents .squareline{
		padding:3px 10px 2px 10px;
		font-size:1.0rem;
	}
}


/* .flat_title */
#main_contents .flat_title{
	display:block;
	position:relative;
	width:770px;
	max-width:100%;
	height:auto;
	margin:0 0 10px 0;
	padding:5px 20px 5px 20px;
	font-weight:bold;
	font-size:1.1em;
	border-radius:6px;
	-webkit-border-radius:6px;
	-moz-border-radius:6px;
	border:none;
	background:#0080CC;
	color:#FFFFFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
	.base_green #main_contents .flat_title{
		border:none;
		background:#609F26;
		color:#07A33E;
	}
	#main_contents .flat_title:before{
		content:" ";
		display:block;
		position:absolute;
		top:10%;
		left:5px;
		width:7px;
		height:80%;
		margin-left:0;
		background:rgba(255,255,255,0.7);
		border-radius:3px;
		-webkit-border-radius:3px;
		-moz-border-radius:3px;
	}
	#main_contents .flat_title:after{
		display:none;
}
/*-----------------------------------
  img
-----------------------------------*/

img{
	max-width:100%;
	height:auto;
}

/*-----------------------------------
  p
-----------------------------------*/

#main_contents p{
	margin-bottom:7px;
	padding:0;
	font-size:1.0rem !important;
}

/*-----------------------------------
  youtube
-----------------------------------*/

.youtube{
	position:relative;
	width:100%;
	padding-top:56.25%;
}
.youtube iframe{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
}

/*-----------------------------------
  box
-----------------------------------*/

#main_contents .box{
	position:relative;
	width:100%;
	margin-bottom:40px;
	}
	#main_contents .box:after {
		content:" ";
		display:block;
		clear:both;
}
#main_contents .colorbox,
#main_contents .colorbox_b,
#main_contents .colorbox_g,
#main_contents .colorbox_d{
	position:relative;
	margin-bottom:20px;
	padding:20px;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	background:rgba(0,128,204,0.2);
	}
	.base_green #main_contents .colorbox{
		background:rgba(111,185,44,0.2);
}
#main_contents .colorbox_b{
	background:rgba(0,128,204,0.2);
}
#main_contents .colorbox_g{
	background:rgba(111,185,44,0.2);
}
#main_contents .colorbox_d{
	background:rgba(0,0,0,0.1);
}
#main_contents .box p:last-child,
#main_contents .colorbox p:last-child,
#main_contents .colorbox_b p:last-child,
#main_contents .colorbox_g p:last-child,
#main_contents .colorbox_d p:last-child,
#main_contents .box li:last-child,
#main_contents .colorbox li:last-child,
#main_contents .colorbox_b li:last-child,
#main_contents .colorbox_g li:last-child,
#main_contents .box ul:last-child,
#main_contents .colorbox ul:last-child,
#main_contents .colorbox_b ul:last-child,
#main_contents .colorbox_g ul:last-child,
#main_contents .colorbox_d ul:last-child{
	margin-bottom:0px !important;
}

/*-----------------------------------
  link_list
-----------------------------------*/

.link_list{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	margin:0 0 30px;
	}
	.link_list li{
		position:relative;
		width:33%;
		height:50px;
		margin:0 0 7px;
		background:#0061B1;
	}
	.link_list li:nth-child(3n+2):last-child{
		margin:0 33.5% 7px 0;
	}
	.link_list li a{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		width:100%;
		height:100%;
		padding:5px 20px 5px 10px;
		font-weight:500;
		font-size:0.87rem;
		text-decoration:none;
		background:#0061B1;
		color:#FFF;
		line-height:1.35;
		}
		.link_list li.active a,
		.link_list li a:hover{
			background:#003159;
		}
		.link_list li a::after{
			content:" ";
			position:absolute;
			top:calc(50% - 10px);
			right:0px;
			border:10px solid transparent;
			border-left:10px solid rgba(255,255,255,1);
	}
	.link_list li a:hover{
		text-decoration:none;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	.link_list li{
		width:100%;
	}
	.link_list li:nth-child(3n+2):last-child{
		margin:0 0 7px;
	}
}


/*-----------------------------------
  line
-----------------------------------*/

#main_contents .line{
	margin-bottom:17px;
	padding-bottom:10px;
	border-bottom:2px dotted rgba(0,128,204,0.5);
	}
	.base_green #main_contents .line{
		border-bottom:2px dotted rgba(111,185,44,0.7);
}
#main_contents p.line{
	margin-bottom:17px;
	padding-bottom:17px;
	border-bottom:2px dotted rgba(0,128,204,0.5);
	}
	.base_green #main_contents p.line{
		border-bottom:2px dotted rgba(111,185,44,0.7);
}
#main_contents .box.line{
	margin-bottom:30px;
	padding-bottom:30px;
	border-bottom:2px dotted rgba(0,128,204,0.5);
	}
	.base_green #main_contents .box.line{
		border-bottom:2px dotted rgba(111,185,44,0.7);
}
#main_contents .noline{
	margin-bottom:0px;
	padding-bottom:0px;
	border-bottom:0px !important;
}

#main_contents .line_b{
	margin-bottom:17px;
	padding-bottom:10px;
	border-bottom:1px dotted rgba(0,0,0,0.5);
}

/*-----------------------------------
  border
-----------------------------------*/

.border_box{
	position:relative;
	margin:0 0 20px;
	padding:20px;
	border:5px solid rgba(0,128,204,0.3);
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	}
	.base_green .border_box{
		border:5px solid rgba(111,185,44,0.5);
	}
	.border_box :last-child{
		margin-bottom:0px;
}

/*-----------------------------------
  ul
-----------------------------------*/

ul.disc{
	margin-bottom:15px;
	padding-left:20px;
	list-style:disc !important;
	}
	ul.disc > li{
		line-height:1.5;
		margin-bottom:4px;
	}
	ul.disc > li:before,
	ul.disc > li:after{
		display: none;
}
ul.normal,
ol.normal{
	margin-bottom:15px;
	padding-left:0px !important;
	list-style:none !important;
	}
	ul.normal > li{
		line-height:1.5;
		margin-bottom:4px;
		list-style-image:none !important;
}
ul.num{
	margin-bottom:15px;
	padding-left:20px;
	list-style:decimal !important;
	}
	ul.num > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.abc{
	margin-bottom:15px;
	padding-left:20px;
	list-style:lower-latin !important;
	}
	ul.abc > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.roma{
	margin-bottom:15px;
	padding-left:20px;
	list-style:lower-roman !important;
	}
	ul.roma > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.roma2{
	margin-bottom:15px;
	padding-left:20px;
	list-style:upper-roman !important;
	}
	ul.roma2 > li{
		line-height:1.5;
		margin-bottom:4px;
}
ul.try{
	}
	ul.try li{
		position:relative;
		line-height:1.5;
		margin-bottom:6px;
		padding-left:15px;
	}
	ul.try li:after{
		display:block;
		content:" ";
		position:absolute;
		top:5px;
		left:2px;
		border: 6px solid transparent;
		border-left: 6px solid #619DE5;
	}
	.base_green ul.try li:after{
		border-left: 6px solid rgba(111,185,44,1);
}
ul.check{
	padding-left:20px;
	}
	ul.check li{
		position:relative;
		line-height:1.5;
		list-style-image:url(../../img/base/check.png);
}
ul.check_b{
	padding-left:20px;
	}
	ul.check_b li{
		position:relative;
		line-height:1.5;
		list-style-image:url(../../img/base/check_b.png);
}
ul.disc_b,
ul.disc_g{
	padding-left:1em;
	list-style:none;
	}
	ul.disc_b li,
	ul.disc_g li{
		position:relative;
		margin-bottom:7px;
		text-indent:-1em;
		line-height:1.5;
	}
	ul.disc_b li:before,
	ul.disc_g li:before{
		content:" ";
		display:inline-block;
		position:relative;
		width:9px;
		height:9px;
		margin:0 4px 0 0;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
	}
	ul.disc_b li:before{
		background:#0061B1;
	}
	ul.disc_g li:before{
		background:#6EB92C;
}

ul.ul_kakko{
	position:relative;
	}
	ul.ul_kakko::before,
	ul.ul_kakko::after{
		content:" ";
		position:absolute;
		z-index:-1;
	}
	ul.ul_kakko::before{
		top:0px;
		left:3px;
		width:7px;
		height:100%;
		background:#000;
	}
	ul.ul_kakko::after{
		top:1px;
		left:4px;
		width:6px;
		height:calc(100% - 2px);
		background:#FFF;
}

ol{
	margin-bottom:15px;
	padding-left:20px;
	list-style:decimal;
	}
	ol > li{
		line-height:1.5;
		margin-bottom:7px;
}
@media only screen and (max-width:767px){
	main ul li{
		font-size:0.9rem;
	}
}

/*-----------------------------------
  design dl
-----------------------------------*/
dl.bgfliplr{
	margin:0 0 0 25px;
	}
	dl.bgfliplr:after {
		content:" ";
		display:block;
		clear:both;
	}
	dl.bgfliplr dt{
		clear:both;
		float:left;
		display:block;
		width:130px;
		margin-bottom:10px;
		padding:5px 10px;
		font-size:1.0rem;
		background:#4CA6DB;
		border-radius:6px;
		-webkit-border-radius:6px;
		-moz-border-radius:6px;
		text-align:center;
		color:#FFFFFF;
		}
		.base_green dl.bgfliplr dt{
			background:rgba(111,185,44,1.0);
	}
	dl.bgfliplr dd{
		float:right;
		width:calc(100% - 150px);
		margin-bottom:10px;
		padding:6px 0px 0px;
		font-size:1.0rem;
}
dl.bgfliplr2{
	margin:0 0 0 0px;
	}
	dl.bgfliplr2:after {
		content:" ";
		display:block;
		clear:both;
	}
	dl.bgfliplr2 dt{
		clear:both;
		float: left;
		display:block;
		width:150px;
		margin-bottom:10px;
		padding:5px 10px;
		font-size:1.0rem;
		background:#4CA6DB;
		border-radius:6px;
		-webkit-border-radius:6px;
		-moz-border-radius:6px;
		text-align:center;
		color:#FFFFFF;
		}
		.base_green dl.bgfliplr2 dt{
			background:rgba(111,185,44,1.0);
	}
	dl.bgfliplr2 dd{
		float:right;
		width:calc(100% - 170px);
		margin-bottom:10px;
		padding:6px 0px 0px;
		font-size:1.0rem;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	dl.bgfliplr,
	dl.bgfliplr2{
		margin:0px;
	}
	dl.bgfliplr dt,
	dl.bgfliplr2 dt{
		clear:both;
		float:none;
		display:inline-block;
		width:auto;
		min-width:150px;
		margin-bottom:5px;
		font-size:0.9rem !important;
		}
		dl.bgfliplr dt br,
		dl.bgfliplr2 dt br{
			display:none;
	}
	dl.bgfliplr dd,
	dl.bgfliplr2 dd{
		float:none;
		width:100%;
		margin-bottom:15px;
		padding:0px 0px 0px;
		font-size:0.9rem !important;
	}
}

/*-----------------------------------
  table
-----------------------------------*/

table{
	position:relative;
	min-width:25%;
	margin-bottom:20px;
	border-collapse:collapse;
	border-spacing:0px;
	border-top:1px solid #BBBBBB;
	border-left:1px solid #BBBBBB;
	line-height:2;
	}
	table th,
	table td{
		text-align:left;
		border-right:1px solid #BBBBBB;
		border-bottom:1px solid #BBBBBB;
	}
	table th{
		padding:5px 10px 3px 10px;
		font-weight:bold;
		font-size:1rem;
		text-align:center;
		color:rgba(0,97,177,1);
		background:rgba(0,97,177,0.1);
		vertical-align:middle;
		}
		.base_green table th{
			color:rgba(68,159,6,1);
			background:rgba(111,185,44,0.1);
	}
	.color-black table th{
		color:#FFF;
		}
		.color-black .base_green table th{
			color:#FFF;
	}
	table td{
		padding:7px 10px 5px 10px;
		font-weight:normal;
		font-size:1rem;
		text-align:left;
}
/* th */
table.th_fwn th{font-weight:normal;}
table.th_center th{text-align:center;}
table.th_left th{text-align:left;}
table.th_right th{text-align:right;}
table.th_middle th{vertical-align:middle;}

/* td */
table.td_fwb th{font-weight:bold;}
table.td_center td{text-align:center;}
table.td_left td{text-align:left;}
table.td_right td{text-align:right;}
table.td_middle td{vertical-align:middle;}

/* ex */
table .bg_blue{background:rgba(0,97,177,0.1);}
table .bg_blue2{background:rgba(0,97,177,0.2);}
table .bg_green{background:rgba(111,185,44,0.1);}
table .bg_green2{background:rgba(111,185,44,0.2);}

/* ex2 */
table.column_g tr th:last-child,
table.column_g tr td:last-child{
	background:rgba(111,185,44,0.1);
	}
	table.column_g tr th:first-child{
		background:rgba(0,97,177,0.1);
}
	table.column_g tr td:first-child{
		background:none;
}


/* --- responsive --- */
@media only screen and (max-width:767px){
	table{
		width:100%;
	}
	table th,
	table td{
		font-size:0.94rem;
	}

	table.change_sp_table{
		border:none;
	}
	table.change_sp_table th,
	table.change_sp_table td{
		display:block;
		border:none;
		}
		table.change_sp_table td:last-child{
			border-bottom:1px dotted rgba(0,0,0,0.3);
			margin:0 0 15px;
	}
}

/*-----------------------------------
  sp kumikawari
-----------------------------------*/

table.break_table{}

/* --- responsive --- */
@media only screen and (max-width:767px){
	table.break_table th,
	table.break_table td{
		display:block;
		width:100% !important;
	}
}


/*-----------------------------------
  table_like (list_table)
-----------------------------------*/

.table_like *{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.table_like{
    display:flex;
    display:-webkit-flex;
    -webkit-box-pack:justify;
    -ms-flex-pack:justify;
    justify-content:space-between;
    flex-wrap:wrap;
    vertical-align: text-top;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-left:1px solid #CCC;
    padding:0px !important;
}
.table_like li{
    display: flex;
    display: -webkit-flex;
    align-items: center;
    width:50%;
    margin-top: -1px;
    padding:5px 10px;
    border:1px solid #CCC;
    border-left:none;
    line-height:1.4;
}
.table_like li:nth-child(4n),
.table_like li:nth-child(4n-1){
    background:rgba(1,98,177,0.05);
}

/*-----------------------------------
  at
-----------------------------------*/
img.at{
	position:relative !important;
	top:-7px !important;
	margin:0 1px 0;
}
strong img.at,
b img.at{
	margin:0 1px 0 2px;
	padding-left:1px;
	background:url(../../img/base/at.png) no-repeat 0 0;
}

/*-----------------------------------
  Facebook
-----------------------------------*/
.fb{
	display:inline-block;
	width:auto;
	min-height:60px;
	margin-bottom:7px;
	background:url(../../img/base/fb.png) no-repeat 6px 5px;
	border:1px solid #1877F2;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	line-height:1.2;
	}
	.fb a{
		display:block;
		padding:5px 20px 5px 67px;
		font-weight:bold;
		font-size:0.9rem;
		text-decoration:none !important;
		color:#000;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.fb a:hover{
		background:rgba(59,89,152,0.1);
}
.fb span{
	font-weight:normal;
	font-size:0.7rem;
}
#side_nav .fb{
	line-height:1.4;
	}
	#side_nav .fb a{
		padding:6px 20px 4px 67px;
		font-size:0.8rem;
	}
	#side_nav .fb span{
		font-size:0.6rem;
}

/* -----------------------------------
   flow
----------------------------------- */

.flow_ol{
	position:relative;
	margin-bottom:4px;
	padding-left:0px;
	list-style:none;
	}
	.flow_ol::before{
		content:" ";
		position:absolute;
		top:35px;
		left:56px;
		width:8px;
		height:calc(100% - 70px);
		background:#0061B1;
		}
		.base_green .flow_ol::before{
			background:#6FB92C;
}
.flow_ol li{
	display:-webkit-flex;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	position:relative;
	min-height:35px;
	margin-bottom:20px;
	padding:0px 0 0px 130px;
	}
	.flow_ol li:last-child{
		margin-bottom:0px;
	}
	.flow_ol li span{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:absolute;
		top:calc(50% - 17px);
		left:0px;
		width:120px;
		height:35px;
		font-weight:bold;
		font-size:1.0rem !important;
		text-align:center;
		background:#FFF;
		border:2px solid #0061B1;
		color:#0061B1;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		}
		.base_green .flow_ol li span{
			border:2px solid #6FB92C;
			color:#518620;
	}
	.flow_ol li span::before{
		content:" ";
		position:absolute;
		top:-12px;
		left:48px;
		width:20px;
		height:10px;
		background:#FFF;
	}
	.flow_ol li span::after{
		content:" ";
		position:absolute;
		top:-12px;
		left:48px;
		border:10px solid transparent;
		border-top:10px solid #0061B1;
		}
		.base_green .flow_ol li span::after{
			border-top:10px solid #6FB92C;
	}
	.flow_ol li:first-child span::before,
	.flow_ol li:first-child span::after{
		display:none;
	}
	.flow_ol li p{
		line-height:1.35;
	}
	.flow_ol li p:last-child{
		margin-bottom:0px;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	.flow_ol li{
		margin-bottom:15px;
		padding:0px 0 0px 110px;
		}
		.flow_ol::before{
			left:46px;
	}
	.flow_ol li span{
		width:100px;
		font-size:0.9rem !important;
		}
		.flow_ol li span::before{
			left:38px;
		}
		.flow_ol li span::after{
			left:38px;
	}
}

/*-----------------------------------
  download
-----------------------------------*/
ul.download_list{
	margin:20px 0 30px;
	list-style:none;
	border-top:1px dotted #0061B1;
	}
	ul.download_list li{
		min-height:47px;
		margin:0px;
		padding:0px;
		border-bottom:1px dotted #0061B1;
		line-height:1.5;
	}
	ul.download_list li.word{
		background:url(../../img/base/word.png) no-repeat 10px 7px;
	}
	ul.download_list li.excel{
		background:url(../../img/base/excel.png) no-repeat 10px 7px;
	}
	ul.download_list li.pdf{
		background:url(../../img/base/pdf.png) no-repeat 10px 7px;
	}
	ul.download_list li.zip{
		background:url(../../img/base/zip.png) no-repeat 10px 7px;
	}
	ul.download_list li.link{
		background:url(../../img/base/link.png) no-repeat 10px 7px;
	}
	ul.download_list li.nolink{
		padding:15px 0 15px 0px;
		background:none;
	}
	ul.download_list li a{
		display:block;
		min-height:47px;
		width:100%;
		height:100%;
		padding:15px 0 10px 55px;
		color:#222;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		}
		.color-black ul.download_list li a{
			color:#FFF;
		}
		ul.download_list li.nolink a{
			display:inline-block;
			min-height:0px;
			width:auto;
			height:auto;
			padding:0px;
			color:rgba(0,97,177,1);
			text-decoration:underline;
	}
	ul.download_list li a:hover{
		text-decoration:none;
	}
	ul.download_list li:hover{
		background-color:rgba(0,97,177,0.2);
	}
	ul.download_list li.nolink:hover{
		background-color:rgba(0,97,177,0);
	}
	/* base_green */
	.base_green ul.download_list{border-top:1px dotted rgba(0,99,47,1.0);}
	.base_green ul.download_list li{border-bottom:1px dotted rgba(0,99,47,1.0);}
	.base_green ul.download_list li:hover{background-color:rgba(0,99,47,0.2);}

ul.download_box{
	position:relative;
	margin:10px 2px 20px;
	list-style:none;
	border:none;
	}
	ul.download_box:after{
		content:" ";
		display:block;
		clear:both;
	}
	ul.download_box li{
		display:inline-block;
		margin:0px 10px 10px 0 !important;
		padding:0px !important;
		text-align:left;
		background-color:rgba(0,97,177,0.1);
		background-repeat:no-repeat;
		background-position:10px 5px;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		line-height:2;
	}
	ul.download_box li.word{
		background-image:url(../../img/base/word.png);
	}
	ul.download_box li.excel{
		background-image:url(../../img/base/excel.png);
	}
	ul.download_box li.pdf{
		background-image:url(../../img/base/pdf.png);
	}
	ul.download_box li.zip{
		background-image:url(../../img/base/zip.png);
	}
	ul.download_box li.link{
		background-image:url(../../img/base/link.png);
	}
	ul.download_box li:hover{
		background-color:rgba(0,97,177,0.2);
	}
	ul.download_box li a{
		display:inline-block;
		margin:0px !important;
		padding:10px 20px 7px 55px;
		border:1px solid rgba(0,97,177,0.4);
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
	}
	ul.download_box li a:hover{
		text-decoration:none;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	ul.download_box{
		margin:10px 2px 20px !important;
		padding-left:0px;
		text-align:center;
	}
}

/*-----------------------------------
  btn
-----------------------------------*/

.btn a{
	display:inline-block;
	position:relative;
	padding:6px 20px 6px 30px;
	text-decoration:none !important;
	background:rgba(0,128,204,0.8);
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	color:#FFF;
	transition-duration:0.5s;
	}
	.base_green .btn a{
		background:rgba(111,185,44,0.8);
	}
	.btn a::before{
		content:" ";
		position:absolute;
		top:11px;
		left:18px;
		border: 6px solid transparent;
		border-left: 6px solid #FFF;
	}
	.btn a:hover{
		opacity:0.85;
}

/*-----------------------------------
  new
-----------------------------------*/

.new{
	display:inline-block;
	padding:2px 5px 1px;
	font-weight:bold;
	background:#F00;
	color:#FFF;
	line-height:1.35;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
}

/* -----------------------------------
   red_icon
----------------------------------- */

.red_icon{
	display:inline-block;
	position:relative;
	top:-1px;
	min-width:75px;
	margin:0px;
	padding:0 20px;
	font-size:0.92rem !important;
	text-align:center;
/*
	border:1px solid rgba(111,185,44,1.0);
	background:rgba(111,185,44,1.0);
*/
	background:rgba(200,0,0,1.0);
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	color:#FFF;
}
h2 .red_icon,
h3 .red_icon{
	margin:0 0 0 10px;
}

/* -----------------------------------
  youtube
----------------------------------- */

.youtube{
	position:relative;
	width:100%;
	height:auto;
	margin:0 auto 20px;
	}
	.youtube div{
		position:relative;
		width:100%;
		height:0px;
		padding-top:56.25%;
	}
	.youtube div iframe{
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:100%;
}

/* -----------------------------------
  lr_box
----------------------------------- */

.lr_box{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	}
	.lr_box > div{
		width:calc(100% - 320px);
	}
	.lr_box > div.figure{
		width:300px;
	}
	.lr_box > div.figure figure{
		margin:0 0 10px;
	}
	.lr_box > div.figure figure:last-child{
		margin:0 0 0px;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	.lr_box > div{
		width:100%;
	}
	.lr_box > div.figure{
		width:100%;
	}
}














