@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700,900&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600;700&display=swap');
/* font-size
---------------------------------------------*/
html { font-size: 100%;}

/* body
---------------------------------------------*/
body#nikibi2405,
body#nikibi2405 header,
body#nikibi2405 footer,
#nikibi2405 div {
	width: 100%;
	margin: 0;
}
body#nikibi2405 {
	padding-top: 46px;
	background: url(../images/bg_pc.jpg) 
		center 0 
		#fff;
	background-size: 100% auto;
	box-sizing: border-box;
	color: #002739;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.0;
	text-align: center;
}
#nikibi2405 header {
	position: fixed;
	top: 0;
	left: 0;
	height: 46px;
	background-attachment: fixed;
	z-index: 10;
}
body#nikibi2405 .wrap_header {
	display: flex;
	justify-content: space-between;
	background-color: rgba(255, 255, 255, 0.5);
}
#nikibi2405 header h1,
#nikibi2405 header p {
	width: 50%;
}
#nikibi2405 header h1 img,
#nikibi2405 header p img {
	max-width: 135px;
}
#nikibi2405 header p {
	padding-top: 3px;
}
#nikibi2405 div {
	background: #ffffff;
	font-size: 0;
}
#nikibi2405 .contact {
	padding-bottom: 12px;
}
#nikibi2405 footer ul {
	display: flex;
	font-size: 0px;
}
#nikibi2405 .section01 {
	position: relative;
}
#nikibi2405 .section01 .btn {
	position: absolute;
	bottom: 22%;
	left: 0;
}
#nikibi2405 div#section27 {
	background: #ffffff;
}
#nikibi2405 div#section27 h2 img {
	width: 55%;
	height:auto;
}
#nikibi2405 div#section27 ul,
#nikibi2405 div#section27 ul li {
	margin: 0;
	padding: 0;
}
#nikibi2405 div#section27 ul {
	padding: 0 12px 16px;
}
/* メカニズム
---------------------------------*/
#nikibi2405 #section06,
#nikibi2405 #section09,
#nikibi2405 #section12,
#nikibi2405 #section15,
#nikibi2405 #section18,
#nikibi2405 #section21 {
	padding: 48px 24px;
	background: url(../images/06_bg.png) 
		0 0;
}
#nikibi2405 .wrapper {
	padding: 24px 24px 0;
	background: #ffffff;
	border-radius: 16px;
}
#nikibi2405 .wrap_img {
	display: flex;
	flex-wrap: wrap;
	padding: 0 24px;
}
#nikibi2405 .wrap_img figure {
	width: 50%;
}
#nikibi2405 div.txtarea{
	width: 100%;
	margin: 30px auto 0;
	overflow: hidden;
	position: relative;
	padding-bottom: 20px;
	background: #ffffff;
	font-size: 14px;
	line-height: 1.5;
	text-align: left;
}
#nikibi2405 .txtarea {
	width: 95%;
	margin: 30px auto 0;
	overflow: hidden;
	position: relative;
	padding-bottom: 20px;
}
#nikibi2405 .txtarea.open{
	height: auto;
	overflow: unset;
	padding-bottom: 70px;
}
#nikibi2405 .txtarea p {
	line-height: 1.6;
	padding-bottom: 1rem;
}
#nikibi2405 .read-more{
	background: rgba(0, 0, 0, 0) linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 1) 55%);
	width: 100%;
	padding: 100px 0 10px;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: all 0.5s ease-in;
}
#nikibi2405 .txtarea.open .read-more{
	background: none;
}
#nikibi2405 .read-more span{
	cursor: pointer;
	display: inline-block;
	width: 120px;
	padding: 5px 0;
	color: #002739;
	font-size: 16px;
	font-weight:500;
	text-decoration: underline;
}
#nikibi2405 .read-more span::after{
	content: 'もっと見る';
}
#nikibi2405 .txtarea.open .read-more span::after{
	content: '閉じる';
}
#nikibi2405 #section31 {
	padding: 0 0 24px;
	background: #ffffff;
}
#nikibi2405 #section31 h2 img {
	width: 100%;
	height: auto;
}
#nikibi2405 #section31 .wrap31 {
	width: 87.2%;
	margin: 0 auto 24px;
	padding: 16px;
	background: #ffffff;
	box-shadow: 0 0 20px #E3F0F6;
	border-radius: 8px;
}
#nikibi2405 #section31 .wrap31 figure:first-of-type {
	padding-bottom: 20px;
}
#nikibi2405 #section31 .wrap31 .freedial {
	width: 57%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}
