@charset "utf-8";

/**
*
*  トップ 個別ページ  共通
*
*/

/*--------------------------------------------------------------------------
	overwrite  - 共通CSSの上書き -
---------------------------------------------------------------------------*/


/* html body #Page #Content
-----------------------------------------------------------------*/
	html {
		font-size:62.5%;
	}
	html,
	body,
	#Page,
	#Content,
	#Content > .inline{
		height: 100%;
	}
	* {
		margin:0;
		padding:0;
	}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	html,
	body,
	#Page,
	#Content,
	#Content > .inline{
		height: auto;
	}
}


/* html, body
-----------------------------------------------------------------*/
	html.dev-pc{
		overflow: visible;
	}
	html.dev-pc body{
		overflow: hidden;
		overflow-x: auto;
	}
	html.browser-old-ie body,
	html.dev-pc._is_sp body{
		overflow: auto;
	}


/* #Page
-----------------------------------------------------------------*/
	#Page {
		-webkit-transition: padding .5s .01s cubic-bezier(0.19, 1, 0.22, 1);
				transition: padding .5s .01s cubic-bezier(0.19, 1, 0.22, 1);
	}


/* #Header
-----------------------------------------------------------------*/
	#Header {
		-webkit-transition: width .5s .01s cubic-bezier(0.19, 1, 0.22, 1);
				transition: width .5s .01s cubic-bezier(0.19, 1, 0.22, 1);
	}


/* #Content
-----------------------------------------------------------------*/
	#Content {
		position: relative;
		z-index: 15000;
	}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	#Content {
		padding-top: 0;
		z-index: 0;
	}
}

/* @tablet **************************************************/
	html.dev-tb #Content {
		padding-top: 0;
		z-index: 0;
	}



/*--------------------------------------------------------------------------
	.sec セクション共通
---------------------------------------------------------------------------*/
	.sec {
		position: relative;
		width: 100%;
/*		height: 100%;*/
		overflow: clip;
	}


/* .sec_fit  セクション高さ100% 天地中央
-----------------------------------------------------------------*/
	.sec_fit {
		display: table;
		table-layout: fixed;
		width: 100%;
		height: 100%;
	}
	.sec_fit > .cont {
		display: table-cell;
	}

/* @sp **************************************************/
@media all and (max-width: 1100px){
	.sec_fit > .cont {
        padding-top: 55px;
		vertical-align: middle;
	}
}


/* section .cont,.title_sec,.content_sec
-----------------------------------------------------------------*/
	#sec_contents > section,
	footer {
		position: relative;
	}
	section .cont {
		position: relative;
		height: 100%;
	}
	section .title_sec,
	section .content_sec {
		width: 100%;
		margin: 0 auto;
		padding: 35px 0;
	}


/* セクションタイトル
-----------------------------------------------------------------*/
	.title_sec {
		text-align: center;
	}
	
	.title_sec img.cont_icons {
		display: block;
		margin: 0 auto;
		max-width: 200px;
	}
	.title_sec .sub {
		display: inline-block;
		position: relative;
		width: auto;
		max-width: 18em;
		margin: 0 auto;
		padding-bottom: 35px;
		color: #292C30;
		font-size: 3.2rem;
		font-weight: bold;
		line-height: 1.8em;
		z-index: 500;
	}
	.title_sec .lead {
		position: relative;
		width: 48em;
		margin: 20px auto 0;
		font-size: 1.4rem;
		text-align: left;
		line-height: 3rem;
		z-index: 500;
	}
	.title_sec .sub > span,
	.title_sec .lead > span {
		display: inline-block;	
	}
	.big_image {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		width: 90%;
		margin: 50px auto 0;
		padding: 35px 0;
		background: linear-gradient(90deg, #FBF9F9, #EFEFEF, #EFEFEF, #EFEFEF, #EFEFEF, #FBF9F9);
		overflow: hidden;
	}
	.big_image img {
		display: block;
		height: intrinsic;
		max-height: 520px;
		margin: 0 5px;
		object-fit: contain;
	}
	.big_image img.inline1 {
		width: 70%;
	}
	.big_image img.inline2 {
		width: 40%;
	}
	.big_image p {
		display: block;
		width: 70%;
		margin: 0 5px;
		font-size: 1.2rem;
		margin-top: 10px;
	}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	section .title_sec,
	section .content_sec {
		padding: 5vh 0;
	}
	.title_sec img.cont_icons {
		max-width: 150px;
	}
	.title_sec .sub {
		max-width: 90%;
		margin: 1% auto 2%;
		padding-bottom: 5%;
		font-size: 2.4rem;
		line-height: 1.6em;
	}
	.title_sec .lead {
		width: 80%;
		margin: 1% auto 2%;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.2em;
		letter-spacing: 0;
		text-align: justify;
	}
	.big_image {
		width: 85%;
		margin: 10% auto 0;
		padding: 6% 3.5% 6%;
	}
	.big_image img {
		width: 100%;
		max-width: 920px;
	}
}
/* @sp **************************************************/
@media all and (max-width: 320px){
	.title_sec .sub {
		letter-spacing: 0.35rem;
	}
}


