/*--------------------------------------------------------------------------
adjust
---------------------------------------------------------------------------*/
* {
box-sizing: border-box;
font-family: "shippori mincho", "yu mincho", 游明朝, YuMincho, "ヒラギノ明朝 pron", serif, "sawarabi mincho";
letter-spacing: 0.01em;
color: #333;
}

body {
margin: 0;
}

h2,h3 {
margin: 0;
}

p {
margin: 0;
}

.box-flex {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: space-between;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
-ms-flex-wrap: wrap;
-o-flex-wrap: wrap;
flex-wrap: wrap;
}

.cont-l {
  width: 86.6666%;
  max-width: 1440px;
  margin: 0 auto;
}

.cont-m {
  width: 86.6666%;
  max-width: 1200px;
  margin: 0 auto;
}

.cont-s {
  width: 86.6666%;
  max-width: 1080px;
  margin: 0 auto;
}


/*MARGIN*/
.mb05 { margin-bottom: 5px;}
.mb15 { margin-bottom: 15px;}
.mt05 { margin-top: 5px;}
.mt15 { margin-top: 15px;}

.ml05 { margin-left: 5px;}
.ml10 { margin-left: 10px;}
.ml15 { margin-left: 15px;}
.ml20 { margin-left: 20px;}
.ml30 { margin-left: 30px;}
.ml40 { margin-left: 40px;}
.ml50 { margin-left: 50px;}

.mr05 { margin-right: 5px;}
.mr10 { margin-right: 10px;}
.mr15 { margin-right: 15px;}
.mr20 { margin-right: 20px;}
.mr30 { margin-right: 30px;}
.mr40 { margin-right: 40px;}
.mr50 { margin-right: 50px;}

/*PADDING*/
.pb05 { padding-bottom: 5px;}
.pb15 { padding-bottom: 15px;}
.pt05 { padding-top: 5px;}
.pt15 { padding-top: 15px;}

.pl05 { padding-left: 5px;}
.pl10 { padding-left: 10px;}
.pl15 { padding-left: 15px;}
.pl20 { padding-left: 20px;}
.pl30 { padding-left: 30px;}
.pl40 { padding-left: 40px;}
.pl50 { padding-left: 50px;}

.pr05 { padding-right: 5px;}
.pr10 { padding-right: 10px;}
.pr15 { padding-right: 15px;}
.pr20 { padding-right: 20px;}
.pr30 { padding-right: 30px;}
.pr40 { padding-right: 40px;}
.pr50 { padding-right: 50px;}

.mt140 {margin-top: 140px!important;}
.mt120 {margin-top: 120px!important;}
.mt100 {margin-top: 100px!important;}
.mt90 {margin-top: 90px!important;}
.mt80 {margin-top: 80px!important;}
.mt70 {margin-top: 70px!important;}
.mt60 {margin-top: 60px!important;}
.mt50 {margin-top: 50px!important;}
.mt40 {margin-top: 40px!important;}
.mt30 {margin-top: 30px!important;}
.mt20 {margin-top: 20px!important;}
.mt15 {margin-top: 15px!important;}
.mt10 {margin-top: 10px!important;}
@media screen and (max-width: 1200px) {
.mt140 {margin-top: 115px!important;}
.mt120 {margin-top: 95px!important;}
.mt100 {margin-top: 80px!important;}
.mt90 {margin-top: 70px!important;}
.mt80 {margin-top: 60px!important;}
.mt70 {margin-top: 50px!important;}
.mt60 {margin-top: 45px!important;}
.mt50 {margin-top: 40px!important;}
.mt40 {margin-top: 30px!important;}
.mt30 {margin-top: 25px!important;}
.mt20 {margin-top: 16px!important;}
.mt15 {margin-top: 12px!important;}
.mt10 {margin-top: 8px!important;}
}
@media screen and (max-width: 768px) {
.mt140 {margin-top: 90px!important;}
.mt120 {margin-top: 75px!important;}
.mt100 {margin-top: 60px!important;}
.mt90 {margin-top: 50px!important;}
.mt80 {margin-top: 40px!important;}
.mt70 {margin-top: 37px!important;}
.mt60 {margin-top: 35px!important;}
.mt50 {margin-top: 30px!important;}
.mt40 {margin-top: 25px!important;}
.mt30 {margin-top: 20px!important;}
.mt20 {margin-top: 14px!important;}
.mt15 {margin-top: 10px!important;}
.mt10 {margin-top: 7px!important;}
}

