@charset "utf-8";
/* ===================================================================

 file name  :common.css
 style info :共通cssファイル
 
=================================================================== */

/*PCサイズ
////////////////////////////////////////////////////*/

@media screen and (min-width:769px) {
/* font */
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-regular.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-regular.woff') format('woff');
}
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-500.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-500.woff') format('woff');
}
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 700;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-700.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-700.woff') format('woff');
}
body{
	font-size: 14px;
	font-size: 1.4rem;
	color: #343434;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0;
	line-height: 1.6;
	font-weight: 500;
}
a{
	text-decoration: none;
	display: block;
}
img{
	width: 100%;
	height: auto;
}
.pc-only{
	display: block;
}
.sp-only{
	display: none;
}


/*//////////       layout       //////////*/
#wrapper{
	width: 100%;
	font-size: 100%;
	position: relative;
}
#side--area {
    background: #fff;
    position: fixed;
    top: 16px;
    left: 0;
    z-index: 11;
	width: 320px;
    height: calc(100vh - 16px);
	overflow: scroll;
	-ms-overflow-style: none;
}
#side--area::-webkit-scrollbar{
	display: none;
}
#main--area {
    width: calc(100% - 336px);
	min-width: 980px;
    position: absolute;
	right: 16px;
	top: 16px;
    z-index: 10;
    background: #fff;
}


/*//////////       #side--area       //////////*/
#side--area section div{
	width: 288px;
	height: 220px;
	margin: 0 auto 16px;
}
#side--area section div a:hover{
	opacity: 0.8;	
}


/*//////////       main visual       //////////*/
#main--visual{
	width: 100%;
	min-height: 536px;
	background: #C41010;
	border-radius: 10px;
	margin-bottom: 56px;
}
#main--visual__inr{
	min-height: 536px;
	display: flex;
	flex-wrap: nowrap;
	gap: 26px;
	justify-content: center;
	align-items:center;
}
.main--left{
	width: 533px;
}
.main--left img{
	width: 533px;
	height: 494px;
}
.main--right{
	width: 580px;
}
.main--right h3{
	width: 263px;
	height: 37px;
	margin-bottom: 20px;
}
.main--right h2{
	width: 580px;
	height: 192px;
	margin-bottom: 20px;
}
.main--right p{
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	margin-bottom: 20px;
}
.main--right__btn{
	display: flex;
	flex-wrap: nowrap;
	gap: 22px;
}
.right__btn__service,
.right__btn__contact{
	background: #fff;
	padding: 16px 40px 17px;
	color: #C41010;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	border-radius: 30px;
	position: relative;
}
.right__btn__service:hover,
.right__btn__contact:hover{
	animation: puru 0.8s linear 0s 1;
}
@keyframes puru {
	0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
	15%  { transform: scale(1.0, 1.0) translate(0%, 5%); }
	30%  { transform: scale(1.0, 1.0) translate(0%, 10%); }
	50%  { transform: scale(1.0, 1.0) translate(0%, -10%); }
	70%  { transform: scale(1.0, 1.0) translate(0%, 5%); }
	100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}
.right__btn__service::before{
	content: "";
	position: absolute;
	top: 23px;
	right: 22px;
	background: url("../img/icon-right__btn__service.svg") no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
}
.right__btn__contact::before{
	content: "";
	position: absolute;
	top: 24px;
	right: 22px;
	background: url("../img/icon-right__btn__contact.svg") no-repeat;
	background-size: contain;
	width: 7px;
	height: 11px;
}


/*//////////       pickup       //////////*/
#pickup{
	width: 980px;
	margin: 0 auto 100px;
}
#pickup h2{
	width: 599px;
	height: 56px;
	margin: 0 auto 34px;
}
.pickup--list{
	width: 940px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
}
.pickup--list__001,
.pickup--list__002,
.pickup--list__003{
	width: 308px;
}
.pickup--list__001 div,
.pickup--list__002 div,
.pickup--list__003 div{
	margin-bottom: 20px;
}
.pickup--list__001 h3,
.pickup--list__002 h3,
.pickup--list__003 h3{
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 12px;
	color: #C41010;
}
.pickup--list__001 p,
.pickup--list__002 p,
.pickup--list__003 p{
	font-size: 14px;
	line-height: 1.6;
}


