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

@media screen and (max-width: 599px) {
	#top .sec_main{
		margin-top: 7rem;
	}
	#top .sec_main .block_slide{
		margin: 0;
		width: 100%;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_main{
		background: linear-gradient(to bottom, #fff 0%, #fff 27.5rem, transparent 27.5rem, transparent 100%);
	}
}

#top .sec_lead{
	padding-top: 5rem;
}
#top .sec_lead .container_lead{
	box-sizing: border-box;
	background-color: #fff;
	border: 2px solid #285CA1;
	border-radius: 1.5rem;
	overflow: hidden;
}
#top .sec_lead .container_lead .block_main{
	padding: 4rem 2.5rem 0 2.5rem;
	position: relative;
}
#top .sec_lead .container_lead .block_main .box_main .catch{
	font-size: 2rem;
	color: #285ca1;
	margin-bottom: 2.5rem;
}
#top .sec_lead .container_lead .block_main .box_main .check_item{
	display: flex;
	align-items: flex-start;
}
#top .sec_lead .container_lead .block_main .box_main .check_item:not(:last-child){
	margin-bottom: 1.4rem;
}
#top .sec_lead .container_lead .block_main .box_main .check_item .check{
	position: relative;
	top: calc((1.8rem * 1.66 - 1.8rem) / 2);
	box-sizing: border-box;
	width: 1.8rem;
	height: 1.8rem;
	border: 2px solid #C1C1C1;
}
#top .sec_lead .container_lead .block_main .box_main .check_item .check:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	width: 1.8rem;
	height: 0.9rem;
	border-left: 3px solid #F5AA15;
	border-bottom: 3px solid #F5AA15;
	top: -0.3rem;
	right: -0.6rem;
	transform: rotate(-45deg);
}
#top .sec_lead .container_lead .block_main .box_main .check_item .txt{
	flex: 1;
	padding-left: 1rem;
	font-size: 1.8rem;
	line-height: 1.66;
}
#top .sec_lead .container_lead .block_main .box_img{
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#top .sec_lead .container_lead .block_main .box_img .img1{
	width: 11.7rem;
}
#top .sec_lead .container_lead .block_main .box_img .img2{
	width: 12.8rem;
}
#top .sec_lead .container_lead .block_detail{
	background-color: #F0F5FC;
	padding: 2.5rem;
}
#top .sec_lead .container_lead .block_detail .block_ttl{
	color: #285ca1;
	font-size: 1.8rem;
	line-height: 1.5;
	margin-bottom: 0.8rem;
}
#top .sec_lead .container_lead .block_detail .box_txt{
	line-height: 1.92;
}

@media screen and (max-width: 599px) {
	#top .sec_lead .container_lead .block_main .box_main .catch{
		text-align: center;
	}
	#top .sec_lead .container_lead .block_main .box_img{
		margin-top: 2.4rem;
	}
	#top .sec_lead .container_lead .block_main .box_img .img1{
		margin-right: 2rem;
	}
	#top .sec_lead .container_lead .block_detail .box_txt{
		font-size: 1.3rem;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_lead{
		padding-top: 7rem;
	}
	#top .sec_lead .container_lead .block_main{
		padding: 4rem 7rem;
		display: flex;
		justify-content: center;
	}
	#top .sec_lead .container_lead .block_main .box_main .catch{
		font-size: 3rem;
	}
	#top .sec_lead .container_lead .block_main .box_main .check_item:not(:last-child){
		margin-bottom: 1.5rem;
	}
	#top .sec_lead .container_lead .block_main .box_main .check_item .check{
		top: calc((2.2rem * 1.66 - 1.8rem) / 2);
	}
	#top .sec_lead .container_lead .block_main .box_main .check_item .txt{
		font-size: 2.2rem;
	}
	#top .sec_lead .container_lead .block_main .box_img{
		justify-content: space-between;
		position: absolute;
		pointer-events: none;
		width: calc(100% - 7rem * 2);
		left: 7rem;
		bottom: 0;
	}
	#top .sec_lead .container_lead .block_main .box_img .img1{
		width: 17.9rem;
	}
	#top .sec_lead .container_lead .block_main .box_img .img2{
		width: 19.6rem;
	}
	#top .sec_lead .container_lead .block_detail{
		padding: 3rem;
	}
	#top .sec_lead .container_lead .block_detail .block_ttl{
		font-size: 2rem;
		margin-bottom: 1rem;
	}
	#top .sec_lead .container_lead .block_detail .box_txt{
		line-height: 1.66;
	}
}

