@charset "UTF-8";
/* Custom */
body { font-size: 110%; font-family: 'Noto Sans JP', 'Roboto Condensed', sans-serif; }
hr { height: 28px; background: transparent url(../common/images/hr_img.png) no-repeat center;  }
#nav li.gl a:link { text-decoration: none; color: #353535; }
#nav li.gl a:visited { text-decoration: none; color: #353535; }
#nav li.gl a:hover { text-decoration: none; color: #a54a4a; background-color: rgba(255,255,255,0.3); }
#logo { width: 28%; float: right; margin: 12px 1% 0 0; }
#kt_buttom { position: fixed; left: 0px; top: 20%; border-top: 2px solid #fff; border-bottom: 2px solid #fff; border-right: 2px solid #fff; border-radius: 0 20px 20px 0; -moz-border-radius: 0 20px 20px 0; -webkit-border-radius: 0 20px 20px 0; -o-border-radius: 0 20px 20px 0; }
.bara_spec1 { margin: 30px 0 0; }
#top_three_culm { width: 26%; float: left; margin: 1% 0 1% 2.3%; padding: 2%; display: block; border: solid 1px #353535; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#top_three_btn { text-align: center; background-color: #97c2d3; width: 60%; margin: 4% 19%; padding: 1%; display: block; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#top_three_btn:hover { background-color: #e7bec7; }
#sub_main h2 { background-color: #97c2d3; margin: 0 0 20px; padding: 20px; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#side_navi h3 { color: #fff; background-color: #2c465d; }
#question_a h2 { color: #5197b7; background: transparent; margin: 0; padding: 0; }
#undr_cont { background: url(../common/data_img/undr_cont.png) no-repeat center; position: relative; width: 641px; height: 145px; margin: 1.5% auto; padding: 0; }
#tel_call { background: url(../common/data_img/tel_call2.png) no-repeat center; position: absolute; left: 145px; bottom: 20px; width: 239px; height: 57px; margin: 0; padding: 0; }
#tel_call:hover { background: url(../common/data_img/tel_call3.png) no-repeat center; }
#hp_form { background: url(../common/data_img/hp_form2.png) no-repeat center; position: absolute; right: 15px; bottom: 20px; width: 239px; height: 57px; margin: 0; padding: 0; }
#hp_form:hover { background: url(../common/data_img/hp_form3.png) no-repeat center; }

/* Tablet用 */
@media only screen and (min-width: 916px) and (max-width: 1000px) {
}

/* Tablet2用 */
@media only screen and (min-width: 701px) and (max-width: 915px) {
#logo { text-align: center; width: 100%; float: left; margin: 0; padding: 4px 0 0; }
#logo img { max-height: 30px; }
#top_three_culm { width: 41%; float: left; margin: 2%; padding: 2%; display: block; border: solid 1px #353535; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#undr_cont { background: url(../common/images/undr_cont2.png) no-repeat center; position: relative; width: 96%; height: 373px; margin: 2%; padding: 0; }
#tel_call { position: absolute; left: 30%; bottom: 110px; width: 239px; height: 57px; margin: 0; padding: 0; }
#hp_form { position: absolute; left: 30%; bottom: 45px; width: 239px; height: 57px; margin: 0; padding: 0; }
#three_culm { text-align: center; }
}

/* Mobile用 */
@media only screen and (min-width: 541px) and (max-width: 700px) {
#logo { text-align: center; width: 100%; float: left; margin: 0; padding: 4px 0 0; }
#logo img { max-height: 30px; }
.bara_spec1 { margin: 0; }
#top_three_culm { width: 92%; float: left; margin: 2%; padding: 2%; display: block; border: solid 1px #353535; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#undr_cont { background: url(../common/data_img/undr_cont2.png) no-repeat center; position: relative; width: 96%; height: 373px; margin: 2%; padding: 0; }
#tel_call { position: absolute; left: 30%; bottom: 110px; width: 239px; height: 57px; margin: 0; padding: 0; }
#hp_form { position: absolute; left: 30%; bottom: 45px; width: 239px; height: 57px; margin: 0; padding: 0; }
#three_culm { text-align: center; }
}