/*//////////       model       //////////*/
#model{
	min-width: 980px;
	max-width: 1284px;
	margin: 0 auto 100px;
}
#model h2{
	width: 663px;
	height: 56px;
	margin: 0 auto 34px;
}
.model--list{
	display: flex;
	flex-wrap: nowrap;
	gap: 24px;
}
.model--list__001,
.model--list__002,
.model--list__003{
	border: 1px solid #D8D8D8;
	border-radius: 28px;
	box-sizing: border-box;
	padding: 40px 22px;
	max-width: 400px;
}
.model--list__001 .model--list__image{
	width: 356px;
	height: 239px;
	margin: 0 auto 26px;
}
.model--list__002 .model--list__image{
	width: 334px;
	height: 239px;
	margin: 0 auto 26px;
}
.model--list__003 .model--list__image{
	width: 317px;
	height: 224px;
	margin: 0 auto 42px;
}
.model--list h3{
	margin: 0 auto 24px;
}
.model--list__001 h3{
	width: 256px;
	height: 42px;
}
.model--list__002 h3{
	width: 284px;
	height: 42px;
}
.model--list__003 h3{
	width: 247px;
	height: 42px;
}
.model--list__lead{
	width: 352px;
	margin: 0 auto 16px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
}
.model--list__function h4{
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 6px;
}
.model--list__function div{
	display: flex;
	flex-wrap: nowrap;
	gap: 40px;
}
.model--list__function div ul li{
	font-weight: 500;
	position: relative;
	font-size: 14px;
	text-indent: 1.5em;
	line-height: 1.8;
}
.model--list__function div ul li.use{
	color: #C41010;
}
.model--list__function div ul li.use::before{
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	background: url("../img/model-check-red.svg") no-repeat;
	background-size: contain;
	width: 15px;
	height: 15px;
}
.model--list__function div ul li.no-use{
	color: #9E9E9E;
}
.model--list__function div ul li.no-use::before{
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	background: url("../img/model-check-gray.svg") no-repeat;
	background-size: contain;
	width: 15px;
	height: 15px;
}


