@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
@import url('https://cdn.jsdelivr.net/yakuhanjp/1.3.1/css/yakuhanjp.min.css');

/*=================================
	reset.css
================================ */

body {
	margin: 0;
	padding: 0;
}
div, p, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align:bottom;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
address, caption, cite, code, dfn, em, strong, var {
	font-style: normal;
}
section {
	display: block;
}
ol, ul {
	list-style: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
a, a:visited {
	color: #333;
	text-decoration: none;
	outline: none;
	transition: opacity 0.6s ease-in-out, background-color 0.6s ease-in-out;
}
a:hover {
	text-decoration: none;
	opacity: 0.8;
}
a:focus {
	outline: none;
}
table {
	border-collapse: collapse;
}
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}
.clearfix:after{
	clear: both;
}
.clearfix {
	*zoom: 1;
}
/*--------------------  START Media Queries  --------------------*/
@media screen and (max-width:768px) {
body {
	-webkit-text-size-adjust: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
}
/*=================================
	common
================================ */

html {
	font-size: 62.5%;
	height: 100%;
}
body{
	background-position: center 0;
	background-repeat: no-repeat;
	background-size:cover;
	background-attachment: fixed;
}


#wrapper {
	font-family: "YakuHanJP", 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HiraKakuPro-W3", "メイリオ", Meiryo, "MS PGothic", Osaka, sans-serif;
	font-size: 1.6rem;
	color: #292B2B;
	letter-spacing: 0.05em;
	line-height: 1.8;
	font-weight: 400;
}
.inner {
	max-width: 1410px;
	margin: 0 auto;
}

#wrapper .inner{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#header {
	width:380px;
	width:26.95%;
z-index:100;
}
main{
	position:relative;
	width:calc(100% - 410px);
	width:70.09%;
}

/*--------------------  START Media Queries  --------------------*/

@media (max-width:1410px) {
.inner {
	padding:0 20px;
}
}

@media (max-width: 1000px) {
    /*
body{
	background-position: center 100px;
	background-repeat: no-repeat;
	background-size:cover;
	background-size:1050px 591px;
	background-attachment: fixed;
}
*/
.inner {
	padding:0;
}

#header{
	width:100%;
}
main{
	width:100%;
	padding:70px 3% 55px;
}

}
@media (min-width: 751px) {
	a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
}
}
/*=================================
	header
================================ */
#header {
}

.head-box{
	position:relative;
    background:#0577BF;
    text-align:center;
    padding:50px 10px 80px;
 /*	   padding:270px 10px 60px;
	background:url("../images/logo.png") center 46px no-repeat #FFF;
	background-size:233px 195px;
*/
}
.head-box a{
    display: inline-block;
    padding:30px 10px;
	font-size:clamp(1.8rem, 1.4rem + 1.33vw, 2.4rem);
	font-weight:700;
	line-height:1.4;
	color: #fff;
}


/*　ハンバーガーボタン　*/
.hamburger {
	display : block;
	position: absolute;
	z-index : 3;
	right : 3%;
	top   : 10px;
	width : 42px;
	height: 42px;
	cursor: pointer;
	text-align: center;
}
.hamburger span {
	display : block;
	position: absolute;
	width   : 30px;
	height  : 2px ;
	left    : 6px;
	 background : #fff;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition   : 0.3s ease-in-out;
	transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
	top: 10px;
}
.hamburger span:nth-child(2) {
	top: 20px;
}
.hamburger span:nth-child(3) {
	top: 30px;
}

.hamburger.active span:nth-child(1) {
	top : 16px;
	left: 6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform   : rotate(-45deg);
	transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	top: 16px;
	-webkit-transform: rotate(45deg);
	-moz-transform   : rotate(45deg);
	transform        : rotate(45deg);
}


.hamburger {
	display: none;
}

/*--------------------  START Media Queries  --------------------*/

@media (max-width: 1000px) {
.hamburger {
	display: block;
}
.head-box{
	position: fixed;
	width:100%;
     padding:10px 10px 10px;
    text-align: left;
    /*
	text-align:center;
	padding:103.2px 10px 10px;
	background:url("../images/logo.png") center 8px no-repeat #FFF;
	background-size:110px 92px;
    */
}
     
.head-box a{
    padding:10px 0;
}
}



/*=================================
	navigation
================================ */
.nav-box{
    position: relative;
    padding-top:5px;
background:#FFF;
    z-index: 2;
}
.gnav{
    margin-top:-40px;
    padding: 0 10px;

}
.gnav li{
	border-bottom:1px #ddd solid;
}
.gnav li a{
	display:block;
	font-size:2rem;
	color: #292B2B;
	line-height:1.4;
	padding:15px 26px 15px 16px;
	background:url("../images/arrow02.png") right center no-repeat #FFF;
	background-size:22px 17px;
}
.gnav li:last-child{
    border-bottom:none;
}
/*
.gnav li:first-child{
	border-bottom:none;
}

.gnav li:first-child a{
	background-image:url("../images/arrow01.png");
	background-color:#B6DFFD;
}*/

.bnr-box{
	padding:30px 0;
	background:#FFF;
}
.bnr-box a{
	display:inline-block;
}



/*--------------------  START Media Queries  --------------------*/

@media (max-width: 1000px) {
.nav-box {
	position: fixed;
	z-index : 2;
	top  : 68px;
	left : 0;
	color: #000;
	background: #fff;
	transform: translateX(100%);
	transition: all 0.6s;
	width: 100%;
}

.nav-box nav{
	position: fixed;
	z-index: 999; 
	width: 100%;
	height: calc(100vh - 129px);/*表示する高さ*/
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.nav-box nav ul{
	padding:0 3%;
}
    .gnav{
    margin-top:0;
        padding:0;
}
.bnr-box{
	text-align:center;
	padding:30px 3%;
}
.bnr-box a{
	max-width:380px;
}

.nav-box.active {
	transform: translateX(0%);
}

}/*980px*/

/*=================================
	footer
================================ */
.pagetop {
	position: fixed;
	bottom: 70px;
	right: 30px;
	z-index: 10;
}
.pagetop a {
	display: block;
	width: 50px;
	height: 50px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url("../images/totop.png") 0 0 no-repeat;
	background-size:50px 50px;
}


#footer {
	width:100%;
	text-align:center;
	padding:40px 0 20px;
}
#footer small {
	font-size:2.4rem;
	color: #656565;
}
/*--------------------  START Media Queries  --------------------*/

@media screen and (max-width:1000px) {
.pagetop {
	right: 3%;
}
}/*1266px*/
	
@media screen and (max-width:640px) {
#footer {
	padding:20px 0 20px;
}
#footer small {
	font-size:1.2rem;
}
}/*640px*/
	

