@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Lato:400,700,900&display=swap');

#maincontainer #main p,
#maincontainer #main li{
	color: #000;
}
#maincontainer #side nav {
  margin: 0 50px 0 0;
}
#maincontainer #main p {
  font-size: 1.4rem;
  line-height: 2;
}
#maincontainer #main p.mt{
	margin-top: 2em;
}
#maincontainer #main p:not(.btnstyle01) a, .check_txt a {
	color: #0e57a2;
	text-decoration: underline;
}


.tbl_style01 th{
	font-weight: normal;
}
.tbl_style01 td{
	vertical-align: top;
}
.tb01{
	margin: 40px 0 50px;
}
.tb01 thead th:nth-child(1){
	width: 29%;
} 
.tb01 thead th:nth-child(2){
	width: 36.8%;
}
.tb01 thead th:nth-child(3){
	width: 17.1%;
}
.tb01 tbody th{
	background: none;
	vertical-align: middle;
}

/*入力フォームでのお問い合わせ*/
.contact_form #main{
	padding-bottom: 20px;
}


/*faq*/
.faq #main{
	padding-bottom: 70px;
}
.faq #main a{
	color: #0e57a2;
	text-decoration: underline;
}
.faq .link_acdn {
  position: relative;
  font-weight: bold;
  display: block;
  padding: 20px 88px 20px 60px;
  font-size: 1.8rem!important;
  border-top: 1px solid #cccccc;
  color: #000000;
}
.faq .link_acdn:before{
	content: "Q";
	font-size: 1.8rem;
	font-weight: bold;
	color: #0e57a2;
	position: absolute;
	width: 60px;
	height: 60px;
	left: 0;
	top: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ie .faq .link_acdn {
  padding-top: 25px;
}
.faq .faq_wrap {
  border-bottom: 1px solid #cccccc;
}

.faq .link_acdn .btn_open {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
  display: block;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin-top: 0px;
}
.faq .link_acdn .btn_open:before {
  content: "";
  position: absolute;
  display: block;
  width: 14px;
  height: 2px;
  top: 38px;
  right: 30px;
  background-color: #000000;
}
.faq .link_acdn .btn_open:after {
  content: "";
  position: absolute;
  display: block;
  width: 2px;
  height: 14px;
  top: 32px;
  left: auto;
  right: 36px;
  background-color: #000000;
}
.faq .link_acdn .btn_open.open:after {
  display: none;
}
.faq .faq_wrap .none {
  display: none;
}
.faq .box_wrap{
	padding: 20px 20px 20px 60px;
	position: relative;
	background: #f6f6f6;
	margin-bottom: 30px;
}
.faq .box_wrap:before{
	content: "A";
	font-size: 1.8rem;
	font-weight: bold;
	color: #0e57a2;
	position: absolute;
	width: 60px;
	height: 60px;
	left: 0;
	top: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media screen and (max-width: 1100px){
	/*#maincontainer .wrap{
		display: flex;
		flex-direction: column-reverse;
		width: 100%;
		max-width: inherit;
	}*/
	#maincontainer #main{
		width: 94%;
		margin: 0 auto;
	}
	#maincontainer #side{
		width: 100%;
	}
	#maincontainer #side nav{
		margin: 0;
		overflow: hidden;
	}
	
	p + .tbl_form, p + .tbl_style01{
		margin-top: 0;
	}
	.tb01{
		margin-top: 0;
	}
	.tb01.bt tbody th{
		display: block;
		padding: 0;
		width: 100%;
		border: none;
		margin-bottom: -1px;
		position: relative;
	}
	.tb01.bt tbody th span{
		display: block;
		font-size: 1.87rem;
		color: #0e57a2;
		padding: 0 0 5px 1em;
		font-weight: bold;
		margin: 25px 0 0;
		border-bottom: 3px solid #007ac5;
		letter-spacing: -0.04em;
	}
	table.bt.tbl_style01 tbody td{
		border-left: none;
		border-right: none;
	}
	table#blockTable tbody td:before{
		background: none;
		font-weight: normal;
		width: 5em;
	}
	table#blockTable tbody td .bt-content{
		padding-left: 2em;
	}
	
	/*入力フォームでのお問い合わせ*/
	.ttltype4{
		margin-top: 6.6vw;
	}
	.contact_form p + .tbl_form{
		margin-top: 30px;
	}

	
	/*faq*/
	.faq #main{
		padding-bottom: 56px;
	}
	.faq .faq_wrap{
		margin-top: 30px;
	}
	.faq .link_acdn{
		padding: 20px 68px 20px 60px;
	}
	.faq .link_acdn .btn_open:before{
		right: 20px;
	}
	.faq .link_acdn .btn_open:after{
		right: 26px;
	}

}
@media screen and (max-width: 767px){
	#maincontainer #main p{
		font-size: 3.4vw;
		line-height: 1.8;
	}
	table .telLink a{
		text-decoration: none;
	}
	.check_txt label > span::before, .check_list span:before {
		top: 1.1vw;
		margin: 0;
	}
	.check_txt label > span::after, .check_list span:after{
		top: 3vw;
	}
	#maincontainer #main .btnstyle01 a{
		width: 100%;
	}
	
	.tb01{
		margin-bottom: 10vw;
	}
	.tb01.bt tbody th span{
		font-size: 3.7vw;
    padding: .4em 1em .2em;
    margin: 1em 0 0;
    border-bottom: 0.8vw solid #007ac5;
	}
	table#blockTable tbody td:before{
		font-size: 3.4vw;
		text-align: left;
	}
	table#blockTable tbody td .bt-content{
		font-size: 3.4vw;
	}
	
	/*入力フォームでのお問い合わせ*/
	.contact_form p + .tbl_form{
		margin-top: 9.3vw;
	}
	
	
	/*faq*/
	.faq #main{
		padding-bottom: 8%;
	}
	.faq .faq_wrap{
		margin-top: 8vw;
	}
	.faq .link_acdn {
		padding: 4vw 17vw 4vw 10vw;
		font-size: 4.2vw!important;
		line-height: 1.5!important;
	}
	.faq .link_acdn:before{
		font-size: 4.8vw;
		width: 10vw;
		height: 10vw;
		top: 1.8vw;
	}
	.faq .link_acdn .btn_open:before {
		width: 3.7vw;
		height: .5vw;
		top: 6.4vw;
		right: 4vw;
	}
	.faq .link_acdn .btn_open:after {
		width: .5vw;
		height: 3.7vw;
		top: 5vw;
		right: 5.6vw;
	}
	.faq .box_wrap{
		padding: 4vw 4vw 4vw 10vw;
		margin-bottom: 5.3vw;
	}
	.faq .box_wrap:before{
		font-size: 4.8vw;
		width: 10vw;
		height: 10vw;
		top: 1.8vw;
	}
}




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

PC Setting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (min-width:768px), print {}
@media screen\0 {}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

TABLET Setting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {}
/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

SP Setting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 767px) {}