@charset "utf-8";
/* CSS Document */

body {
	-webkit-text-size-adjust: 100%;
}

h1 {
	margin: 0;
	padding: 0;
}

p, dl, dt, dd {
	margin: 0;
	padding: 0;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

li {
	float: left;
}

td {
	text-align: left;
}

img {
	border: 0;
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

#wrapper {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

header {
	width: 89.0625%;/*1140/1280*/
	margin: 0 auto;
}

.logo {
	float: left;
}

.gmenu {
	float: right;
	margin-right: 37px;
}

.gmenu01, .gmenu02, .gmenu03 {
	width: 110px;
	color: #303030;
	text-align: center;
	font-size: 14px;
	padding-top: 40px;
}

.gmenu01 a, .gmenu02 a, .gmenu03 a {
	color: #303030;
	text-decoration: none;
}

.gmenu04 {
	width: 110px;
	text-align: center;
	font-size: 14px;
	padding-top: 40px;
	background-color: #4D4D4D;
	color: #FFF;
}

.gmenu04 a {
	color: #FFF;
	text-decoration: none;
}

.business_vline {
	border-left: 3px solid #F00;
	height: 20px;
	margin-left: 53px;
	margin-top: 6px;
	margin-bottom: 12px;
}

.mainimage {
	width: 89.0625%;/*1140/1280*/
	margin: 0 auto;
	clear: both;
	position: relative;
}

.maintext {
	color: #303030;
	font-size: 17px;
	line-height: 220%;
	text-align: center;
	margin-top: 31px;
	margin-bottom: 31px;
}

.contents {
	width: 89.0625%;/*1140/1280*/
	margin: 0 auto;
	clear: both;
}

.leftbox {
	float: left;
	width: 31.57894736842105%;/*360/1140*/
	margin-right: 2.631578947368421%;
	box-sizing: border-box;
}

.leftbox img {
	border: 3px solid #F00;
}

.centerbox {
	float: left;
	width: 31.57894736842105%;/*360/1140*/
	margin-right: 2.631578947368421%;
	box-sizing: border-box;
}

.rightbox {
	float: left;
	width: 31.57894736842105%;/*360/1140*/
	box-sizing: border-box;
}

.blog {
	clear: both;
	padding-top: 60px;
	text-align: center;
}

footer {
	background-color: #CCCCCC;
	padding-top: 10px;
	padding-bottom: 10px;
	display: table;
	width: 100%;
	margin-top: 60px;
}

.footer {
	width: 75.3125%;/*964/1280*/
	margin: 0 auto;
}

.footerleft {
	float: left;
}

.footerleft strong {
	font-size: 20px;
	letter-spacing: 0.2em;
}

.footerleft span {
	font-size: 13px;
}

.footerright {
	float: right;
	margin-top: 25px;
}

.footerright small {
	font-size: 10px;
	color: #303030;
}

#hamburger_menu, #menu {
	display: none;
}

.hover_business {
	position: absolute;
	top: -18px;
	right: 0;
	background-color: #FFF;
}

.hover_business01, .hover_business02, .hover_business03 {
	float: left;
	padding: 11px 0 25px 0;
	width: 190px;
	text-align: center;
	font-size: 13px;
}

.hover_business01 a, .hover_business02 a, .hover_business03 a {
	color: #000;
	text-decoration: none;
}

.redarrow {
	font-size: 11px;
	color: #F00;
}

.tb_hyou {
	font-size: 14px;
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
}

.tb_hyou th, .tb_hyou td {
	padding: 5px;
	border: 1px solid #ddd;
}

.tb_hyou th {
	width: 20%;
	text-align: center;
	color: #FFF;
	background-color: #333;
}

.pt40 {
	padding-top: 40px;
}

.tbcss{
	width: 100%;
	border-collapse: collapse;
}

.tbcss th{
	width: 40%;
	padding: 6px;
	text-align: left;
	vertical-align: top;
	color: #FFF;
	background-color: #333;
	border: 1px solid #b9b9b9;
	box-sizing: border-box;
}

.tbcss td{
	padding: 6px;
	background-color: #fff;
	border: 1px solid #b9b9b9;
	box-sizing: border-box;
}

/*お問い合わせ*/
.mybtn {
	border: solid 1px #ccc;
	border-radius: 5px 5px 5px 5px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.4);
	margin:1%;
	font-size:16px;
	display:inline-block;
	-moz-box-align: center;
	-webkit-box-align: center;
	-moz-box-pack: center;
	-webkit-box-pack: center;
	line-height:20px;
	cursor:pointer;
	font-weight:bold;
	text-align:center;
	height:30px;
	width:100px;
	background-color:#fff;
}

.mybtn:hover {
	background-color:#81d9ff;
}

.linetable {
	width:600px;
	margin-top:20px;
	border-collapse: collapse;
}

.linetable td {
	border: 1px solid #666;
	text-align:left;
	padding:3px;
}

.linetable th {
	border: 1px solid #666;
	text-align:left;
	padding:3px;
}

.chu {
	color:#c00;
}

.linetable .inp_text {
	border: 1px solid #666; /* 枠線は淡い青色 */
	border-radius: 5px 5px 5px 5px;
	height:20px;
	font-size:16px;
	background-color:#fff;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 300px;
}

