@charset "UTF-8";

/*------------------------------------------------------------
mainView
------------------------------------------------------------*/
#front #mainView{
	background: url(../img/common/mainView_pc.jpg) #000;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 335px;
}
#front main .contentWrapper{
	padding: 2rem;
}
#front #mainView .inBox {
	padding: 50px 0;
}
#front #mainView .inBox .topBox {
	margin-left: 200px;
}
#front #mainView .inBox .topBox .textBox {
	width: 85%;
}
#front #mainView .inBox .topBox .textBox p {
	font-size: 1.6rem;
	padding-top: 37px;
	font-weight: 500;
}
#front #mainView .inBox .topBox .textBox p span {
	position: relative;
}
#front #mainView .inBox .topBox .textBox p span::after {
	position: absolute;
	content: "";
	background: #f98a0091;
	left: 0;
	bottom: 0;
	height: 15px;
	width: 100%;
}
#front #mainView .inBox .bottomBox .box1,
#front #mainView .inBox .bottomBox .box2,
#front #mainView .inBox .bottomBox .box3 {
	background: #333333;
	width: 60%;
	margin-bottom: 15px;
	padding: 5px 0 5px 250px;
	position: relative;
}
#front #mainView .inBox .bottomBox .box2 {
	padding: 5px 0 5px 280px;
}
#front #mainView .inBox .bottomBox .box3 {
	padding: 5px 0 5px 310px;
}
#front #mainView .inBox .bottomBox .box1 p,
#front #mainView .inBox .bottomBox .box2 p,
#front #mainView .inBox .bottomBox .box3 p {
	color: #fff;
	font-size: 25px;
}
#front h2 {
	background: #333333;
	color: #fff;
	width: 150%;
	padding: 5px 0 5px 600px;
	margin: 0 0 30px -600px;
	font-size: 1.7rem;
}
#front .clickBox {
	background: #acac9b;
	width: 150%;
	margin: 0 0 0 870px;
	position: relative;
}
#front .clickBox a {
	color: #fff;
	padding: 5px 400px 5px 20px;
	font-size: 19px;
	font-weight: 500;
	position: relative;
}
#front .clickBox a::after {
	content: "";
	position: absolute;
	left: 0;
	top: 17px;
	height: 2px;
	width: 1300px;
	margin-left: -1300px;
	background: #acac9b;
}
#front #mainView .inBox .bottomBox .box1::after,
#front #mainView .inBox .bottomBox .box2::after,
#front #mainView .inBox .bottomBox .box3::after {
	position: absolute;
	content: "";
	left: 200px;
	top: 8px;
	height: 30px;
	width: 32px;
}
#front #mainView .inBox .bottomBox .box1::after {
	background: url(../img/index/topLogo_img1.png)no-repeat;
}
#front #mainView .inBox .bottomBox .box2::after {
	background: url(../img/index/topLogo_img2.png)no-repeat;
	left: 235px;
}
#front #mainView .inBox .bottomBox .box3::after {
	background: url(../img/index/topLogo_img3.png)no-repeat;
	left: 265px;
}
.hiddenWrapper {
	overflow: hidden;
}
/*------------------------------------------------------------
shortSupport
------------------------------------------------------------*/
#shortSupport {
	background: url(../img/index/shortSupport_bg.jpg) no-repeat;
	background-size: cover;
}
#shortSupport p {
	text-align: center;
	color: #fff;
	font-size: 2rem;
}
/*------------------------------------------------------------
request
------------------------------------------------------------*/
#request {
	background: url(../img/index/request_bg.jpg) no-repeat;
	background-position: left 0;
}
#front main #request .contentWrapper {
	padding: 4rem 0 4rem 20rem;
}
#request .telMail.infoWrapper .tel {
	color: #000;
	font-size: 3rem;
}
#request .textBox {
	margin-bottom: 3rem;
}
#request .textBox p {
	font-weight: 500;
	font-size: 1.8rem;
}
#request .telMail.infoWrapper .time {
	font-size: 18px;
	font-weight: 500;
}
#request .telMail.infoWrapper .mail {
	font-size: 1.3rem;
	padding: 21px 40px 20px 70px;
}
#request .telMail.infoWrapper .mail::after {
	top: 21px;
	left: 20px;
}
#request .telMail.infoWrapper .telBox {
	margin: 8px 25px 0 0;
}
/*------------------------------------------------------------
black
------------------------------------------------------------*/
#black .textBox {
	background: #333;
	padding: 1rem;
	margin: -32px -500px 0 -500px;
}
#black .textBox p {
	color: #fff;
	font-size: 2.5rem;
	text-align: center;
}
#black .contsBox {
	padding: 40px 0 0 0;
}
#black .contsBox .box {
	width: 30%;
}
#black .contsBox .box p {
	padding: 10px 0 0 35px;
	position: relative;
}
#black .contsBox .box p::after {
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	left: 0;
	top: 13px;
	background: #f16500;
}
/*------------------------------------------------------------
contract
------------------------------------------------------------*/
#contract {
	background: url(../img/index/contract_bg.jpg) no-repeat;
	background-size: cover;
	background-position: 0;
}
#front main #contract .contentWrapper {
	padding: 4rem 2rem;
}
#contract h2 {
	background: none;
	margin-bottom: 25px;
	font-size: 30px;
	font-weight: 500;
	line-height: 38px;
}
#contract .contsBox .box {
	margin-bottom: 15px;
}
#contract .contsBox .box p {
	color: #fff;
	font-size: 18px;
	position: relative;
	padding: 0 0 0 35px;
}
#contract .contsBox .box p::before {
	position: absolute;
	content: "";
	width: 10px;
	height: 50px;
	left: 0;
	top: 5px;
	background: #fff;
}
#contract .contsBox .box p span {
	color: #ffdc73;
}
/*------------------------------------------------------------
feature
------------------------------------------------------------*/
#feature .contsBox {
	margin-bottom: 30px;
}
#feature .contsBox .box {
	width: 30%;
	background: #f0f0e1;
	padding: 1.5rem;
}
#feature .contsBox .box h3 {
	font-size: 2rem;
	margin-bottom: 30px;
	position: relative;
	padding: 0 0 0 35px;
}
#feature .contsBox .box h3::after {
	position: absolute;
	content: "";
	width: 25px;
	height: 25px;
	left: 0;
	top: 11px;
	background: #f16500;
}
#feature .contsBox .box p span {
	display: block;
	margin-bottom: 30px;
	font-size: 1.4rem;
	font-weight: 500;
}
/*------------------------------------------------------------
greeting
------------------------------------------------------------*/
#greeting .greetingBg {
	background: url(../img/index/greeting_bg.jpg) no-repeat;
	background-position: left 0;
	margin-left: -350px;
	padding: 10px 0;
	width: 2500px;
}
#greeting .contsBox {
	background: #94704ced;
	color: #fff;
	padding: 5rem 75rem 5rem 3rem;
	margin: 0 0 0 35rem;
}
#greeting .contsBox .boxTop {
	margin-bottom: 50px;
}
#greeting h2 {
	padding: 5px 0 5px 400px;
}
#greeting .contsBox .boxBottom h3 {
	margin-bottom: 25px;
}
#greeting .contsBox .boxBottom h3 span {
	display: block;
	position: relative;
}
#greeting .contsBox .boxBottom h3 span::after {
	position: absolute;
	content: "";
	background: #ba840094;
	height: 8px;
	width: 500px;
	top: 20px;
	left: 0;
	margin-left: -48px;
}
/*------------------------------------------------------------
service
------------------------------------------------------------*/
#service .contsBox {
	margin-bottom: 30px;
}
#service .contsBox .box {
	width: 48%;
	padding: 20px;
	border: 1px solid #676767;
	margin-bottom: 15px;
}
#service .contsBox .box h3 {
	position: relative;
	margin-bottom: 15px;
	font-weight: 500;
}
#service .contsBox .box h3:after {
	background: #f16500;
	position: absolute;
	content: "";
	width: 300px;
	height: 2px;
	left: -20px;
	top: 30px;
}
/*------------------------------------------------------------
cost
------------------------------------------------------------*/
#cost .contsBox {
	margin-bottom: 30px;
}
#cost .contsBox .box {
	width: 48%;
	padding: 20px;
	border: 1px solid #676767;
	margin-bottom: 15px;
}
#cost .contsBox .box h3 {
	position: relative;
	margin-bottom: 15px;
	font-size: 1.4rem;
}
#cost .contsBox .box h3:after {
	background: #f18b00;
	position: absolute;
	content: "";
	width: 300px;
	height: 2px;
	left: -20px;
	top: 30px;
}
#cost .contsBox .box .one {
	background: #666666;
	color: #fff;
	margin: 0 10px 10px 0;
	width: 35%;
}
#cost .contsBox .box .one p {
	font-size: 18px;
	font-weight: 500;
	text-align: center;
}
#cost .contsBox .box .two p span {
	margin-right: 10px;
	font-size: 1.5rem;
	font-weight: 500;
}
/*------------------------------------------------------------
flow
------------------------------------------------------------*/
#flow .contsBox {
	padding: 40px 0 0 0;
	margin-bottom: 30px;
}
#flow .contsBox .box {
	width: 23%;
	position: relative;
}
#flow .contsBox .box p {
	padding: 10px 0 0 35px;
	position: relative;
	font-weight: 500;
	font-size: 20px;
}
#flow .contsBox .box p::after {
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	left: 0;
	top: 13px;
	background: #f16500;
}
#flow .contsBox .box span {
	display: block;
	margin: 10px 0 0 -35px;
	font-size: 16px;
}
#flow .contsBox .box::after {
	position: absolute;
	content: "";
	top: 65px;
	right: -17px;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid #333;
}
#flow .contsBox .box.two::after {
	display: none;
}
/*------------------------------------------------------------
choice1
------------------------------------------------------------*/
#choice1 {
	background: #575748;
	margin-bottom: 50px;
}
#choice1 .h2wrapper{
	margin: 0 -200% 0;
	padding: 0 200% 0;
	background: #fff;
}
#choice1 h2 {
	background: #575748;
	padding: 5px 0 5px 42rem;
	margin: 0 0 30px -240px;
	position: relative;
	width: 1100px;
}
#choice1 .contsBox .Box {
	width: 48%;
}
#choice1 .contsBox .box {
	margin-bottom: 25px;
	background: #fff;
}
#choice1 .contsBox .box h3 {
	padding: 5px 0 5px 35px;
	font-weight: 500;
	position: relative;
}
#choice1 .contsBox .box h3::after {
	position: absolute;
	content: "";
	width: 15px;
	height: 15px;
	left: 10px;
	top: 13px;
	background: #f16500;
}
#choice1 .contsBox .box ul {
	background: #eeeeee;
	padding: 10px 15px;
}
#choice1 .contsBox .box ul li::before {
	content: "・";
}
/*------------------------------------------------------------
choice2
------------------------------------------------------------*/
#choice2 {
	background: #333333;
}
#choice2 .h2wrapper{
	margin: 0 -200% 0;
	padding: 0 200% 0;
	background: #fff;
}
#choice2 h2 {
	background: #333;
	padding: 5px 0 5px 42rem;
	margin: 0 0 30px -240px;
	position: relative;
	width: 1100px;
}
#choice2 .contsBox .Box {
	width: 48%;
}
#choice2 .contsBox .box {
	margin-bottom: 25px;
	background: #fff;
}
#choice2 .contsBox .box h3 {
	padding: 5px 0 5px 35px;
	font-weight: 500;
	position: relative;
}
#choice2 .contsBox .box h3::after {
	position: absolute;
	content: "";
	width: 15px;
	height: 15px;
	left: 10px;
	top: 13px;
	background: #f16500;
}
#choice2 .contsBox .box ul {
	background: #eeeeee;
	padding: 10px 15px;
}
#choice2 .contsBox .box ul li::before {
	content: "・";
}

