@charset "UTF-8";
/* CSS Document */
/*共通設定*/
html {
	font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
}

body {
	font-size:1.6em;
	line-height: 1.8;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	counter-reset: number 0;  
}
.h1, .h2, .h3, h1, h2, h3 {
	margin-top: 0;
}
h1 {
	font-size: 1.4rem;
	line-height: 1.6;
}
h2 {
	font-size: 2.4rem;
	margin-bottom: 30px;/*adjustable*/
}
section {
	margin-bottom: 40px;
}
img {
	width: 100%;
	height: auto;
}
/* Bootstrapのガター幅を調整するための汎用CSS */
.row-0{ margin-left:0px;  margin-right:0px}
.row-0 >div{ padding-right:0px;  padding-left:0px}
.row-10{ margin-left:-5px;  margin-right:-5px}
.row-10 >div{ padding-right:5px;  padding-left:5px}
.row-20{ margin-left:-10px;  margin-right:-10px}
.row-20 >div{ padding-right:10px;  padding-left:10px}
.row-30{ margin-left:-15px;  margin-right:-15px}
.row-30 >div{ padding-right:15px;  padding-left:15px}
.row-40{ margin-left:-20px;  margin-right:-20px}
.row-40 >div{ padding-right:20px;  padding-left:20px}
.row-50{ margin-left:-25px;  margin-right:-25px}
.row-50 >div{ padding-right:25px;  padding-left:25px}

/* Bootstrapのカラムの下余白設定*/
.row-10-b > div { margin-bottom: 10px;}
.row-20-b > div { margin-bottom: 20px;}
.row-30-b > div { margin-bottom: 30px;}
.row-40-b > div { margin-bottom: 40px;}
.row-50-b > div { margin-bottom: 50px;}

.pc {
	display: none;
}
.flex-reverse {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-direction: reverse;
	-moz-box-direction: reverse;
	-webkit-box-orient: vertical;
	-moz-box-orient: vertical;
	-webkit-flex-direction: column-reverse;
	-moz-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
/*ヘッダー*/
#header_top {
	margin-bottom: 20px;
}
#logo img {
	max-width: 305px;/*adjustable*/
}
.navbar {
	min-height: 0;
}
.navbar-default {
	background: transparent;
	border: none;
}
a.navbar-brand {
	width: 60%;/*adjustable*/
	padding: 0;
}
.navbar-default .navbar-toggle .icon-bar {
	background: #fff;
}
/*お問い合わせボタン*/
.web_btn a {
	display: inline-block;
	text-align: center;
	width: 100%;
	height: 45px;
	line-height: 45px;
	font-size: 2.4rem;
	background: #faa33c;
	color: #fff;
	border-radius: 10px;
}
.web_btn a:hover {
	text-decoration: none;
}
.tel_btn a {
	display: inline-block;
	text-align: center;
	width: 100%;
	font-size: 3.2rem;
	color: #000;
}
.tel_btn a:hover {
	text-decoration: none;
}
.tel_btn a .tel_title {
	font-size: 2.4rem;
}
#main_visual {
	margin-bottom: 20px;
}
/*サイドバー*/
#sidebar h2 {
	font-size: 1.5rem;
	border-bottom: 1px solid #000;
	padding: 5px 0;
}
#sidebar h3 {
	font-size: 1.4rem;
	margin-top: 10px;
}
#sidebar ul {
	padding: 0;
}
#sidebar #side_menu ul li {
	list-style-type: none;
	margin-bottom: 5px;
}
#sidebar #side_menu ul li ul li {
	text-indent: 1rem;
}
.side_loop ol li {
	font-size: 15px;
	position: relative;
    line-height: 1.5em;
    padding: 10px 0 10px 45px;
    border-bottom: dotted 1px #ccc;
	list-style-type: none;
}
.side_loop ol li:before {
    position: absolute;
    counter-increment: number 1;
    content: counter(number);
    display: inline-block;
    background: #65c2e9;
    color: white;
    font-weight: bold;
    font-size: 15px;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
}
.side_loop ol li a {
	display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #555;
}
.side_loop ol li img {
	width: 8px;
    height: 13px;
    margin-right: .5rem;
}
/*コンテンツ*/
#contents {
	margin-bottom: 40px;
}
#contents ol {
	margin-bottom: 40px;
}
#contents ol li {
	line-height: 180%;
    font-size: 16px;
	margin-bottom: 20px;
}
/*フッター*/
footer {
	padding-top: 60px;
	background: #efefef;
}
footer .footer_top {
	margin-bottom: 30px;
}
footer .footer_top h3 {
	font-size: 1.6rem;
}
footer .footer_top ul {
	padding-left: 0;
}
footer .footer_top ul li {
	list-style-type: none;
	margin-bottom: 5px;
}
footer iframe {
	border-radius: 30px;
}
footer .footer_bottom {
	padding-top: 20px;
}
footer .footer_bottom ul {
	padding-left: 0;
}
footer .footer_bottom ul li {
	list-style-type: none;
	display: inline-block;
	margin-right: 20px;
}
footer .footer_top ul li a, footer .footer_bottom ul li a {
	color: #000;
}
footer .copyright {
	text-align: center;
	color: #fff;
	background: #000;
}
footer .logo_footer {
	margin-bottom: 20px;
}
footer .logo_footer img {
	max-width: 305px;
}
address {
	text-align: center;
}
@media (min-width: 768px) {
.pc {
	display: block;
}
.sp {
	display: none;
}
#header_top #logo {
	text-align: center;
}
#header_contact {
	text-align: left;
}
#gnavi ul.navbar {
	min-height: 0;
}
#gnavi ul.navbar-nav li {
	border-right: 1px solid #000;
}
#gnavi ul.navbar-nav li:last-child {
	border: none;
}
#gnavi ul.navbar-nav li > ul > li {
	border: none;
}
.navbar-nav>li>a {
	padding-top: 0;
	padding-bottom: 0;
}
.dropdown:hover > .dropdown-menu{
  display: block;
}
#main_visual {
	margin-bottom: 40px;
}
.navbar-brand {
	display: none;
}
.flex-reverse {
	display: block;
}
footer .logo_footer, address {
	text-align: left;
}
footer .footer_bottom ul li {
	margin-right: 40px;
}
}
@media (min-width: 992px) {
#header_top #logo {
	text-align: left;
}
.container {
	width: 1200px;/*adjustable*/
	padding: 0;
}
.container-fluid {
	padding: 0;
}
.nav>li>a, .nav>li>ul>li>a {
	padding: 0 42px;/*adjustable*/
}
}
