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

	MAIN VISUAL

--------------------------------------------------*/
#mv {margin-top: -30px;background: #fff;}
@media only screen and ( max-width : 768px ) {
	#mav {margin-top: 0;}
	#mv .content {
		padding: 20px;
		background-image: linear-gradient(90deg, #1157E4, #50E8BF);
	}
	#mv .content p {
		margin-bottom: 5%;
		color: #FFF94A;
		font-weight: 900;
		font-size: 4.5vw;
		line-height: 1.4;
	}
	#mv .content h1 {color: #fff;font-weight: 900;font-size: 3.7vw;}
	#mv .content h1 span {display: block;margin-top: 10px;font-size: 2em;}
}
/*-------------------------------------------------

	COMMON

--------------------------------------------------*/
.subttl {
	padding-top: calc(15px + 10 * ((100vw - 375px) / 1605));
	padding-bottom: calc(15px + 10 * ((100vw - 375px) / 1605));
	border-radius: 20px 20px 0 0;
	background-color: #2A85EE;
	background-image: repeating-linear-gradient(-45deg, #2A85EE, #3390EE 7.5px, transparent 0, transparent 15px);
	color: #fff;
	font-weight: 900;
	font-size: calc(18px + 22 * ((100vw - 375px) / 1605));
	text-align: center;
}
.common_block {margin-bottom: calc(40px + 30 * ((100vw - 375px) / 1605));}
.common_block:last-child {margin-bottom: 0;}
.common_block .container {
	padding: calc(10px + 10 * ((100vw - 375px) / 1605));
	padding-top: calc(20px + 30 * ((100vw - 375px) / 1605));
	padding-bottom: calc(30px + 30 * ((100vw - 375px) / 1605));
	border: 3px solid #2A85EE;
	border-top: none;
	border-radius: 0 0 20px 20px;
	background: #fff;
}
/*-------------------------------------------------

	アルファソリューションにお任せください！

--------------------------------------------------*/
#leave .ttlbox {margin-bottom: calc(30px + 25 * ((100vw - 375px) / 1605));}
#leave .ttlbox p {
	font-weight: 700;
	font-size: calc(16px + 8 * ((100vw - 375px) / 1605));
	text-align: center;
}
#leave .ttlbox ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 20px auto 10px;
}
#leave .ttlbox ul li {
	margin: 0 5px 10px;
	padding: 10px 30px;
	border-radius: 27px;
	color: #fff;
	font-weight: 500;
	font-size: calc(20px + 10 * ((100vw - 375px) / 1605));
	line-height: 1;
	text-align: center;
}
#leave .ttlbox ul li:nth-of-type(1) {background: #FFC011;}
#leave .ttlbox ul li:nth-of-type(2) {background: #FF8811;}
#leave .ttlbox ul li:nth-of-type(3) {background: #FF6211;}
#leave .content {max-width: 1360px;margin: 0 auto;}
#leave .content p.txt {
	margin-bottom: calc(30px + 20 * ((100vw - 375px) / 1605));
	font-weight: 500;
	text-align: center;
}
#leave .content figure.table {margin-bottom: 50px;}
#leave .content .table_box {display: none;}
#leave .content .flexbox {align-items: center;}
#leave .content .flexbox figure {width: 40%;}
#leave .content .flexbox p {
	font-weight: 700;
	font-size: calc(24px + 26 * ((100vw - 375px) / 1605));
}
#leave .content h3 {
	margin-bottom: 50px;
	font-weight: 700;
	font-size: calc(16px + 14 * ((100vw - 375px) / 1605));
	text-align: center;
}
#leave .content h3:last-child {margin-bottom: 0;}
#leave .content ul li {
	width: 33%;
	margin-bottom: calc(10px + 40 * ((100vw - 375px) / 1605));
}
@media only screen and ( max-width : 768px ) {
	#leave .ttlbox ul {max-width: 640px;}
	#leave .content figure.table {display: none;}
	#leave .content .table_box {display: block;margin-bottom: 30px;}
	#leave .content .table_box h3 {
		margin-bottom: 10px;
		color: #707070;
		font-weight: 900;
		font-size: calc(16px + 4 * ((100vw - 375px) / 393));
		text-align: center;
	}
	#leave .content .table_box h3:nth-of-type(3) {color: #1157E4;}
	#leave .content .table_box table {max-width: 380px;margin: 0 auto 35px;border: 2px solid #222;}
	#leave .content .table_box table th {
		width: calc(125px + 35 * ((100vw - 375px) / 393));
		padding-left: calc(10px + 10 * ((100vw - 375px) / 393));
		font-weight: 900;
		vertical-align: middle;
	}
	#leave .content .table_box table tr:nth-of-type(odd) th,
	#leave .content .table_box table tr:nth-of-type(odd) td {background: #F5F5F5;}
	#leave .content .table_box table:nth-of-type(3) tr:nth-of-type(odd) th,
	#leave .content .table_box table:nth-of-type(3) tr:nth-of-type(odd) td {background: #FFF9EC;}
	#leave .content .table_box table td {padding: 5px 0;color: #707070;font-weight: 700;}
	#leave .content .table_box table:nth-of-type(3) td {
		color: #1157E4;
		font-weight: 900;
		font-size: calc(16px + 4 * ((100vw - 375px) / 393));
	}
	#leave .content .flexbox {justify-content: center;}
	#leave .content .flexbox figure {width: 65%;}
	#leave .content .flexbox p {
		width: 100%;
		margin: 20px 0;
		font-weight: 900;
		text-align: center;
	}
	#leave .content ul {margin-bottom: 30px;}
	#leave .content ul li {width: 49%;}
	#leave .content ul li:last-child {margin-bottom: 0;}
}
@media only screen and ( max-width : 500px ) {
	#leave .content ul li {width: 80%;}
}
/*-------------------------------------------------

	実績(一例)

--------------------------------------------------*/
#actual_results {padding-top: 0;}
#actual_results ul {margin-bottom: calc(50px + 30 * ((100vw - 375px) / 1605));}
#actual_results ul:last-child {margin-bottom: 0;}
#actual_results ul li {
	margin: 0 10px;
	padding: 38px 38px 20px;
	border: 2px solid #707070;
	border-radius: 10px;
	background: #fff;
}
#actual_results ul li figure {margin-bottom: 10px;}
#actual_results ul li h4 {
	margin-bottom: 10px;
	font-weight: 900;
	font-size: calc(18px + 6 * ((100vw - 375px) / 1605));
}
#actual_results ul li h4.smalltxt {font-size:0.92em;} 
#actual_results ul li p {margin-bottom: 20px;}
#actual_results ul li table {margin-bottom: 15px;}
#actual_results ul li table th {width: 100px;font-weight: 500;font-size: 1.9rem;}
#actual_results ul li table td {font-weight: 900;text-align: right;}
#actual_results ul li h5 {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	border-bottom: 1px solid #222;
	font-weight: 500;
}
#actual_results ul li h5 span {
	margin-bottom: 8px;
	color: #1157E4;
	font-weight: 900;
	font-size: 1.8em;
}
@media only screen and ( max-width : 1024px ) {
	#actual_results ul li {padding: 20px;}
}
/*-------------------------------------------------

	お気軽にお問合せください！

--------------------------------------------------*/
#contact {background: #002C4D url(../img/form/contact_bg.png) no-repeat center / cover;}
#contact .inner {max-width: 990px;}
#contact .title {color: #fff;}
#contact ul {margin-bottom: 30px;}
#contact ul li {width: 49%;}
#contact ul li a {
	height: 100%;
	padding-top: calc(20px + 20 * ((100vw - 375px) / 1605));
	padding-bottom: calc(20px + 20 * ((100vw - 375px) / 1605));
	border: 1px solid #ECF7FF;
	border-radius: 30px;
	color: #fff;
	font-weight: 900;
	font-size: calc(16px + 14 * ((100vw - 375px) / 1605));
	line-height: 1.4;
	text-align: center;
	letter-spacing: .1em;
}
#contact ul li:nth-of-type(1) a {border-color:#06C755;background: #06C755;}
#contact ul li:nth-of-type(2) a {border-color:#1157E4;background: #1157E4;}
#contact ul li a:hover {background: #fff;}
#contact ul li:nth-of-type(1) a:hover {color: #06C755;}
#contact ul li:nth-of-type(2) a:hover {color: #1157E4;}
#contact ul li a svg {
	display: block;
	margin: 0 auto calc(10px + 20 * ((100vw - 375px) / 1605));
	stroke: #fff;
	transition: .3s;
}
#contact ul li:nth-of-type(1) a svg {width: calc(38px + 27 * ((100vw - 375px) / 1605));fill: #fff;}
#contact ul li:nth-of-type(2) a svg {width: calc(31px + 23 * ((100vw - 375px) / 1605));}
#contact ul li:nth-of-type(1) a:hover svg {stroke: #06C755;fill: #06C755;}
#contact ul li:nth-of-type(2) a:hover svg {stroke: #1157E4;}
#contact .tel {
	padding: 25px 0;
	border: 2px solid #fff;
	border-radius: 20px;
	text-align: center;
}
#contact .tel h5 {
	margin-bottom: calc(15px + 5 * ((100vw - 375px) / 1605));
	color: #fff;
	font-weight: 700;
	font-size: calc(16px + 9 * ((100vw - 375px) / 1605));
	text-align: center;
}
#contact .tel a {
	display: inline-block;
	margin-bottom: 20px;
	font-size: calc(30px + 25 * ((100vw - 375px) / 1605));
}
#contact .tel p {font-size: calc(15px + 9 * ((100vw - 375px) / 1605));}
@media only screen and ( max-width : 768px ) {
	#contact ul {margin-bottom: 0;}
	#contact ul li {width: 100%;margin-bottom: 20px;}
	#contact .tel a {margin-bottom: 10px;}
	#contact .tel a img {width: 31px;}
}
@media only screen and ( max-width : 500px ) {
	#contact .tel a img {width: 25px;margin-right: 5px;}
}
/*-------------------------------------------------

	出張買取までの簡単ステップ

--------------------------------------------------*/
#step .flexbox {
	max-width: calc(1160px + 2 * ((100vw - 375px) / 1605));
	margin: 0 auto calc(20px + 10 * ((100vw - 375px) / 1605));
	padding-bottom: calc(20px + 10 * ((100vw - 375px) / 1605));
	border-bottom: 1px solid #707070;
	align-items: center;
}
#step .flexbox:nth-last-of-type(odd) {flex-direction: row-reverse;}
#step .flexbox:last-child {margin-bottom: 0;padding-bottom: 0;border-bottom: 0;}
#step .flexbox figure {position: relative;width: 33%;}
#step .flexbox figure figcaption {
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
	background: #1157E4;
	color: #fff;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 50px;
	text-align: center;
}
#step .flexbox .content {width: 63%;}
#step .flexbox .content h3 {
	margin-bottom: calc(10px + 10 * ((100vw - 375px) / 1605));
	color: #1157E4;
	font-weight: 900;
	font-size: calc(18px + 22 * ((100vw - 375px) / 1605));
}
#step .flexbox .content p {
	margin-bottom: calc(10px + 25 * ((100vw - 375px) / 1605));
	font-weight: 500;
	font-size: calc(16px + 4 * ((100vw - 375px) / 1605));
}
#step .flexbox .content p:last-child {margin-bottom: 0;}
#step .flexbox .content .button_box {display: flex;flex-wrap: wrap;justify-content: space-between;}
#step .flexbox .content .button_box .line,
#step .flexbox .content .button_box .contact {
	font-weight: 400;
	font-size: calc(13px + 2 * ((100vw - 375px) / 1605));
	letter-spacing: 0;
}
@media only screen and ( max-width : 768px ) {
	#step .flexbox figure {width: 100%;margin-bottom: 10px;}
	#step .flexbox .content {width: 100%;}
	#step .flexbox .content .button_box .line {width: 100%;margin-bottom: 10px;}
	#step .flexbox .content .button_box .contact {width: 100%;}
}
/*--------------------------------------------------

	よくあるご質問

--------------------------------------------------*/
#faq dl dt,
#faq dl dd {
	position: relative;
	padding: 20px;
	padding-right: calc(10px + 20 * ((100vw - 375px) / 1605));
	padding-left: calc(40px + 20 * ((100vw - 375px) / 1605));
	font-size: calc(16px + 8 * ((100vw - 375px) / 1605));
}
#faq dl dt {background: #fff;font-weight: 900;}
#faq dl dd {margin-bottom: 20px;background: #ECF7FF;font-weight: 500;}
#faq dl dd:last-child {margin-bottom: 0;}
#faq dl dt::before,
#faq dl dd::before {
	position: absolute;
	top: 18px;
	left: calc(15px + 12 * ((100vw - 375px) / 1605));
}
#faq dl dt::before {content: "Q.";}
#faq dl dd::before {content: "A.";}
/*--------------------------------------------------

	オーダーフォーム

--------------------------------------------------*/
#form {background: #002C4D url(../img/form/form_bg.png) no-repeat center / cover;}
#form .inner {max-width: calc(974px + 2 * ((100vw - 375px) / 1605));}
#form .title {color: #fff;}
#form .container {margin-bottom: calc(30px + 70 * ((100vw - 375px) / 1605));}
#form table {
	max-width: calc(1011px + 2 * ((100vw - 375px) / 1605));
	margin: 0 auto calc(30px + 20 * ((100vw - 375px) / 1605));
}
#form tr {display: inline-table;width: 100%;margin-bottom: 10px;}
#form tr:last-child {margin-bottom: 0;}
#form th {
	position: relative;
	width: 260px;
	padding: 10px 0 0 50px;
	color: #fff;
	font-weight: 700;
	font-size: calc(15px + 5 * ((100vw - 375px) / 1605));
	letter-spacing: .04em;
	vertical-align: top;
}
#form th span {
	position: absolute;
	top: 10px;
	left: 0;
	width: 38px;
	margin-right: 10px;
	padding: 10px 0;
	border-radius: 5px;
	background: #FFA111;
	color: #fff;
	font-weight: 700;
	font-size: calc(12px + 2 * ((100vw - 375px) / 1605));
	text-align: center;
}
#form td {letter-spacing: .1em;vertical-align: middle;}
#form input[type="text"],
#form input[type="tel"],
#form input[type="email"],
#form input[type="date"],
.stbox select,
#form textarea {
	width: 100%;
	height: calc(40px + 10 * ((100vw - 375px) / 1605));
	padding: 0 calc(10px + 10 * ((100vw - 375px) / 1605));
	overflow: hidden;
	border: 1px solid #ccc;
	border-radius: 10px;
	background: #fff;
	font-size: calc(14px + 4 * ((100vw - 375px) / 1605));
	cursor: pointer;
	resize: none;
	vertical-align: bottom;
}
#form textarea {height: auto;padding: calc(10px + 10 * ((100vw - 375px) / 1605));}
input::placeholder,
textarea::placeholder {color: #DDD;}
.stbox {position: relative;}
.stbox::before {
	content: "";
	position: absolute;
	top: calc(15px + 3 * ((100vw - 375px) / 1605));
	right: calc(15px + 5 * ((100vw - 375px) / 1605));
	transform: rotate(-45deg);
	width: calc(7px + 2 * ((100vw - 375px) / 1605));
	height: calc(7px + 2 * ((100vw - 375px) / 1605));
	border-left: 3px solid #002C4D;
	border-bottom: 3px solid #002C4D;
}
#form .submit {
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
	width: 100%;
	max-width: 231px;
	margin: 0 auto;
	padding: 20px 0;
	border: 1px solid #1157E4;
	border-radius: 100px;
	background: #1157E4;
	color: #fff;
	font-weight: 500;
	font-size: calc(16px + 2 * ((100vw - 375px) / 1605));
	letter-spacing: .1em;
	text-align: center;
	transition: .3s;
}
#form .submit:hover {background: #fff;color: #1157E4;}
#form .submit svg {
	width: calc(17.4px + 10 * ((100vw - 375px) / 1605));
	margin-right: 10px;
	fill: #fff;
	transition: .3s;
}
#form .submit:hover svg {fill: #1157E4;}
#form .flexbox {
	align-items: center;
	padding: 50px 20px;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
}
#form .flexbox h3 {
	margin-right: 60px;
	color: #fff;
	font-weight: 700;
	font-size: calc(20px + 20 * ((100vw - 375px) / 1605));
	text-align: center;
}
#form .flexbox .content {flex: 1;}
#form .flexbox .content .line {width: 100%;}
#form  .tel h5 {color: #fff;}
@media only screen and ( max-width : 1024px ) {
	#form .flexbox {padding: 20px;}
	#form .flexbox h3 {width: 100%;margin: 0 0 25px;}
}
@media only screen and ( max-width : 768px ) {
	#form tr {margin-bottom: 20px;}
	#form th {display: block;width: 100%;margin-bottom: 10px;}
	#form th span {top: 6px;}
	#form td {display: block;width: 100%;}
	#form .submit {max-width: 100%;}
}
/*--------------------------------------------------

　   form

--------------------------------------------------*/
#form.form {display: block;padding-top: calc(100px + 60 * ((100vw - 375px) / 1605));}
#form.form .container {margin-bottom: 0;padding: 30px 20px;background: #fff;}
#form.form h4 {
	color: #fff;
	margin-bottom: 40px;
	line-height: 1.7;
	text-align: center;
}
#form.form .button_box {display: flex;justify-content: center;}
#form.form .button_box .submit {margin: 0 10px;}
#form.confirm th {padding-left: 0;color: #222;}
#form.error .error_box {margin-bottom: 80px;}
#form.error .error_messe {color: #C41000;text-align: center;}
#form.complete .title {color: #1157E4;}
#form.complete p {margin-bottom: 40px;text-align: center;}
#form.complete .submit {max-width: 231px;}
@media only screen and ( max-width : 768px ) {
	#form.comfirm,
	#form.error {padding-top: 80px;}
}
@media only screen and ( max-width : 500px ) {
	#form.form .button_box {display: block;}
	#form.form .button_box .submit {margin: 0 auto 10px;}
	#form.form .button_box .submit:last-child {margin-bottom: 0;}
}
/*-------------------------------------------------

	アルファソリューションは
	一緒に働くスタッフを募集しています!

--------------------------------------------------*/
#staff {background: #FFFAF2;}
#staff .inner {max-width: calc(1466px + 2 * ((100vw - 375px) / 1605));}
#staff .title02 {color: #FF6211;}
#staff .title02 span {padding: 0 10%;}
#staff .title02 span:before,
#staff .title02 span:after {transform: rotate(-60deg);width: 12%;background: #FF6211;}
#staff .title02 span:before {transform: rotate(60deg);}
#staff h3 {
	margin-bottom: calc(30px + 20 * ((100vw - 375px) / 1605));
	font-weight: 900;
	font-size: calc(18px + 32 * ((100vw - 375px) / 1605));
	text-align: center;
}
#staff ul {
	justify-content: center;
	margin-bottom: calc(50px + 30 * ((100vw - 375px) / 1605));
}
#staff ul li {
	position: relative;
	max-width: 460px;
	margin: 100px 7.5px 20px;
	padding: calc(20px + 10 * ((100vw - 375px) / 1605));
	padding-top: calc(100px + 30 * ((100vw - 375px) / 1605));
	padding-bottom: calc(30px + 45 * ((100vw - 375px) / 1605));
	border-radius: 20px;
	background: #FFF0C1;
}
#staff ul li {padding: 130px 20px 30px;}
#staff ul li figure {
	position: absolute;
	top: -100px;
	left: 50%;
	transform: translate(-50%, 0);
	width: 200px;
}
#staff ul li h4 {margin-bottom: 30px;font-weight: 900;text-align: center;}
#staff ul li h4 span {font-size: 2em;}
.accordion .switch,
#staff a {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	padding-top: calc(20px + 10 * ((100vw - 375px) / 1605));
	padding-bottom: calc(20px + 10 * ((100vw - 375px) / 1605));
	border: 3px solid #FFA111;
	border-radius: 100px;
	background: #fff;
	color: #FFA111;
	font-weight: 500;
	font-size: calc(16px + 10 * ((100vw - 375px) / 1605));
	line-height: 1.5;
	letter-spacing: .1em;
	text-align: center;
	cursor: pointer;
}
#staff a {background: #FFA111;color: #fff;}
.accordion .switch.open {border-color: #ccc;color: #ccc;}
#staff a:hover {background: #fff;color: #FFA111;}
.accordion .switch svg {width: 24px;}
#staff a svg {
	width: 24px;
	margin-right: 15px;
	fill: #fff;
	transition: .3s;
}
#staff a:hover svg {fill: #ffa111;}
.accordion .switch svg {margin-right: 15px;fill: #FFA111;}
.accordion .switch.open svg {fill: #ccc;}
.accordion .contentWrap {
	display: none;
	width: 100%;
	padding: 70px 20px;
	border: 1px solid #707070;
	background: #fff;
}
.accordion .contentWrap table {max-width: 1160px;margin: 0 auto;}
.accordion .contentWrap tr {display: block;padding: 10px 0;border-bottom: 1px solid #707070;}
.accordion .contentWrap th {
	width: 262px;
	padding-left: 50px;
	font-weight: 700;
	font-size: calc(14px + 2 * ((100vw - 375px) / 1605));
	vertical-align: top;
}
.accordion .contentWrap td {font-weight: 400;font-size: calc(14px + 2 * ((100vw - 375px) / 1605));}
@media only screen and ( max-width : 768px ) {
	#staff .title02 span:before,
	#staff .title02 span:after {width: 25%;}
	#staff .title02 span {padding: 0 17%;}
	#staff ul li:last-child {margin-bottom: 0;}
	#staff ul li h4 {margin-bottom: 20px;}
	.accordion .switch svg {width: 20px;}
	.accordion .contentWrap {padding: 20px;}
	.accordion .contentWrap th {display: block;width: 100%;padding-left: 0;}
	.accordion .contentWrap td {display: block;width: 100%;}
	#staff a {display: block;margin-top: 10px;}
	#staff a svg {display: block;width: 20px;margin: 0 auto 10px;}
}
@media only screen and ( max-width : 500px ) {
	#staff .title02 span {padding: 0 14%;}
}
/*-------------------------------------------------

	アルファソリューションのSDGsへの取り組み

--------------------------------------------------*/
#sdgs {background: #fff;}
#sdgs .inner {max-width: calc(964px + 2 * ((100vw - 375px) / 1605));}
#sdgs .title02 {
	margin-bottom: calc(50px + 50 * ((100vw - 375px) / 1605));
	color: #FF6211;
}
#sdgs .title02 span:before,
#sdgs .title02 span:after {background: #FF6211;}
#sdgs .container {margin-bottom: 50px;}
#sdgs .container figure {
	max-width: 483px;
	margin: 0 auto calc(30px + 80 * ((100vw - 375px) / 1605));
}
#sdgs .content .wrap p {margin-bottom: calc(20px + 10 * ((100vw - 375px) / 1605));}
#sdgs .content .wrap p:last-child {margin-bottom: 0;}
#sdgs .flexbox .content {flex: 1;}
#sdgs .flexbox .content h4 {margin-bottom: 25px;border-bottom: 1px solid #222;font-weight: 700;}
#sdgs .flexbox figure {
	max-width: calc(150px + 50 * ((100vw - 375px) / 1605));
	margin-left: 145px;
}
@media only screen and ( max-width : 768px ) {
	#sdgs .flexbox .content {flex: inherit;}
	#sdgs .flexbox figure {margin: 0 auto 20px;}
}