/*//////////       whitepaper       //////////*/
#whitepaper{
	width: 980px;
	margin: 0 auto 60px;
}
#whitepaper h2{
	width: 633px;
	height: 56px;
	margin: 0 auto 34px;
}
.whitepaper--section{
	width: 940px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	gap: 26px;
	justify-content: center;
}
.whitepaper--section-left{
	width: 560px;
}
.whitepaper--section-left div{
	width: 560px;
	margin-bottom: 28px;
}
.whitepaper--section-left h3{
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 5px;
	margin-left: 14px;
}
.whitepaper--section-left ul{
	margin-left: 14px;
}
.whitepaper--section-left ul li{
	font-size: 14px;
	line-height: 2;
	position: relative;
	text-indent: 1.8em;
}
.whitepaper--section-left ul li:before{
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	background: url("../img/whitepaper-icon.svg") no-repeat;
	background-size: contain;
	width: 18px;
	height: 18px;
}
.whitepaper--section-right{
	width: 360px;
	background: #fff;
	padding-bottom: 5%;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
	padding: 36px 0 26px;
	border-radius: 16px;
}
.whitepaper--section-right .mainvisual--right__ttl{
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	margin-left: 7%;
	margin-bottom: 20px;
}
.whitepaper--section-right form{
	width: 86%;
	margin: 0 auto;
}
.whitepaper--section-right .form--company,
.whitepaper--section-right .form--name,
.whitepaper--section-right .form--mail,
.whitepaper--section-right .form--phone,
.whitepaper--section-right .form--privacy{
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 8px;
}
.whitepaper--section-right .form--company span,
.whitepaper--section-right .form--name span,
.whitepaper--section-right .form--mail span,
.whitepaper--section-right .form--phone span,
.whitepaper--section-right .form--privacy span{
	font-size: 12px;
	color: #fff;
	background: #C41010;
	border-radius: 6px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.whitepaper--section-right .form--company-entrybox,
.whitepaper--section-right .form--name-entrybox,
.whitepaper--section-right .form--mail-entrybox,
.whitepaper--section-right .form--phone-entrybox,
.whitepaper--section-right .form--privacy-entrybox{
	font-size: 14px;
	font-weight: 400;
}
.whitepaper--section-right .form--name-entrybox{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.whitepaper--section-right .form--privacy-entrybox{
	margin-bottom: 8px;
}
.whitepaper--section-right .form--privacy-entrybox span,
.whitepaper--section-right .form--privacy-entrybox a{
	font-size: 12px;
	line-height: 1.5;
}
.whitepaper--section-right .form--privacy-entrybox a{
	text-decoration: underline;
	display: inline;
}
.whitepaper--section-right .form--company-entrybox input,
.whitepaper--section-right .form--name-entrybox input,
.whitepaper--section-right .form--mail-entrybox input,
.whitepaper--section-right .form--phone-entrybox input{
	border: 1px solid #ccc;
	margin-bottom: 16px;
	width: 96%;
	padding: 1% 2% .6%;
	line-height: 2;
}
.whitepaper--section-right .form--name-entrybox input{
	width: 44%;
}
.whitepaper--section-right .form--privacy-entryboxlabel label{
	width: 100%;
	display: block;
	box-sizing: border-box;
	border: 1px solid #ccc;
	padding: 10px 27px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	color: #797575;
	position: relative;
}
.whitepaper--section-right .form--privacy-entryboxlabel label input{
	margin-right: 6px;
	margin-top: -2px;
	cursor: pointer;
}
.whitepaper--section-right .main-form-btn{
	margin-top: 24px;
}
.whitepaper--section-right .main-form-btn input{
	font-family: 'Noto Sans JP', sans-serif;
	background: #0029AE;
	width: 100%;
	text-align: center;
	color: #fff;
	border: none;
	padding: 8% 0;
	border-radius: 5px;
	font-size: 15px;
	font-weight: 500;
}
.whitepaper--section-right .main-form-btn input:hover{
	background: #021963;
	cursor: pointer;
}
.form--privacy-entrybox-radio{
	width: 12px;
    height: 12px;
    position: absolute;
    top: 18px;
    left: 10px;
}


/*//////////       subsidy       //////////*/
#subsidy{
	width: 980px;
	margin: 0 auto 100px;
}
.subsidy-box{
	width: 940px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
}
.subsidy-left{
	width: 526px;
	height: 364px;
}
.subsidy-right{
	width: 382px;
}
#subsidy h2{
	width: 300px;
	height: 85px;
	margin-bottom: 18px;
}
#subsidy p{
	font-size: 14px;
	line-height: 1.6;
}
#subsidy p + p{
	margin-top: 10px;
}