/*------------------------------------------------------------
qa
------------------------------------------------------------*/
#qa  {
	background: #333333;
	margin-bottom: 30px;
}
#qa h3 {
	background: #fff;
	margin-bottom: 20px;
	position: relative;
}
#qa h3 a {
	padding: 5px 20px 5px 35px;
	width: 100%;
}
#qa h3::after {
	position: absolute;
	content: "";
	top: 15px;
	left: 10px;
	width: 10px;
	height: 10px;
	background: #f98a00;
}
#front #qa .clickBox {
	margin: 0 0 0 780px;
}
#front #qa .clickBox a {
	width: 240px;
	margin: 0;
	padding: 10px 0 10px 0;
	font-size: 21px;
	background: #acac9b;
	border-bottom: none;
	border-radius: 0;
}
#front #qa .clickBox a::after {
	display: none;
}
/*------------------------------------------------------------
office
------------------------------------------------------------*/
#office .telMail.infoWrapper .tel {
	color: #000;
}
#office h2 {
	margin: 0 -75% 0 -55%;
	padding: 5px 75% 5px 55%;
}
#office .contsBox {
	margin: 0 -200%;
	padding: 0 200%;
	border-top: solid 2px #424242;
	border-bottom: solid 2px #424242;
}
#office .contsBox .imgbox {
	margin: 0 0 0 -300px;
	width: 70%;
}
#office .contsBox .rightBox {
	width: 58%;
}
#office .contsBox .rightBox .textbox h3 {
	font-size: 2.8rem;
	font-weight: 500;
	padding: 100px 0 20px 0;
}
#office .contsBox .rightBox .textbox .inBox p {
	padding: 15px 0;
	font-size: 18px;
}
#office .contsBox .rightBox .textbox .inBox {
	margin-bottom: 30px;
}
#office .telMail.infoWrapper .telBox {
	width: 50%;
	margin: 0;
}
#office .telMail.infoWrapper .telBox a {
	font-size: 2.8rem;
}
#office .telMail.infoWrapper .mail {
	width: 48%;
	font-size: 1.3rem;
	padding: 22px 25px 16px 55px;
}
#office .telMail.infoWrapper .mail::after {
	top: 21px;
}
/*------------------------------------------------------------
clickBox
------------------------------------------------------------*/
#front #clickBox .clickBox::after {
	background: #a5a5a5;
	height: 2px;
}
#front #clickBox .basicLink {
	background: #f0f0df;
	padding: 8px 400px 5px 20px;
}
#column .columnContent {
	width: 30%; 
	background: #dddddd;
	padding: 25px 25px 10px 25px;
	margin-bottom: 20px;
}
#column .archive h3 {
	position: relative;
	padding: 6px 0 0 55px;
	margin-bottom: 30px;
}
#column .archive h3::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 50px;
	height: 43px;
	background: url(../img/index/columnlogo.jpg)no-repeat;
}
#column .categoly {
	padding: 0 0 0 170px;
}
#column .categoly a {
	background: #ff8900;
	border: none;
	color: #fff;
}
#column .archive h3::before {
	position: absolute;
	content: "";
	width: 100%;
	border-bottom: 1px solid#fff;
	top: 55px;
	left: 0;
}
#front #column .clickBox {
	margin: 0 0 0 780px;
}
#front #column .clickBox a {
	width: 240px;
	margin: 0;
	padding: 10px 0 10px 0;
	font-size: 21px;
	background: #acac9b;
	border-bottom: none;
	border-radius: 0;
}


