@charset "utf-8";

.print_show{
	display:none;
}
.print_show_edge{
	display:none;
}
.main_frame{
	background:#fff;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.cover_black{
	opacity:0.5;
}

.page_content p{
	margin-bottom:1em;
}
.page_content img{
	margin-bottom:1em;
}


ul.topic_path{
	margin:10px 0;
}
ul.topic_path li {
	display:inline-block;
	line-height:110%;
	list-style-type:none;
}
ul.topic_path li a{
    text-decoration:none;
}

ul.topic_path li a:after {
    content:" > ";
	color:#000;
	font-weight:normal;
}


/*------------------------------------------------------
　タイトル
-------------------------------------------------------*/

h1{font-size:250%;}
h2{font-size:230%;}
h3{font-size:200%;}
h4{font-size:180%;}
h5{font-size:160%;}
h6{font-size:130%;}
h1,h2,h3,h4,h5,h6{margin-bottom:0.5em;}

@media screen and (max-width:768px){
h1{font-size:200%;}
h2{font-size:170%;}
h3{font-size:150%;}
h4{font-size:130%;}
h5{font-size:120%;}
h6{font-size:110%;}
}


.page_content h2{
	font-weight:bold;
	text-align:center;
	margin-top:2em;
	margin-bottom:1em;
}
.page_content h2 span{
	font-weight:normal;
	font-size:20px;
	display:block;
}
.page_content h2 span:before{
	border-top:3px solid #1e649b;
	width:240px;
	height:10px;
	content: "";
	margin:0 auto;
	display:block;
}
.page_content h3{
	background:#1e649b;
	padding:.4em .6em;
	color:#fff;
	margin-top:1.6em;
	margin-bottom:0.8em;
}
.page_content h3 img{
	margin:0 10px 0 0;
	vertical-align:middle;
	width:1em;
}
.page_content h4{
	border-bottom: dashed 2px #bbb;
	padding:.2em .3em;
	color:#1e649b;
	font-weight:bold;
}
.page_content h5{
	border-left: solid 10px #1e649b;
	padding:.2em .4em;
	font-weight:bold;
}
.page_content h6{
	font-weight:bold;
	color:#1e649b;
}






/*------------------------------------------------------
　ボタン
-------------------------------------------------------*/
/*四角ボタン*/
.btn_square a{
	text-align: center;
	text-decoration: none;
	padding: 10px;
	display: inline-block;
	vertical-align: middle;
}

/*角丸ボタン*/
.btn_round a{
	text-align: center;
	text-decoration: none;
	padding: 7px 30px;
	display: block;
	border-radius: 5px;
	vertical-align: bottom;
	margin: 0 10px 10px 0;
}
.btn_round{
	display: inline-block;
}

/*位置*/
.btn_center {
	margin: 10px auto 9px;
}

/*size*/
.btn5size {width: 5em;}
.btn10size {width: 10em;}
.btn13size {width: 13em;}
.btn15size {width: 15em;}
.btn20size {width: 20em;}
.btnfullsize {width: 100%;}

@media screen and (max-width:768px){
	.btn5size, .btn10size, .btn13size, .btn15size, .btn20size {
		width: 90%;
	}
}