#top .l--sidemenu-wrap{
	padding-top: 5rem;
	padding-bottom: 16rem;
}
#top .l--sidemenu-side{
	display: block !important;
}

@media screen and (min-width: 600px) {
	#top .l--sidemenu-wrap{
		padding-top: 8rem;
		padding-bottom: 20rem;
	}
}

#top .sec_column .column_list{
	margin-top: 3rem;
}
@media screen and (max-width: 599px) {
	#top .archive_btn{
		margin-top: 5rem;
	}
}

#top .sec_case{
	margin-top: 11rem;
}
@media screen and (min-width: 600px) {
	#top .sec_case{
		margin-top: 7.5rem;
	}
}

#top .sec_service{
	margin-top: 9.7rem;
}
@media screen and (min-width: 600px) {
	#top .sec_service{
		margin-top: 7.6rem;
	}
}

#top .sec_document{
	margin-top: 9.7rem;
}
@media screen and (min-width: 600px) {
	#top .sec_document{
		margin-top: 7.5rem;
	}
}

/*===============================
404
===============================*/
.sec_404 .btn{
	margin-top: 8rem;
}

/*===============================
faq
===============================*/
#faq .sec_pagettl_block{
	background-image: url(../img/faq/pagettl-sp.jpg);
}
#faq .sec_pagettl .pagettl{
	color: #285ca1;
}
#faq .list--faq-item{
	padding: 2.5rem 3rem 3rem 3rem;
	background-color: #E5DED6;
	color: #000;
	cursor: pointer;
	transition: background .3s ease, color .3s ease;
}
#faq .list--faq-item:not(:last-child){
	margin-bottom: 3rem;
}
#faq .list--faq-q,
#faq .list--faq-a{
	display: flex;
}
#faq .list--faq-q .icon,
#faq .list--faq-a .icon{
	font-size: 2rem;
	margin-right: 1.7rem;
	padding-top: 0.2em;
}
#faq .list--faq-q .txt,
#faq .list--faq-a .txt{
	flex: 1;
}
#faq .list--faq-q{
	position: relative;
	padding-right: 4rem;
}
#faq .list--faq-q:before{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	width: 1.6rem;
	height: 1.6rem;
	border-right: solid 0.2rem #000;
	border-bottom: solid 0.2rem #000;
	top: 50%;
	right: -0.4rem;
	transform: translate(-50%, -70%) rotate(45deg);
	transition: transform .4s ease, border .3s ease;
}
#faq .list--faq-q .txt{
	font-size: 2rem;
	line-height: 1.5;
}
#faq .list--faq-a{
	margin-top: 2rem;
}
#faq .list--faq-a .txt{
	line-height: 1.66;
}
#faq .list--faq-item.is--open{
	background-color: #285CA1;
	color: #fff;
}
#faq .list--faq-item.is--open .list--faq-q:before{
	transform: translate(-50%, -30%) rotate(-135deg);
	border-color: #fff;
}

@media screen and (max-width: 599px) {
	#faq .sec_pagettl .pagettl{
		margin-left: -0.5rem;
	}
}

@media screen and (min-width: 600px) {
	#faq .sec_pagettl_block{
		background-image: url(../img/faq/pagettl-pc.jpg);
		padding-left: 16rem;
	}
	#faq .list--faq-item{
		padding: 3.5rem 4rem 4rem 4rem;
	}
	#faq .list--faq-q{
		padding-right: 5.5em;
	}
	#faq .list--faq-q:before{
		width: 1.9rem;
		height: 1.9rem;
	}
	#faq .list--faq-a{
		margin-top: 3rem;
	}
}

/*===============================
column
===============================*/
#column .sec_pagettl_block{
	background-image: url(../img/column/pagettl-sp.jpg);
}
#column .sec_archive .column_list{
	margin-top: 3rem;
}
#column .sec_single .single_item_head{
	margin-bottom: 2rem;
}

@media screen and (max-width: 599px) {
	#column .sec_pagettl .pagettl{
		padding-left: 2.2rem;
	}
}

@media screen and (min-width: 600px) {
	#column .sec_pagettl_block{
		background-image: url(../img/column/pagettl-pc.jpg);
		padding-left: 16rem;
	}
	#column .sec_archive .column_list{
		margin-top: 5rem;
	}
}

