/* すべてのマージンを0にする */
*{
    margin: 0;
    font-family: 'YuGothic','Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', 'Meiryo','ＭＳ ゴシック',sans-serif;
}

/* ここからヘッダーについて */
header{
    background-color: #333;
    padding: 2% 0 0 2%;
}
header .logo img{
    width: 30%;
}
#googlemap{
    color: blue;
}
@media (max-width: 550px){
    header .logo img{
        width: 60%;
    }
    .top_img img {
        width: auto !important;
    }
    .top_img{
        background-size: 100% !important;
    }

}

/* PC・タブレット用のヘッダー */
header .pc{
    display: flex;
    align-items: flex-end;/*水平方向の最も低い位置に寄せる*/
    justify-content: flex-end;/*ヘッダーの内容を右に寄せる*/
}
header .pc li{
    font-size: 1.5rem;
    font-weight: bold;
    list-style: none;
    margin: 0 3% 0 3%;
}
header .pc li :hover{
    text-decoration: none;
    color: rgb(92, 207, 241);
    cursor: pointer;
}
header .pc li a{
    text-decoration: none;
    color: #fff;
}
.input-hidden{
	display: none;
}
	/* label */
.hamburgerswitch{
	cursor: pointer;
	position: absolute;
	right: 3%;
	top: 0; /* ハンバーガーアイコンの位置（上から） */
	z-index: 9999;
	width: 4em; /* アイコン（クリック可能領域）の幅 */
	height: 6em; /* アイコン（クリック可能領域の）高さ */
}
/* メニュー展開時にハンバーガーアイコンを固定 */
#hamburger-demo1:checked ~ .hamburgerswitch{
	position: fixed;
}
/* ハンバーガーアイコン */
.hamburger-switch-line1, .hamburger-switch-line1:before, .hamburger-switch-line1:after{
	width: 25px;
	height: 3px;
	background: #fff; /* ハンバーガーアイコンの色 */
	position: absolute;
	top: 50%;
	left: 50%;
	transition: .3s;
	content: "";
}
.hamburger-switch-line1{
    transform: translate(-50%, -100%);
}
.hamburger-switch-line1:before{
    transform: translate(-50%, -300%);
}
.hamburger-switch-line1:after{
	transform: translate(-50%, 200%);
}
/* ハンバーガーアイコン･アニメーション */
#hamburger-demo1:checked ~ .hamburgerswitch .hamburger-switch-line1{
    width: 0;
}
#hamburger-demo1:checked ~ .hamburgerswitch .hamburger-switch-line1:before{
    transform: rotate(45deg) translate(-40%, 325%);
}
#hamburger-demo1:checked ~ .hamburgerswitch .hamburger-switch-line1:after{
    transform: rotate(-45deg) translate(-40%, -325%);
}
/* メニューエリア */
.hamburgermenuwrap{
    position: fixed;
	background: #333; /* メニューエリアの背景色 */
	padding: 5em 3% 2em;
	z-index: 9998;
	transition: .3s;
	overflow-y: scroll; /* メニュー内容が多い場合に縦スクロールする */
	top: 0;
	left: 100%;
	width: 70%;
    border-radius: 10%;
}
/* メニューリスト */
.hamburgermenulist{
	margin-right: 3%;
	list-style: none;
}
.hamburgermenulist li a{
	text-decoration: none;
	color: #fff; /* メニューリストの文字色 */
	display: block;
	padding: .5em 0;
}
/* メニューエリア･アニメーション */
	/* 右から */
#hamburger-demo1:checked ~ .hamburgermenuwrap{
	left: 30%;
}
	/* コンテンツカバー */
#hamburger-demo1:checked ~ .hamburgercover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.5);
	display: block;
}
/* 450px以上の時ハンバーガーメニュー消す */
@media (min-width: 450px){
	.hamburgermenubox{
		display: none;
	}
}
/* 451px以下の時リストを消す */
@media (max-width: 451px){
    header{
        padding: 5%;
    }
    .pc li {
        display: none;
    }
}
/* ヘッダーここまで */
.wrap{
    text-align: center;
    margin-top: 5%;
}
h1{
    border: 3px dotted #000;
    display: inline;
}
li{
    margin-top: 3%;
    list-style: none;
}
/* ここからフッター */
footer {
    position: relative;
    margin-top: 40px;
    color: #fff;
}
@media ((max-width: 1150px) and (min-width: 767px)){
    footer{
        margin-top: 52%;
    }
}
footer a {
    text-decoration: none;
    color: #fff;
}
footer a:hover {
    color: rgb(92, 207, 241);
}
footer .primary {
    padding: 40px 20px;
    background: #333;
}
footer .secondary {
    display: flex;
    padding: 40px 20px;
    background: #222;
}


  /* footer-logo */

footer .logo {
    position: relative;
    padding: 0;
    margin: 0;
    width: 100%;
    font-size: 26px;
    font-weight: bold;
}

  /* address */

.address {
    margin: 10px 0 0;
    padding: 0;
}

  /* navi */

.navi-row {
    display: flex;
    margin-top: 40px;
}

footer .navi {
    margin: 0;
    padding: 0;
    list-style: none;
}
footer .navi li {
    display: inline-block;
    margin: 0 20px 0 0;
    padding: 0;
}
footer .navi li:first-child {
    margin-left: 0;
}
  /* copyright */

footer .copyright {
    margin: 0;
    padding: 0;
    text-align: center;
    color: #fff;
    background-color: black;
}

@media (max-width: 451px){
    footer .primary .logo{
        font-size: 1.6em;
    }

    footer .navi li {
        display: block;
        margin-bottom: 1em;
    }
    footer .space{
        display: none;
    }
}
@media (min-width: 451px){
    .br_sp{
        display: none;
    }
    footer .space{
        margin-right : 1em;
    }
}
/* フッターここまで */