@charset "utf-8";
/* CSS Document */
.cp_modal02 .cp_modal_cont {

	position: absolute;
    height: 90%;
    top: 10%;
    left: 27%;
    width: 96%;
    overflow-y: scroll;
    margin-top: -18%;
    margin-left: -25%;
    padding: 0%;
    background-color: white;
    border-radius: 4px;
    box-shadow: 0 0 50px rgba(0, 0, 0, 0.5);
    transform: scale(0);
    transition: transform 250ms ease;
    visibility: hidden;
    z-index: 20;
}


.cp_modal02 {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 100%;
height: 100vh;
font-size: 16px;
font-weight: 300;
line-height: 1.5;
color:#4c4948;
}
.cp_modal02:before {
position: absolute;
content: '';
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(255, 255, 255, 0.7);
z-index: -1;
}

	
.merit_txt{
    font-size: 90%;
    font-weight: bold;
    line-height: 220%;
}	
	
.cp_modal02 p.citation {
text-align: right;
}
.cp_modal02 p.citation::before {
content: '\2500'
}

.cp_modal02 a {
text-decoration: none;
}
.cp_modal02 label {
cursor: pointer;
}
.cp_modal02 .cp_modal_btn {
position: relative;
display: table-cell;
width: 100px;
height: 100px;
background-color: #043459;
box-shadow: 0 0 40px rgba(0, 0, 0, 0.3);
border-radius: 50%;
text-align: center;
transition: box-shadow 250ms ease;
color: #ffffff;
font-weight: bold;
}
.cp_modal02 .cp_modal_btn::before {
position: absolute;
top:50%;
left: 20%;
font-family: 'FontAwesome';
content: '';
font-size: 1em;
line-height: 0;
display: inline-block;
width: 4em;
color: #ffffff;
}
.cp_modal02 .cp_modal_btn:hover {
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.cp_modal02 .cp_modal_bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0;
z-index: 10;
visibility: hidden;
transition: background-color 250ms linear;
}
.cp_modal02 .cp_modal_cont .cp_close {
position: relative;
float: right;
font-size: 18px;
transition: transform 500ms ease;
z-index: 11;
}
.cp_modal02 .cp_modal_cont .cp_close:hover {
color: #da3c41;
transform: rotate(180deg);
}
.cp_modal02 .cp_modal_cont header {
position: relative;
display: none;
background-color: #e4e4e4;
margin-bottom: 1.5em;
}
.cp_modal02 .cp_modal_cont header img {
    margin: 0 auto;
    padding: 5%;
    display: block;
}
.cp_modal02 .cp_modal_cont article {
position: relative;
display: none;
margin: 0;
padding: 0;
font-size: 88%;
line-height: 1.75;
	width:97%;
	margin:0 auto;
}
.cp_modal02 .cp_modal_cont footer {
position: relative;
display: flex;
align-items: center;
justify-content: flex-end;
width: 100%;
margin: 0 0 5%;
padding: 10px 0 0;

}
.cp_modal02 .cp_modal_cont footer .cp_btn {
position: relative;
padding: 10px 30px;
border-radius: 3px;
font-size: 14px;
font-weight: 400;
color: white;
text-transform: uppercase;
overflow: hidden;
margin: 0 auto;
}
.cp_modal02 .cp_modal_cont footer .cp_btn:before {
position: absolute;
content: '';
top: 0;
left: 0;
width: 0;
height: 100%;
background-color: rgba(88, 24, 26, 0.3);
transition: width 250ms ease;
z-index: 0;
}
.cp_modal02 .cp_modal_cont footer .cp_btn:hover:before {
width: 100%;
}
.cp_modal02 .cp_modal_cont footer .cp_btn.cp_cl {
background-color: #da3c41;
}
.cp_modal02 #cp_modal {
display: none;
}
.cp_modal02 #cp_modal:checked ~ .cp_modal_bg {
visibility: visible;
background-color: #000000;
opacity: 0.7;
transition: background-color 250ms linear;
}
.cp_modal02 #cp_modal:checked ~ .cp_modal_cont {
visibility: visible;
transform: scale(1);
transition: transform 250ms ease;
z-index: 111;
}
.max_w{
width:100%;
}	
	
.max_w02{
width:50%;
margin: 0 auto 2%;
	display: block;
}	
	
.sub_title01{
background-color: #fff2cc;
padding:1% 2%;
}
	
.sub_title02{
font-weight: bold;
font-size: 120%;
margin-top:2%;
}	
	
.fcl {
	zoom: 100%;
}
.fcl:after {
	content: " ";
	clear: both;
	height: 0;
	display: none;
	visibility: hidden;
}	
	
.img_left {
	float: left;
	margin-right: 20px;
	margin-bottom: 10px;
}

.img_right {
    float: none;

    margin-left: 0px;
    margin-bottom: 0px;
    width: 50%;
    margin: 0 auto;
    display: none;
}

.img_center {
	display: block;
	margin: 0 auto 7%;
	clear: both;
	width:50%;
}

.img_center02 {
	display: block;
	margin: 0 auto 7%;
	clear: both;
	width:100%;
}
	
.box {
    padding: 0%;
    margin-bottom: 8%;
}
	
	
.box02{
   display: block;
   padding:0%;	
    margin-bottom: 8%;	
}	
	
.txt_bold{font-weight:bold;}
.txt_small{font-size:80%; line-height: 180%;}
.txt_big{font-size:120%;}
.txt_big2{font-size:140%;}
.txt_right{text-align:right;}
.txt_red{color:#ff0000;}
.txt_blue{color:#0066cc;}
.txt_keycolor{color:#8e9e69;}
.txt_marker{  background: linear-gradient(transparent 70%, #a7d6ff 70%);}
.txt_underline{border-bottom:#cccccc 1px dotted;margin-bottom:2px;}
.txt_center{text-align:center;  margin-top:-2%; margin-bottom:5%;}	
.block_title{text-align: center; background-color:#34ae37;color: #fff;font-size: 120%;padding:2% 0; font-weight: bold; margin-top:-1%;}
.code_txt {text-align: center; font-weight: bold; font-size: 170%;padding-bottom: 6vw;}
.step_bg{background-color: #34ae37;	width:100%;	padding:2%;	color:#fff;	font-size: 120%;　font-weight: bold;}	
	
.step_bg02{
	background-color: #34ae37;
	width:96%;
	padding:2%;
	color:#fff;
	font-size: 120%;
	font-weight: bold;
}	
	
.block_left {
    float: none;
    width: 100%;
    background-color: #fff2cc;
    margin-right: 0%;
    padding-bottom: 2%;
    margin-bottom: 8%;
}
.block_right {
	float: none;
    width: 100%;
	background-color: #fff2cc;	
}	
	
.flex_box{
	display:block;
}

.flex_unit03{
    width: 100%;
    padding:5px 0px;
	display: block;
	margin-left:0%;
	border-radius: 5px;	
	margin-bottom:6%;
	text-align: center;
}		


.pc_none {
}
.sp_none {
	display: none;	
}