/*===============================
case
===============================*/
#case .sec_pagettl_block{
	background-image: url(../img/case/pagettl-sp.jpg);
}
#case .sec_archive .case_list{
	margin-top: 3rem;
}
#case .sec_single .single--main-img{
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

@media screen and (max-width: 599px) {
	#case .sec_pagettl .pagettl{
		padding-left: 1rem;
	}
}

@media screen and (min-width: 600px) {
	#case .sec_pagettl_block{
		background-image: url(../img/case/pagettl-pc.jpg);
		padding-left: 18.9rem;
	}
	#case .sec_archive .case_list{
		margin-top: 5rem;
	}
}

/*===============================
document
===============================*/
.sec_pagettl.form--document .sec_pagettl_block{
	background-image: url(../img/document/pagettl-sp.jpg);
}
.sec_pagettl.form--document .pagettl{
	color: #1299d2;
}
#document .sec_single{
	padding-bottom: 3rem;
}
#document .single--main-img{
	margin-top: 2rem;
}
#document .sec_form{
	margin-top: 7rem;
}

@media screen and (max-width: 599px) {
	#document .sec_pagettl .pagettl{
		padding-left: 1rem;
	}
	#document .single--content{
		margin-top: 2.5rem;
	}
}

@media screen and (min-width: 600px) {
	.sec_pagettl.form--document .sec_pagettl_block{
		background-image: url(../img/document/pagettl-pc.jpg);
		padding-left: 18rem;
	}
	#document .sec_single{
		padding-bottom: 5rem;
	}
	#document .single--main-img{
		margin-top: 6rem;
	}
}

/*===============================
service
===============================*/
#service .sec_pagettl_block{
	background-image: url(../img/service/pagettl-sp.jpg);
}
#service .sec_pagettl .pagettl{
	color: #285CA1
}
#service .sec_archive .service_list{
	margin-top: 3rem;
}
#service .single--main-img{
	margin-top: 6.5rem;
}

@media screen and (max-width: 599px) {
	#service .sec_pagettl .pagettl{
		padding-left: 1.3rem;
	}
}

@media screen and (min-width: 600px) {
	#service .sec_pagettl_block{
		background-image: url(../img/service/pagettl-pc.jpg);
		padding-left: 12.8rem;
	}
	#service .sec_archive .service_list{
		margin-top: 5rem;
	}
}

/*===============================
about
===============================*/
#about .sec_pagettl_block{
	background-image: url(../img/about/pagettl-sp.jpg);
}

@media screen and (max-width: 599px) {
	#about .sec_pagettl .pagettl{
		padding-left: 0.6rem;
	}
}

@media screen and (min-width: 600px) {
	#about .sec_pagettl_block{
		background-image: url(../img/about/pagettl-pc.jpg);
		padding-left: 18.3rem;
	}
}

#about .sec_list,
#reason .sec_list{
	padding-bottom: 3rem;
}
#about .sec_list .block:not(:last-child),
#reason .sec_list .block:not(:last-child){
	padding-bottom: 5rem;
	border-bottom: 0.1rem solid #D9D9D9;
}
#about .sec_list .block:not(:first-child),
#reason .sec_list .block:not(:first-child){
	padding-top: 5rem;
}
#about .sec_list .box_ttl,
#reason .sec_list .box_ttl{
	display: flex;
	align-items: flex-start;
	margin-bottom: 1.5rem;
}
#about .sec_list .box_ttl_num,
#reason .sec_list .box_ttl_num{
	width: 3rem;
	height: 3rem;
	border-radius: 100%;
	background-color: #285CA1;
	color: #fff;
	font-size: 1.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 0.2rem;
}
#about .sec_list .box_ttl_ttl,
#reason .sec_list .box_ttl_ttl{
	flex: 1;
	padding-left: 1rem;
	color: #285ca1;
	font-size: 2.2rem;
	line-height: 1.54;
}

@media screen and (max-width: 599px) {
	#about .sec_list .box_img,
	#reason .sec_list .box_img{
		margin-top: 2.5rem;
	}
}