/*//////////       company       //////////*/
#company{
	width: 980px;
	margin: 0 auto 100px;
}
#company h2{
	width: 178px;
	height: 40px;
	margin: 0 auto 34px;
}
.company-box{
	width: 940px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.company-left{
	width: 400px;
}
.company-right{
	width: 520px;
}
.company--info__child + .company--info__child {
	margin-top: 24px;
}
.company--info__child dl {
	display: flex;
	flex-wrap: wrap;
}
.company--info__child dl dt {
	font-size: 14px;
	font-weight: 700;
	width: 94px;
	line-height: 2;
}
.company--info__history dl dt{
	width: 50px;
}
.company--info__child dl dd {
	font-size: 14px;
	line-height: 2;
}
.company--info__child dl dd div dl{
	display: flex;
	flex-wrap: wrap;
}
.company--info__child dl dd div dl dt{
	width: 4.5em;
	font-weight: 500;
}
.company--info__child dl dd div dl + dl{
	margin-top: 6px;
}


/*//////////       contactform       //////////*/
#contactform{
	width: 980px;
	margin: 0 auto 100px;
}
.contactform-section{
	width: 940px;
	margin: 0 auto;
}
#contactform h2{
	width: 258px;
	height: 40px;
	margin: 0 auto 34px;
}
.contactform--area{
	width: 810px;
	margin: 0 auto;
}
.contactform--arealist{
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin-bottom: 16px;
}
.contactform--company,
.contactform--name,
.contactform--mail,
.contactform--phone,
.contactform--checkbox01,
.contactform--checkbox02,
.contactform--textarea,
.contactform--privacy{
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 8px;
	width: 290px;
}
.contactform--answer{
	width: 520px;
	font-size: 14px;
	font-weight: 500;
}
.contactform--company span,
.contactform--name span,
.contactform--mail span,
.contactform--phone span,
.contactform--privacy span,
.contactform--checkbox01 span{
	font-size: 12px;
	color: #fff;
	background: #C41010;
	border-radius: 6px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.contactform--checkbox02 span,
.contactform--textarea span{
	font-size: 12px;
	color: #fff;
	background: #8d8d8d;
	border-radius: 6px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.contactform--answer{
	display: flex;
	flex-wrap: wrap;
}
.contactform--answer p{
	margin-bottom: 5px;
}
.contactform--answer input,
.contactform--answer textarea{
	border: 1px solid #ccc;
	width: 96%;
	padding: 1% 2% .6%;
	line-height: 2;
}
.contactform--arealist.contactform--name--wrap .contactform--answer{
	flex-wrap: nowrap;
	justify-content: space-between;
}
.contactform--answer input.contactform--name__surname,
.contactform--answer input.contactform--name__given{
	width: 45%;
}
.contactform--checkbox01--wrap .contactform--answer label {
	width: 42.4%;
	display: block;
	padding: 1% 3.8%;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	position: relative;
}
.contactform--checkbox01--wrap .contactform--answer label:hover{
	opacity: 0.8;
}
.contactform--checkbox01--wrap .contactform--answer input{
	margin-bottom: 0;
	width: 15px;
	height: 15px;
	line-height: 2;
	position: absolute;
	top: 9px;
	left: 0;
}
.contactform--checkbox02--wrap .contactform--answer label {
	width: 42.4%;
	display: block;
	padding: 1% 3.8%;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	position: relative;
}
.contactform--checkbox02--wrap .contactform--answer label:hover{
	opacity: 0.8;
}
.contactform--checkbox02--wrap .contactform--answer input{
	margin-bottom: 0;
	width: 15px;
	height: 15px;
	line-height: 2;
	position: absolute;
	top: 9px;
	left: 0;
}
.contactform--textarea--wrap .contactform--answer textarea{
	height: 10em;
	line-height: 1.5;
}
.contactform--privacy-entryboxlabel{
	width: 100%;
}
.contactform--privacy-entrybox span,
.contactform--privacy-entrybox a{
	font-size: 12px;
	line-height: 1.5;
}
.contactform--privacy-entrybox a{
	text-decoration: underline;
	display: inline;
}
.contactform--privacy-entryboxlabel label{
	width: 100%;
	display: block;
	box-sizing: border-box;
	border: 1px solid #ccc;
	padding: 10px 27px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	color: #797575;
	position: relative;
}

.contactform--privacy-entryboxlabel label:hover{
	opacity: 0.8;
}
.contactform--privacy-entryboxlabel label input{
	width: 13px;
	height: 13px;
	cursor: pointer;
	position: absolute;
	margin-right: 6px;
	margin-top: -2px;
}

.contactform--privacy-entrybox-radio{
	width: 12px;
    height: 12px;
    position: absolute;
    top: 18px;
    left: 10px;
}
.main-contactform-btn{
	margin-top: 32px;
}
.main-contactform-btn input{
	font-family: 'Noto Sans JP', sans-serif;
	background: #0029AE;
	width: 320px;
	text-align: center;
	color: #fff;
	border: none;
	padding: 2.5% 0;
	border-radius: 5px;
	font-size: 15px;
	font-weight: 500;
	margin: 0 auto;
	display: block;
}
.main-contactform-btn input:hover{
	background: #021963;
	cursor: pointer;
}
footer{
	background: #C41010;
	color: #fff;
	font-size: 12px;
	font-weight: 400;
	padding: 1%;
	text-align: center;
}

}


@media screen and (min-width:769px) and (max-width:1600px){
/*//////////       main visual       //////////*/
#main--visual{
	width: 100%;
	min-height: 536px;
	background: #C41010;
	border-radius: 10px;
	margin-bottom: 56px;
}
#main--visual__inr{
	width: 980px;
	min-height: 536px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	gap: 16px;
	justify-content: center;
	align-items:center;
}
.main--left{
	width: 416px;
}
.main--left img{
	width: 100%;
	height: auto;
}
.main--right{
	width: 508px;
}
.main--right h2{
	width: 508px;
	height: auto;
	margin-bottom: 20px;
}
.main--right__btn{
	gap: 16px;
}
.right__btn__service,
.right__btn__contact{
	font-size: 14px;
}
.right__btn__service::before {
	top: 22px;
}
.right__btn__contact::before {
	top: 22px;
}