.pt100 {padding-top: 100px!important;}
.pt90 {padding-top: 90px!important;}
.pt80 {padding-top: 80px!important;}
.pt70 {padding-top: 70px!important;}
.pt60 {padding-top: 60px!important;}
.pt50 {padding-top: 50px!important;}
.pt40 {padding-top: 40px!important;}
.pt30 {padding-top: 30px!important;}
@media screen and (max-width: 1200px) {
.pt100 {padding-top: 80px!important;}
.pt90 {padding-top: 70px!important;}
.pt80 {padding-top: 65px!important;}
.pt70 {padding-top: 55px!important;}
.pt60 {padding-top: 50px!important;}
.pt50 {padding-top: 40px!important;}
.pt40 {padding-top: 30px!important;}
.pt30 {padding-top: 25px!important;}
}
@media screen and (max-width: 768px) {
.pt100 {padding-top: 60px!important;}
.pt90 {padding-top: 55px!important;}
.pt80 {padding-top: 50px!important;}
.pt70 {padding-top: 45px!important;}
.pt60 {padding-top: 35px!important;}
.pt50 {padding-top: 30px!important;}
.pt40 {padding-top: 25px!important;}
.pt30 {padding-top: 20px!important;}
}

.ptb100 { padding-top: 100px!important; padding-bottom: 100px!important;}
.ptb90 { padding-top: 90px!important; padding-bottom: 90px!important;}
.ptb80 { padding-top: 80px!important; padding-bottom: 80px!important;}
.ptb70 { padding-top: 70px!important; padding-bottom: 70px!important;}
.ptb60 { padding-top: 60px!important; padding-bottom: 60px!important;}
.ptb50 { padding-top: 50px!important; padding-bottom: 50px!important;}
.ptb40 { padding-top: 40px!important; padding-bottom: 40px!important;}
.ptb30 { padding-top: 30px!important; padding-bottom: 30px!important;}
@media screen and (max-width: 1200px) {
.ptb100 { padding-top: 80px!important; padding-bottom: 80px!important;}
.ptb90 { padding-top: 70px!important; padding-bottom: 70px!important;}
.ptb80 { padding-top: 60px!important; padding-bottom: 60px!important;}
.ptb70 { padding-top: 50px!important; padding-bottom: 50px!important;}
.ptb60 { padding-top: 45px!important; padding-bottom: 45px!important;}
.ptb50 { padding-top: 40px!important; padding-bottom: 40px!important;}
.ptb40 { padding-top: 30px!important; padding-bottom: 30px!important;}
.ptb30 { padding-top: 25px!important; padding-bottom: 25px!important;}
}
@media screen and (max-width: 768px) {
.ptb100 { padding-top: 60px!important; padding-bottom: 60px!important;}
.ptb90 { padding-top: 55px!important; padding-bottom: 55px!important;}
.ptb80 { padding-top: 50px!important; padding-bottom: 50px!important;}
.ptb70 { padding-top: 45px!important; padding-bottom: 45px!important;}
.ptb60 { padding-top: 35px!important; padding-bottom: 35px!important;}
.ptb50 { padding-top: 30px!important; padding-bottom: 30px!important;}
.ptb40 { padding-top: 25px!important; padding-bottom: 25px!important;}
.ptb30 { padding-top: 20px!important; padding-bottom: 20px!important;}
}


dl, ol, ul {
    margin: 0;
}

p {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 2em;
}
img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
a {
    text-decoration: none;
}

/*--------------------------------------------------------------------------
 Aimation
---------------------------------------------------------------------------*/
.fade-in {
 opacity: 0;
}
.in {
 -webkit-animation-name: fadeIn;
 animation-name: fadeIn;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 animation-timing-function: ease;
}

@-webkit-keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}

@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}

.fade-up {
 opacity: 0;
 transform: translate(0,30px);
 -webkit-transform: translate(0,30px);
}
/* ie11 繝上ャ繧ｯ*/
@media all and (-ms-high-contrast:none){
.fade-up {
 opacity: 1;
 transform: translate(0,0);
 -webkit-transform: translate(0,0);
}
}

.up {
 -webkit-animation-name: fadeUp;
 animation-name: fadeUp;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 animation-timing-function: ease;
}

@-webkit-keyframes fadeUp {
 from {
  opacity: 0;
  transform: translate(0,30px);
  -webkit-transform: translate(0,30px);
 }
 to {
  opacity: 1;
  transform: translate(0,0);
  -webkit-transform: translate(0,0);
 }
}

@keyframes fadeIn {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