@media (max-width: 1025px) {
	#front #mainView .inBox .topBox .textBox {
		width: 70%;
	}
	#front #mainView .inBox .bottomBox .box1, #front #mainView .inBox .bottomBox .box2, #front #mainView .inBox .bottomBox .box3 {
		width: 80%;
	}
	#front .clickBox {
		margin: 0 0 0 650px;
	}
	#greeting h2 {
		padding: 5px 0 5px 600px;
	}
	#greeting .greetingBg {
		margin-left: -50px;
	}
	#greeting .contsBox {
		margin: 0 0 0 25rem;
		width: 72%;
	}
	#choice1 h2,
	#choice2 h2 {
		margin: 0 0 30px -40rem;
	}
	#front #qa .clickBox,
	#front #column .clickBox {
		margin: 0 0 0 650px;
	}
	#office .contsBox .imgbox,
	#office .contsBox .rightBox {
		width: 100%;
	}
	#office .contsBox .imgbox {
		width: 65%;
		margin: 20px auto;
	}
	#office .contsBox .rightBox {
		width: 90%;
		margin: 0 auto;
	}
	#office .contsBox .rightBox .telMail {
		margin-bottom: 20px;
	}
	#office .contsBox .rightBox .textbox h3 {
		padding: 0;
	}
	#office .telMail.infoWrapper .mail {
		font-size: 1.5rem;
		padding: 20px 25px 20px 80px;
	}
	#office .telMail.infoWrapper .mail::after {
		left: 28px;
	}
	#office .telMail.infoWrapper .telBox {
		margin-top: 10px;
		text-align: center;
	}
}

