@charset "utf-8";

@media screen and (max-width: 640px) {
	
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
font-size: 14px; }

body { min-width: inherit; }
main { margin-top: 70px	}	
	
/*============================
#header
============================*/
#header { position: fixed; left: 0; top: 0; height: 70px; width: 100%; padding: 8px 20px 10px; background: #fff; z-index: 99; }
#header .mark .vpoint { width: 50px; }
#header .mark .vpoint img {}
#header .mark .logo { margin-top: 12px; width: 140px; }
#header .mark .logo a {}
#header .mark .logo a img {}
#header .link { display: none; }
#header .hamburgerMenu .subLink {}
#header .hamburgerMenu .subLink ul {}
#header .hamburgerMenu .subLink ul li {}
#header .hamburgerMenu .subLink ul li.law {}
#header .hamburgerMenu .subLink ul li.law a { display: inline-block; padding-left: 20px; color: #777; font-size: 0.9125em; position: relative; }
#header .hamburgerMenu .subLink ul li.law a::before { content: ""; width: 15px; height: 15px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background: url("../../imageFile/global/bg_header_law.png") no-repeat left center; }
#header .hamburgerMenu .subLink ul li.law a:hover { color: #222; }
#header .hamburgerMenu .subLink ul li.law a:hover::before { background-position: right center; }
#header .hamburgerMenu .subLink ul li.camp {}
#header .hamburgerMenu .subLink ul li.camp a { display: inline-block; padding-left: 20px; color: #777; font-size: 0.9125em; position: relative; }
#header .hamburgerMenu .subLink ul li.camp a::before { content: ""; display: inline-block; width: 15px; height: 15px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background: url("../../imageFile/global/bg_header_vpoint.png") no-repeat left center; }
#header .hamburgerMenu .subLink ul li.camp a:hover { color: #222; }
#header .hamburgerMenu .subLink ul li.camp a:hover::before { background-position: right center; }
#header .hamburgerMenu .subLink ul li.camp a::after { content: ""; display: inline-block; background: url("../../imageFile/global/bg_blank_link.png") no-repeat left center; margin-left: 5px; width: 10px; height: 8px; }
#header .hamburgerMenu .subLink ul li.home {}
#header .hamburgerMenu .subLink ul li.home a { display: inline-block; background: #eaeaea; color: #777; padding: 7px 20px; text-align: center; border-radius: 20px; letter-spacing: 0; transition: 0.3s all; }
#header .hamburgerMenu .subLink ul li.home a::after { content: ""; display: inline-block; background: url("../../imageFile/global/bg_blank_link.png") no-repeat left center; margin-left: 5px; width: 10px; height: 8px; }
#header .hamburgerMenu .subLink ul li.home a:hover { background: #ff5a5f; color: #fff; }
#header .hamburgerMenu .subLink ul li.home a:hover::after { background-position: right center; }
#header .link .mainLink {}
#header .link .mainLink ul {}
#header .link .mainLink ul li {}
#header .link .mainLink ul li a {}
#header .link .mainLink ul li a:hover {}
#header .link .mainLink ul li.active a {}

#header .hamburgerMenu { display: block; }
#header .hamburgerMenu .checkbox-toggle { position: absolute; top: 15px; right: 15px; z-index: 9; cursor: pointer; width: 52px; height: 52px; margin-right: 0; opacity: 0; }
#header .hamburgerMenu .hamburger { position: absolute; top: 8px; right: 12px; z-index: 8; width: 52px; height: 52px; padding: 0 10px; cursor: pointer; -webkit-backface-visibility: hidden; backface-visibility: hidden; display: flex; align-items: center;  justify-content: center; transition: .25s; }
#header .hamburgerMenu .hamburger > div { position: relative; top: 0; flex: none; width: 100%; height: 2px; background: #222; transition: all 0.4s ease; display: flex; align-items: center; justify-content: center; }
#header .hamburgerMenu .hamburger > div:before,
#header .hamburgerMenu .hamburger > div:after { content: ''; position: absolute; z-index: 1; left: 0; width: 100%; height: 2px; background: inherit; transition: all 0.4s ease; }
#header .hamburgerMenu .hamburger > div:before { top: 10px; }
#header .hamburgerMenu .hamburger > div:after { top: -10px; }
#header .hamburgerMenu .menu { position: fixed; top: 70px; left: 0; width: 100%; height: calc(100vh - 70px); pointer-events: none; visibility: hidden; overflow-y: scroll; -webkit-backface-visibility: hidden; backface-visibility: hidden; outline: 1px solid transparent; background: #fafafa; z-index: 1; }
#header .hamburgerMenu .menu > div { color: #111; background: #eee; transition: all 0.4s ease; flex: none; overflow: hidden; }
#header .hamburgerMenu .menu > div > div { text-align: left; opacity: 0; transition: opacity 0.4s ease; }
#header .hamburgerMenu .menu > div > div > ul { list-style: none; display: block; }
#header .hamburgerMenu .menu > div > div > ul > li { display: block; position: relative; border-top: solid 1px #ccc; }
#header .hamburgerMenu .menu > div > div > ul > li > a { display: block; width: 80%; padding: 18px; cursor: pointer; font-size: 0.875em; line-height: 1.5; font-weight: 700; color: #333; transition: opacity 0.4s ease; }
#header .hamburgerMenu .menu > div > div > ul > li > span { position: absolute; top: 0; right: 20px; display: block; background: url("../../imageFile/global/bg_header_nav02.png") 0 center no-repeat; background-size: 32px auto; width: 16px; height: 56px; cursor: pointer; }
#header .hamburgerMenu .menu > div > div > ul > li > span.close { background-position: -16px center; }
#header .hamburgerMenu .menu > div > div > ul > li > dl { border-top: dotted 1px #ccc; padding: 10px 0; }
#header .hamburgerMenu .menu > div > div > ul > li > dl dd {}
#header .hamburgerMenu .menu > div > div > ul > li > dl dd a { display: block; padding: 12px 18px; color: #555; font-size: 0.8125em; }
#header .hamburgerMenu .menu > div > div > ul > li:last-child { border-bottom: solid 1px #ccc;}
#header .hamburgerMenu .checkbox-toggle:checked + .hamburger > div { transform: rotate(135deg); }
#header .hamburgerMenu .checkbox-toggle:checked + .hamburger > div:before,
#header .hamburgerMenu .checkbox-toggle:checked + .hamburger > div:after { top: 0; transform: rotate(90deg); width: 100%; }
#header .hamburgerMenu .checkbox-toggle:checked + .hamburger > div:after { opacity: 0; }
#header .hamburgerMenu .checkbox-toggle:checked ~ .menu { position: absolute; pointer-events: auto; visibility: visible; overflow-y: scroll; }
#header .hamburgerMenu .checkbox-toggle:checked ~ .menu > div {}
#header .hamburgerMenu .checkbox-toggle:checked ~ .menu > div > div { opacity: 1; transition: opacity 0.4s ease 0.4s; }
#header .hamburgerMenu .checkbox-toggle:checked:hover + .hamburger > div { transform: rotate(225deg); }
	
