@charset "UTF-8";
/* CSS Document */

/* contents ****************************************************/
.l-inner{
width: 94%;
  margin: 0 auto;
}

.l-inner-S{
  height: auto;
  margin: 0 auto;
  max-width: 684px;
  padding: 0;
  width: 90%;
}
.l_inner-M{
  height: auto;
  margin: 0 auto;
  max-width: 760px;
  padding: 0;
  width: 90%;
}
.l_inner-L{
  height: auto;
  margin: 0 auto;
  max-width: 1140px;
  padding: 0;
  width: 90%;
}
.l-inner-full{
	width: 100%;
}
.l-window-full{
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
	width: 100vw;
}
.l-window-right {
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
	padding: 0 0 0 calc(50vw - 50%);
	width: 100vw;
	display: block;
}
.l-window-left {
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
	padding: 0 calc(50vw - 50%) 0 0;
	width: 100vw;
	display: block;
}
.l-wrapper img{
  max-width: 100%;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 767px) {
.l-wrapper img{
max-width: 100%;
height: auto;
  }
  
}

/******************************************************************************
width・hight
******************************************************************************/
.l-w4   { width: 4%;   }
.l-w14   { width: 14%;   }
.l-w16   { width: 16%;   }
.l-w20   { width: 20%;   }
.l-w25   { width: 25%;   }
.l-w30   { width: 30%;   }
.l-w33   { width: 33.33%;   }
.l-w40   { width: 40%;   }
.l-w42   { width: 42%;   }
.l-w53   { width: 53%;   }
.l-w50   { width: 50%;   }
.l-w60   { width: 60%;   }
.l-w70   { width: 70%;   }
.l-w80   { width: 80%;   }
.l-w84   { width: 84%;   }
.l-w100p { width: 100%;  }
.l-h100p { height: 100%; }
/******************************************************************************
position
******************************************************************************/
.position_r{
  position: relative;
}
.position_a{
  position: absolute;
}
/******************************************************************************
display
******************************************************************************/
.l_inlineBlock{
  display: inline-block
}
.l_Block{
  display: block
}
/******************************************************************************
 Flex
******************************************************************************/
.l-flexWrap {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}
.l-nowrap {
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
}
.l-reverse {
  flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
}
.l-column {
  flex-direction: column;
  -webkit-box-orient: vertical;
}
.l-nowrap {
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
}
.l-alignStart {
 align-items: flex-start;
}
.l-jsCenter {
  justify-content: center;
  -webkit-justify-content: center;
}
.l-jsAround {
  justify-content: space-around;
  -webkit-justify-content: space-around;
}
.l-jsStart {
  justify-content: flex-start;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
}
.l-jsEnd {
  justify-content: flex-end;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-end;
}
.l-alStretch {
  align-items: stretch;
  -webkit-align-items: stretch;
}
.l-alStart {
  align-items: flex-start;
  -webkit-align-items: flex-start;
}
.u-alEnd{
  align-items: flex-end;
  -webkit-align-items: flex-end;
}
.l-flexWrap.half > * {
  width: 50%;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .l-flexWrap.half > * {
    width: 100%;
  }
}
/******************************************************************************
header
******************************************************************************/
/*ロゴ*/
.l-header{
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  background: #fff;
  text-align: center;
}
.l-header__logo{
  padding: 1.25em 0;
  display: inline-block;
 text-align: center;
}
.l-header__logo a{
  display: block;
}
/*吹き出し*/
.l-header__speechBalloon{
  position: absolute;
  right: 0.25em;
  top: -1.25em;
}
@media screen and (max-width: 767px) {
.l-header {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  background: #fff;
  }
.l-header__logo {
  width:40%;
  }
.l-header__speechBalloon{
  right: 0;
  top: -2em;
  left: 5em;
  }
.o-nav__list__item:last-child{
    margin-top: 2em;
  }
  }

/******************************************************************************
footer
******************************************************************************/
.l-footer{
  padding: 1.875em 0;
}
.l-footer__logo{
  display: inline-block;
  padding-bottom: 0.5em;
}
.l-footer__logo a{
  display:block;  
}

/******************************************************************************

******************************************************************************/
.none{
  display: none;
}
.block{
  display: block;
}