/*//////////       model       //////////*/
#model{
	width: 980px;
	margin: 0 auto 100px;
}
.model--list{
	gap: 8px;
	width: 940px;
	margin: 0 auto;
}
.model--list__001,
.model--list__002,
.model--list__003{
	border-radius: 14px;
	padding: 20px 8px;
	max-width: 308px;
}
.model--list__001 .model--list__image{
	width: 278px;
	height: auto;
	margin: 0 auto 12px;
}
.model--list__002 .model--list__image{
	width: 260px;
	height: auto;
	margin: 0 auto 13px;
}
.model--list__003 .model--list__image{
	width: 248px;
	height: auto;
	margin: 0 auto 23px;
}
.model--list h3{
	margin: 0 auto 13px;
}
.model--list__001 h3{
	width: 196px;
	height: auto;
}
.model--list__002 h3{
	width: 217px;
    height: auto;
}
.model--list__003 h3{
	width: 189px;
	height: auto;
}
.model--list__lead{
	width: 100%;
	margin: 0 auto 11px;
}
.model--list__function h4{
	margin-bottom: 4px;
}
.model--list__function div{
	gap: 14px;
}
}


@media screen and (min-width:769px) and (max-width:1340px){
#main--area {
	width: calc(100% - 32px);
	min-width: 980px;
	background: #fff;
	margin: 16px auto 0;
	position: initial;
}
#side--area.small-screen{
	display: none;
}
}











/*SPサイズ
////////////////////////////////////////////////////*/
@media screen and (max-width:768px){
/* font */
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 400;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-regular.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-regular.woff') format('woff');
}
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 500;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-500.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-500.woff') format('woff');
}
@font-face {
	font-display: swap; 
	font-family: 'Noto Sans JP';
	font-style: normal;
	font-weight: 700;
	src: url('/common/fonts/noto-sans-jp-v52-japanese-700.woff2') format('woff2'),
	url('/common/fonts/noto-sans-jp-v52-japanese-700.woff') format('woff');
}
body{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	color: #343434;
	line-height: 1.6;
	letter-spacing: 0.06em;
}
a{
	text-decoration: none;
	display: block;
}
img{
	width: 100%;
	height: auto;
}
.pc-only{
	display: none;
}
.sp-only{
	display: block;
}

/*//////////       layout       //////////*/
#wrapper{
	width: 100%;
	font-size: 100%;
	position: relative;
}
#side--area {
    background: #fff;
    position: fixed;
    left: 0;
    bottom: -138px;
    z-index: 2;
	width: 100%;
	padding: 4% 0 2%;
	transition: bottom 0.8s ease-in-out;
}
#side--area.side-open {
	bottom: 0;
}
#main--area {
    width: 94%;
	margin: 3% auto 0;
    background: #fff;
}


/*//////////       #side--area       //////////*/
#side--area section{
	margin: 0 auto;
	padding: 0;
	width: 94%;
	overflow-x: auto;
	white-space: nowrap;
	overflow-scrolling: touch;
	-webkit-overflow-scrolling: touch;
}
#side--area section div{
	width: 218px;
	height: 110px;
	margin: 0 auto 2%;
	display: inline-block;
	list-style: none;
}
#side--area section div img{
	width: 218px;
	height: 110px;

}
#side--area_close{
	width: 16.67%;
	height: auto;
	background: #fff;
	border-radius: 2px 2px 0 0;
	position: absolute;
	top: -34px;
	right:  5%;
	border-top: 2px solid #C41010;
	border-right: 2px solid #C41010;
	border-left: 2px solid #C41010;
    box-sizing: border-box;
}
.side-open #side--area_close img{
	transform: rotate(180deg);
}

/*//////////       main visual       //////////*/
#main--visual{
	width: 100%;
	height: auto;
	background: #C41010;
	border-radius: 10px;
	margin-bottom: 12%;
	padding: 6% 0;
}
.main--left{
	width: 90%;
    margin: 0 auto 6%;
}
.main--right{
	width: 90%;
	margin: 0 auto;
}
.main--right h3{
	width: 68%;
	margin-bottom: 3%;
}
.main--right h2{
	width: 100%;
	height: auto;
	margin-bottom: 3%;
}
.main--right p{
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	margin-bottom: 6%;
}
.right__btn__service,
.right__btn__contact{
	background: #fff;
	padding: 8% 0;
	color: #C41010;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	border-radius: 50px;
	position: relative;
}
.right__btn__service{
	margin-bottom: 4%;
}
.right__btn__service::before{
	content: "";
	position: absolute;
	top: 30px;
	right: 28px;
	background: url("../img/icon-right__btn__service.svg") no-repeat;
	background-size: contain;
	width: 14px;
	height: 14px;
}
.right__btn__contact::before{
	content: "";
	position: absolute;
	top: 31px;
	right: 31px;
	background: url("../img/icon-right__btn__contact.svg") no-repeat;
	background-size: contain;
	width: 8px;
	height: 13px;
}


