@charset "utf-8";
header {
  width: 100%;
  background: #000
}
header .head {
  padding: 1.5vw 1.5vw 2.5vw
}
header .head ul li {
  margin: 0 1.8% 0 0;
  position: relative
}
header .head ul li a {
  color: #fff
}
header .head ul li:nth-child(1) {
  max-width: 370px;
  margin: 0 auto 0 0
}
header .head ul li:nth-child(1) img {
  width: 100%
}
header .head ul li:nth-child(2)::before, header .head ul li:nth-child(3)::before {
  content: "";
  width: 6px;
  height: 12px;
  position: absolute;
  right: -10px;
  top: 10px;
  display: block;
  background: url("../images/common/i-arrow.svg") no-repeat 0 0/cover
}
header .head ul li:nth-child(4), header .head ul li:nth-child(5) {
  max-width: 150px
}
header .head ul li:nth-child(4) img, header .head ul li:nth-child(5) img {
  width: 100%
}
header .head ul li:nth-child(4) {
  margin: 0 1% 0 1.5%
}
header .head ul li:nth-child(5) {
  margin: 0
}
header nav.g-nav {
  padding: 0 0 2vw
}
header nav.g-nav ul {
  justify-content: center;
  line-height: 1
}
header nav.g-nav ul li {
  border-right: 1px solid #555
}
header nav.g-nav ul li:nth-child(1) {
  border-left: 1px solid #555
}
header nav.g-nav ul li a {
  padding: 0 .8vw;
  position: relative;
  color: #fff
}
@media screen and (min-width:768px) and (max-width:1023px) {
  header .head ul li:nth-child(1) {
    max-width: 280px
  }
  header .head ul li:nth-child(4), header .head ul li:nth-child(5) {
    max-width: 120px
  }
  header nav.g-nav ul.inner {
    max-width: 100%
  }
  header nav.g-nav ul li a {
    padding: 0 .5vw
  }
}
@media screen and (max-width:767px) {
  header {
    position: fixed;
    z-index: 2
  }
  header .head {
    padding: 2vw 4vw 3vw
  }
  header .head ul li:nth-child(1) {
    max-width: 180px;
    position: relative;
    z-index: 2
  }
  header .head ul li:nth-child(2), header .head ul li:nth-child(3), header .head ul li:nth-child(4), header .head ul li:nth-child(5) {
    display: none
  }
  header p.navBtn {
    width: 35px;
    height: 35px;
    position: absolute;
    right: 5%;
    top: 30%;
    z-index: 2;
    cursor: pointer
  }
  header p.navBtn span {
    width: 100%;
    height: 1px;
    position: absolute;
    background: #fff;
    border-radius: 10px;
    transition: top .5s ease, -webkit-transform .6s ease-in-out;
    transition: transform .6s ease-in-out, top .5s ease;
    transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out
  }
  header p.navBtn span:nth-of-type(1) {
    top: 0
  }
  header p.navBtn span:nth-of-type(2) {
    top: 10px
  }
  header p.navBtn span:nth-of-type(3) {
    top: 20px
  }
  header nav.g-nav {
    width: 100%;
    height: 100vh;
    visibility: hidden;
    overflow-x: hidden;
    opacity: 0;
    transition: all .5s ease;
    transform: translateY(-100px);
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1;
    text-align: center;
    background: #000
  }
  header nav.g-nav ul {
    position: absolute;
    top: 40px;
    border-top: 1px solid #555
  }
  header nav.g-nav ul li {
    width: 50%;
    border-right: 0 none;
    border-bottom: 1px solid #555
  }
  header nav.g-nav ul li:nth-child(1) {
    border-left: 0 none
  }
  header nav.g-nav ul li a {
    padding: 5vw 0;
    display: block
  }
  .open {
    overflow: hidden
  }
  .open header nav.g-nav {
    visibility: visible;
    opacity: 1;
    transform: translateY(0)
  }
  .open header p.navBtn span:nth-of-type(1) {
    top: 5px;
    -webkit-transform: rotate(25deg);
    transform: rotate(25deg)
  }
  .open header p.navBtn span:nth-of-type(2) {
    display: none
  }
  .open header p.navBtn span:nth-of-type(3) {
    top: 5px;
    -webkit-transform: rotate(-25deg);
    transform: rotate(-25deg)
  }
}
footer {
  width: 100%;
  text-align: center;
  background: #fff
}
footer nav.f-nav {
  width: 100%;
  padding: 1.5vw 0 2vw;
  background: #000
}
footer nav.f-nav ul {
  margin: 0 auto 3%;
  justify-content: center;
  line-height: 1
}
footer nav.f-nav ul li {
  border-right: 1px solid #555
}
footer nav.f-nav ul li:nth-child(1) {
  border-left: 1px solid #555
}
footer nav.f-nav ul li a {
  padding: 0 .8vw;
  position: relative;
  display: inline-block;
  color: #fff
}
footer nav.f-nav address.tel {
  color: #fff;
  line-height: 0
}
footer nav.f-nav address.tel p:nth-child(1) {
  margin: 0 auto 1%;
  font-size: 1.4rem
}
footer nav.f-nav address.tel p:nth-child(2) span {
  display: block;
  font-size: 5rem
}
footer nav.f-nav address.tel p:nth-child(2) span::before {
  content: "";
  width: 80px;
  height: 60px;
  margin: 0 .5% 0 0;
  display: inline-block;
  vertical-align: middle;
  background: url("../images/common/i-freedial.svg") no-repeat 0 0/100% auto
}
footer ul.f-company {
  max-width: 800px;
  margin: 1% auto 2%;
  justify-content: center
}
footer ul.f-company li {
  margin: 0 10px;
  display: flex;
  align-items: flex-end
}
footer ul.f-company li span {
  font-size: 1.2rem
}
footer ul.f-company li img {
  width: 15vw
}
footer p.copy {
  padding: 1vw 0 .5vw;
  font-size: 1.2rem
}
@media screen and (min-width:768px) and (max-width:1023px) {
  footer nav.f-nav {
    padding: 2.5vw 0 3.5vw
  }
  footer nav.f-nav ul.inner {
    max-width: 100%
  }
  footer nav.f-nav ul li a {
    padding: 0 .5vw
  }
  footer nav.f-nav address.tel p:nth-child(1) {
    margin: 5% auto 2.5%
  }
  footer nav.f-nav address.tel p:nth-child(2) span {
    margin: 0 auto 1%
  }
  footer nav.f-nav address.tel p:nth-child(2) span::before {
    width: 60px;
    height: 40px
  }
}
@media screen and (max-width:767px) {
  footer {
    padding: 0 0 12vw
  }
  footer nav.f-nav {
    padding: 5vw 0
  }
  footer nav.f-nav ul {
    display: none
  }
  footer nav.f-nav address.tel p:nth-child(1) {
    margin: 0 auto 3%;
    font-size: 1rem
  }
  footer nav.f-nav address.tel p:nth-child(2) {
    font-size: 1.2rem
  }
  footer nav.f-nav address.tel p:nth-child(2) span {
    margin: 0 auto 1%;
    font-size: 3.5rem
  }
  footer nav.f-nav address.tel p:nth-child(2) span::before {
    width: 60px;
    height: 40px
  }
  footer ul.f-company {
    max-width: 55%;
    margin: 3% auto 0
  }
  footer ul.f-company li {
    width: 100%;
    margin: 0 auto 3%
  }
  footer ul.f-company li img {
    width: 30vw
  }
  footer ul.f-company li span {
    font-size: 1rem
  }
  footer p.copy {
    font-size: 1rem
  }
  .fixbtn {
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 2;
    background: #fff
  }
  .fixbtn ul {
    width: 100%
  }
  .fixbtn ul li {
    width: 50%
  }
  .fixbtn ul li img {
    width: 100%
  }
}
main {
  width: 100%;
  display: block
}
main .foot-bnr {
  width: 100%;
  padding: 7vw 0 5vw;
  background: #e6e6e6
}
main .foot-bnr ul {
  margin: 0 auto;
  justify-content: space-between
}
main .foot-bnr ul li {
  width: 48%;
  margin: 0 0 3%
}
main .foot-bnr .outline a{
	background: #000;
	color: #FFF;
	width: 100%;
	padding: 1.5% 0;
	display: block;
	text-align: center;
	font-size: 2rem;
	margin-bottom: 8%;
}
main .foot-bnr .bnr {
  padding: 0 0 0 1em;
  text-indent: -1em
}
@media screen and (max-width:767px) {
  main .foot-bnr {
    padding: 7vw 0 10vw
  }
  main .foot-bnr .bnr {
    font-size: 1rem;
    line-height: 1.5
  }
}
@media screen and (max-width:767px) {
  main {
    padding: 11vw 0 0
  }
}