@media (max-width: 999px) {
	#front .underlayerWrapper.double{
		padding: 10px;
	}
	.telMail.infoWrapper .time {
		text-align: center;
	}
	#front #mainView .inBox .topBox {
		margin-left: 30px;
	}
	#front #mainView .inBox .bottomBox .box1, #front #mainView .inBox .bottomBox .box2, #front #mainView .inBox .bottomBox .box3 {
		padding: 5px 0 5px 150px;
	}
	#front #mainView .inBox .bottomBox .box1::after, #front #mainView .inBox .bottomBox .box2::after, #front #mainView .inBox .bottomBox .box3::after {
		top: 11px;
		left: 100px;
	}
	#shortSupport p {
		font-size: 1.5rem;
	}
	#front main #request .contentWrapper {
		padding: 55px 45px;
	}
	#black .textBox p {
		font-size: 1.5rem;
	}
	#front .clickBox {
		margin: 0 0 0 450px;
	}
	#greeting .contsBox {
		margin: 0 0 0 1rem;
		background: #94704c91;
		padding: 5rem 68rem 5rem 3rem;
	}
	#choice1 h2, #choice2 h2 {
		margin: 0 0 0 -40rem;
	}
	#office .telMail.infoWrapper .mail {
		padding: 20px 25px 20px 65px;
		font-size: 1.3rem;
	}
	#office .telMail.infoWrapper .mail::after {
		left: 22px;
	}
	#column .columnContent {
		width: 48%;
	}
	#column .categoly {
		padding: 0 0 0 200px;
	}
	#front #qa .clickBox, #front #column .clickBox {
		margin: 0 0 0 460px;
	}
	#request .telMail.infoWrapper .telBox {
		margin: 10px 0 0 0;
	}
	#feature .contsBox .box {
		width: 47%;
		margin-bottom: 20px;
	}
}

