@charset "utf-8";
/* CSS Document */

body {
	line-height:1.4em;
}
a {
}
#wrap {
	overflow:hidden;
}
#header {
	background-image:url(../images/head_bak.jpg);
	background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
	position:relative;
}
#header:before {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	background: rgba(76,154,135,.5);
	top:0;
}
#header .cont_w {
	max-width:490px;
	padding:80px 15px;
	margin:0 auto;
	text-align:center;
	position:relative;
	color:#FFF;
}
#header #logo {
	margin:30px auto;
    width: 50%;
}
#header .p01 {
	font-size:200%;
	padding:20px 0 40px;
	line-height:1.1em;
}
#header .p02 {
	font-size:120%;
}
@media screen and (min-width: 768px) {
	#header #logo {
		width: 50%;
	}
}



.box_type1 {
	max-width:980px;
	margin:80px auto;
}
.box_type2 {
	max-width:980px;
	margin:0px auto;
}


.box_l {
	float:left;
	width:50%;
	padding:0 15px;
}
.box_r {
	float:right;
	width:50%;
	padding:0 15px;
}
@media print, screen and (max-width: 768px){
	.box_l {
		width:100%;
	}
	.box_r {
		width:100%;
	}
}


.line_bg1 {
	background-image:url(../images/bg_1.jpg);
	background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
	position:relative;
	padding:40px 0;
	text-align:center;
	color:#FFF;
}
.line_bg1:before {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	background: rgba(76,154,135,.8);
	top:0;
	left:0;
	z-index:1;
}
.line_bg1 p {
	position:relative;
	font-size:200%;
	z-index:2;
	padding:0 15px;
}
@media print, screen and (max-width: 768px){
	.line_bg1 p {
		font-size:180%;
		line-height:1.5em;
	}
}

.ul_flex1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ul_flex1 li {
	display:block;
	width:calc(33% - 5px);
	padding:0 15px;
	margin-bottom:20px;
}
.ul_flex1 li h3 {
	font-size:140%;
	font-weight:normal;
	text-align:center;
	padding:20px 0;
}
.ul_flex1 li p {
	padding-bottom:10px;
}
@media screen and (max-width: 768px) {
	.ul_flex1 li {
		width:100%;
	}
}


.ul_flex2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ul_flex2 li {
	display:block;
	width:calc(50% - 5px);
	padding:0 15px;
	margin-bottom:20px;
}
.ul_flex2 li:after {
	content:"";
	display:block;
	clear:both;
}
.ul_flex2 li img {
	float:left;
	width:calc(30% - 20px);
	border-radius:50%;
	margin:0 20px 20px 0;
}
.ul_flex2 li h4 {
	width:70%;
	float:right;
	font-size:140%;
	padding:0px 0 15px;
	border-bottom:solid 1px #ddd;
	color:#4c9a87;
}
.ul_flex2 li p {
	width:70%;
	float:right;
	padding:15px 0;
	font-size:90%;
}
@media screen and (max-width: 768px) {
	.ul_flex2 li {
		width:100%;
	}
	.ul_flex2 li img {
		display:block;
		float:none;		
		margin:10px auto;
	}
	.ul_flex2 li h4 {
		width:100%;
	}
	.ul_flex2 li p {
		width:100%;
	}
}



.ul01 {
	list-style:none;
	padding:0;
}
.ul01 li {
	background-image:url(../images/icon_check-square.png);
	background-size:30px auto;
	background-repeat:no-repeat;
	background-position:0px 2px;
	padding-left:50px;
	font-size:24px;
	line-height:1.6em;
	padding-bottom:20px;
}
@media screen and (max-width: 768px) {
	.ul01 li {
		background-size:20px auto;
		padding-left:35px;
		font-size:18px;
	}
}


.btn01 {
	display:inline-block;
	padding:5px 30px;
	border-radius:15px;
	background-color:#4c9a87;
	color:#FFF;
	text-decoration:none;
}
.btn02 {
	display:inline-block;
	padding:20px 60px;
	font-size:200%;
	border-radius:30px;
	background-color:#4c9a87;
	color:#FFF;
	text-decoration:none;
	margin:50px auto;
}
@media print, screen and (max-width: 768px){
	.btn02 {
		font-size:150%;
		line-height:1.2em;
		margin:50px 15px;
	}
}



.dl_qa {
	display:block;
	padding:0 15px;
}
.dl_qa dt {
	padding:0 15px 20px 50px;
	position:relative;
	font-size:18px;
	line-height:1.4em;
}
.dl_qa dt:before {
	content:"Q";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:30px;
	height:30px;
	line-height:30px;
	font-size:20px;
	text-align:center;
	border-radius:15px;
	background-color:#e61327;
	color:#FFF;
}
.dl_qa dd {
	padding:0 15px 30px 50px;
	position:relative;
	font-size:18px;
	line-height:1.4em;
}
.dl_qa dd:before {
	content:"A";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:30px;
	height:30px;
	line-height:30px;
	font-size:20px;
	text-align:center;
	border-radius:15px;
	background-color:#1772b5;
	color:#FFF;
}
@media print, screen and (max-width: 768px){
	.dl_qa dt {
		font-size:18px;
		padding:0 0 15px 35px;
	}
	.dl_qa dt:before {
		width:25px;
		height:25px;
		line-height:25px;
		font-size:16px;
		text-align:center;
	}
	.dl_qa dd {
		font-size:18px;
		padding:0 0 25px 35px;
	}
	.dl_qa dd:before {
		width:25px;
		height:25px;
		line-height:25px;
		font-size:16px;
		text-align:center;
	}
}

#footer {
	background-color:#e2e5e6;
	padding:30px 0;
}
#f_sns_link {
	width:50%;
	float:right;
}
#f_sns_link ul {
	list-style:none;
	text-align:right;
}
#f_sns_link ul li {
	display:inline-block;
}
#f_sns_link ul li a{
	display:block;
	width:60px;
	height:60px;
	background-size:100% auto;
}
#f_sns_link ul li a.tw{
	background-image:url(../images/icon_twitter.png);
}
#f_sns_link ul li a.fb{
	background-image:url(../images/icon_facebook.png);
}

#f_bottom .copy {
	font-weight:bold;
	font-size:110%;
	margin-bottom:20px;
}
#f_bottom .addr {
	font-size:90%;
}
#btn_pagetop {
	position:fixed;
	bottom:20px;
	right:20px;
	width:50px;
	height:50px;
}

@media print, screen and (max-width: 768px){
	#footer {
		padding:30px 15px;
	}
	#f_sns_link {
		width:100%;
		float:none;
	}
	#f_sns_link ul {
		text-align:center;
		padding-bottom:20px;
	}
	#f_bottom .copy {
		font-weight:bold;
		font-size:90%;
		margin-bottom:20px;
	}
	#f_bottom .addr {
		font-size:80%;
	}
	#btn_pagetop {
		bottom:10px;
		right:10px;
		width:40px;
		height:40px;
	}
}