/* セクションコンテンツ
-----------------------------------------------------------------*/
	.content_sec {
		text-align: center;
	}
	.content_sec .previews {
		width: 85%;
		max-width: 1410px;
		margin: 0 auto;
	}
	
	.content_sec .previews {
		position: relative;
	}
	
	.content_sec .previews .point img {
		display: inline-block;
		width: 90px;
		margin-bottom: 22px;
		border-bottom: solid #2c2c2c 2px;
	}





	.content_sec .sub {
		display: block;
		position: relative;
		padding-bottom: 60px;
		font-size: 2.6rem;
		font-weight: bold;
		line-height: 2em;
	}
	.content_sec .lead {
		width: 35em;
		margin: 50px auto;
		font-size: 1.4rem;
		line-height: 3.5rem;
	}
	.content_sec .sub > span,
	.content_sec .lead > span {
		display: inline-block;	
	}
	.content_sec .mid-contents {
		display: flex;
		position: relative;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
	.content_sec .mid-contents dl,
	.content_sec .mid-contents .mid_base {
		width: 30%;
		max-width: 600px;
		margin: 10px;
		padding: 3vh 4vw 3vh;
		background: #FDFEFF;
		border-radius: 3px;
		-webkit-filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
			-moz-filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
			-ms-filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
				filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
		
		z-index: 2;
	}
	.content_sec .mid-contents dt,
	.content_sec .mid-contents dt {
		display: block;
		padding-bottom: 15px;
		margin-bottom: 15px;
		font-size: 2.2rem;
		font-weight: bold;
		line-height: 1.5em;
		letter-spacing: 0.03rem;
	}
	.content_sec .mid-contents dt > span {
		display: inline-block;	
	}
	.content_sec .mid-contents dl:nth-of-type(odd) dt {
		color: #2475C8;
		border-bottom: solid #2475C8 2px;
	}
	.content_sec .mid-contents dl:nth-of-type(even) dt {
		color: #FFB912;
		border-bottom: solid #FFB912 2px;
	}
	.content_sec .mid-contents dd {
		margin: 0 auto 2.5%;
		font-size: 1.4rem;
		line-height: 2.75rem;
		text-align: left;
	}
	.content_sec .mid-contents dd span {
		border-bottom: solid 1px;
	}
	.content_sec .mid-contents dd span.annotation {
		display: inline-block;
		border-bottom: none;
		font-size: 1rem;
		line-height: 1.5em;
	}
	.content_sec .mid-contents dl img {
		width: 100%;
		margin: 0 auto 5%;
		vertical-align: middle;
	}
	.content_sec .payment_list {
		width: 85%;
		max-width: 1210px;
		margin: 0 auto;
		padding: 20px 0;
		border: solid 2px #000;
		border-radius: 10px;
		overflow: hidden;
	}
	.content_sec .payment_list > p {
		display: block;
		width: 80%;
		margin: 0 auto;
		padding-bottom: 2.5%;
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 1.8;
		text-align: center;
	}
	.content_sec .payment_list ul {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		width: 80%;
		margin: 0 auto;
	}
	.content_sec .payment_list li {
		margin: 1% 2%;
	}
	.content_sec .payment_list li img {
		display: inline-block;
		width: 100%;
		max-width: 110px;
		vertical-align: middle;
		object-fit: contain;
	}
	.content_sec .payment_list li p {
		display: block;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.8;
		text-align: center;
	}
	.sec01_bnrimg {
		margin-top: 30px;
	}
	.sec01_bnrimg img {
		width: 90%;
	}

/* @pc wide **************************************************/
@media all and (min-width: 768px){
	/* IE11,Edge */
	_:-ms-lang(x)::-ms-backdrop,
	.content_sec .mid-contents dl,
	.content_sec .mid-contents .mid_base {
		box-shadow: 0px 7px 22px rgba(0,64,128,0.15) !important;
	}
	_:-ms-lang(x)::-ms-backdrop,
	.content_sec .mid-contents {
		justify-content: space-around !important;
	}
}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	.content_sec .sub {
		max-width: 90%;
		margin: auto;
		padding-bottom: 20px;
		font-size: 2.0rem;
	}
	.content_sec .lead {
		width: 90%;
		margin: 10% auto 10%;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2em;
		letter-spacing: 0;
		text-align: justify;
	}
	.content_sec .mid-contents {
		position: relative;
		width: 110%;
		left: -5%;
		flex-direction: column;
	}
	.content_sec .mid-contents dl,
	.content_sec .mid-contents .mid_base {
		width: 76vw;
		margin: 7px auto;
		padding: 5% 7%;
	}
	.content_sec .mid-contents dt {
		left: 0;
		font-size: 1.6rem;
	}
	.content_sec .mid-contents dd {
		width: auto;
		margin: 0 auto 7%;
		font-size: 1.4rem;
		line-height: 2.0em;
	}
	.content_sec .payment_list {
		padding: 10% 2%;
	}
	.content_sec .payment_list p {
		left: 0;
		font-size: 1.4rem;
		margin-bottom: 5%;
	}
	.content_sec .payment_list ul {
		width: 100%;
	}
	.content_sec .payment_list ul:not(.lease_plan) li {
		width: 20vmin;
	}
	.content_sec .payment_list li p {
		font-size: 1.0rem;
		line-height: 1.2em;
		margin: 5% 0 0;
	}
	.content_sec .payment_list li img {
		max-width: 65px;
	}
}
/* @sp **************************************************/
@media all and (max-width: 320px){
	.content_sec .sub {
		letter-spacing: 0.35rem;
	}
}