#nikibi2405 #section31 p {
	color: #002739;
	font-size: 12px;
	line-height: 1.5;
}
#nikibi2405 #section32 {
	padding: 24px;
	border-top: solid 2px #006898;
}
#nikibi2405 #section32 figure:first-of-type {
	width: 70%;
	height: auto;
	margin: 23px auto;
}
/* よくあるご質問 
---------------------------------*/
#nikibi2405 #section30 {
	padding: 40px 0;
	background: url(../images/30_bg.jpg) 
		0 0;
	color: #002739;
}
#nikibi2405 #section30 h2 img {
	width: 40%;
	height: auto;
}
#nikibi2405 #section30 div {
	background-color:transparent;
}
#nikibi2405 #section30 .accordion {
	position: relative;
	max-width: 654px;
	margin-top: 24px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 24px;
	text-align: left;
}
#nikibi2405 #section30 .accordion-item {
	margin-bottom: 16px;
	background: #ffffff;
	border: solid 1px #A3C8D7;
	border-radius: 8px;
}
#nikibi2405 #section30 .accordion-title {
	padding: 10px 80px 10px 50px;
	cursor: pointer;
	font-family: "Noto Serif JP", serif;
	font-size: 18px;
	line-height: 1.5;
}
#nikibi2405 #section30 .accordion-content {
	display: none;
	padding: 10px 20px;
}
#nikibi2405 #section30 .accordion-content p {
	padding-left: 20px;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
}
/* 矢印 */
#nikibi2405 #section30 .accordion-title {
	position: relative;
}
#nikibi2405 #section30 .accordion-title::after {
/*  border-right: solid 2px #ff0000;
  border-top: solid 2px #ff0000;
  content: "";
  display: block;
  height: 8px;
  transform: rotate(135deg);
  transition: transform .3s ease-in-out, top .3s ease-in-out;
  width: 8px;*/
	position: absolute;
	right: 10px;
	top: 10px;
	content: '';
	display: inline-block;
	width: 25px;/*画像の幅*/
	height: 25px;/*画像の高さ*/
	background-image: url(../images/30_ic02.png);
	background-repeat: none;
	background-size: 100% auto;
	vertical-align: middle;
}
#nikibi2405 #section30 .accordion-title.open::after {
/*
  top: 45%;
  transform: rotate(-45deg);*/
	 position: absolute;
	right: 10px;
	top: 10px;
	content: '';
	display: inline-block;
	width: 25px;/*画像の幅*/
	height: 25px;/*画像の高さ*/
	background: url(../images/30_ic01.png) no-repeat;
	background-size: 100% auto;
	vertical-align: middle;
}
#nikibi2405 #section30 .accordion-title::before {
	position: absolute;
	left: 10px;
	top: 15px;
	content: '';
	display: inline-block;
	width: 25px;/*画像の幅*/
	height: 40px;/*画像の高さ*/
	background: url(../images/30_Q.png) no-repeat;
	background-size: 80% auto;
	vertical-align: middle;
}
#nikibi2405 #section30 .accordion-content {
	position: relative;
}
#nikibi2405 #section30 .accordion-content p::before {
	position: absolute;
	left: 10px;
	top: 18px;
	content: '';
	display: inline-block;
	width: 25px;/*画像の幅*/
	height: 45px;/*画像の高さ*/
	background: url(../images/30_A.png) no-repeat;
	background-size: 65% auto;
	vertical-align: middle;
}
@media screen and (min-width: 769px){
	body#nikibi2405,
	body#nikibi2405 .wrap_header {
		max-width: 375px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px){

}