@charset "UTF-8";

/*CSSDocument*/


/* html body base
===============================================================*/


/*
html ----------------------------------------------------------*/

*{ margin:0px; padding:0px;}

body{
  color:#000000;
  margin:0;
  padding:0;
  background:#f5db4b;
  font-family: 'Noto Sans JP', sans-serif;
  text-align:center;
  font-size:100%;
  -webkit-text-size-adjust: none;
  position:relative;
  transition: all 0.4s ease-out;
  left: 0;
}

a:link,
a:visited,
a:hover,
a:active { color:#000;text-decoration:none;}

ul{ list-style:none;}

img {
  padding:0px;
  margin:0px;
  vertical-align:bottom;
  max-width: 100%;
  height: auto;
}
a {
  transition: all 0.5s ease-out;
}
a:hover {
  opacity:0.7;
}

/*
html ----------------------------------------------------------*/



/* body base
===============================================================*/



.l-wrap {
}
.l-inner {
  padding: 0 5.128205128vw;
  box-sizing: border-box;
}
.l-frame {
  padding: 0 5.128205128vw;
  box-sizing: border-box;
}
.l-frame--bg {
  background: #FFF;
  border-radius: 2.564102564vw;
}



@media screen and (min-width: 781px) {
  .l-inner {
    padding: 0 40px;
    max-width: 780px;
    margin: 0 auto;
  }
  .l-frame {
    border-radius: 20px;
    padding: 0 40px;
  }
}


.p-header {
  border-top: 1vw #000000 solid;
  background: #FFF;
  padding: 0 2.5vw;
}
.p-headerWrap {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}
.p-headerLogo {
  width: 26.4vw;
}
.p-header__right {
  margin-left: 2.5vw;
}
.p-headerLink {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  height: 9vw;
}
.p-headerLinkItem {
  
}
.p-headerLinkItem + .p-headerLinkItem {
  margin-left: 2vw;
}
.p-headerLinkItem:nth-of-type(1) {
  width: 28.1vw;
}
.p-headerLinkItem:nth-of-type(2) {
  width: 18vw;
}
.p-headerLinkItem:nth-of-type(3) {
  display: none;
}
@media screen and (min-width: 1001px) {
  .p-header {
    border-top: 10px #000000 solid;
    padding: 0 40px;
    box-sizing: content-box;
  }
  .p-headerWrap {
    display : -webkit-box;
    display : -webkit-flex;
    display : -ms-flexbox;
    display : flex;
    -webkit-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    max-width: 1440px;
    margin: 0 auto;
  }
  .p-headerLogo {
    max-width: 433px;
    width: 30.06944444%;
  }
  .p-header__right {
    margin-left: 0px;
    width: 49.30555556%;
  }
  .p-headerLink {
    height: auto;
    max-width: 710px;
    margin-left: auto;
    padding: 20px 0 30px;
  }
  .p-headerLinkItem {

  }
  .p-headerLinkItem + .p-headerLinkItem {
    margin-left: 2.85%;
  }
  .p-headerLinkItem:nth-of-type(1) {
    width: 57.14285714%;
  }
  .p-headerLinkItem:nth-of-type(2) {
    width: 40%;
  }

}
@media screen and (max-width: 780px) {
  .p-header {
    border-top: 1.025641026vw #000000 solid;
    padding: 0 0 0 2.564102564vw;
  }
  .p-headerWrap {
  }
  .p-headerLogo {
    width: 40vw;
  }
  .p-header__right {
    margin-left: 0;
  }
  .p-headerLink {
    height: 17.94871795vw;
  }
  .p-headerLinkItem {

  }
  .p-headerLinkItem a {
    display: block;
    height: 17.94871795vw;
  }
  .p-headerLinkItem a img {
    display: none;
  }
  .p-headerLinkItem + .p-headerLinkItem {
    margin-left: 0;
  }
  .p-headerLinkItem:nth-of-type(1) {
    width: 17.94871795vw;
  }
  .p-headerLinkItem:nth-of-type(1) a {
    background: no-repeat url("../images/header-tel4.png") center center;
    background-size: cover;
  }
  .p-headerLinkItem:nth-of-type(2) {
    width: 17.94871795vw;
  }
  .p-headerLinkItem:nth-of-type(2) a {
    background: no-repeat url("../images/header-contact4.png") center center;
    background-size: cover;
  }
  .p-headerLinkItem:nth-of-type(3) {
    width: 17.94871795vw;
    height: 17.94871795vw;
    background: #000 no-repeat url("../images/menu-icon-01.png") center center;
    background-size: 4.871794872vw 4.487179487vw;
    display: block;
  }
  body.is-menuOpen .p-headerLinkItem:nth-of-type(3) {
    background: #000 url("../images/menu-icon-02.png") no-repeat center center;
    background-size: 4.871794872vw 4.487179487vw;
  }
}





.l-upperFlowOuter {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  transition: all 0.4s ease-out;
  display: none;
}
.p-upperFlow {
  padding: 0 0 0 4.871794872vw;
  background: rgba(0,0,0,0.7);
}
.p-upperFlowWrap {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  height: 17.94871795vw;
}
.p-upperFlowLink {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
}
.p-upperFlowLinkItem {
  width: 25.64102564vw;
}
.p-upperFlowLinkItem + .p-upperFlowLinkItem {
  margin-left: 2.564102564vw;
}
.p-upperFlowBtn {
  height: 17.94871795vw;
  width: 35.8974359vw;
  background: #000 url("../images/menu-icon-03.png") no-repeat center center;
  background-size: cover;
  cursor: pointer;
}
@media screen and (min-width: 781px) {
  .l-upperFlowOuter {
    display: none !important;
  }
}
@media screen and (max-width: 780px) {
body.is-menuOpen .p-upperFlowBtn {
    width: 17.2vw;
    background: #000 url("../images/menu-icon-02.png") no-repeat center center;
    background-size: 4.871794872vw 4.871794872vw;
  }
}

.p-upperMenu {
  position: fixed;
  width: 82.8vw;
  right: -82.8vw;
  top: 0;
  height: 100vh;
  background: #000;
  border-top: none;
  border-bottom: none;
  padding: 2.564102564vw 0 25.64102564vw 8.974358974vw;
  box-sizing: border-box;
  transition: all 0.4s ease-out;
  overflow-y: scroll;
  z-index: 12000;
}
.p-upperMenuList {
}
.p-upperMenuList li {
  border-bottom: #333333 0.512820513vw solid;
  font-size: 4.615384615vw;
  text-align: left;
  line-height: 1.388888889;
  font-weight: bold;
}
.p-upperMenuList li a {
  color: #FFF;
  display: block;
  padding: 4.615384615vw 0;
}
body.is-menuOpen .p-upperMenu {
  right: 0;
}
@media screen and (min-width: 1001px) {
  .p-upperMenu {
    display: none;
  }
}
@media screen and (max-width: 780px) {
  body.is-menuOpen {
    overflow: hidden;
    left: -82.8vw;
  }
  body.is-menuOpen .l-upperFlowOuter {
    overflow: hidden;
    left: -82.8vw;
  }
}




.p-lowerLinkOuter {
  width: 100%;
  position: relative;
  left: 0;
  z-index: 10000;
}
.p-lowerLink {
  background: rgba(0,0,0,0.7);
  padding: 11px 0;
}
.p-lowerLinkWrap {
  padding: 0 40px;
  box-sizing: content-box;
  max-width: 780px;
  margin: 0 auto;
}
.p-lowerLinkList {
  display : -webkit-box;
  display : -webkit-flex;
  display : -ms-flexbox;
  display : flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}
.p-lowerLinkListItem {
}
.p-lowerLinkListItem a {
  display: block;
}
.p-lowerLinkListItem:nth-of-type(1) {
  width: 48.71794872%;
}
.p-lowerLinkListItem:nth-of-type(2) {
  width: 48.71794872%;
}
@media screen and (max-width: 780px) {
  .p-lowerLinkOuter {
    display: none !important;
  }
}



.p-footer {
  background: #000;
  color: #FFF;
  padding: 2.179487179vw 0 2.307692308vw;
  
}
.p-footer__copy {
  font-size: 2.564102564vw;
  line-height: 1.35;
  font-weight: bold;
  text-align: center;
}

@media screen and (min-width: 781px) {
  .p-footer {
    margin-top: 88px;
    padding: 16px 0 18px;
  }
  .p-footer__copy {
    font-size: 20px;
    line-height: 1.35;
  }
}

