/****************************************
	‹¤’Ê
****************************************/

html, body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6 {
	margin:0;
	padding:0;
}

ul, ol, li {
  list-style:none;
}

table{
  border-collapse:collapse;
  border-spacing:0;
  border:none;
}

a {
	text-decoration:none;
	color:#808080;
}

a:hover {
	text-decoration:underline;
	color:#000000;
}
.clearfix {
	clear: both;
}

/****************************************
	html
****************************************/
html {
	min-height: 100%;
	position: relative;
}

/****************************************
	body
****************************************/
body {
	font-family:"ƒJƒNƒ~ƒ“ R", "Kakumin Regular" , "Ÿà–¾’©", "YuMincho", "ƒqƒ‰ƒMƒm–¾’© ProN W3", "Hiragino Mincho ProN", "HG–¾’©E", "‚l‚r ‚o–¾’©", "‚l‚r –¾’©", serif;
	background:#ffffff;
	word-wrap:break-word;
	overflow-wrap:break-word;
	
}

body.g_active {
	overflow:hidden;
}

/****************************************
	wrapper
****************************************/
#wrapper {
	position:relative;
	width:100%;
	height: 100vh;
	max-width:2000px;
	margin:0px auto;
	display:none;
	
}

/****************************************
	@keyframes
****************************************/
@keyframes upDown {
	0% { transform:translateY(-5px); }
	50% { transform:translateY(0px); }
	100% { transform:translateY(-5px); }
}

@keyframes rotate {
	0% {transform: rotate(0deg);}
	100% {transform: rotate(360deg);}
}

@keyframes rotate2 {
	0% {transform: rotate(-15deg);}
	25% {transform: rotate(0deg);}
	50% {transform: rotate(15deg);}
	75% {transform: rotate(0deg);}
	100% {transform: rotate(-15deg);}
}

/****************************************
	menu
****************************************/
menu {
	margin:0px;
	padding:0px;
}

/****************************************
	header
****************************************/
header {
	position:relative;
	width:100%;
	padding:5px 0px;
	height:60px;
}

header #header_img1 {
	position:absolute;
	top:5px;
	left:0px;
	width:470px;
}

header #header_img2 {
	position:absolute;
	top:5px;
	right:0px;
	width:240px;
	cursor:pointer;
}


@media screen and (max-width:768px){

	header {
		height:auto;
	}

	header #header_img1 {
		display:block;
		position:relative;
		top:auto;
		left:auto;
		width:100%;
	}

	header #header_img2 {
		display:block;
		position:relative;
		top:auto;
		left:auto;
		width:100%;
		text-align:right;
	}
}

@media screen and (max-width:488px){
	
	header #header_img1 img {
		width:100%;
	}

}


/****************************************
	common
****************************************/
.center_960{
	width:100%;
	margin:0px auto;
	max-width:960px;
}

hr {
	width:90%;
}

p {
	line-height:1.5em;
}

.font_L {
	font-weight:bold;
	font-size:24px;
}

.font_LL {
	font-weight:bold;
	font-size:36px;
}

.color_f00 {
	color:#f00;
}

.flex_box_480 {
	display:flex;
}

.img_content img {
	width:100%;
}

@media screen and (max-width:768px){


}

@media screen and (max-width:480px){

	.flex_box_480 {
		display:block;
	}

}

/****************************************
	index main
****************************************/
main {
	position:relative;
	width:100%;
}

section#top img {
	width:100%;
}

section#top #bg_sp {
	display:none;
}

section.content .caution_img {
	width:30%;
	box-sizing:border-box;
	padding:5px;
}

section.content .caution_img img {
	width:100%;
}

section.content .caution_sentence {
	width:70%;
	box-sizing:border-box;
	padding:5px;
}

section.content .caution_sentence .caution_title {
	font-weight:bold;
	font-size:24px;
	color:#f00;
	
}

section#work #work_title {
	text-align:center;
}

section#work #work_title #w_price_criterion {
	display:inline-block;
	width:740px;
	margin: 0px 10px 5px 0px;
	background:#ea5514;
	box-sizing:border-box;
	padding:5px 0px;
	color:#fff;
	font-size:36px;
	font-weight:bold;
}

section#work #work_title #w_price_one {
	display:inline-block;
	width:180px;
	box-sizing:border-box;
	padding:5px 0px;
	color:#fff;
	font-size:14px;
	font-weight:bold;
}


section#work table {
	width:100%;
}

section#work table th {
	width:30%;
	box-sizing:border-box;
	padding:5px;
}

section#work table th img {
	width:100%;
}

section#work table td {
	width:70%;
	box-sizing:border-box;
	padding:5px;
	vertical-align:top;
}

section#work table td .w_price {
	font-weight:bold;
	font-size:36px;
}

section#work table td .estimate {
	text-align:right;
}

section#work table td .estimate .w_estimate {
	display:inline-block;
	width:180px;
	background:#f00;
	color:#fff;
	text-align:center;
	font-weight:bold;
	font-size:20px;
	box-sizing:border-box;
	padding:10px 0px;
}

section#company_info {
	text-align:right;
}

section#company_info a {
	font-size:24px;
}

@media screen and (max-width:768px){
	
	section#top #bg {
		display:none;
	}

	section#top #bg_sp {
		display:block;
	}
	
	section#work #work_title #w_price_criterion {
		display:block;
		width:90%;
		margin: 0px auto;
	}

	section#work #work_title #w_price_one {
		display:block;
		width:100%;
	}

}

