
/*▼ ハンバーガーメニュー  ここから▼*/

#header-sp{ width:100%; height:60px; z-index: 999; top:0; transition: 0.7s ease; position: fixed;}
#header-sp #logo-sp{ padding:13px 12px 0;}
#header-sp #logo-sp .left { display:inline-block;}
#header-sp #logo-sp .left a{ text-decoration:none; display:inline-block;}
#header-sp #logo-sp .left a img{ height:40px;}


/*============
ナビ
#navArea
=============*/
#navArea{ position:relative; z-index:999;}
#navArea .h2-01{ font-size:22px; margin-bottom:0px;}
#navArea .h2-01 span { background: url(../images/common/h2-icon.png) left 18px no-repeat; background-size:22px auto; padding-left:35px;}
#navArea .inner{ position:relative; z-index:999; padding:60px 20px 0;}

#navArea .area-01 { padding:15px 0 30px; text-align:center;}
#navArea .area-01 .tb-01 { display:inline-block; margin-top:2px; vertical-align:top; text-align:center;}
#navArea .area-01 .tb-01 .p-tel{ font-size:32px; font-weight:600; display:block; line-height: 1em;}
#navArea .area-01 .tb-01 a{ background: url(../images/contact/ico-free.png) left 7px no-repeat; color: #333; text-decoration: none; display: block; font-size:32px; padding-left:50px; background-size:40px auto;}
#navArea .area-01 .tb-01 .p-time{ font-size:15px; color:#666;text-align:center; padding:12px 0 15px; letter-spacing:normal;}
#navArea .area-01 .tb-02{ display:inline-block; margin-bottom:13px; background:#f0f3f5; padding:10px 30px; text-align:center; font-size:14px; font-weight:bold; border-radius:20px; -webkit-border-radius:20px;-moz-border-radius:20px; position:relative; vertical-align:top;}
#navArea .area-01 .tb-02:before { content: ""; position: absolute; top: 100%; left:50%; margin-left:-12px; border: 10px solid transparent; border-top:12px solid #f0f3f5;}


#navArea .area-01 .btn{ width:280px; margin:auto; text-align:center; font-size:20px; font-weight:bold; position: relative;}
#navArea .area-01 .btn a{ background:#00A3DF; color:#fff; display:block; padding:20px 0; text-decoration:none; border:2px; box-sizing:border-box; border:2px solid #00A3DF; border-radius:50px;}
#navArea .area-01 .btn a:hover{ opacity:1; background:#fff;}
#navArea .area-01 .btn a:hover p{ color:#00A3DF;}
#navArea .area-01 .btn p { font-size:17px; font-weight: bold; color:#fff; padding-left: 25px; font-family: "Zen Maru Gothic", sans-serif;}
#navArea .area-01 .btn img{ position: absolute; left:60px; top:0px; bottom:0; margin:auto; transition:.5s;}
#navArea .area-01 .btn a:hover img:nth-child(1){ opacity:0;}
#navArea .area-01 .btn a:hover img:nth-child(2){ opacity:1;}
#navArea .area-01 .btn a img:nth-child(2){ opacity:0;}



nav {
  display: block;
  position: fixed;
  top:0px;/*上からの距離*/
  right: -430px;/*左から出すか右から出すか*/
  bottom: 0;
  width:100%;
  background:url(../images/common/bk-dot.png);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 20;
  opacity: 0;
}
.open nav {
  right: 0;  /*左から出すか右から出すか*/
  opacity: 1;
  top:0px;
}
nav .inner ul {
  list-style: none;
  margin: 20px 16px 15px;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin:0 0 2px;
}
nav .inner ul li a {
  display:inline-block;
  color: #333;
  font-size:15px;
  font-weight:600;
  padding:3px 10px;
  text-decoration: none;
  transition-duration: 0.2s;
  position:relative;
}

nav .inner ul li a:hover {}
  
  

/*============
メニュー（3本線）
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  position: fixed;
  top:8px;
  right:8px;
  width: 50px;
  height: 50px;
  background:#2497D3;
  transition: all .5s;
  cursor: pointer;
  z-index: 3;
  border-radius:8px;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left:13px;
  width:23px;
  height:2px;
  border-radius:10px;
  background:#fff;
  border-radius: 0px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top:16px;
}
.toggle_btn span:nth-child(2) {
  top:25px;
}
.toggle_btn span:nth-child(3) {
  top:34px;
}
.open .toggle_btn span {
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(9px) rotate(-45deg);
  transform: translateY(9px) rotate(-45deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-9px) rotate(45deg);
  transform: translateY(-9px) rotate(45deg);}


/*============
背景（マスク）
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: .7;
  z-index: 2;
  cursor: pointer;}




.tab-box {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	color: #333;
}
.tab-area{ border-bottom:1px solid #e3e3e3;}
.tab-area input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.tab-area label {
	font-size:16px;
	font-weight: bold;
	line-height:4;
	position: relative;
	display: block;
	padding: 0 0 0 25px;
	cursor: pointer;
	margin: 0 0 0px 0;
	transition:ease-in-out 1s;
	font-weight:bold;}
.tab-area label a{ display:block; text-decoration:none; color:#333;}
.tab-area:first-child input[type=checkbox] + label::after {
	display:none;}
.tab-area.nonee label::after { display:none;}
	
	
.tab-area .entry {
	overflow: hidden;
	max-height: 0;
	color: #333333;
	transition:ease-in-out 0.7s;
}
.tab-area .entry p {
	font-size:16px;
}
.tab-area .entry p a{
	padding:13px 25px;
  font-size: 14px;
  font-weight:bold;
	text-decoration:none;
	color:#333;
	display:block;}
.tab-area .entry p:nth-child(n+2) a{ padding:7px 3px 7px 1.5em; position: relative; margin:0 0 0 20px;}
.tab-area .entry p:nth-child(n+2) a::before {
    position: absolute;
    bottom:37%;
    left: 5px;
    display: block;
    width:4px;
    aspect-ratio: 1;
    content: "";
    border-top: solid 2px #00A3DF;
    border-right: solid 2px #00A3DF;
    transform: translateY(-50%) rotate(45deg)
}
.tab-area .entry p:last-child{ padding-bottom: 15px;}

.tab-area .entry ul{ overflow: hidden; margin:0 20px; padding-bottom:15px;}
.tab-area .entry ul li{  width:48%; float: left;}
.tab-area .entry ul li:nth-child(2n){ float: right;}
.tab-area .entry ul li a{ font-size:14px; font-weight:bold; color:#333; text-decoration:none; display:block; padding:7px 3px 7px 1.5em; background-size:10px auto; position: relative;}
.tab-area .entry ul li a::before {
    position: absolute;
    bottom:37%;
    left: 5px;
    display: block;
    width:4px;
    aspect-ratio: 1;
    content: "";
    border-top: solid 2px #00A3DF;
    border-right: solid 2px #00A3DF;
    transform: translateY(-50%) rotate(45deg)
}
.tab-area .entry ul li span{ font-size:11px;}




/* :checked */
.tab-area input:checked ~ .entry {
	max-height:400px;
}
/* Icon */
.tab-area label::after {
	line-height:25px;
	position: absolute;
	top:20px;
	right:17px;
	display: block;
	width:23px;
	height:23px;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
	text-align: center;
	font-size:12px;
  color:#fff;
  background:#00A3DF;
  border-radius:50%;
}
.tab-area input[type=checkbox] + label::after {
	content: '＋';
}
.tab-area input[type=checkbox]:checked + label::after {
	content: '－';
}