@media (max-width: 480px) {
	#front .underlayerWrapper.double{
		padding: 10px;
	}
	#front section .contentWrapper{
		padding: 1rem;
		margin: 0;
	}
	#black .contsBox .box {
		width: 100%;
		margin-bottom: 10px;
	}
	#contract h2 {
		width: 100%;
		padding: 0;
		margin: 0 0 25px 0;
		font-size: 25px;
	}
	#front h2,
	#greeting h2,
	#service h2 {
		width: 100%;
		padding: 0;
		margin: 0 0 15px 0;
	}
	#feature .contsBox .box,
	#service .contsBox .box,
	#choice1 .contsBox .Box,
	#choice2 .contsBox .Box,
	#flow .contsBox .box,
	#cost .contsBox .box,
	#vice .columnContent .leftWrapper,
	#vice .columnContent .rightWrapper,
	#column .columnContent,
	#front #mainView .inBox .topBox .textBox,
	#request .telMail.infoWrapper .telBox,
	#request .telMail.infoWrapper .mail,
	#office .telMail.infoWrapper .telBox,
	#office .telMail.infoWrapper .mail {
		width: 100%;
	}
	#front #mainView .inBox .topBox {
		margin: 0 0 15px 10px;
	}
	#front #mainView .inBox .topBox .textBox p {
		padding-top: 0;
	}
	#front #mainView .inBox .bottomBox .box1, #front #mainView .inBox .bottomBox .box2, #front #mainView .inBox .bottomBox .box3 {
		padding: 5px 0 5px 45px;
		width: 95%;
		margin-bottom: 8px;
	}
	#front #mainView .inBox .bottomBox .box1 p, #front #mainView .inBox .bottomBox .box2 p, #front #mainView .inBox .bottomBox .box3 p {
		font-size: 17px;
	}
	#front #mainView .inBox .bottomBox .box1::after, #front #mainView .inBox .bottomBox .box2::after, #front #mainView .inBox .bottomBox .box3::after {
		top: 5px;
		left: 8px;
	}
	#front #mainView .inBox {
		padding: 20px 0;
	}
	#shortSupport p {
		font-size: 14px;
	}
	#request .textBox {
		margin-bottom: 10px;
	}
	#request .textBox p {
		font-size: 15px;
	}
	#request .telMail.infoWrapper .tel {
		font-size: 30px;
	}
	#request .telMail.infoWrapper .mail {
		padding: 11px 0 10px 60px;
	}
	#request .telMail.infoWrapper .mail::after {
		top: 11px;
	}
	#request .telMail.infoWrapper .telBox {
		text-align: center;
	}
	#front main #request .contentWrapper {
		padding: 2rem;
	}
	#greeting .contsBox {
		margin: 0;
		padding: 10px;
		width: 100%;
	}
	#greeting .greetingBg {
		width: 100%;
		margin-left: 0px;
	}
	#greeting .contsBox .boxBottom h3 span::after {
		width: 270px;
		left: 45px;
	}
	#greeting .contsBox .boxTop {
		margin-bottom: 15px;
	}
	#greeting .contsBox .boxBottom h3 {
		margin-bottom: 10px;
	}
	#greeting p {
		font-size: 14px;
	}
	#flow .contsBox .box::after {
		display: none;
	}
	#office .contsBox .rightBox .textbox h3 {
		font-size: 1.5rem;
	}
	#office .contsBox .rightBox .textbox .inBox {
		margin-bottom: 10px;
	}
	#office .contsBox .rightBox .textbox .inBox p {
		padding: 8px 0;
		font-size: 14px;
	}
	#front h2, #greeting h2, #service h2 {
		width: 103%;
		padding: 0 15px;
		margin: 0 0 15px -15px;
	}
	#front #choice1 h2, #front #choice2 h2 {
		margin: 0;
		padding: 0 15px;
		width: 100%;
	}
	#office .telMail.infoWrapper .telBox a {
		font-size: 2rem;
	}
	#office .telMail.infoWrapper .mail {
		padding: 13px 0 13px 65px;
	}
	#office .telMail.infoWrapper .mail::after {
		top: 13px;
	}
	#front #mainView .inBox .topBox .imgBox {
		display: none;
	}
	#front #mainView .inBox .topBox .textBox p {
		font-size: 1.3rem;
	}
	#front #mainView {
		min-height: 250px;
	}
	#front main #contract .contentWrapper {
		padding: 2rem 1rem;
	}
	#choice1 .h2wrapper,
	#choice2 .h2wrapper {
		margin: 0;
		padding: 0;
	}
	#black .textBox {
		margin: 0;
	}
	#front .clickBox {
		margin: 0 0 0 70px;
		width: 100%;
	}
	#front .clickBox a {
		padding: 10px 0 10px 50px;
	}
	#office .contsBox {
		margin: 0;
		padding: 0;
	}
	#front #vice .clickBox a {
		padding: 10px 0 10px 0;
	}
}