#header .hamburgerMenu .subLink { background: #fafafa; padding: 20px; }
#header .hamburgerMenu .subLink ul {}
#header .hamburgerMenu .subLink ul li { margin-top: 20px; }
#header .hamburgerMenu .subLink ul li.law { margin-top: 0; }
#header .hamburgerMenu .subLink ul li.law a { display: inline-block; padding-left: 20px; color: #777; font-size: 0.9125em; position: relative; }
#header .hamburgerMenu .subLink ul li.law a::before { content: ""; width: 15px; height: 15px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background: url("../../imageFile/global/bg_header_law.png") no-repeat left center; }
#header .hamburgerMenu .subLink ul li.law a:hover { color: #222; }
#header .hamburgerMenu .subLink ul li.law a:hover::before { background-position: right center; }
#header .hamburgerMenu .subLink ul li.camp {}
#header .hamburgerMenu .subLink ul li.camp a { display: inline-block; padding-left: 20px; color: #777; font-size: 0.9125em; position: relative; }
#header .hamburgerMenu .subLink ul li.camp a::before { content: ""; display: inline-block; width: 15px; height: 15px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background: url("../../imageFile/global/bg_header_vpoint.png") no-repeat left center; }
#header .hamburgerMenu .subLink ul li.camp a:hover { color: #222; }
#header .hamburgerMenu .subLink ul li.camp a:hover::before { background-position: right center; }
#header .hamburgerMenu .subLink ul li.camp a::after { content: ""; display: inline-block; background: url("../../imageFile/global/bg_blank_link.png") no-repeat left center; margin-left: 5px; width: 10px; height: 8px; }
#header .hamburgerMenu .subLink ul li.home {}
#header .hamburgerMenu .subLink ul li.home a { display: inline-block; background: #eaeaea; color: #777; padding: 7px 20px; text-align: center; border-radius: 20px; letter-spacing: 0; transition: 0.3s all; }
#header .hamburgerMenu .subLink ul li.home a::after { content: ""; display: inline-block; background: url("../../imageFile/global/bg_blank_link.png") no-repeat left center; margin-left: 5px; width: 10px; height: 8px; }
#header .hamburgerMenu .subLink ul li.home a:hover { background: #ff5a5f; color: #fff; }
#header .hamburgerMenu .subLink ul li.home a:hover::after { background-position: right center; }
	
	
/*============================
#footer
============================*/
#footer { margin-top: 80px; }
#footer .menu {}
#footer .menu .logo { margin-top: 30px; float: left; width: auto; }
#footer .menu .logo a { display: block; }
#footer .menu .logo a img { width: 190px; height: auto; }
#footer .menu .sitemap { float: right; width: auto; display: flex; align-items: flex-start; }
#footer .menu .sitemap li { margin-left: 30px; }
#footer .menu .sitemap li:first-child { margin-left: 0; }
#footer .menu .sitemap li dl {}
#footer .menu .sitemap li dl dt { margin-top: 30px; margin-bottom: 20px; }
#footer .menu .sitemap li dl dt a { font-size: 0.9125em; font-weight: bold; }
#footer .menu .sitemap li dl dt a:hover { text-decoration: underline; }
#footer .menu .sitemap li dl dd { margin-top: 10px; }
#footer .menu .sitemap li dl dd a { font-size: 0.875em; }
#footer .menu .sitemap li dl dd a:hover { text-decoration: underline; }
#footer .menu .sitemap li.other {}
#footer .menu .sitemap li.other dl {}
#footer .menu .sitemap li.other dl dt {}
#footer .menu .sitemap li.other dl dt a {}
#footer .trademark { margin-top: 20px; }
#footer .link { margin-top: 20px; }
#footer .link .navi { padding: 15px 0 30px; }
#footer .link .navi ul { display: block; margin-top: 15px; text-align: center; }
#footer .link .navi ul li { margin-right: 10px; padding-right: 10px; margin-top: 8px; display: inline-block; }
#footer .link .navi ul li:last-child {}
#footer .link .navi ul li a {}
#footer .link .navi ul li a:hover {}
#footer .copy { font-size: 0.75em; }

}