@charset "UTF-8";

@media (min-width: 768px){
	.display-sp{ display:none !important;}
	.display-pc{ display:block !important;}
}
@media (max-width: 768px) {
	.display-sp{ display:block !important;}
	.display-pc{ display:none !important;}
}



header{
	padding: 10px 2.5%;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; 
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
header p{
	margin:0;
}
footer{
	border-top: solid 3px #1EB9F0;
	padding: 10px 2.5%;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; 
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
footer p{
	margin:0;
}
footer a{
	display:block;
	color:#000;
	font-size:11px;
}
footer .logo{
	text-align:right;
}
footer .copyright{
	display:block;
	color:#000;
	font-size:11px;
}

/*================================*/

.font-color01{
	color:#7b6a5f;
}
.font-color02{
	color:#2bb8d3;
}
.font-color03{
	color: #F60;
}
.font-size00-1{
	font-size:0.8rem;
}
.font-size00{
	font-size:1rem;
}
.font-size01{
	font-size:1.2rem;
}
.font-size02{
	font-size:1.4rem;
}
.font-size03{
	font-size:1.6rem;
}
.font-size04{
	font-size:1.8rem;
}
.font-size04{
	font-size:2rem;
}
.font-size05{
	font-size:2.4rem;
}

.line-txt01{
	border-bottom: solid 1px #354659;
}
.line-txt02{
	border-bottom: solid 1px #2bb8d3;
}

.nostyle{
  list-style-type: none;
	margin-left:-25px;
}

.dotstyle{
  list-style-type: square;
}

/*================================*/

.sec-line {
	border-top: solid 15px #7ecea2;
	margin-bottom:80px;
	padding-top: 80px;
}
.container {
	padding-left:0;
	padding-right:0;
}
.container_over {
	position:relative;
	width: 95%;
	margin: 0 auto 40px;
	padding: 60px 0;
	background: rgb(156,229,172);
	background: linear-gradient(180deg, rgba(156,229,172,0.3) 0%, rgba(107,157,118,0.3) 100%);
	color:#354659;
}
.container_over:before{
	content:"";
	position:absolute;
	left:50%;
	bottom:-30px;
	width: 0;
	height: 0;
	margin-left:-30px;
	border-style: solid;
	border-width: 20px 30px 0 30px;
	border-color: #3db5cf transparent transparent transparent;
}
.container_over-ttl{
	margin-bottom:30px;
	font-size:0.8rem;
}
.inner-container {
	width: 864px;
	margin: 0 auto;
}

.box01{
	border: solid 2px #3DB5CF;
	padding:30px;
}

.indent-box{
	padding-left:0px;
}

.indent-box2{
	padding-left:25px;
}

/*================================*/

.ttl01 {
	margin-bottom:40px;
	font-size: 1.6rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.ttl02 {
	background: rgb(41,175,201);
	background: linear-gradient(90deg, rgba(41,175,201,1) 0%, rgba(126,208,226,1) 100%);	
	margin-top:100px;
	margin-bottom:100px;
	font-size: 1.2rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
	color:#fff;
	padding:5px;
}
.ttl03 {
	margin-bottom:20px;
	font-size: 1.4rem;
	text-align: center;
	color:#7b6a5f;
}
.ttl03 span {
	display:inline-block;
	padding:0 30px;
	background-image:url(ttl03_deco01.png),url(ttl03_deco02.png);
	background-position:left center, right center;
	background-repeat:no-repeat , no-repeat;
}
.ttl04{
	position:relative;
	padding-left:30px;
	margin-top:100px;
	margin-bottom:20px;
	font-size: 1.6rem;
	color:#049ad8;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.ttl04:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:10px;
	height:100%;
	background-color:#049ad8;
}

/*================================*/

.base-btn a{
	position:relative;
	display:block;
	width:60%;
	margin-left:auto;
	margin-right:auto;
	background-color:#3db5cf;
	font-size: 1.8rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
	line-height:1.8;
	color:#fff;
	padding:20px;
	-webkit-transition: opacity .4s; transition: opacity .4s;
}
.base-btn a:before{
	content:"";
	position:absolute;
	top:8px;
	left:8px;
	border: solid 2px #fff;
	width:calc(100% - 16px);
	height:calc(100% - 16px);
}
.base-btn a:hover{
	opacity:0.50;
	text-decoration:none;
}
.base-btn a > span{
	display:block;
}
.base-btn a span.mini{
	font-size: 0.8rem;
}
.base-btn a .line{
	border-bottom: solid 1px #fff;
}

/*================================*/

.cap-txt{
	font-size:90%;
	text-indent:0em;
	padding-left:0em;
}
.cap-txt.cap-right{
	text-align:right;
}

.base-list{
	padding-left:25px;
}
.base-list > li{
	list-style-type: disc;
}

.check-list{
	padding:0;
	list-style: none;
}
.check-list li{
	margin-bottom:10px;
	padding-left:30px;
	background:url(check_icon.png) no-repeat left top 0.5em;
	
}

.answer-list{
	padding:0;
	list-style: none;
}
.answer-list li{
	margin-bottom:10px;
	padding-left:30px;
	background:url(answer_icon.png) no-repeat left top 0.1em;
	
}

/*================================*/

.base-table{
	width:100%;
	border-collapse:collapse;
}
.base-table th,
.base-table td{
	padding: 10px;
	vertical-align:top;
	color:#354659;
}
.base-table th{
	border: solid 1px #05130c;
}
.base-table td{
	border: solid 1px #05130c;
	vertical-align:top;
	text-align:left;
}
.base-table thead th{
	text-align:center;
	vertical-align:middle;
}
.base-table tbody th{
	width:20%;
}
.base-table td{
	background-color:#fff;
}
.base-table .table-bg01{
	background-color:#e8f6ef;
}

/*================================*/

.mv{
	height:587px;
	background:url(mv_bg.jpg) no-repeat center top;
}
.mv .container{
	height:100%;
	background:url(mv_img.png) no-repeat top 20px right;
}
.mv .mv-copy{
	padding-top:5%;
	font-size: 4rem;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-style: normal;
	color:#fff;
	text-shadow: 3px 3px 3px rgba(0,0,0,0.8);
}
.mv-lead{
	position:relative;
	z-index:2;
	margin-top:-100px;
	padding:30px;
	background-color:rgba(255,255,255,0.8);
}

/*================================*/

.feature-tab{
	margin-bottom:100px;
	padding:0;
	padding-top:20px;
	list-style: none;
	counter-reset: listno-feature-tab;
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.feature-tab li{
	position:relative;
	width:30%;
}
.feature-tab li:before {
	display:block;
	position:absolute;
	z-index:3;
	left:50%;
	top:-0.7em;
	margin-left:-25px;
	counter-increment: listno-feature-tab;
	content: counter(listno-feature-tab);
	color:#fff;
	background-color:#3db5cf;
	font-size:2.5rem;
	border-radius:1000%;
	text-align:center;
	width:50px;
	height:50px;
	line-height:50px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.feature-tab li:after{
	position:absolute;
	content:"";
	top:0;
	left:0;
	bottom:-10px;
	width:100%;
	background-color:#8AE4F8;
	text-align:center;
	padding:30px;
	border-radius:20px;
}
.feature-tab li .box{
	position:relative;
	z-index:2;
	background-color:#3db5cf;
	padding:30px;
	border-radius:20px;
	color:#fff;
	text-align:center;
}
.feature-tab .ttl{
	display:block;
	position:relative;
	margin-bottom:20px;
	font-size: 1.6rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.feature-tab .ttl span{
	position:relative;
	border-bottom: solid 1px #fff;
	padding-bottom:0.3em;
}
.feature-tab .mini{
	display:block;
	color:#fff;
}


.feature-content{
	padding:0;
	list-style: none;
	counter-reset: listno-feature-content;
}
.feature-content li{
	position:relative;
	padding:40px 0;
	margin-bottom:100px;
	border-radius:15px;
	border: solid 4px #3DB5CF;
}
.feature-content li:last-child{
	margin-bottom:0;
}
.feature-content li:before {
	display:block;
	position:absolute;
	z-index:3;
	left:50%;
	top:-0.7em;
	margin-left:-25px;
	counter-increment: listno-feature-content;
	content: counter(listno-feature-content);
	color:#fff;
	background-color:#3db5cf;
	font-size:2.5rem;
	border-radius:1000%;
	text-align:center;
	width:50px;
	height:50px;
	line-height:50px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.feature-content .ttl{
	position:relative;
	margin-bottom:50px;
	font-size: 1.6rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}
.feature-content .ttl span{
	position:relative;
	bottom:0.1em;
	border-bottom: solid 1px #000;
}
.feature-content .icon-img{
	text-align:center;
}
.feature-content .icon-img img{
	width: auto;
}

/*================================*/

.point{
	padding:0;
	list-style: none;
	counter-reset: listno-point;
}
.point li{
	position:relative;
	padding-left:50px;
	margin-bottom:30px;
	font-size: 1.6rem;
	color:#354659;
}
.point li:before {
	display:block;
	position:absolute;
	left:0;
	top:3px;
	counter-increment: listno-point;
	content: counter(listno-point);
	color:#354659;
	border: solid 1px #354659;
	font-size:1.6rem;
	border-radius:1000%;
	text-align:center;
	width:30px;
	height:30px;
	line-height:30px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}

/*================================*/

.flow{
	padding:0;
	list-style: none;
}
.flow li{
	position:relative;
	margin-bottom:40px;
	text-align:center;
	padding:30px;
	border-radius:15px;
	color:#7b6a5f;
	background-color:#c5dcec;
}
.flow li:before{
	content:"";
	position:absolute;
	left:50%;
	bottom:-30px;
	width: 0;
	height: 0;
	margin-left:-30px;
	border-style: solid;
	border-width: 20px 30px 0 30px;
	border-color: #3db5cf transparent transparent transparent;
}
.flow li:last-child:before{
	display:none;
}

.flow .ttl {
	margin-bottom:10px;
	font-size: 1.6rem;
	text-align: center;
    letter-spacing: 0.1rem;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 600;
    font-style: normal;
}

/*================================*/

.company-box{
	padding:30px 0;
	border-radius:15px;
	border: solid 1px #7b6a5f;
}


/*================================*/

.inner-page-ttl{
	margin-bottom:40px;
	padding:40px 0;
	border-top: solid 4px #049ad8;
	font-size: 2.2rem;
	background-color:#eeeeee;
	color:#049ad8;
	text-align:center;
}

.container-aro{
	position:relative;
}
.container-aro:before{
	content:"";
	position:absolute;
	left:50%;
	bottom:-30px;
	width: 0;
	height: 0;
	margin-left:-30px;
	border-style: solid;
	border-width: 20px 30px 0 30px;
	border-color: transparent transparent transparent transparent;
}
.service-img{
	text-align:center;
	
}





@media screen and (max-width: 767px) {
	
	.url {
		word-break: break-word;
	}
	
	img {
		max-width: 100%;
	}
	footer .link{
		width:50%;
	}
	footer a{
		font-size:9px;
	}
	footer .logo{
		width:50%;
	}
	footer .copyright{
		display:block;
		color:#000;
		font-size:9px;
	}
	/*================================*/
	
	.font-size01{
		font-size:1rem;
	}
	.font-size02{
		font-size:1.1rem;
	}
	.font-size03{
		font-size:1.2rem;
	}
	.font-size04{
		font-size:1.3rem;
	}
	.font-size05{
		font-size:2rem;
	}
	
	
	/*================================*/
	
	.sec-line {
		margin-bottom:10vw;
		padding-top: 10vw;
	}
	.container {
		padding-left:0;
		padding-right:0;
	}
	.container_over {
		width: 95%;
		margin: 0 auto 10vw;
		padding: 7vw 0;
	}
	.container_over:before{
		content:"";
		position:absolute;
		left:50%;
		bottom:-30px;
		width: 0;
		height: 0;
		margin-left:-30px;
		border-style: solid;
		border-width: 20px 30px 0 30px;
		border-color: #3db5cf transparent transparent transparent;
	}
	.container_over-ttl{
		margin-bottom:3vw;
		font-size:0.8rem;
	}
	.inner-container {
		width: 95%;
	}
	.box01{
		border: solid 2px #3DB5CF;
		padding:2vw;
	}
	.indent-box{
		padding-left:5vw;
	}

	/*================================*/
	
	.ttl01 {
		margin-bottom:5vw;
		font-size: 1.2rem;
		text-align: center;
		letter-spacing: 0.1rem;
		font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
		font-weight: 600;
		font-style: normal;
	}
	.ttl02 {
		margin-bottom:3vw;
		font-size: 1.1rem;
	}
	.ttl03 {
		margin-bottom:2vw;
		font-size: 1.2rem;
	}
	.ttl04{
		font-size: 1.2rem;
		padding-left:5vw;
		margin-bottom:3vw;
	}
	.ttl04:before{
		width:5px;
	}
	
	
	/*================================*/
	
	.base-btn a{
		width:100%;
		font-size: 1.2rem;
		padding:3vw;
	}
	.base-btn a span.mini{
		font-size: 0.6rem;
	}
		
	/*================================*/
	
	.cap-txt.cap-right{
		padding-left:1%;
	}
	
	/*================================*/
	
	.base-table th,
	.base-table td{
		font-size:12px;
		padding: 2vw;
	}

	
	/*================================*/
	
	.mv{
		height: auto;
		background:url(mv_bg.jpg) no-repeat center top / auto 100%;
	}
	.mv .container{
		padding:5vw 0 18vw;
		height:100%;
		background:url(mv_img.png) no-repeat bottom 5% right / 70% auto;
	}
	.mv .mv-copy{
		padding-top:0;
		font-size: 1.8rem;
	}
	.mv-lead{
		margin-top:0;
		padding:5vw;
	}
	
	/*================================*/
	
	.feature-tab{
		margin-bottom:10vw;
		padding-top:20px;
	}
	.feature-tab li{
		position:relative;
		width:30%;
	}
	.feature-tab li .box{
		padding: 7vw 3vw 4vw;
		border-radius:10px;
		height:100%;
	}
	.feature-tab .ttl{
		margin-bottom:2vw;
		font-size: 0.8rem;
		line-height:1.8;
	}
	.feature-tab .ttl span{
		padding-bottom:0;
	}
	.feature-tab li:before {
		margin-left:-15px;
		font-size:1.2rem;
		width:30px;
		height:30px;
		line-height:30px;
	}
	
	.feature-tab .mini{
		display:block;
		color:#000;
		font-size:0.6rem;
	}
	
	
	.feature-content{
		padding:0;
		list-style: none;
		counter-reset: listno-feature-content;
	}
	.feature-content li{
		padding:10vw 0 4vw;
		margin-bottom:10vw;
		border-radius:10px;
		border: solid 3px #3DB5CF;
	}
	.feature-content li:before {
		margin-left:-20px;
		font-size:1.5rem;
		width:40px;
		height:40px;
		line-height:40px;
	}
	.feature-content .ttl{
		margin-bottom:5vw;
		font-size: 1.2rem;
	}

	/*================================*/
	
	.point{
		padding:0;
		list-style: none;
		counter-reset: listno-point;
	}
	.point li{
		position:relative;
		padding-left:40px;
		margin-bottom:3vw;
		font-size: 1.1rem;
		color:#354659;
	}
	.point li:before {
		top:3px;
		font-size:1.3rem;
		width:30px;
		height:30px;
		line-height:30px;
	}

/*================================*/

	.flow{
		padding:0;
		list-style: none;
	}
	.flow li{
		margin-bottom:10vw;
		padding:3vw;
	}
	.flow li:last-child{
		margin-bottom:5vw;
	}
	.flow .ttl {
		margin-bottom:2vw;
		font-size: 1.2rem;
	}
	
	/*================================*/
	
	.company-box{
		padding:3vw 0;
		border-radius:15px;
		border: solid 1px #7b6a5f;
	}
	
	
	/*================================*/
	
	.inner-page-ttl{
		margin-bottom:5vw;
		padding:5vw;
		border-top: solid 4px #049ad8;
		font-size: 1.4rem;
		background-color:#eeeeee;
		color:#049ad8;
		text-align:center;
	}
	
	.container-aro{
		position:relative;
	}
	.container-aro:before{
		content:"";
		position:absolute;
		left:50%;
		bottom:-30px;
		width: 0;
		height: 0;
		margin-left:-30px;
		border-style: solid;
		border-width: 20px 30px 0 30px;
		border-color: transparent transparent transparent transparent;
	}
	.service-img{
		text-align:center;
		
	}
			
}