/* セクションコンテンツ .point_bg A 背景デザイン
**************************************************/
	.title_sec > span {
		position: relative;
		z-index: 500;
	}
	.title_sec > span.point_bg,
	.title_sec > span.point_bg::before,
	.title_sec > span.point_bg::after {
		content: '';
		position: absolute;
		height: 6px;
		border-radius: 10px;
		margin: 0 -10% 0;
		-webkit-transform-origin: left center;
			-ms-transform-origin: left center;
				transform-origin: left center;
	}
	.title_sec > span.point_bg {
		width: 27px;
	}
	.title_sec > span.point_bg::before {
		width: 15px;
	}
	.title_sec > span.point_bg::after {
		width: 15px;
	}
	.title_sec > span.point_bg:nth-of-type(1) {
		top: 4em;
		left: 45%;
		background: #FFF;
		-webkit-transform: rotate(-135deg);
			-ms-transform: rotate(-135deg);
				transform: rotate(-135deg);
		z-index: 500;
	}
	.title_sec > span.point_bg:nth-of-type(1)::before {
		top: 1em;
		left: 0.5em;
		background: #FFF;
		-webkit-transform: rotate(30deg);
			-ms-transform: rotate(30deg);
				transform: rotate(30deg);
		z-index: 500;
	}
	.title_sec > span.point_bg:nth-of-type(1)::after {
		top: -1em;
		left: 0.5em;
		background: #FFF;
		-webkit-transform: rotate(-35deg);
			-ms-transform: rotate(-35deg);
				transform: rotate(-35deg);
		z-index: 500;
	}
	.title_sec > span.point_bg:nth-of-type(2) {
		top: 2em;
		right: 40%;
		background: #FFF;
		-webkit-transform: rotate(138deg);
			-ms-transform: rotate(138deg);
				transform: rotate(138deg);
		z-index: 500;
	}
	.title_sec > span.point_bg:nth-of-type(2)::before {
		top: 1.6em;
		right: 0.2em;
		background: #FFF;
		-webkit-transform: rotate(-25deg);
			-ms-transform: rotate(-25deg);
				transform: rotate(-25deg);
		z-index: 500;
	}
	.title_sec > span.point_bg:nth-of-type(2)::after {
		top: -1.6em;
		right: -0.3em;
		background: #FFF;
		-webkit-transform: rotate(40deg);
			-ms-transform: rotate(40deg);
				transform: rotate(40deg);
		z-index: 500;
	}