/*背景色*/
.back_none a{
	border: solid 2px #fff;
	background: none;
	color: #fff;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.back_none a:hover {
	background: #ffffff;
	color: #000;
}
.back_white a{
	border: none;
	background: #ffffff;
	color: #333333;
}
.back_white a:hover {	background: #dddddd;}
.back_black a{
	background: #000000;
	color: #ffffff;
}
.back_black a:hover {background: #222222;}
.back_blue a{
	background: #00437c;
	color: #fff;
}
.back_blue a:hover {background: #1c5c92;}
.back_green a{
	background: #007685;
	color: #fff;
}
.back_green a:hover {background: #007685;}

.bg_red {background: #ff0000;}
.bg_blue {background: #6ac4cb;}
.bg_blue02 {background: #03419E;}
.bg_green {background: #7dc7ae;}
.bg_orange {background: #f7bc72;}
.bg_pink {background: #ef9191;}
.bg_gray {background: #666;}


@media screen and (max-width:768px){

}

/*詳細を見る*/
a.btn_more{
	display:inline-block;
	padding:10px 20px;
	margin:10px;
	border:1px solid #0d3387;
	border-radius:5px;
	color:#fff;
	text-decoration:none;
	background-color:#0d3387;
	float:right;
	font-weight:bold;
}
a.btn_more:hover{
	border:1px solid #0d3387;
	color:#0d3387;
	background-color:#fff;
	
}

a.read_more{
	display:inline-block;
	width:100%;
	text-align:center;
	max-width:240px;
	padding:10px 40px;
	margin:10px;
	border-radius:50px;
	text-decoration:none;
	font-weight:bold;
	font-size:16px;
}


a.read_more.green{
	color:#fff;
	border:1px solid #004d24;
	background-color:#004d24;
	background-image:url(../img/icon/icon_arrow_yellow.svg);
	background-size:20px 20px;
	background-repeat:no-repeat;
	background-position:center right 20px;
}
a.read_more.green:hover{
	border:1px solid #004d24;
	background-color:#fff;
	color:#004d24;
	background-image:url(../img/icon/icon_arrow_green.svg);
}

a.read_more.white{
	color:#004d24;
	border:1px solid #fff;
	background-color:#fff;
	background-image:url(../img/icon/icon_arrow_green.svg);
	background-size:20px 20px;
	background-repeat:no-repeat;
	background-position:center right 20px;
}
a.read_more.white:hover{
	border:1px solid #004d24;
	background-color:#004d24;
	color:#fff;
	background-image:url(../img/icon/icon_arrow_yellow.svg);
}


.float_right{
	float:right;
}
.float_center{
	margin-left:auto;
	margin-right:auto;
}
.float_left{
	float:left;
}

/*------------------------------------------------------
　スペース
-------------------------------------------------------*/
/*padding*/
.pd_5{padding:5px;}
.pd_10{padding:10px;}
.pd_20{padding:20px;}
.pd_30{padding:30px;}

/*上下*/
.mt10 {margin-top: 1em;}
.mt20 {margin-top: 2em;}
.pt100 {padding-top: 10em;}

.mb10 {margin-bottom: 1em;}
.mb20 {margin-bottom: 2em;}
.mb30 {margin-bottom: 3em;}
.mb40 {margin-bottom: 4em;}
.mb50 {margin-bottom: 5em;}
.mb60 {margin-bottom: 6em;}

@media screen and (max-width:768px){
.mb20 {margin-bottom: 1em;}
.mb30 {margin-bottom: 1.5em;}
.mb40 {margin-bottom: 2em;}
.mb50 {margin-bottom: 2.5em;}
.mb60 {margin-bottom: 3em;}

.pt100 {padding-top: 5em;}
}


/*------------------------------------------------------
　カラム
-------------------------------------------------------*/
.box_content{
	width:100%;
	max-width:1024px;
	margin-right:auto;
	margin-left:auto;
}


/* clearfix
-------------------------------------------------------*/
.clearfix:after { /*floatの解除、ここがポイント*/
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	min-height: 1px; /*IE6、7対策*/
}
* html .clearfix {
	height: 1px;
	/*¥*//*/ /*MAC IE5.x対策*/
	height: auto;
	overflow: hidden;
	/**/
}

/*------------------------------------------------------
　テーブル
-------------------------------------------------------*/

table.tableline{
	margin:0 auto 1em auto;
	border-left:1px solid #ccc;
	border-top:1px solid #ccc;
	width:85%;
}
table.tableline th{
	padding:10px;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
	text-align:center;
	background-color:#eee;
	width:25%;
	vertical-align:middle;
}
table.tableline th.sub{
	background-color:#fff;
	font-weight:bold;
}
table.tableline td{
	padding:10px;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
}

@media screen and (max-width:648px){
table.tableline{
	width:95%;
}
table.tableline tr:nth-child(even){
	background:#ffffff;
}
table.tableline th{
	display:block;
	width:auto;
}
table.tableline td{
	display:block;
}

}


/*------------------------------------------------------
　スライドイン効果
-------------------------------------------------------*/
.fade_in {
  transition: 0.8s;
  opacity: 0;  
}
.fade_in_anime {
  opacity: 1;  
}
.slide-up {
  transition: 0.7s;
  transform: translate(0,50px); 
  -webkit-transform: translate(0,50px); 
  opacity: 0;  
}
.slide-down {
  transition: 0.7s;
  transform: translate(0,-50px); 
  -webkit-transform: translate(0,-50px); 
  opacity: 0;  
}
.ud_anime {
  transform: translate(0,0); 
  -webkit-transform: translate(0,0); 
  opacity: 1;  
}
.slide-left {
  transition: 0.7s;
  transform: translate(50%,0); 
  -webkit-transform: translate(50%,0);
  opacity: 0;  
}
.slide-right {
  transition: 0.7s;
  transform: translate(-50%,0); 
  -webkit-transform: translate(-50%,0);
  opacity: 0;  
}
.side_anime {
  transform: translate(0,0); 
  -webkit-transform: translate(0,0);
  opacity: 1; 
}



.box-85{
	width:85%;
	margin:0 auto;
}

@media screen and (max-width:768px){
.box-85{
	width:100%;
}
}

.border-box{
	padding:20px 10px;
	border:1px solid #ccc;
	text-align:center;
	margin-bottom:10px;
}
.border-box img{
	margin:0 10px 0 0;
	vertical-align:middle;
	width:30px;
}