@charset "utf-8";

/*-----------------------------------------------------
reset
-------------------------------------------------------*/
.header,
.breadcrumb,
.bottom-page-wrap,
.btn-side-download{
  display: none;
}


/*-----------------------------------------------------
header
-------------------------------------------------------*/

header{
  position: relative;
  padding: 1rem 0;
  background: #fff8c6;
  border-bottom: 3px solid #a5c435;
  box-shadow: 0 5px 10px rgba(33, 33, 33, 0.19);
}

/*-----------------------------------------------------
module
-------------------------------------------------------*/

/* head
------------------------------------------------*/

@media only screen and (min-width: 992px) {
  .fs-head,
  .fs-head--bs .fs-1{
    font-size: 5.5rem!important;
  }
  .fs-head--bs,
  .fs-head--sm{
    font-size: 4.5rem!important;
  }
}

/* text
------------------------------------------------*/

.text-green{
  color: #acc842;
}


/* link
------------------------------------------------*/

a:hover img{
  opacity: 0.8;
}

@media only screen and (min-width: 992px) {
  .sec-space{
    padding: 100px 0!important;
  }
}

/* bg
------------------------------------------------*/

.bg{
  color: #fff;
  background: url(../images/green_bg.png) no-repeat center center;
  background-size: cover;
}
.bg--photo{
  background: url(../images/omoi_bg.png) no-repeat center center;
}


/* arrow
------------------------------------------------*/

.arrow{
  position: relative;
  padding-top: 13vw!important;
}
.arrow::after{
  content: '';
  position: absolute;
  top: 4.8vw;
  left: 50%;
    transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: 30vw;
  height: 10vw;
  background: #fff;
}

/* border
------------------------------------------------*/
.border-primary{
  border-width: 3px!important;
  border-color: #acc842!important;
}

/*-----------------------------------------------------
Fv
-------------------------------------------------------*/

#Fv{
  padding: 10rem 0;
  background: url(../images/bg.png),url(../images/fv_bg.png);
  background-repeat: no-repeat,no-repeat;
  background-position: center top, 75% top;
  background-size: cover, contain;
}


@media only screen and (max-width: 991px) {
  #Fv{
    padding: 5rem 1rem 2rem;
    background-position: center top, center top;
    background-size: contain, cover;
  }
}

/*-----------------------------------------------------
Strengths
-------------------------------------------------------*/

@media only screen and (max-width: 767px) {
  .strengths__icon-text{
    font-size: 1rem!important;
  }
}

/*-----------------------------------------------------
Flow
-------------------------------------------------------*/

.flow-wrap{
  position: relative;
  overflow: hidden;
}
.flow-wrap:after{
  content: "";
  position: absolute;
  border-left: 8px dotted #acc842;
  top: 20%;
  left: 20%;
  height: 70%;
  z-index: 1;
}
.flow__item{
  padding-top: 5rem;
}
@media only screen and (min-width: 1400px) {
  .flow-wrap:after{
    left: 18.5%;
  }
}
@media only screen and (max-width: 767px) {
  .flow-wrap:after{
    left: 15%;
  }
}

/*-----------------------------------------------------
Example
-------------------------------------------------------*/

.autoplay .slick-slide img{
  height: 50vw;
}
.slide-arrow {
  bottom: 0;
  cursor: pointer;
  margin: auto;
  position: absolute;
  top: 0;
  width: 4rem;
}
.prev-arrow {
  left: -3.5rem;
  z-index: 99;
}
.next-arrow {
  right: -3.5rem;
  z-index: 99;
}

/*-----------------------------------------------------
Contact
-------------------------------------------------------*/

.p-privacy{
  padding: 1em;
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  height: 15em;
  overflow-y: scroll;
}
.p-privacy__ttl {
    margin-bottom: 1em;
    font-size: 1.8rem;
    font-weight: bold;
    border-bottom: none;
}
.p-privacy__list, .p-privacy__item {
  margin: 0;
  padding: 0;
}
.p-privacy__list {
  margin-left: 1.5em;
  margin-bottom: 1em !important;
  list-style-type: disc;
}
.p-privacy__item {
  margin-bottom: 2.5em;
  position: relative;
}
.p-privacy__item::before {
  content: '';
  height: 1px;
  width: 100%;
  border-bottom: 1px dotted #CCC;
  position: absolute;
  left: -1.5em;
  bottom: -1em;
}
.p-privacy__item .p-privacy__item::before {
  display: none;
}
.p-privacy__item .p-privacy__item {
  margin-bottom: 0.2em;
}
.p-privacy__list .p-privacy__list {
  margin-top: 0.5em;
}
.p-privacy__list--decimal {
  list-style-type: decimal;
}
.p-privacy__list--decimal .p-privacy__item {
  list-style-type: inherit;
}
.p-privacy__block-right {
  text-align: right;
}
.p-privacy__block-right-in {
  display: inline-block;
  text-align: left;
}
.p-privacy__block-right p {
  margin: 0;
}
.p-privacy__text--right {
  text-align: right;
}
.btn-primary,
.btn-primary:hover{
  background: #acc842;
  border: none;
  border-radius: 1.5rem;
  color: #fff;
}
.btn-primary:hover{
  opacity: 0.8;
}


/* -------------------------------------------------------------------
Scroll to top
------------------------------------------------------------------- */

.scroll-up {
  display: none;
  position: fixed;
  z-index: 999;
  right: 7px;
  bottom: 15rem;
}

.scroll-up a {
  display: block;
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 50%;
  opacity: 0.6;
  color: #221815;
  background: #fff;
  font-size: 14px;
  line-height: 42px;
  text-align: center;
}

.scroll-up a:hover,
.scroll-up a:active {
  opacity: 1;
  color: #000;
}

.scroll-up a {
}
.scroll-up a i {
  padding-left: 0;
}

/*-----------------------------------------------------
Footer
-------------------------------------------------------*/

.copy{
  margin-bottom: 14rem;
  background: #acc842;
  color: #fff;
}

/*-----------------------------------------------------
overlay
-------------------------------------------------------*/

.overlay{
  position: fixed;
  bottom: 0;
  width: 100%;
  height: 14rem;
  background: #fff8c6;
  z-index: 9999;
}