/* Mobile2用 */
@media screen and (max-width: 540px) {
#logo { text-align: center; width: 100%; float: left; margin: 0; padding: 4px 0 0; }
#logo img { max-height: 30px; }
.bara_spec1 { margin: 0; }
#top_three_culm { width: 92%; float: left; margin: 2%; padding: 2%; display: block; border: solid 1px #353535; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -o-border-radius: 10px; }
#undr_cont { background: url(../common/data_img/undr_cont2.png) no-repeat center / 100%; position: relative; width: 96%; height: 373px; margin: 2%; padding: 0; }
#tel_call { position: absolute; left: 20%; bottom: 110px; width: 239px; height: 57px; margin: 0; padding: 0; }
#hp_form { position: absolute; left: 20%; bottom: 45px; width: 239px; height: 57px; margin: 0; padding: 0; }
#three_culm { text-align: center; }
}
/* access */
#access { width: 100%; overflow: hidden; margin: 0; padding: 0; display: block; }
#access #main { background: #fff; position: relative; width: 1000px; margin: 0 auto; padding: 0; display: block; }
#access h1 { font-size: 220%; letter-spacing: 0.2em; margin: 30px 0 0; padding: 0; }
#access h2 { font-size: 150%; letter-spacing: 0.2em; margin: 50px 0; padding: 0; }
#access p { width: 66%; margin: 0 17% 30px; }
/* Tablet用 */
@media only screen and (min-width: 916px) and (max-width: 1000px) {
#access #main { width: 96%; margin: 0 2%; }
}
/* Tablet2用 */
@media only screen and (min-width: 701px) and (max-width: 915px) {
#access #main { width: 96%; margin: 0 2%; }
}
/* Mobile用 */
@media only screen and (min-width: 541px) and (max-width: 700px) {
#access #main { width: 96%; float: left; margin: 0 2%; display: block; }
}
/* Mobile2用 */
@media screen and (max-width: 540px) {
#access #main { width: 96%; float: left; margin: 0 2%; display: block; }
}
@media (max-width: 767px) {
.pc {
 display: none !important;
}
}
@media (min-width: 768px) {
.sp {
 display: none !important;
}
}
a.contactTelA {
	display: block;
	width: 60%;
	min-width: 600px;
	margin: 0 auto;
}
@media (max-width: 767px) {
a.contactTelA {
	width: 100%;
	min-width: 100%;
}
.Top a.contactTelA {
	width: 90%;
	min-width: 90%;
}
}
a.contactTelA:hover {
	color: #333;
}
#ContactTel {
	clear: none;
	width: 100%;
	background-color: #D8D8E5;
	border: 2px solid #333;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 10px 10px 10px 140px;
	position: relative;
	display: flex;
	align-items: center;
	min-height: 140px;
}
@media (max-width: 767px) {
#ContactTel {
	padding: 10px 10px 10px 80px;
	min-height: 10px;
}
}
#ContactTel:before {
	content: "";
	background: url(../images/common/contact_bg.png) no-repeat center center;
	background-size: contain;
	height: 120px;
	width: 120px;
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
}
@media (max-width: 767px) {
#ContactTel:before {
	height: 70px;
	width: 70px;
}
}
.contactTelIn {
	width: 100%;
	text-align: center;
}
#ContactTel h3, 
#ContactTel h4, 
#ContactTel p {
	margin: 0;
	padding: 0;
}
#ContactTel h3 {
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 1.3em;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 800;
	color: #333;
}
@media (max-width: 767px) {
#ContactTel h3 {
	margin-bottom: 4px;
	font-size: 16px;
	line-height: 1.3em;
}
}
#ContactTel h4 {
	font-size: 30px;
	color: #C00;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 800;
}
@media (max-width: 767px) {
#ContactTel h4 {
	font-size: 25px;
	line-height: 25px;
}
}
#ContactTel h4 span {
	font-size: 16px;
	color: #333;
	
}
@media (max-width: 767px) {
#ContactTel h4 span {
	font-size: 14px;
	display: block;
}
}
@media (max-width: 767px) {
#footer_warp{
	margin-bottom: 100px;
}
#kt_buttom {
	position: fixed;
	width: 100%;
	bottom: 0px;
	left: 0px;
	top: calc(100% - 100px);
	height: 100px;
	border-radius: 0px 0px 0px 0px;
	border-top-width: 2px;
	border-top-style: solid;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	border-top-color: #FFF;
}
#kt_buttom ul li {
	width: 33%;
}
#kt_buttom ul li a {
	display: block;
}
#kt_buttom ul li:not(:last-of-type) {
	border-right-width: 1px;
	bord
	er-top-style: none;
	border-right-style: solid;
	border-bottom-style: none;
	border-left-style: none;
	border-right-color: #CCC;
}
.table-scroll {
  overflow-x: auto !important;
}

.table-scroll table{
  width: 100% !important;
  min-width: 550px !important;
  border-collapse: collapse !important;
}

.table-scroll th{
  padding: 15px !important;
  border: 1px solid #999 !important;
  background-color: #eee !important;
		display: table-cell !important;
}

.table-scroll td.auto {
  width: 250px !important;
  padding: 15px !important;
  border: 1px solid #999  !important;
		display: table-cell !important;
}
.table-scroll td.title {
	width: 50px !important;
	padding: 15px !important;
  border: 1px solid #999  !important;
		display: table-cell !important;
}
}