/* @pc wide 1 **************************************************/
@media all and  (min-width: 1627px) {
}
/* @pc wide 2 **************************************************/
@media all and (min-width: 1300px) and (max-width: 1626px) {
}
/* @pc wide 3 **************************************************/
@media all and (max-width: 1299px) {
}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	.title_sec > span.point_bg,
	.title_sec > span.point_bg::before,
	.title_sec > span.point_bg::after {
		height: 4px;
		margin: 0 -15% 0;
	}
	.title_sec > span.point_bg {
		width: 14px;
	}
	.title_sec > span.point_bg::before {
		width: 10px;
	}
	.title_sec > span.point_bg::after {
		width: 10px;
	}
	.title_sec > span.point_bg:nth-of-type(1) {
		top: 2.2em;
		left: 40%;
	}
	.title_sec > span.point_bg:nth-of-type(2) {
		top: 1em;
		right: 30%;
	}
	.title_sec > span.point_bg:nth-of-type(2)::before {
		top: 1.2em;
	}
}
/* @sp **************************************************/
@media all and (max-width: 400px){
}
/* セクションコンテンツ .point_bg A 背景デザイン ここまで
**************************************************/







/* セクションコンテンツ .point_bg B 背景デザイン
**************************************************/
	.content_sec span.point_bg,
	.content_sec span.point_bg::before,
	.content_sec span.point_bg::after {
		content: '';
		position: absolute;
		height: 6px;
		margin: 0 -10% 0;
		-webkit-transform-origin: left center;
			-ms-transform-origin: left center;
				transform-origin: left center;
	}
	.content_sec span.point_bg {
		width: 120px;
		z-index: 0;
	}
	.content_sec span.point_bg::before {
		width: 45px;
	}
	.content_sec span.point_bg::after {
		width: 45px;
	}
	.content_sec span.point_bg:nth-of-type(1) {
		top: 3em;
		left: 12%;
		/*	background: #f5f5f5;*/
		background: #FFB912;
		-webkit-transform: rotate(3deg);
			-ms-transform: rotate(3deg);
				transform: rotate(3deg);
	}
	.content_sec span.point_bg:nth-of-type(1)::before {
		top: -3em;
		left: 4em;
		/*	background: #f5f5f5;*/
		background: #FFB912;
		-webkit-transform: rotate(3deg);
			-ms-transform: rotate(3deg);
				transform: rotate(3deg);
	}
	.content_sec span.point_bg:nth-of-type(1)::after {
		top: 3.5em;
		left: 8em;
		/*	background: #f5f5f5;*/
		background: #FFB912;
		-webkit-transform: rotate(-11deg);
			-ms-transform: rotate(-11deg);
				transform: rotate(-11deg);
	}
	.content_sec span.point_bg:nth-of-type(2) {
		top: 2em;
		right: 12%;
		/*	background: #f5f5f5;*/
		background: #2475C8;
		-webkit-transform: rotate(-3deg);
			-ms-transform: rotate(-3deg);
				transform: rotate(-3deg);
	}
	.content_sec span.point_bg:nth-of-type(2)::before {
		top: -3.5em;
		right: 6em;
		/*	background: #f5f5f5;*/
		background: #2475C8;
		-webkit-transform: rotate(-6deg);
			-ms-transform: rotate(-6deg);
				transform: rotate(-6deg);
	}
	.content_sec span.point_bg:nth-of-type(2)::after {
		top: 2.5em;
		right: 5.7em;
		/*	background: #f5f5f5;*/
		background: #2475C8;
		-webkit-transform: rotate(10deg);
			-ms-transform: rotate(10deg);
				transform: rotate(10deg);
	}


	.c-button_anchor {
		display: flex !important;
		position: relative;
		margin-bottom: 3px;
		flex-wrap: wrap;
		transition: all 0.1s ease !important;
	/*	-webkit-filter: drop-shadow(0px 7px 10px rgba(0, 64, 128, 0.15));
			-moz-filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
			-ms-filter: drop-shadow(0px 7px 10px rgba(0,64,128,0.15));
				filter: drop-shadow(0px 7px 10px rgba(0, 64, 128, 0.15));
		overflow: hidden;*/
	}
	.c-button_anchor {
		top: 0 !important;
		box-shadow: 0 5px 0 0 #0088DC;
		margin-top: 5px !important;
		margin-bottom: 5px !important;
	}
	.c-button_anchor:hover {
		top: 4px !important;
		box-shadow: 0 0 0 0 #0088DC;
		margin-top: 5px !important;
		margin-bottom: 5px !important;
	}
