/*------------------------------------------------------
common
------------------------------------------------------*/
body{
  position: relative;
  font-family: "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", "Meiryo", "ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯", sans-serif;
  font-size: 12px;
  line-height: 1.8;
  min-height: 100vh;
  height: 100%;
}

@media(min-width: 992px) {
  body{
  font-size: 16px;
  
  }
}

img{
  max-width: 100%;
  width: 100%;
  vertical-align:top;
}

a{
  text-decoration: none;
  display: block;
  color: inherit;
  transition-property: all;
  transition: 0.2s linear;
  cursor: pointer;
}

hr {
  margin: 1rem 0;
  color: inherit;
  border: 0;
  border-top-width: 0px;
  border-top-style: none;
  border-top-color: currentcolor;
  border-top: 1px solid;
  opacity: .25;
}

pre {
  padding: .75rem;
  overflow: overlay;
  white-space: pre;
  background-color: #f2f2f2;
  font-size: 0.75rem;
  line-height: 1.25;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}



/*---------------------------------------
text-align
----------------------------------------*/
.text-center{
  text-align : center !important;
}
.text-right{
  text-align : right !important;
}
.text-left{
  text-align : left !important;
}



/*---------------------------------------
typography
----------------------------------------*/
h1,.h1{
  font-size: 2.5rem !important;
}

h2,.h2{
  font-size: 2rem !important;
}
h3,.h3{
  font-size: 1.75rem !important;
}

h4,.h4{
  font-size: 1.5rem !important;
}
h5,.h5{
  font-size: 1.25rem !important;
}
h6,.h6{
  font-size: 1rem !important;
}
p: last-child{
  margin-bottom: 0;
}
.text-upper{
  text-transform: uppercase;
}

.text-cap{
  text-transform: capitalize;
}

.text-lower{
  text-transform: lowercase;
}

.text-bold{
  font-weight: bold;
}
/*---------------------------------------
spacing
----------------------------------------*/
.m-0 {
  margin: 0!important
}

.m-1 {
  margin: .25rem!important
}

.m-2 {
  margin: .5rem!important
}

.m-3 {
  margin: 1rem!important
}

.m-4 {
  margin: 1.5rem!important
}

.m-5 {
  margin: 3rem!important
}

.m-auto {
  margin: auto!important
}

.mx-0 {
  margin-right: 0!important;
  margin-left: 0!important
}

.mx-1 {
  margin-right: .25rem!important;
  margin-left: .25rem!important
}

.mx-2 {
  margin-right: .5rem!important;
  margin-left: .5rem!important
}

.mx-3 {
  margin-right: 1rem!important;
  margin-left: 1rem!important
}

.mx-4 {
  margin-right: 1.5rem!important;
  margin-left: 1.5rem!important
}

.mx-5 {
  margin-right: 3rem!important;
  margin-left: 3rem!important
}

.mx-auto {
  margin-right: auto!important;
  margin-left: auto!important
}

.my-0 {
  margin-top: 0!important;
  margin-bottom: 0!important
}

.my-1 {
  margin-top: .25rem!important;
  margin-bottom: .25rem!important
}

.my-2 {
  margin-top: .5rem!important;
  margin-bottom: .5rem!important
}

.my-3 {
  margin-top: 1rem!important;
  margin-bottom: 1rem!important
}

.my-4 {
  margin-top: 1.5rem!important;
  margin-bottom: 1.5rem!important
}

.my-5 {
  margin-top: 3rem!important;
  margin-bottom: 3rem!important
}

.my-auto {
  margin-top: auto!important;
  margin-bottom: auto!important
}

.mt-0 {
  margin-top: 0!important
}

.mt-1 {
  margin-top: .25rem!important
}

.mt-2 {
  margin-top: .5rem!important
}

.mt-3 {
  margin-top: 1rem!important
}

.mt-4 {
  margin-top: 1.5rem!important
}

.mt-5 {
  margin-top: 3rem!important
}

.mt-auto {
  margin-top: auto!important
}

.me-0 {
  margin-right: 0!important
}

.me-1 {
  margin-right: .25rem!important
}

.me-2 {
  margin-right: .5rem!important
}

.me-3 {
  margin-right: 1rem!important
}

.me-4 {
  margin-right: 1.5rem!important
}

.me-5 {
  margin-right: 3rem!important
}

.me-auto {
  margin-right: auto!important
}

.mb-0 {
  margin-bottom: 0!important
}

.mb-1 {
  margin-bottom: .25rem!important
}

.mb-2 {
  margin-bottom: .5rem!important
}

.mb-3 {
  margin-bottom: 1rem!important
}

.mb-4 {
  margin-bottom: 1.5rem!important
}

.mb-5 {
  margin-bottom: 3rem!important
}

.mb-auto {
  margin-bottom: auto!important
}

.ms-0 {
  margin-left: 0!important
}

