@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,800');
body {font-family: 'Open Sans','ヒラギノ角ゴシック', 'メイリオ' ,sans-serif;font-weight:400;}
main {margin-top:0!important; font-size:1.1rem;}

/*font*/
span.yellow {
    color:#fffc9b;
}

p {
    margin-bottom:0!important;
	line-height:1.8;
}

a {
-webkit-transition: 0.4s ease-in-out;
-moz-transition: 0.4s ease-in-out;
-o-transition: 0.4s ease-in-out;
transition: 0.4s ease-in-out;
}
a:hover {
    text-decoration:none;
}
a img {
-webkit-transition: 0.4s ease-in-out;
-moz-transition: 0.4s ease-in-out;
-o-transition: 0.4s ease-in-out;
transition: 0.4s ease-in-out;
}
.idx-menu a {
	display:block;
}
.idx-menu a:hover {
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}

main img {
	width:100%;
}
hr.hr {
    border-top:1px solid #fff;
    padding:1rem 0 0;
    margin-bottom:0;
}
h1 {
    font-size:2.0rem;
}
h2 {
    font-size:1.6rem;
    border-bottom:1px solid #787878;
    text-align:center;
    line-height:1.8;
    padding:3rem 0 1rem;
}
h3 {
	background: #77d9d4; /* Old browsers */
background: -moz-linear-gradient(top, #77d9d4 0%, #2eb6be 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #77d9d4 0%,#2eb6be 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #77d9d4 0%,#2eb6be 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#77d9d4', endColorstr='#2eb6be',GradientType=0 ); /* IE6-9 */ 
	color:#fff;
	font-size:1.2rem;
	position: relative;
    margin: 0 0 1rem;
    padding: 0.8em 0 0.8em 1.5em;
}

h3:before{
    content: "";
    position: absolute;
    background: #fff;
    top: 50%;
    left: 0.5em;
    margin-top :-15px;
    height: 30px;
    width: 6px;
	}

.red {
    color:red;
}
.orange {
	color:orangered;
}
.ex-small {
	font-size:0.8rem;
}
.ex-small-up {
	font-size:0.8rem;
	vertical-align: super;
}

table th, table td {
    font-weight:normal;
}
/* 均等配置 */
.row {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-pack:justify;
    -moz-box-pack:justify;
    -webkit-flex-pack:justify;
    -moz-flex-pack:justify;
    -ms-flex-pack:justify;
    -webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;
}
.mb-4, .my-4 {
    margin-bottom: 0.8rem!important;
}

/*グローバルナビ*/
.navbar-brand {
    width:75%;
}
.navbar-brand img{
    width:100%;
}
.navbar-nav {
}
.navbar {
background: #77d9d4; /* Old browsers */
background: -moz-linear-gradient(top, #77d9d4 0%, #2eb6be 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #77d9d4 0%,#2eb6be 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #77d9d4 0%,#2eb6be 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#77d9d4', endColorstr='#2eb6be',GradientType=0 ); /* IE6-9 */  
}
.navbar-light .navbar-nav .nav-link {
    color:#fff!important;
}

.navbar-light .navbar-toggler {
    color: #084e9e;
    border-color: #fff;
}
.navbar-light .navbar-toggler-icon {
    color: #084e9e;
}
.navbar-nav li {
    line-height: 1.0;
}
.navbar-nav li+ li {
    border-left:1px solid #FFF;
    padding-left:1rem;
    margin-left:1rem;
}
.navbar-collapse {
    align-items:end;
    -webkit-box-align:end;
}
.navbar-light .navbar-toggler-icon {
    color: #fff;
    background:none;
    padding-top: 0.25rem;
}
.home nav.navbar-sub {
	display:none;
}

.navbar-sub {
	flex-direction: column;
	background:#969696;
	padding-top:1.6rem;
	padding-bottom:1.6rem;
	height:2em;
}
.navbar-sub ul {
	margin:0 auto;
	list-style:none;
}
.navbar-sub ul li {
	display:inline-block;
	margin:0 2rem;
}
.navbar-sub ul li a {
	color:#fff;
}

/*footer*/
footer {
margin-top:4rem;
background: #2eb6be; /* Old browsers */
background: -moz-linear-gradient(top, #2eb6be 0%, #77d9d4 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #2eb6be 0%,#77d9d4 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #2eb6be 0%,#77d9d4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2eb6be', endColorstr='#77d9d4',GradientType=0 ); /* IE6-9 */
}
footer a, footer p {
    color:#fff;
}
footer a img {
    width:auto;
}
footer .container {
    padding-bottom:2rem;
    margin-bottom:0;        
}
footer .container .row .footermenu {
    padding:1.5rem 1rem 0.5rem;
}
footer ul {
    list-style:none;
    padding-left:0;
}
footer a {
    line-height: 2rem;
}
footer ul li ul {
    padding-left:1rem;
}
footer .copy {
    text-align:center;
    padding:1rem 0;
    font-size:0.9rem;
    background-color:#FFF;
}

/*折りたたみコンテンツ*/
.cp_actab {
position: relative;
overflow: hidden;
width: 100%;
margin: 0 auto 2rem;
color: #ffffff;
}
.cp_actab input {
position: absolute;
z-index: -1;
opacity: 0;
}
.cp_actab label {
font-weight: bold;
line-height: 3;
position: relative;
display: block;
padding: 0 0 0 1em;
cursor: pointer;
margin: 0 0 1px 0;
background: #da3c41;
}
.cp_actab .cp_actab-content {
overflow: hidden;
max-height: 0;
-webkit-transition: max-height 0.35s;
transition: max-height 0.35s;
color: #333333;
background: #f1c6c6;
}
.cp_actab .cp_actab-content p {
margin: 1em;
}
/* :checked */
.cp_actab input:checked ~ .cp_actab-content {
max-height: 20em;
}
/* Icon */
.cp_actab label::after {
line-height: 3;
position: absolute;
top: 0;
right: 0;
display: block;
width: 3em;
height: 3em;
-webkit-transition: all 0.35s;
transition: all 0.35s;
text-align: center;
}
.cp_actab input[type=checkbox] + label::after {
content: '\25BC';
}
.cp_actab input[type=checkbox]:checked + label::after {
transform: rotateX(180deg);
}

/*button*/
.fa-caret-right {
    color:#2eb6be;
}
.button {
    text-align:center;
    margin:1rem auto;
}
.button a {
    border:1px solid #afafaf;
    display:block;
    padding:0.4rem;
    color:#000;
}
.button a:hover {
    color:#fff;
    text-decoration:none;
    background:#2eb6be;
}
.button a:hover .fa-caret-right {
    color:#fff;
}

.button .ico_forward {
    display: inline-block;
    width: 0;
height: 0;
border-style: solid;
border-width: 0.4rem 0 0.4rem 0.6rem;
border-color: transparent transparent transparent #2eb7be;
}
.button a:hover .ico_forward {
border-color: transparent transparent transparent #fff;
}

/*bnn*/
.bnn {
    border:1px solid #414141;
    margin:2rem 0;
}

/*index*/
.slide {
    background:url("../images/idx-hedda.jpg") top center no-repeat;
    background-size:cover;
}
.slide-musashino {
    background:url("../images/musashino-hedda.jpg") top center no-repeat;
    background-size:cover;
}
.lead {
    width:85%;
    margin:0 auto;
    padding:1rem 0;
    background: rgba(255,255,255,0.5);
}

.lead h1 {
    margin-top:1rem;
}
.lead h2 {
    border:none;
    margin-bottom:0;
	padding:1rem;
}
.idx-menu h2 {
    padding-top: 2.4rem;
    font-size:1.4rem;
    color:#000;
    border:none;
}
h2.line-1 {
    padding-top: 4.8rem;
}

h2.line-2 {
    padding-top: 3.6rem;
}

.menu-01 {
    height:200px;
    background:url("../images/menu01.png") center center no-repeat;
    background-size:contain;
}
.menu-02 {
    height:200px;
    background:url("../images/menu02.png") center center no-repeat;
    background-size:contain;
}
.text p {
	margin-bottom:1rem!important;
}
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.logomark {
	height: 2.6rem;
	width: auto;
	margin-right: 0.8rem;
}

@media (min-width: 768px){
.navbar-expand-md .navbar-nav .nav-link {
    padding-right: 1rem!important;
    padding-left: 1rem!important;
}
/*col調整*/
.col-md-6 {
    -ms-flex: 0 0 48.5%;
    flex: 0 0 48.5%;
}
.col-md-4 {
    -ms-flex: 0 0 31.3%;
    flex: 0 0 31.3%;
}
.col-md-3 {
    -ms-flex: 0 0 22.5%;
    flex: 0 0 22.5%;
}
}

@media (max-width: 768px) {
    .lead {
    width:100%;
    }
    footer a img {
    width:80%;
}
.navbar-sub {
	display:none;
	}
    table th, table td {
    padding:.75rem 0;
    width:90%;
    display: block;
}
    textarea {
    width: 100%;
}
}
@media (max-width: 480px) {
    h1 {
    font-size: 2rem;
}
    h2 {
    font-size: 1.4rem;
}
}
@media (max-width:1024px){
.navbar-sub ul li {
	margin:0 ;
}

}
@media (min-width:1024px){
    .navbar-brand {
    width:30%;
}
}