/*//////////       pickup       //////////*/
#pickup{
	width: 100%;
	margin: 0 auto 14%;
}
#pickup h2{
	width: 70%;
	height: auto;
	margin: 0 auto 5%;
}
.pickup--list{
	width: 100%;
}
.pickup--list__001,
.pickup--list__002{
	margin-bottom: 8%;
}
.pickup--list__001 div,
.pickup--list__002 div,
.pickup--list__003 div{
	margin-bottom: 4%;
}
.pickup--list__001 h3,
.pickup--list__002 h3,
.pickup--list__003 h3{
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	line-height: 1.4;
	margin-bottom: 3%;
	color: #C41010;
}
.pickup--list__001 p,
.pickup--list__002 p,
.pickup--list__003 p{
	font-size: 15px;
	line-height: 1.6;
}


/*//////////       model       //////////*/
#model{
	width: 100%;
	margin: 0 auto 14%;
}
#model h2{
	width: 83%;
	height: auto;
	margin: 0 auto 5%;
}
.model--list__001,
.model--list__002{
	margin-bottom: 6%;
}
.model--list__001,
.model--list__002,
.model--list__003{
	border: 1px solid #D8D8D8;
	border-radius: 28px;
	box-sizing: border-box;
	padding: 8% 5%;
	max-width: 400px;
}
.model--list__001 .model--list__image{
	width: 90%;
	height: auto;
	margin: 0 auto 3.5%;
}
.model--list__002 .model--list__image{
	width: 90%;
	height: auto;
	margin: 0 auto 5%;
}
.model--list__003 .model--list__image{
	width: 86%;
	height: auto;
	margin: 0 auto 5%;
}
.model--list h3{
	margin: 0 auto 4.5%;
}
.model--list__001 h3{
	width: 77%;
	height: auto;
}
.model--list__002 h3{
	width: 86%;
	height: auto;
}
.model--list__003 h3{
	width: 74%;
	height: auto;
}
.model--list__lead{
	width: 100%;
	margin: 0 auto 3%;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.6;
}
.model--list__function h4{
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 2%;
}
.model--list__function div{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.model--list__function div ul li{
	font-weight: 500;
	position: relative;
	font-size: 15px;
	text-indent: 1.3em;
	line-height: 1.8;
	letter-spacing: 0.02em;
}
.model--list__function div ul li.use{
	color: #C41010;
}
.model--list__function div ul li.use::before{
	content: "";
	position: absolute;
	top: 6px;
	left: 0;
	background: url("../img/model-check-red.svg") no-repeat;
	background-size: contain;
	width: 15px;
	height: 15px;
}
.model--list__function div ul li.no-use{
	color: #9E9E9E;
}
.model--list__function div ul li.no-use::before{
	content: "";
	position: absolute;
	top: 7px;
	left: 0;
	background: url("../img/model-check-gray.svg") no-repeat;
	background-size: contain;
	width: 15px;
	height: 15px;
}


/*//////////       whitepaper       //////////*/
#whitepaper{
	width: 100%;
	margin: 0 auto 12%;
}
#whitepaper h2{
	width: 81.56%;
	height: auto;
	margin: 0 auto 5%;
}
.whitepaper--section{
	width: 100%;
	margin: 0 auto 8%;
}
.whitepaper--section-left{
	width: auto;
	margin-bottom: 5%;
}
.whitepaper--section-left div{
	width: auto;
	margin-bottom: 5%;
}
.whitepaper--section-left h3{
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 3%;
}
.whitepaper--section-left ul li{
	font-size: 15px;
	line-height: 1.5;
	position: relative;
	text-indent: 0;
	padding-left: 1.7em;
}
.whitepaper--section-left ul li:before{
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	background: url("../img/whitepaper-icon.svg") no-repeat;
	background-size: contain;
	width: 18px;
	height: 18px;
}
.whitepaper--section-left ul li + li{
	margin-top: 3%;
}
.whitepaper--section-right{
	width: 100%;
	background: #fff;
	padding-bottom: 5%;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2);
	padding: 10% 0;
	border-radius: 16px;
}
.whitepaper--section-right .mainvisual--right__ttl{
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	margin-left: 7%;
	margin-bottom: 5%;
}
.whitepaper--section-right form{
	width: 86%;
	margin: 0 auto;
}
.whitepaper--section-right .form--company,
.whitepaper--section-right .form--name,
.whitepaper--section-right .form--mail,
.whitepaper--section-right .form--phone,
.whitepaper--section-right .form--privacy{
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 8px;
}
.whitepaper--section-right .form--company span,
.whitepaper--section-right .form--name span,
.whitepaper--section-right .form--mail span,
.whitepaper--section-right .form--phone span,
.whitepaper--section-right .form--privacy span{
	font-size: 12px;
	color: #fff;
	background: #C41010;
	border-radius: 2px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.whitepaper--section-right .form--company-entrybox,
.whitepaper--section-right .form--name-entrybox,
.whitepaper--section-right .form--mail-entrybox,
.whitepaper--section-right .form--phone-entrybox,
.whitepaper--section-right .form--privacy-entrybox{
	font-size: 14px;
	font-weight: 400;
}
.whitepaper--section-right .form--name-entrybox{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.whitepaper--section-right .form--privacy-entrybox{
	margin-bottom: 8px;
}
.whitepaper--section-right .form--privacy-entrybox span,
.whitepaper--section-right .form--privacy-entrybox a{
	font-size: 12px;
	line-height: 1.5;
}
.whitepaper--section-right .form--privacy-entrybox a{
	text-decoration: underline;
	display: inline;
}
.whitepaper--section-right .form--company-entrybox input,
.whitepaper--section-right .form--name-entrybox input,
.whitepaper--section-right .form--mail-entrybox input,
.whitepaper--section-right .form--phone-entrybox input{
	border: 1px solid #ccc;
	margin-bottom: 5%;
	width: 100%;
	padding: 3% 4% 2%;
	line-height: 2;
	box-sizing: border-box;
}
.whitepaper--section-right .form--name-entrybox input{
	width: 49%;
}
.whitepaper--section-right .form--privacy-entryboxlabel label{
	width: 100%;
	display: block;
	box-sizing: border-box;
	border: 1px solid #ccc;
	padding: 3% 10%;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	color: #797575;
	position: relative;
}
.whitepaper--section-right .form--privacy-entryboxlabel label input{
	margin-right: 6px;
	margin-top: -3px;
}
.whitepaper--section-right .main-form-btn{
	margin-top: 24px;
}
.whitepaper--section-right .main-form-btn input{
	font-family: 'Noto Sans JP', sans-serif;
	background: #0029AE;
	width: 100%;
	text-align: center;
	color: #fff;
	border: none;
	padding: 8% 0;
	border-radius: 5px;
	font-size: 15px;
	font-weight: 500;
}
.form--privacy-entrybox-radio{
	width: 12px;
    height: 12px;
    position: absolute;
    top: 18px;
    left: 10px;
}


/*//////////       subsidy       //////////*/
#subsidy{
	width: 100%;
	margin: 0 auto 14%;
}
.subsidy-left{
	margin-bottom: 5%;
}
#subsidy h2{
	width: 62.06%;
	height: auto;
	margin: 0 auto 5%;
}
#subsidy p{
	font-size: 15px;
	line-height: 1.6;
}
#subsidy p + p{
	margin-top: 3%;
}