.ms-1 {
  margin-left: .25rem!important
}

.ms-2 {
  margin-left: .5rem!important
}

.ms-3 {
  margin-left: 1rem!important
}

.ms-4 {
  margin-left: 1.5rem!important
}

.ms-5 {
  margin-left: 3rem!important
}

.ms-auto {
  margin-left: auto!important
}

.p-0 {
  padding: 0!important
}

.p-1 {
  padding: .25rem!important
}

.p-2 {
  padding: .5rem!important
}

.p-3 {
  padding: 1rem!important
}

.p-4 {
  padding: 1.5rem!important
}

.p-5 {
  padding: 3rem!important
}

.px-0 {
  padding-right: 0!important;
  padding-left: 0!important
}

.px-1 {
  padding-right: .25rem!important;
  padding-left: .25rem!important
}

.px-2 {
  padding-right: .5rem!important;
  padding-left: .5rem!important
}

.px-3 {
  padding-right: 1rem!important;
  padding-left: 1rem!important
}

.px-4 {
  padding-right: 1.5rem!important;
  padding-left: 1.5rem!important
}

.px-5 {
  padding-right: 3rem!important;
  padding-left: 3rem!important
}

.py-0 {
  padding-top: 0!important;
  padding-bottom: 0!important
}

.py-1 {
  padding-top: .25rem!important;
  padding-bottom: .25rem!important
}

.py-2 {
  padding-top: .5rem!important;
  padding-bottom: .5rem!important
}

.py-3 {
  padding-top: 1rem!important;
  padding-bottom: 1rem!important
}

.py-4 {
  padding-top: 1.5rem!important;
  padding-bottom: 1.5rem!important
}

.py-5 {
  padding-top: 3rem!important;
  padding-bottom: 3rem!important
}

.pt-0 {
  padding-top: 0!important
}

.pt-1 {
  padding-top: .25rem!important
}

.pt-2 {
  padding-top: .5rem!important
}

.pt-3 {
  padding-top: 1rem!important
}

.pt-4 {
  padding-top: 1.5rem!important
}

.pt-5 {
  padding-top: 3rem!important
}

.pe-0 {
  padding-right: 0!important
}

.pe-1 {
  padding-right: .25rem!important
}

.pe-2 {
  padding-right: .5rem!important
}

.pe-3 {
  padding-right: 1rem!important
}

.pe-4 {
  padding-right: 1.5rem!important
}

.pe-5 {
  padding-right: 3rem!important
}

.pb-0 {
  padding-bottom: 0!important
}

.pb-1 {
  padding-bottom: .25rem!important
}

.pb-2 {
  padding-bottom: .5rem!important
}

.pb-3 {
  padding-bottom: 1rem!important
}

.pb-4 {
  padding-bottom: 1.5rem!important
}

.pb-5 {
  padding-bottom: 3rem!important
}

.ps-0 {
  padding-left: 0!important
}

.ps-1 {
  padding-left: .25rem!important
}

.ps-2 {
  padding-left: .5rem!important
}

.ps-3 {
  padding-left: 1rem!important
}

.ps-4 {
  padding-left: 1.5rem!important
}

.ps-5 {
  padding-left: 3rem!important
}
.small{
  font-size: 90%;
}
.disable{
  opacity: 0.3;
  pointer-events: none;
}



/*---------------------------------------
wrapper
----------------------------------------*/
.wrapper{
  overflow-x: hidden;
}



/*---------------------------------------
container
----------------------------------------*/
.container,
.container-ful{
  padding: 0 0.5rem;
  margin: 0 auto;
  width: 100%;
}
.container{
  max-width: 1080px;
}
.contents-block{
  padding: 5rem 1rem;
}
.contents-block.no-top{
  padding-top: 0;
  padding-bottom: 0;
}
ul{
  list-style: none;
}


/*---------------------------------------
flex
----------------------------------------*/
.row-flex{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: -1rem;
  margin-right: -.5rem;
  margin-left: -.5rem;
}

.row-flex.s-bt{
  justify-content: space-between;
}

.row-flex > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: .5rem;
  padding-left: .5rem;
  margin-top: 1rem;
}

.row-flex .col-1 {
  flex:0 0 auto;
  width:8.33333333%
}

.row-flex .col-2 {
  flex:0 0 auto;
  width:16.66666667%
}

.row-flex .col-3 {
  flex:0 0 auto;
  width:25%
}

.row-flex .col-4 {
  flex:0 0 auto;
  width:33.33333333%
}

.row-flex .col-5 {
  flex:0 0 auto;
  width:41.66666667%
}

.row-flex .col-6 {
  flex:0 0 auto;
  width:50%
}

.row-flex .col-7 {
  flex:0 0 auto;
  width:58.33333333%
}

.row-flex .col-8 {
  flex:0 0 auto;
  width:66.66666667%
}