@media screen and (min-width: 836px) {
}
@media screen and (min-width: 836px) {
    .c-button-md {
        width: clamp(210.8px, 18.155vw, 272.8px);
        height: clamp(47.6px, 4.1vw, 61.6px);
    }
}


/* @pc wide **************************************************/
@media all and (min-width: 1626px) and (min-height: 754px){
}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	.content_sec span.point_bg,
	.content_sec span.point_bg::before,
	.content_sec span.point_bg::after {
		height: 3px;
		margin: 0 -15% 0;
	}
	.content_sec span.point_bg {
		width: 20px;
	}
	.content_sec span.point_bg::before {
		width: 15px;
	}
	.content_sec span.point_bg::after {
		width: 15px;
	}
	.content_sec span.point_bg:nth-of-type(1) {
		top: 2em;
		left: 2.75em;
	}
	.content_sec span.point_bg:nth-of-type(1)::before {
		top: -1.5em;
		left: 1em;
	}
	.content_sec span.point_bg:nth-of-type(1)::after {
		top: 1.5em;
		left: 1em;
	}
	.content_sec span.point_bg:nth-of-type(2) {
		top: 2em;
		right: 2.75em;
	}
	.content_sec span.point_bg:nth-of-type(2)::before {
		top: -1.5em;
		right: 1em;
	}
	.content_sec span.point_bg:nth-of-type(2)::after {
		top: 1.5em;
		right: 1em;
	}
}
/* @sp **************************************************/
@media all and (max-width: 320px){
}
/* セクションコンテンツ .point_bg B 背景デザイン ここまで
**************************************************/


/* セクションコンテンツ ARROWS
-----------------------------------------------------------------*/
	.arrows {
		margin: 20px auto 100px;
	}
	.arrows::after {
		content: '';
		display: block;
		position: relative;
		top: -10px;
		width: 35px;
		height: 35px;
		margin: 0 auto;
		-webkit-transform: rotate(-135deg);
				transform: rotate(-135deg);
		border-top: 10px solid #4c4c4c;
		border-left: 10px solid #4c4c4c;
	}
/* @pc wide **************************************************/
@media all and (min-width: 1626px) and (min-height: 754px){

}
/* @sp **************************************************/
@media all and (max-width: 1100px){
	.arrows {
		margin: 10vh auto;
		}
	.arrows::after {
		width: 20px;
		height: 20px;
		border-top: 7px solid #4c4c4c;
		border-left: 7px solid #4c4c4c;
	}
}
/* @sp **************************************************/
@media all and (max-width: 320px){

}
/* セクションコンテンツ ARROWS ここまで
**************************************************/