@media screen and (max-width:480px){

	section.content .caution_img {
		width:100%;
	}

	section.content .caution_sentence {
		width:100%;
	}
	
	section#work table th,
	section#work table td {
		display:block;
		width:100%;
	}
	
}

/****************************************
	company main
****************************************/
section#company {
	box-sizing:border-box;
	padding:30px 5px;
}

section#company #company_title {
	font-weight:bold;
	font-size:24px;
	margin-bottom:20px;
	border-bottom:3px solid #000066;
}

section#company table {
	width:730px;
	margin:0px auto;
} 

section#company table th {
	width:20%;
	box-sizing:border-box;
	border:1px solid #c0c0c0;
	padding:5px;
}

section#company table td {
	width:80%;
	box-sizing:border-box;
	border:1px solid #c0c0c0;
	padding:5px;
}

@media screen and (max-width:768px){
	
	section#company table {
		width:100%;
	}
	
}

@media screen and (max-width:480px){
	
	section#company table th {
		display:block;
		background:#e0e0e0;
		width:100%;
		border-bottom:none;
		text-align:left;
	}
	
	section#company table td {
		display:block;
		width:100%;
	}

}


/****************************************
	main access
****************************************/
main #access #access_adress {
}

main #access h4 {
	margin:10px 0px;
}

main #access #access_adress iframe {
	width:100%;
	height:400px;
}

main #access #mail_area {
	border:1px solid #000066;
	width:100%;
	background:#fff;
	box-sizing:border-box;
	padding:20px;
}
main #access #mail_area table {
	width:100%;
}
main #access #mail_area tr {
	border-bottom:1px dashed #c0c0c0;
}

main #access #mail_area td {
	padding:10px 0px;
	text-align:left;
	vertical-align:top;
}

main #access #mail_area td.mail_required {
	color:#f00;
	vertical-align:top;
}

main #access #mail_area td #input_name,
main #access #mail_area td #input_furigana,
main #access #mail_area td #input_corporate,
main #access #mail_area td #input_tel,
main #access #mail_area td #input_mail,
main #access #mail_area td #input_mail2 {
	width:100%;
}
main #access #mail_area td #input_content {
	width:100%;
	height:7em;
}

main #access #mail_area #mail_confirm {
	margin:20px 0px 0px;
	text-align:center;
}

main #access #mail_area #error_input_name,
main #access #mail_area #error_input_furigana,
main #access #mail_area #error_input_tel_1,
main #access #mail_area #error_input_tel_2,
main #access #mail_area #error_input_mail_1,
main #access #mail_area #error_input_mail_2,
main #access #mail_area #error_input_mail2_1,
main #access #mail_area #error_input_mail2_2,
main #access #mail_area #error_input_content {
	font-size:14px;
	color:#f00;
	display:none;
}

@media screen and (max-width:768px){
	main #access #mail_area td.mail_text {
		width:100%;
	}
	
	main #access #mail_area td.mail_required {
		display:inline;
	}
	main #access #mail_area td.mail_text {
		display:inline;
	}
	main #access #mail_area td.mail_input_text {
		display:block;
	}
	
}

/****************************************
	main mail_confirm
****************************************/
main #mail_confirm #mail_area {
	border:1px solid #000066;
	width:100%;
	background:#fff;
	box-sizing:border-box;
	padding:20px;
}
main #mail_confirm #mail_area table {
	width:100%;
}
main #mail_confirm #mail_area tr {
	border-bottom:1px dashed #c0c0c0;
}

main #mail_confirm #mail_area td {
	box-sizing:border-box;
	padding:10px 0px;
	text-align:left;
	vertical-align:top;
	width:80px;
}

main #mail_confirm #mail_area #mail_send {
	margin:20px 0px 0px;
	text-align:center;
}

@media screen and (max-width:768px){
	
	main #mail_confirm #mail_area td,
	main #mail_confirm #mail_area td.mail_text {
		width:100%;
		display:block;
	}
	
}


/****************************************
	footer
****************************************/
footer {
	position:relative;
	width:100%;
	padding-top:60%;
	background:url(../img/footer.png) no-repeat;
	background-size:100% auto;
}

footer #footer_content {
	position:absolute;
	top:50%;
	left:50%;
	width:70%;
	transform: translate(-50%,-50%);
}

footer #footer_content #f_estimate{
	text-align:center;
}

footer #footer_content #f_estimate img {
	width:70%;
}

footer #footer_content #f_tel {
	text-align:center;
	cursor:pointer;
}

footer #footer_content #f_tel img {
	width:70%;
}

footer #f_info {
	position:absolute;
	right:5px;
	bottom:5px;
}

footer #f_info img {
	width:100%;
}

footer p {
	font-weight:bold;
	font-size:18px;
	color:#f00;
	text-shadow:2px 2px #fff;
}



@media screen and (max-width:768px){
	
}

/****************************************
	page_to_top
****************************************/
section#page_to_top {
	position:fixed;
	right:5px;
	bottom:5px;
	z-index:99;
	background:rgba(0,0,0,0.8);
	color:#fff;
	box-sizing:border-box;
	padding:10px 0px;
	width:50px;
	text-align:center;
	cursor:pointer;
	display:none;
}