@media screen and (min-width: 600px) {
	#about .sec_list,
	#reason .sec_list{
		padding-bottom: 5rem;
	}
	#about .sec_list .block,
	#reason .sec_list .block{
		display: flex;
	}
	#about .sec_list .box_img,
	#reason .sec_list .box_img{
		width: 29.4rem;
	}
	#about .sec_list .box_content,
	#reason .sec_list .box_content{
		flex: 1;
		padding: 0 3rem 0 0;
	}
	#about .sec_list .block:nth-child(even) .box_img,
	#reason .sec_list .block:nth-child(even) .box_img{
		order: 1;
	}
	#about .sec_list .block:nth-child(even) .box_content,
	#reason .sec_list .block:nth-child(even) .box_content{
		order: 2;
		padding: 0 0 0 3rem;
	}
}

/*===============================
reason
===============================*/
#reason .sec_pagettl_block{
	background-image: url(../img/reason/pagettl-sp.jpg);
}
#reason .sec_pagettl .pagettl{
	color: #285CA1
}

@media screen and (max-width: 599px) {
	#reason .sec_pagettl .pagettl{
		padding-left: 0.7rem;
	}
}

@media screen and (min-width: 600px) {
	#reason .sec_pagettl_block{
		background-image: url(../img/reason/pagettl-pc.jpg);
		padding-left: 21.4rem;
	}
}

/*===============================
privacy
===============================*/
#privacy .sec_pagettl_block{
	background-image: url(../img/privacy/pagettl-sp.jpg);
}
#privacy .policy_list .policy_item:not(:last-child){
	margin-bottom: 6.5rem;
}

@media screen and (max-width: 599px) {
	#privacy .sec_pagettl .pagettl{
		padding-left: 0.6rem;
	}
}

@media screen and (min-width: 600px) {
	#privacy .sec_pagettl_block{
		background-image: url(../img/privacy/pagettl-pc.jpg);
		padding-left: 14.4rem;
	}
}

/*===============================
company
===============================*/
#company .sec_pagettl_block{
	background-image: url(../img/company/pagettl-sp.jpg);
}
#company .sec_company{
	padding: 3rem;
}
#company .sec_company .sec_ttl{
	margin-bottom: 2rem;
}
#company .sec_company .blc_tbl{
	border: 0.1rem solid #DCDCDC;
	padding: 1rem;
}
#company .tbl_profile th,
#company .tbl_profile td{
	color: #000;
	box-sizing: border-box;
}
#company .tbl_profile th{
	background-color: #F1F8FB;
	padding: 1.1rem 2rem;
}
#company .tbl_profile td{
	padding: 1.5rem 2rem 2.3rem 2rem;
}

@media screen and (max-width: 599px) {
	#company .sec_pagettl .pagettl{
		padding-left: 1.8rem;
	}
	#company .sec_company .blc_tbl{
		padding-bottom: 0;
	}
	#company .tbl_profile th,
	#company .tbl_profile td{
		display: block;
		font-size: 1.4rem;
		line-height: 2.28;
	}
}

@media screen and (min-width: 600px) {
	#company .sec_pagettl_block{
		background-image: url(../img/company/pagettl-pc.jpg);
		padding-left: 25.2rem;
	}
	#company .sec_company{
		padding: 5rem;
	}
	#company .sec_company .sec_ttl{
		margin-bottom: 3rem;
	}
	#company .tbl_profile th,
	#company .tbl_profile td{
		vertical-align: middle;
	}
	#company .tbl_profile th{
		padding: 2rem;
		text-align: center;
		width: 26%;
	}
	#company .tbl_profile tr:not(:last-child) th{
		border-bottom: 0.1rem solid #fff;
	}
	#company .tbl_profile td{
		padding: 2rem 3rem;
	}
	#company .tbl_profile tr:not(:last-child) td{
		border-bottom: 0.1rem solid #DCDCDC;
	}
}

/*===============================
search
===============================*/
#search .sec_pagettl_block{
	background: #fff;
}
#search .sec_pagettl .pagettl{
	color: #285CA1;
	text-align: center;
	line-height: 1.53;
}
#search .sec_result .blc_search{
	margin-bottom: 4.5rem;
}

@media screen and (min-width: 600px) {
	#search .sec_pagettl_block{
		padding-left: 0;
	}
	#search .sec_result .blc_search{
		margin-bottom: 5rem;
	}
}

/*===============================

===============================*/
/*
--------------------------------------*/
@media screen and (max-width: 599px) {
}

@media screen and (min-width: 600px) {
}