.inp_textarea {
	resize: vertical;
	border: 1px solid #666; /* 枠線は淡い青色 */
	width:596px;
	height:100px;
	font-size:16px;
	background-color:#fff;
}

.inp_textarea2 {
	border: 1px solid #666; /* 枠線は淡い青色 */
	width:596px;
	height:100px;
	font-size:16px;
}

.linetable .inp_text:focus {
	width: 370px;
}

#topbox {
	min-height: -webkit-calc(100vh - 340px);
	min-height: -moz-calc(100vh - 340px);
	min-height: calc(100vh - 340px);
}

textarea {
	width: 300px;
	height: 120px;
}

.title01 {
	color: #333;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #333;
	display: block !important;
	text-align: center;
	margin-bottom: 40px;
}

/*ブログ*/
.mt50 {
	margin-top: 50px;
}

.newsbox {
	width: 90%;
	max-width: 480px;
	margin: 0 auto;
}

.newsbox dl {
	font-size: 15px;
	padding-left: 20px;
	margin-top: 10px;
}

.newsbox dl dt {
	float: left;
	margin-right: 20px;
}

@media only screen and (max-width: 680px) {
/*下記よりsp時の記述*/

.pc {
	display: none;
}

.sp {
	display: block;
}

header {
	width: 100%;/*480/480*/
	margin: 0 auto;
}

.logo {
	float: none;
	text-align: center;
}

.gmenu {
	float: right;
	margin-right: 37px;
	display: none;
}

.mainimage {
	width: 100%;/*480/480*/
	margin: 0 auto;
	clear: both;
	position: relative;
}

.contents {
	width: 100%;/*480/480*/
	margin: 0 auto;
	clear: both;
}

.leftbox {
	float: none;
	width: 52.94117647058824%;/*360/680*/
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 22px;
}

.centerbox {
	float: none;
	width: 52.94117647058824%;/*360/680*/
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 22px;
}

.rightbox {
	float: none;
	width: 52.94117647058824%;/*360/680*/
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 22px;
}

.blog {
	float: none;
	width: 52.94117647058824%;/*360/680*/
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 22px;
}

.footerleft {
	float: none;
	text-align: center;
}

.footerright {
	float: none;
	margin-top: 25px;
	text-align: center;
}

#hamburger_menu {
	display: block;
	width: 100%;
	position: relative;
	top: -38px;
}

#menu_text_wrap {
	position: relative;
	float: left;
	width: 100%;
	height: 25px;
	padding-top: 9px;
}

#menu_text {
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	margin-top: -4px;
}

.hamburger_line_wrap {
	position: absolute;
	right: 0;
}

.hamburger_line {
	position: relative;
	float: left;
	width: 28px;
	height: 24px;
	cursor: pointer;
	overflow: hidden;
	z-index: 1;
	background-color: #D7000F;
	border-top: #D7000F solid 3px;
	padding: 3px 6px 8px 6px;
}

.hamburger_line1, .hamburger_line2, .hamburger_line3 {
	position: absolute;
	width: 28px;
	height: 3px;
	background-color: #FFF;
	border-radius: 20px;
	transition: all 0.5s ease-out; -o-transition: all 0.5s ease-out;
	-moz-transition: all 0.5s ease-out;
	-webkit-transition: all 0.5s ease-out;
	-ms-transition: all 0.5s ease-out;
}

.hamburger_line1 {
	top: 5px;
}

.hamburger_line2 {
	top: 15px;
}

.hamburger_line3 {
	top: 25px;
}

.hamburger_line1-anime {
	top: 15px;
	-o-transform: rotate(405deg);
	-moz-transform: rotate(405deg);
	-webkit-transform: rotate(405deg);
	-ms-transform: rotate(405deg);
	transform: rotate(405deg);
}

.hamburger_line2-anime {
	background-color: rgba(255,255,255,0);
}

.hamburger_line3-anime {
	top: 15px;
	-o-transform: rotate(-405deg);
	-moz-transform: rotate(-405deg);
	-webkit-transform: rotate(-405deg);
	-ms-transform: rotate(-405deg);
	transform: rotate(-405deg);
}

#menu_wrap {
	position: relative;
	width: 100%;
}

#menu {
	position: absolute;
	width: 100%;
	display: block;
	position: absolute;
	top: -8px;
	margin-top: 8px;
	padding: 0;
	opacity: 0.9;
	z-index: 9999;
}

#menu li {
	list-style: none;
	background-color: #FFF;
	width: 70%;
	border-bottom: 1px solid #B3B3B3;
	font-size: 19px;
	padding: 8px 20px;
	float: right;
}

#menu li a {
	color: #303030;
	text-decoration: none;
}

#menu li span {
	font-size: 15px;
}

.tb_hyou {
	width: 95%;
}

.tb_hyou th, .tb_hyou td {
	width: 100%;
	display: block;
	border-top: none;
}

/*お問い合わせ*/
.linetable {
	width:100%;
}

.linetable th {
	width:30%;
}

.linetable .inp_text {
	width: 90%;
}

.linetable .inp_text:focus {
	width: 100%;
}

.inp_textarea {
	width:100%;
}

}