/*//////////       company       //////////*/
#company{
	width: 100%;
	margin: 0 auto 14%;
}
#company h2{
	width: 36.06%;
	height: auto;
	margin: 0 auto 5%;
}
.company-box{
	width: 100%;
	margin: 0 auto 8%;
}
.company--info__child{
	margin-bottom: 6%;
}
.company--info__child dl dt {
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 2.5%;
}
.company--info__history dl dt{
	width: 50px;
}
.company--info__child dl dd {
	font-size: 15px;
	line-height: 1.6;
}
.company--info__child dl dd div dl {
	display: flex;
	flex-wrap: nowrap;
	margin-bottom: 3%;
}
.company--info__child dl dd div dl dt{
	font-weight: 500;
}
.company--info__child.company--info__history dl dd div dl dt {
	line-height: 1.6;
	font-weight: normal;
	width: 5em;
	margin-bottom: 0;
}
.company--info__child dl dd div dl dd {
	line-height: 1.6;
	width: calc(100% - 5em);
}
.company--info__child dl dd div dl + dl{
	margin-top: 6%;
}



/*//////////       contactform       //////////*/
#contactform{
	width: 100%;
	margin: 0 auto 26%;
}
#contactform h2{
	width: 52.31%;
	height: auto;
	margin: 0 auto 5%;
}
.contactform--area{
	width: 100%;
	margin: 0 auto 8%;
}
.contactform--arealist{
	margin-bottom: 16px;
}
.contactform--company,
.contactform--name,
.contactform--mail,
.contactform--phone,
.contactform--checkbox01,
.contactform--checkbox02,
.contactform--textarea,
.contactform--privacy{
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 8px;;
}
.contactform--answer{
	font-size: 14px;
	font-weight: 500;
}
.contactform--company span,
.contactform--name span,
.contactform--mail span,
.contactform--phone span,
.contactform--privacy span,
.contactform--checkbox01 span{
	font-size: 12px;
	color: #fff;
	background: #C41010;
	border-radius: 2px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.contactform--checkbox02 span,
.contactform--textarea span{
	font-size: 12px;
	color: #fff;
	background: #8d8d8d;
	border-radius: 2px;
	padding: 1px 4px 3px 4px;
	margin-right: 4px;
	font-weight: 400;
}
.contactform--answer input,
.contactform--answer textarea{
	border: 1px solid #ccc;
	margin-bottom: 5%;
	width: 100%;
	padding: 3% 4% 2%;
	line-height: 2;
	box-sizing: border-box;
}
.contactform--answer textarea{
	line-height: 1.6;
}
.contactform--arealist.contactform--name--wrap .contactform--answer{
	flex-wrap: nowrap;
	justify-content: space-between;
}
.contactform--answer input.contactform--name__surname,
.contactform--answer input.contactform--name__given{
	width: 49%;
}
.contactform--checkbox01--wrap .contactform--answer label,
.contactform--checkbox02--wrap .contactform--answer label {
	display: block;
	padding: 3% 8%;
	cursor: pointer;
	font-size: 14px;
	font-weight: 400;
	position: relative;
}
.contactform--checkbox01--wrap .contactform--answer input,
.contactform--checkbox02--wrap .contactform--answer input{
	margin-bottom: 0;
	width: 17px;
	height: 17px;
	line-height: 2;
	position: absolute;
	top: 13px;
	left: 0;
}
.contactform--textarea--wrap .contactform--answer textarea{
	height: 10em;
}
.contactform--privacy-entryboxlabel{
	width: 100%;
}
.contactform--privacy-entrybox span,
.contactform--privacy-entrybox a{
	font-size: 12px;
	line-height: 1.5;
}
.contactform--privacy-entrybox a{
	text-decoration: underline;
	display: inline;
}
.contactform--privacy-entryboxlabel label{
	width: 100%;
	display: block;
	box-sizing: border-box;
	border: 1px solid #ccc;
	padding: 3% 10%;
	font-size: 14px;
	font-weight: 400;
	color: #797575;
	position: relative;
}
.contactform--privacy-entryboxlabel label input{
	width: 13px;
	height: 13px;
	margin-right: 6px;
	margin-top: -3px;
}
.contactform--privacy-entrybox-radio{
	width: 12px;
    height: 12px;
    position: absolute;
    top: 18px;
    left: 10px;
}
.main-contactform-btn{
	margin-top: 32px;
}
.main-contactform-btn input{
	font-family: 'Noto Sans JP', sans-serif;
	background: #0029AE;
	width: 90%;
	text-align: center;
	color: #fff;
	border: none;
	padding: 6% 0;
	border-radius: 5px;
	font-size: 15px;
	font-weight: 500;
	margin: 0 auto;
	display: block;
}
footer{
	background: #C41010;
	color: #fff;
	font-size: 12px;
	font-weight: 400;
	padding: 3%;
	text-align: center;
}


}