.row-flex .col-9 {
  flex:0 0 auto;
  width:75%
}

.row-flex .col-10 {
  flex:0 0 auto;
  width:83.33333333%
}

.row-flex .col-11 {
  flex:0 0 auto;
  width:91.66666667%
}

.row-flex .col-12 {
  flex:0 0 auto;
  width:100%
}

.row-flex .ml-auto {
  margin-left: auto !important;
}

.row-flex .mr-auto {
  margin-right: auto !important;
}

@media screen and (min-width: 576px) {
  .row-flex .col-sm-1 {
    flex:0 0 auto;
    width:8.33333333%
  }
  
  .row-flex .col-sm-2 {
    flex:0 0 auto;
    width:16.66666667%
  }
  
  .row-flex .col-sm-3 {
    flex:0 0 auto;
    width:25%
  }
  
  .row-flex .col-sm-4 {
    flex:0 0 auto;
    width:33.33333333%
  }
  
  .row-flex .col-sm-5 {
    flex:0 0 auto;
    width:41.66666667%
  }
  
  .row-flex .col-sm-6 {
    flex:0 0 auto;
    width:50%
  }
  
  .row-flex .col-sm-7 {
    flex:0 0 auto;
    width:58.33333333%
  }
  
  .row-flex .col-sm-8 {
    flex:0 0 auto;
    width:66.66666667%
  }
  
  .row-flex .col-sm-9 {
    flex:0 0 auto;
    width:75%
  }
  
  .row-flex .col-sm-10 {
    flex:0 0 auto;
    width:83.33333333%
  }
  
  .row-flex .col-sm-11 {
    flex:0 0 auto;
    width:91.66666667%
  }
  
  .row-flex .col-sm-12 {
    flex:0 0 auto;
    width:100%
  }
  
  .row-flex .ml-sm-auto {
    margin-left: auto !important;
  }
  
  .row-flex .mr-sm-auto {
    margin-right: auto !important;
  }
}

@media screen and (min-width: 768px) {
  .row-flex .col-md-1 {
    flex:0 0 auto;
    width:8.33333333%
  }
  
  .row-flex .col-md-2 {
    flex:0 0 auto;
    width:16.66666667%
  }
  
  .row-flex .col-md-3 {
    flex:0 0 auto;
    width:25%
  }
  
  .row-flex .col-md-4 {
    flex:0 0 auto;
    width:33.33333333%
  }
  
  .row-flex .col-md-5 {
    flex:0 0 auto;
    width:41.66666667%
  }
  
  .row-flex .col-md-6 {
    flex:0 0 auto;
    width:50%
  }
  
  .row-flex .col-md-7 {
    flex:0 0 auto;
    width:58.33333333%
  }
  
  .row-flex .col-md-8 {
    flex:0 0 auto;
    width:66.66666667%
  }
  
  .row-flex .col-md-9 {
    flex:0 0 auto;
    width:75%
  }
  
  .row-flex .col-md-10 {
    flex:0 0 auto;
    width:83.33333333%
  }
  
  .row-flex .col-md-11 {
    flex:0 0 auto;
    width:91.66666667%
  }
  
  .row-flex .col-md-12 {
    flex:0 0 auto;
    width:100%
  }
  
  .row-flex .ml-md-auto {
    margin-left: auto !important;
  }
  
  .row-flex .mr-md-auto {
    margin-right: auto !important;
  }

}
  
  
@media screen and (min-width: 992px) {
  .row-flex .col-lg-1 {
    flex:0 0 auto;
    width:8.33333333%
  }
  
  .row-flex .col-lg-2 {
    flex:0 0 auto;
    width:16.66666667%
  }
  
  .row-flex .col-lg-3 {
    flex:0 0 auto;
    width:25%
  }
  
  .row-flex .col-lg-4 {
    flex:0 0 auto;
    width:33.33333333%
  }
  
  .row-flex .col-lg-5 {
    flex:0 0 auto;
    width:41.66666667%
  }
  
  .row-flex .col-lg-6 {
    flex:0 0 auto;
    width:50%
  }
  
  .row-flex .col-lg-7 {
    flex:0 0 auto;
    width:58.33333333%
  }
  
  .row-flex .col-lg-8 {
    flex:0 0 auto;
    width:66.66666667%
  }
  
  .row-flex .col-lg-9 {
    flex:0 0 auto;
    width:75%
  }
  
  .row-flex .col-lg-10 {
    flex:0 0 auto;
    width:83.33333333%
  }
  
  .row-flex .col-lg-11 {
    flex:0 0 auto;
    width:91.66666667%
  }
  
  .row-flex .col-lg-12 {
    flex:0 0 auto;
    width:100%
  }
  
  .row-flex .ml-lg-auto {
    margin-left: auto !important;
  }
  
  .row-flex .mr-lg-auto {
    margin-right: auto !important;
  }

}
