@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

body {
  background-image: url(../img/top/bg_body.png);
  background-position: 0 0;
  background-repeat: repeat;
  color: #453a31;
  font-family: "brother-1816",'Noto Sans JP',sans-serif;
}

.img-wrapper {
  width: 100%;
}

.img-wrapper img,
picture img {
  width: 100%;
}

.btn {
  /*background-color: #fff;*/
  background-position: calc(200 / 236 * 100%) center;
  background-repeat: no-repeat;
  border: 2.5px solid #453a31;
  border-radius: 25px;
  color: #453a31;
  height: 44px;
  font-size: 23px;
  line-height: 39px;
  padding: 0 57px 0 35px;
  position: relative;
}

.btn:before,
.btn:after {
  background-color: #453a31;
  border-radius: 2px;
  content: '';
  display: block;
  height: 2.5px;
  position: absolute;
  /*right: calc(20 / 236 * 100%);*/
  right: 20px;
  transition: 0.25s all ease;
  width: 20px;
}

.btn:before {
  top: 12px;
  transform: rotate(41deg);  
}

.btn:after {
  top: 24px;
  transform: rotate(-41deg);
}

.btn:hover{
  background-color: #453a31;
  color: #fff;
}

.btn:hover:before,
.btn:hover:after {
  background-color: #fff;
  /*right: calc(14 / 236 * 100%);*/
  right: 14px;
}

.btn.btn-bg-white {
  background-color: #fff;
}

.btn.btn-green {
  border: 2.5px solid #253f2a;
  color: #253f2a;
}

.btn.btn-green:before,
.btn.btn-green:after {
  background-color: #253f2a;
}

.btn.btn-green:hover{
  background-color: #253f2a;
  color: #fff;
}

.btn.btn-green:hover:before,
.btn.btn-green:hover:after {
  background-color: #fff;
}

.btn.btn-no-arrow {
  padding: 0 35px;
}

.btn.btn-no-arrow:before,
.btn.btn-no-arrow:after {
  content: none;
}

.btn.btn-white {
  background-color: transparent;
  border: 2.5px solid #fff;
  color: #fff;
}

.btn.btn-white:before,
.btn.btn-white:after {
  background-color: #fff;
}

.btn.btn-white:hover{
  background-color: #453a31;
  border-color: #453a31;
  color: #fff;
}


footer#Footer {
  background-color: #453a31;
  color: #fff;
  text-align: center;
}

#Footer .contBox01 h2{
  margin: 0 auto;
  width: 140px;
}

#Footer .contBox01 h2 a{
  background: url(../img/common/logo_SE_white.png) no-repeat center center;
  background-size: 140px auto;
  display: block;
  height: 60px;
  text-indent: -9999px;
}

#Footer .contBox01 address + a{
  background: url(../img/common/icon_newtab.png) no-repeat left center;
  background-size: 11px auto;
  display: inline-block;
}

#Footer .contBox02 {
  /*background-color: #1d8354;*/
  margin-bottom: -10px;
  padding: 17px 0;
}


#Footer .contBox02 h2{ 
  display: none;
}

#Footer .contBox02 small{
  color: #fff;
  font-family: 'Alegreya Sans', sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
}

#Footer .innerBasic{
  background-color: transparent;
  border-radius: 0;
  max-width: 100%;
  padding: 41px 0 10px;
  width: 100%;
}

#Footer .contBox01{
  /*margin-bottom: 87px;*/
  margin-bottom: 30px;
}

#Footer .contBox01 h2{
  margin-bottom: 14px;
}

#Footer .contBox01 address{
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 3px;
}

#Footer .contBox01 address + a{
  /*color: #1d8354;*/
  color: #fff;
  font-size: 12px;
  padding-left: 17px;
}

#Footer .contBox02 small{
  font-size: 12px;
}


@media (min-width: 768px){
  .navbar>.container-fluid {
    align-items: flex-start;
  }

  .navbar-expand-md .navbar-nav {
    align-items: center;
    background-color: rgba(255, 255, 255, .8);
    border-radius: 50px 0 0 50px;
    display: flex;
    height: 88px;
    justify-content: space-between;
    max-width: 1010px;
    padding: 20px 50px 20px 56px;
    width: 100%;
  }

  .navbar-expand-md .navbar-nav .nav-link {
    color:  #1d8054;
    font-weight: bold;
    min-width: 104px;
    text-align: center;
  }

  nav .navbar-nav,
  nav .navbar-brand img {
    -webkit-transition: all .25s ease-out;
       -moz-transition: all .25s ease-out;
        -ms-transition: all .25s ease-out;
         -o-transition: all .25s ease-out;
            transition: all .25s ease-out;
  }

  nav .navbar-brand img {
    width: 178px;
  }

  nav.statics .navbar-brand img {
    width: 80px;
  }

  nav.statics .navbar-nav {
    font-size: 14px;
    height: 60px;
    line-height: 1.2;
  }
}

@media (min-width: 768px) and (max-width: 987px){
  .navbar-expand-md:not(.static) .navbar-nav .nav-link {
    font-size: 12px;
    min-width: 90px;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 768px) and (max-width: 858px){
  .navbar-expand-md:not(.static) .navbar-nav {
    padding-left: 18px;
  }

  .navbar-expand-md.static .navbar-nav .nav-link {
    font-size: 12px;
    min-width: 90px;
  }
}

@media (min-width: 768px) and (max-width: 858px){
  .navbar-expand-md:not(.static) .navbar-nav .nav-link {
    letter-spacing: -0.3px;
    padding-left: 4px;
    padding-right: 4px;
  }
}

/* -------------------- 
/* header sp */
/* -------------------- */
.navbar-brand img {
  -webkit-transition: all .25s ease;
     -moz-transition: all .25s ease;
      -ms-transition: all .25s ease;
       -o-transition: all .25s ease;
          transition: all .25s ease;
  max-width: 178px;
  width: calc(70/375*100vw);
}

.navbar-toggler {
  align-self: flex-start;
  background-image: url(../img/common/bg_hamburger.png);
  background-position: right top;
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: -1px;
  /*margin-top: 0.5rem;*/
  /*margin-top: 0.625rem;*/
  margin-top: -1px;
  /*padding: 0.25rem 1rem;*/
  padding: 14px 16px 20px 19px;
  z-index: 1;
}

.navbar-toggler:focus {
  box-shadow: none;
}

.navbar-toggler-icon {
  -webkit-transition: background-color .25s ease-in;
     -moz-transition: background-color .25s ease-in;
      -ms-transition: background-color .25s ease-in;
       -o-transition: background-color .25s ease-in;
          transition: background-color .25s ease-in;
  background-color: #1d8054;
  border-radius: 2px;
  height: 5px;
  margin: 12px 0;
  position: relative;
  width: 33px;
}

.navbar-toggler-icon:before,
.navbar-toggler-icon:after {
  -webkit-transition: all .25s ease-in;
     -moz-transition: all .25s ease-in;
      -ms-transition: all .25s ease-in;
       -o-transition: all .25s ease-in;
          transition: all .25s ease-in;
  background-color: #1d8054;
  border-radius: 2px;
  content: '';
  height: 5px;
  left: 0;
  position: absolute;
/*  width: 1.5em;*/
  width: 33px;
}

.navbar-toggler-icon:before {
  /*top: -8px;*/
  top: -13px;
}

.navbar-toggler-icon:after {
  /*top: 8px;*/
  top: 13px;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
  background-color: transparent;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
  -webkit-transform: rotate(45deg);
     -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
       -o-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 0;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
  -webkit-transform: rotate(-45deg);
     -moz-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
       -o-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: 0;
}

/* TOP */
#heading {
  position: relative;
}

.main-image-wrapper {
  background-image: url(../img/top/img_main.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(790 / 1200 * 100%);
  position: relative;
  width: 100%;
}

.main-image-wrapper:after {
  background-image: url(../img/top/dots.png);
  background-position: 0 0;
  background-repeat: repeat;
  content: '';
  height: 100%;
  left: 0;
  opacity: .5;
  position: absolute;
  top: 0;
  width: 100%;
}

.img-heading-text {
  transform: translate(-50%, -50%);
  left: 50%;
  max-width: 564px;
  position: absolute;
  top:  50%;
  width: calc(564 / 1200 * 100vw);
  z-index: 1;
}

.deco-human {
  bottom: calc(138 / 1200 * 100vw);
  position: absolute;
  right: 0;
  width: calc(247 / 1200 * 100vw);
  z-index: 1;
}

#heading .lead_texts {
  background-image: url(../img/top/bg_main.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  justify-content: space-evenly;
  padding-bottom: calc(61 / 1200 * 100%);
  padding-top: calc(30 / 1200 * 100%);
  position: relative;
  margin-top: calc(96 / 1200 * -100%);
}

#heading .lead_texts > * {
  flex: 1;
}

#heading .lead_texts .left-content picture {
  display: block;
  margin-left: -3%;
  padding-right: calc(24 / 1200 * 100%);
  text-align: right;
  width: 103%;
}

#heading .lead_texts .left-content picture img {
  display: block;
  margin-left: auto;
  max-width: 575px;
  position: relative;
}

#heading .lead_texts .right-content picture {
  display: block;
  max-width: 487px;
  padding-left: calc(7 / 1200 * 100%);
  padding-top: calc(44 / 1200 * 100%);
  width: calc(496 / 1200 * 100vw);
}

#heading .btn-wrapper {
  bottom: calc(80 / 1200 * 100%);
  /*position: absolute;*/
  margin-top: calc(62 / 1200 * 100vw);
  /*width: 100%;*/
  width: calc(496 / 1200 * 100vw);
}

#insta {
  padding-bottom: 73px;
}

#insta .insta-posts-wrapper {
  display: flex;
  margin: 0 auto 40px;
  max-width: 1200px;
  padding: calc(54 / 1200 * 100vw) calc(56 / 1200 * 100vw) calc(34 / 1200 * 100vw);
  width: 100%;
}

#insta .insta-posts-wrapper > .img-wrapper {
  width: calc(1 / 3 * 100%);
}

#insta .insta-posts-wrapper > .img-wrapper img {
  width: 100%;
}

#insta .insta-posts-wrapper ul {
  /*display: flex;*/
  /*flex: 1;*/
  /*flex-wrap: wrap;*/
  list-style: none;
  padding: 0;

  display: -ms-grid;
  display: grid;
  -ms-grid-template-columns: repeat(6, 1fr);
      grid-template-columns: repeat(6, 1fr);
  -ms-grid-gap: 4px;
      grid-gap: 4px;
}

#insta .insta-posts-wrapper ul li {
  /*width: calc(1 / 6 * 100%);*/
}

#insta .insta-posts-wrapper ul li:first-child {
  /*width: calc(1 / 3 * 100%);*/
  -ms-grid-column-end: 3;
      grid-column-end: 3;
  -ms-grid-column-start: 1;
      grid-column-start: 1;
  -ms-grid-row-end: 3;
      grid-row-end: 3;
  -ms-grid-row-start: 1;
      grid-row-start: 1;
}

#insta .insta-posts-wrapper ul li img {
  width: 100%;
}

#supervisor {
  background-image: url(../img/top/bg_omu.png);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 43px 0 123px;
}

#supervisor picture {
  display: block;
  padding: 0 20px;
  text-align: center;
  width: 100%;
}

#supervisor img {
  max-width: 1069px;
  width:  100%;
}

.content-inner {
  margin: 0 auto;
  max-width: 1069px;
  padding: 0 20px;
  width: 100%;
}

.content-heading {
  align-items: center;
  background-position: left center;
  background-repeat: no-repeat;
  color: #fff;
  display: flex;
  font-size: 24px;
  padding-left: 38.5%;
}

#howto {
  background-color: #e68824;
  padding-bottom: calc(130 / 1200 * 100vw);
  position: relative;
}

#howto::after {
  background-image: url(../img/top/deco_howto_before.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  height: calc(117 / 1200 * 100vw);
  position: absolute;
  top: calc(117 / 1200 * -100vw);
  width: 100%;
  z-index: 0;
}

#howto .content-inner {
  position: relative;
  z-index: 1;
}

.content-heading.heading-howto{
  background-image: url(../img/top/img_title_howto.png);
  background-size: calc(458 / 1200 * 100vw);
  margin-bottom: 45px;
  min-height: 179px;
}

#howto .steps {
  display: flex;
  gap: 0 20px;
  margin-bottom: 32px;
}

#howto .steps .step-item {
  flex: 1;
  position: relative;
}

#howto .steps .step-item + .step-item:before {
  background-image: url(../img/top/arrow_step.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  left: calc(80 / 329 * -100%);
  content: '';
  height: 45px;
  position: absolute;
  top: 0;
  width: calc(120 / 329 *100%);
}

#howto .steps .step-item picture {
  display: block;
  margin-bottom: 16px;
}

#howto .steps .step-item p {
  color: #fff;
  font-size: 30px;
  text-align: center;
}

#fullness {
  background-color: #1d8054;
  padding-bottom: calc(133 / 1200 * 100vw + 20px);
  position: relative;
}

#fullness::after {
  background-image: url(../img/top/deco_fullness_before.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  height: calc(168 / 1200 * 100vw);
  position: absolute;
  top: calc(130 / 1200 * -100vw);
  width: 100%;
  z-index: 0;
}

#fullness .content-inner {
  position: relative;
  z-index: 1;
}

.content-heading.heading-fullness {
  background-image: url(../img/top/img_title_fullness.png);
  background-size: calc(512 / 1200 * 100vw);
  min-height: 179px;
}

#process {
  background-color: #4e8bc8;
  padding-bottom: 60px;
  position: relative;
}

#process::after {
  background-image: url(../img/top/deco_process_before.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  height: calc(133 / 1200 * 100vw);
  position: absolute;
  top: calc(113 / 1200 * -100vw);
  width: 100%;
  z-index: 0;
}

#process .content-inner {
  position: relative;
  z-index: 1;
}

.process-content ul {
  display: flex;
  justify-content: center;
  list-style: none;
  /*gap: 48px;*/
  gap: calc(48 / 886 * 100%);
  margin: 42px auto 48px;
  max-width: 886px;
  padding: 0;
  width: 100%;
}

.process-content ul li {
  background-color: #fff;
  border-radius: 55px;
  overflow: hidden;
  width: calc(1 / 2 * 100%);
}

.process-content ul li a {
  text-decoration: none;
}

.process-content ul li .img-wrapper {
  border-radius: 55px;
  overflow: hidden;
}

.process-content ul li .process-item-info {
  font-size: 23px;
  line-height: 1.4;
  padding: 18px 34px 50px;
}

.process-content ul li .process-item-info .garden-location,
.process-content ul li .process-item-info .garden-name {
  color: #606060;
  font-weight: bold;
}

.process-content ul li .process-item-info .description {
  color: #99806d;
  letter-spacing: -1.4px;
}

.content-heading.heading-process {
  background-image: url(../img/top/img_title_process.png);
  background-size: calc(480 / 1200 * 100vw);
  min-height: 179px;
}

#newstopics {
  padding: 50px 0 40px;
}

.section-title {
  color: #453a31;
  margin-bottom: 30px;
}

#newstopics .section-title picture {
  display: block;
  margin: 0 auto;
  max-width: 149px;
}

.list-news {
  background-color: #fff;
  border-radius: 90px;
  margin: 0 auto;
  max-width: 874px;
  padding: 50px 64px 40px;
  width: 100%;
}

.list-news ul {
  margin-bottom: 34px;
}

li.media.item-news {
  border-bottom: 4px dotted #453a31;
  display: flex;
  padding: 19px 0;
}

li.media.item-news > a img {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 30px;
}

li.media.item-news .media-body {
  margin-left: 20px;
}

li.media.item-news .media-body time {
  color: #453a31;
  display: block;
  font-size: 22px;
  margin-bottom: 4px;
}

li.media.item-news .media-body .news-description {
  color: #453a31;
  font-size: 18px;
  line-height: 38px;
  text-decoration: none;
}

@media (min-width: 1200px){
  .content-heading.heading-howto{
    background-size: 458px;
  }

  .content-heading.heading-fullness {
    background-size: 512px;
  }

  .content-heading.heading-process {
    background-size: 480px;
  }
}

@media (max-width: 767px){
  body {
    background-size: calc(62 / 750 * 100vw);
  }

  .navbar-collapse {
    align-self: flex-start;
    background-color: #1d8454;
    margin-top: 0;
    padding-right: 0;
    position: absolute;
    width: 100%;    
  }

  .navbar-nav {
    height: 100vh;
    margin-top: 54px;
  }

  .navbar-expand-md .navbar-nav .nav-link {
    color: #fff;
    padding-left: 18px;
    padding-right: 18px
  }

  .main-image-wrapper {
    padding-top: calc(714 / 750 * 100%);
  }

  #heading .lead_texts {
    background-image: url(../img/top/bg_main_sp.png);
    flex-direction: column-reverse;
    height: calc(1030 / 750 * 100vw);
    margin-top: calc(90 / 750 * -100%);
    padding-top: 0;
  }

  #heading .lead_texts .left-content {
    bottom: calc(52 / 750 * 100%);
    overflow: hidden;
    position: absolute;
  }

  #heading .lead_texts .left-content picture {
    margin-left: calc(51 / 750 * -100%);
    width: calc(852 / 750 * 100%);
  }

  #heading .lead_texts .left-content picture img {
    max-width: none;
  }

  #heading .lead_texts .right-content {
    text-align: center;
    z-index: 1;
  }

  #heading .lead_texts .right-content picture {
    max-width: none;
    padding-top: calc(82 / 750 * 100%);
    width: 100%;
  }

  #heading .lead_texts .right-content img {
    width: calc(498 / 750 * 100%);
  }

  .img-heading-text {
    max-width: 564px;
    width: calc(450 / 750 * 100vw);
  }

  .deco-human {
    display: none;
  }

  #heading .btn-wrapper {
    bottom: calc(380 / 750 * 100vw);
    position: absolute;
    width: 100%;
  }

  #insta {
    padding-bottom: 12px;
    padding-bottom: calc(83 / 750 * 100vw);
  }

  #insta .insta-posts-wrapper {
    margin-bottom: 0;
    padding: calc(42 / 750 * 100vw) calc(40 / 750 * 100vw) calc(72 / 750 * 100vw);
  }

  #insta .insta-posts-wrapper ul {
    -ms-grid-template-columns: repeat(2, 1fr);
        grid-template-columns: repeat(2, 1fr);
    overflow-x: hidden;
  }

  .insta-posts-wrapper ul li:nth-child(n+7) {
    display: none;

  }

  #insta .insta-posts-wrapper ul li:first-child {
    -ms-grid-column-end: 2;
    grid-column-end: 2;
    -ms-grid-column-start: 1;
    grid-column-start: 1;
    -ms-grid-row-end: 2;
    grid-row-end: 2;
    -ms-grid-row-start: 1;
    grid-row-start: 1;
  }

  #insta .insta-posts-wrapper ul li img {
    width: calc(1 / 2 * 100vw - 2px);
    /*width: calc(1 / 2 * 100vw - 10px);*/
  }

  .btn {
    /*height: 22px;*/
    /*font-size: 12px;*/
    /*line-height: 17px;*/
    height: 40px;
    font-size: 14px;
    line-height: 35px;
  }

  .btn:before, .btn:after {
    height: 2px;
    /*right: calc(50 / 236 * 100%);*/
    right: 25px;
    width: 12px;
  }

  .btn:before {
    top: 13px;
  }

  .btn:after {
    top: 20px;
  }

  .btn.btn-no-arrow {
    /*padding: 0 10px;*/
  }

  #supervisor {
    background-position: calc(326 / 750 * -100vw) top;
    background-size: calc(1267 / 750 * 100vw);
    overflow: hidden;
    padding-bottom: calc(166 / 750 * 100vw);
  }

  #supervisor picture {
    padding: 0;
  }

  #supervisor img {
    margin-left: calc(152 / 750 * -100vw);
    /*max-width: 518px;*/
    width: calc(1036 / 750 * 100vw);
  }

  #howto {
    padding-bottom: calc(142 / 750 * 100vw);
  }

  #howto::after {
    background-image: url(../img/top/deco_howto_before_sp.png);
    background-position: calc(450 / 750 * -100vw) bottom;
    background-size: calc(1575 / 750 * 100vw);
    height: calc(190 / 750 * 100vw);
    top: calc(116 / 750 * -100vw);
  }

  #howto .content-inner {
    overflow: hidden;
    padding: 0;
    padding-top: calc(84 / 750 * 100vw);
  }

  .content-heading {
    font-size: 12px;
    padding-left: 0;
    padding-top: calc(54 / 750 * 100vw);
  }

  .content-heading.heading-howto {
    background-image: url(../img/top/img_title_howto_sp.png);
    background-position: calc(45 / 750 * -100vw) top;
    background-size: calc(557 / 750 * 100vw);
    margin-bottom: calc(45 / 750 * 100vw);
    margin-left: -20px;
    margin-right: -20px;
    margin-top: calc(86 / 750 * -100vw);
    min-height: 0;
    padding: calc(160 / 750 * 100vw) 40px 0;
  }

  #howto .steps {
    flex-direction: column;
    overflow: hidden;
  }

  #howto .steps .step-item {
    align-items: center;
    display: flex;
    margin-left: -28px;
    margin-right: -68px;
    margin-left: calc(28 / 750 * -100vw);
    margin-right: calc(68 / 750 * -100vw);
  }

  #howto .steps .step-item:nth-child(even) {
    flex-direction: row-reverse;
  }

  #howto .steps .step-item + .step-item {
    margin-top: calc(86 / 750 * -100vw);
  }

  #howto .steps .step-item + .step-item:before {
    height: calc(62 / 750 * 100vw);
    left: 50%;
    top: calc(40 / 750 * -100vw);
    transform: translateX(-50%);
    width: calc(121 / 750 * 100vw);
  }

  #howto .steps .step-item:nth-child(odd):before {
    transform: scale(-1, 1) translateX(50%);
  }


  #howto .steps .step-item picture,
  #howto .steps .step-item p {
    flex: 1;
  }

  #howto .steps .step-item picture {
    margin-bottom: 0;
  }

  #howto .steps .step-item p {
    font-size: 15px;
    padding: 0 15px;
    text-align: left;
  }

  #howto .steps .step-item:nth-child(even) p {
    text-align: right;
  }

  #howto .steps .step-item p span {
    display: inline-block;
    text-align: left;
  }

  #fullness::after {
    background-position: calc(308 / 750 * -100vw) bottom;
    background-size: calc(1200 / 750 * 100vw);
    height: calc(168 / 750 * 100vw);
    top: calc(124 / 750 * -100vw);
  }

  #fullness .content-inner {
    overflow: hidden;
    padding: 0;
  }

  .content-heading.heading-fullness {
    background-image: url(../img/top/img_title_fullness_sp.png);
    background-position: left top;
    background-size: calc(557 / 750 * 100vw);
    margin-bottom: calc(45 / 750 * 100vw);
    margin-left: -20px;
    margin-right: -20px;
    min-height: 0;
    padding: calc(190 / 750 * 100vw) 40px 0;
  }

  #fullness .content-inner picture {
    display: block;
    padding: 0 20px;
  }

  #process::after {
    background-position: calc(112 / 750 * -100vw) bottom;
    background-size: calc(1200 / 750 * 100vw);
    height: calc(133 / 750 * 100vw);
    top: calc(92 / 750 * -100vw);
  }

  #process .content-inner {
    overflow: hidden;
    padding: 0;
  }

  .content-heading.heading-process {
    background-image: url(../img/top/img_title_process_sp.png);
    background-position: left top;
    background-size: calc(557 / 750 * 100vw);
    margin-bottom: calc(45 / 750 * 100vw);
    margin-left: -20px;
    margin-right: -20px;
    min-height: 0;
    padding: calc(190 / 750 * 100vw) 40px 0;
  }

  .process-content ul {
    flex-direction: column;
    padding: 0 calc(107 / 750 * 100vw);
  }

  .process-content ul li {
    border-radius: calc(72 / 540 * 100%);
    width: 100%;
  }

  .process-content ul li + li {
    margin-top: 30px;
  }

  .process-content ul li .img-wrapper {
    border-radius: calc(72 / 540 * 100%);
  }

  .process-content ul li .process-item-info {
    font-size: calc(30 / 750 * 100vw);
  }

  #newstopics .container {
    max-width: none;
  }

  #newstopics .section-title picture {
    display: block;
    margin: 0 auto;
    width: calc(330 / 750 * 100vw);
  }

  .list-news {
    border-radius: calc(80 / 750 * 100vw);
    padding-left: 2px;
    padding-right: 2px;
    padding-top: calc(26 / 750 * 100vw);
  }

  .list-news ul {
    padding: 0 calc(38 / 750 * 100vw);
  }

  li.media.item-news {
    padding: calc(22 / 750 * 100vw) 0;
  }

  li.media.item-news > a {
    display: flex;
    height: calc(137 / 750 * 100vw);
    width: calc(174 / 750 * 100vw);
  }

  li.media.item-news > a img {
    border-radius: calc(30 / 750 * 100vw);
    /*height: calc(137 / 750 * 100vw);*/
    /*width: calc(174 / 750 * 100vw);*/
    height: auto;
  }

  li.media.item-news .media-body {
    margin-left: calc(20 / 750 * 100vw);
  }

  li.media.item-news .media-body time {
    /*font-size: 16px;*/
    font-size: calc(16 / 375 * 100vw);
    line-height: 1;
  }

  li.media.item-news .media-body .news-description {
    /*font-size: 14px;*/
    font-size: calc(14 / 375 * 100vw);
    line-height: 1.4;
  }
}

@media (max-width: 480px){
  #heading .btn-wrapper {
    bottom: calc(360 / 750 * 100vw);
  }
}



/*           */
/* casestudy */
/*           */
#page-casestudy .main-image-wrapper {
  background-image: url(../img/casestudy/img_main_casestudy.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-casestudy .img-heading-text {
  left: 50%;
  max-width: 564px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(564 / 1200 * 100vw);
  z-index: 1;
}

#page-casestudy .content,
.page-template .content {
  background-color: #e6c8b8;
  position: relative;
}

#page-casestudy .content:after,
.page-template  .content:after {
  background-image: url(../img/casestudy/deco_content_before.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  height: calc(79 / 1200 * 100vw);
  position: absolute;
  top: calc(79 / 1200 * -100vw);
  width: 100%;
  z-index: 0;
}

.content .lead-text {
  /*font-size: calc(26 / 1200 * 100vw);*/
  font-size: 26px;
  font-weight: bold;
  line-height: 2;
  padding: 77px 0 83px;
  text-align: center;  
}

.casestudy-list {
  gap: 44px;
  margin-left: auto;
  margin-right: auto;
  max-width: 886px;
  padding-bottom: 315px;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
}

#home .casestudy-list {
  margin: 42px auto 48px;
  padding-bottom: 0;
}

.casestudy-list-item {
  background-image: url(../img/casestudy/bg_casestudy_item.png);
  background-position: left top;
  background-repeat: repeat;
  border: 5px solid #706359;
  border-radius: 60px;
  overflow: hidden;
  padding: 0;
  width: calc(50% - 22px);
}

.casestudy-list-item a {
  text-decoration: none;
}

.casestudy-list-item .img-garden img {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 55px;
  overflow: hidden;
}

.casestudy-list-item .casestudy-info {
  color: #606060;
  font-size: 23px;
  line-height: 37px;
  padding: 17px 34px 43px;
}

.casestudy-info .casestudy-prefecture,
.casestudy-info .casestudy-name {
  font-weight: bold;
}

.casestudy-info .casestudy-title {
  /*letter-spacing: 6px;*/
  margin-bottom: 0;
/*  text-align: justify;
  text-align-last: justify;
  text-justify: inter-character;*/
}

.casestudy {
  background-color: #e6c8b8;
  padding-top: 80px;
}

.casestudy .heading {
  align-items: center;
  margin: 0 auto;
  max-width: 1108px;
  padding: 0 46px;
  width: 100%;
}

.casestudy .heading .main-image {
  flex-basis: calc(730 / 1200 * 100%);
  position: relative;
  width: calc(730 / 1200 * 100%);
}

.casestudy .heading .main-image img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.casestudy .heading .main-image .casestudy-info {
  left: 50%;
  max-width: 409px;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(409 / 1200 * 100vw);
}

.casestudy .heading .main-image .casestudy-info .image-title img {
  width: 100%;
}

.casestudy .heading .main-image .casestudy-info .garden-info {
  background-color: #fff;
  border-radius: 31px;
  display: inline-block;
  font-size: 23px;
  font-size: calc(23 / 1200 * 100vw);
  margin-top: 73px;
  margin-top: calc(73 /1200 * 100vw);
  padding: 14px 41px;
}

.thumbnail-list {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  padding-left: calc(29 / 1200 * 100vw);
}

.thumbnail-list .thumbnail-container {
  padding: 9px 5px;
  width: calc(1 / 3 * 100%);
}

.thumbnail-list .thumbnail-container .thumbnail {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: calc(27.5 / 1200 * 100vw);
  cursor: pointer;
  height: 0;
  padding-top: 77%;
  width: 100%;
}

.thumbnail-list .thumbnail-container .thumbnail.selected {
  cursor: initial;
  outline: 2px solid #1d8054;
}

.thumbnail-list .thumbnail-container .thumbnail:not(.selected):hover {
  opacity: .8;
  outline: 2px solid #fff;
}

.casestudy .content .lead-text {
  margin: 0 auto;
  width: calc(100% - 40px);
}

.casestudy-items {
  display: flex;
  flex-wrap: wrap;
  gap: calc(46 / 1200 * 100vw);
  margin: 0 auto;
  padding-bottom: 70px;
  width: calc(100% - 40px);
}

.cs-item {
  flex-basis: calc(50% - 23px);
  padding-right: calc(24 / 1200 * 100vw);
  position: relative;
  width: calc(50% - 23px);
}

.cs-item:nth-child(odd) {
  margin-bottom: 70px;
}

.cs-item:nth-child(even) {
  margin-top: 70px;
}

.cs-item .cs-panel {
  position: relative;
  z-index: 1;
}

.cs-item .cs-panel .cs-panel-inner {
  background-color: #fff;
  padding: 34px 38px;
  position: relative;
  z-index: 1;
}

.cs-item .cs-panel .cs-num {
  align-items: center;
  border-radius: 50%;
  content: '';
  display: flex;
  height: 130px;
  justify-content: center;
  left: -30px;
  overflow: hidden;
  position: absolute;
  top: -30px;
  width: 130px;
}

.cs-item .cs-panel .cs-num img {
  width: 100%;
}

.cs-item .cs-panel:after {
  background-color: rgba(140, 124, 111, .5);
  background-image: url(../img/casestudy/bg_casestudy_item_transparent2.png);
  background-position: left top;
  background-repeat: repeat;
  content: '';
  height:  100%;
  left: 25px;
  position: absolute;
  top:  25px;
  width: 100%;
}

.cs-item .cs-img {
  align-items: center;
  border-radius: 32px;
  display: flex;
  height: calc(301 / 1200 * 100vw);
  justify-content: center;
  overflow: hidden;
  margin-bottom: calc(42 / 1200 * 100vw);
  max-width: 100%;
  width: calc(420 / 1200 * 100vw);
}

.cs-item .cs-img img {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: 100%;
}

.cs-item .cs-txt .btn {
  font-size: inherit;
}

.cs-item .link-readmore {
  float: right;
  margin-top: 1em;
}

@media (min-width: 1201px){
  .content .lead-text {
    font-size: 26px;
  }

  .casestudy .heading .main-image .casestudy-info .garden-info {
    font-size: 23px;
    margin-top: 73px;
  }

  .thumbnail-list .thumbnail-container .thumbnail {
    border-radius: 27.5px;
  }

  .casestudy-items {
    gap: calc(46 / 1920 * 100vw);
  }

  .cs-item {
    flex-basis: calc(33.3333% - 32px);
    width: calc(33.3333% - 32px);
  }

  .cs-item .cs-img {
    height: calc(344 / 1920 * 100vw);
    margin-bottom: calc(42 / 1920 * 100vw);
    width: calc(480 / 1920 * 100vw);
  }
}

@media (max-width:  767px){
  .casestudy {
    padding-top: 0;
  }

  .casestudy .heading {
    flex-direction: column;
    padding: 0;
  }

  .casestudy .heading .main-image {
    flex-basis: 100%;
    width: 100%;
  }

  .casestudy .heading .main-image picture:after {
    background-color: #e6c8b8;
    bottom: -1px;
    content: '';
    height: 2px;
    left: 0;
    position: absolute;
    width: 100%;
  }

  .casestudy .heading .main-image .casestudy-info {
    max-width: 497px;
    width: calc(497 / 750 * 100vw);
  }

  .casestudy .heading .main-image .casestudy-info .garden-info {
    font-size: calc(32 / 750 * 100vw);
    margin-top: calc(88 /750 * 100vw);
    padding: calc(14 / 750 * 100vw) calc(30 / 750 * 100vw);
  }

  .thumbnail-list {
    padding-left: 0;
    width: calc(566 / 750 * 100vw);
  }

  .content .lead-text {
    font-size: calc(28 / 750 * 100vw);
  }

  .casestudy .content .lead-text {
    padding: calc(64 / 750 * 100vw) 0 calc(100 / 750 * 100vw);
  }

  .casestudy-list {
    flex-direction: column;
    width: calc(625 / 750 * 100vw);
  }

  .casestudy-list-item {
    width: 100%;
  }

  .casestudy-list-item .casestudy-info {
    font-size: calc(16 / 375 * 100vw);
    line-height: calc(26 / 375 * 100vw);
    padding: calc(12 / 375 * 100vw) calc(25 / 375 * 100vw) calc(29 / 375 * 100vw);
  }

  .casestudy-items {
    padding-left: calc(48 /750 * 100vw);
    padding-right: calc(33 / 750 * 100vw);
    width: 100%;
  }

  .cs-item {
    /*flex-basis: calc(100% - 23px);*/
    /*width: calc(100% - 23px);*/
    flex-basis: calc(624 / 750 * 100vw - 23px);
    width: calc(624 / 750 * 100vw - 23px);
  }

  .cs-item:nth-child(odd) {
    margin-bottom: 35px;
    margin-right: auto;
    margin-top: 35px;
  }

  .cs-item:nth-child(even) {
    margin-bottom: 35px;
    margin-left: auto;
    margin-top: 35px;
  }

  .cs-item .cs-panel:after {
    left: calc(30 / 750 * 100vw);
    top: calc(30 / 750 * 100vw);
  }

  .cs-item .cs-panel .cs-panel-inner {
    padding: calc(40 / 750 * 100vw) calc(43 / 750 * 100vw) calc(50 / 750 * 100vw);
  }

  .cs-item .cs-panel .cs-num {
    height: calc(156 / 750 * 100vw);
    left: calc(46 / 750 * -100vw);
    top: calc(50 / 750 * -100vw);
    width: calc(156 / 750 * 100vw);
  }

  .cs-item .cs-img {
    border-radius: calc(39 / 750 * 100vw);
    height: calc(316 / 750 * 100vw);
    margin-bottom: calc(52 / 750 * 100vw);
    width: calc(540 / 750 * 100vw);
  }

  .cs-item .cs-txt {
    font-size: calc(23 / 750 * 100vw);
  }
}

/*        */
/* about  */
/*        */
#page-about .main-image-wrapper {
  background-image: url(../img/top/img_main.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-about .img-heading-text {
  max-width: 298px;
  width: calc(298 / 1200 * 100vw);
}

.container-about {
  margin: 0 auto;
  max-width: 856.6467px;
  padding-bottom: 160px;
  width: calc(856 / 1200 * 100vw);
}

.about-content-item {
  background-color: rgba(255, 255, 255, .75);
  border-radius: calc(53 / 1200 * 100vw);
  font-size: 20px;
  padding: 52px 44px 49px;
}

.about-content-item + .about-content-item {
  margin-top: calc(57 / 1200 * 100vw);
}

.about-content-item:nth-child(2) .d-flex > div {
  flex: 1;
}

.about-content-title {
  margin-bottom: 40px;
  text-align: center;
}

.about-content-title img {
  height: calc(43 / 1200 * 100vw);
  max-height: 43px;
}

.about-content-item > p {
  margin-bottom: 45px;
}

.about-content-item .d-flex:nth-child(even) {
  flex-direction: row-reverse;
}

.about-content-item .d-flex + .d-flex {
  margin-top: calc(38 / 1200 * 100vw);
}

.about-content-item .d-flex img {
  border-radius: 23px;
}

  .media-img {
    max-width: 60%;
  }

@media (max-width: 900px){
  .container-about {
    max-width: 90%;
    width: 100%;
  }

}

@media (max-width: 767px){
  #page-about .img-heading-text {
    max-width: 327px;
    width: calc(327 / 750 * 100vw);
  }

  #page-about .content .lead-text {
    padding: 32px 0 53px;
  }

  .container-about {
    max-width: 100%;
  }

  .about-content-title img {
    height: calc(42 / 750 * 100vw);
    max-height: 42px;
  }

  .about-content-item {
    border-radius: 0;
    padding: 21px 25px 44px;
  }

  .about-content .about-content-item:nth-child(3) {
    padding-bottom: 0;
  }

  .about-content-item + .about-content-item {
    margin-top: calc(111 / 750 * 100vw);
  }

  .about-content-item .d-flex.media,
  .about-content-item .d-flex {
    flex-direction: column;
  }

  .about-content-item .d-flex.media .media-img {
    max-width: 100%;
  }

  .wide-img {
    margin-left: -25px;
    margin-right: -25px;
  }

  .about-content-item .d-flex .wide-img img {
    border-radius: 0;
  }
}

/*        */
/* howto  */
/*        */
#page-howto .main-image-wrapper {
  background-image: url(../img/howto/img_main_howto.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-howto .img-heading-text {
  max-width: 362px;
  width: calc(362 / 1200 * 100vw);
}

#page-howto .lead-text {
  padding-bottom: 0;
}

.container-howto {
  margin: 0 auto;
  max-width: 856.6467px;
  padding-bottom: 160px;
  width: calc(856 / 1200 * 100vw);
}


.howto-content {
  margin-top: calc(64 / 1200 * 100vw);
}

.howto-content-item {
  padding-top: 400px;
  position: relative;
}

.howto-content-item + .howto-content-item {
  margin-top: calc(112 / 1200 * 100vw);
}

.howto-content-item-inner {
  background-color: rgba(255, 255, 255, .75);
  border-radius: calc(53 / 1200 * 100vw);
  font-size: 20px;
  padding: 52px 44px 49px;
  position: relative;
  z-index: 1;
}

.howto-content-title {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  display: block;
  height: 481px;
  left:  -5%;
  position: absolute;
  top: 0;
  width: 110%;
  z-index: 0;
}

.howto-content-item#howto-content-item-01 .howto-content-title {
  background-image: url(../img/howto/img_content_item_01.png);
}

.howto-content-item#howto-content-item-02 .howto-content-title {
  background-image: url(../img/howto/img_content_item_02.png);
}

.howto-content-item#howto-content-item-03 .howto-content-title {
  background-image: url(../img/howto/img_content_item_03.png);
}

.howto-content-item#howto-content-item-04 .howto-content-title {
  background-image: url(../img/howto/img_content_item_04.png);
}

.howto-content-item + .howto-content-item {
  /*margin-top: calc(57 / 1200 * 100vw);*/
}

.howto-content-title {
  margin-bottom: 40px;
  text-align: center;
}

.howto-content-title img {
  height: calc(43 / 1200 * 100vw);
  max-height: 43px;
}

.img-container-howto {
  border-radius: calc(33 / 1200 * 100vw);
  margin: calc(20 / 1200 * 100vw) auto calc(58 / 1200 * 100vw);
  max-width: 636px;
  overflow: hidden;
  width: calc(636 / 1200 * 100vw);
}

.howto-content-item-inner .media .media-img img {
  border-radius: calc(33 / 1200 * 100vw);
  overflow: hidden;
}

section.books {
  padding-bottom: 185px;
}

section.books .container-books {
  margin: 0 auto;
  max-width: 1112px;
  width: calc(100vw - 88px);
}

section.books .section-title img {
  margin: 100px 0 54px;
  max-width: 463px;
  width: calc(463 / 1200 * 100vw);
}

.list-books {
  display: flex;
  gap: calc(44 / 1200 * 100vw);
}

.list-book-item {
  flex: 1;
}

.list-book-item a {
  text-decoration: none;
}

.list-book-item-image {
  margin-bottom: 34px;
}

.list-book-item-title {
  color: #706359;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  /*margin-bottom: 36px;*/
  min-height: 72px;
  text-align: center;
}

.list-book-item-description {
  color: #453a31;
  font-size: 18px;
}

@media (min-width: 1201px){
  .list-books {
    gap: 44px;
  }
}

@media (max-width: 920px){
  .list-books {
    gap: 22px;
  }
}

@media (max-width: 767px){
  #page-howto .btn:before,
  #page-howto .btn:after {
    right: calc(20 / 236 * 100%);
  }

  #page-howto .img-heading-text {
    max-width: 399px;
    width: calc(399 / 750 * 100vw);
  }

  #page-howto .lead-text {
    padding-top: calc(60 / 750 * 100vw);
  }

  .container-howto {
    padding-bottom: calc(130 / 750 * 100vw);
    width: 100%;
  }

  .howto-content-item-inner {
    border-radius: 0;
    font-size: 14px;
    padding: calc(46 / 750 * 100vw) calc(50 / 750 * 100vw) calc(58 / 750 * 100vw);
  }

  .howto-content-item {
    overflow-x: hidden;
    padding-top: calc(460 / 750 * 100vw);
  }

  .howto-content-item .howto-content-title {
    height: calc(535 / 750 * 100vw);
    top: calc(-30 / 750 * 100vw);
  }

  .howto-content-item#howto-content-item-01 .howto-content-title {
    background-image: url(../img/howto/img_content_item_01_sp.png);
    left: calc(56 / 750 * -100vw);
    width: calc(830 / 750 * 100vw);
  }

  .howto-content-item#howto-content-item-02 .howto-content-title {
    background-image: url(../img/howto/img_content_item_02_sp.png);
    left: calc(46 / 750 * -100vw);
    width: calc(883 / 750 * 100vw);
  }

  .howto-content-item#howto-content-item-03 .howto-content-title {
    background-image: url(../img/howto/img_content_item_03_sp.png);
    left: calc(63 / 750 * -100vw);
    width: calc(883 / 750 * 100vw);
  }

  .howto-content-item#howto-content-item-04 .howto-content-title {
    background-image: url(../img/howto/img_content_item_04_sp.png);
    left: calc(24 / 750 * -100vw);
    width: calc(728 / 750 * 100vw);
  }

  .img-container-howto,
  .howto-content-item-inner .media .media-img {
    border-radius: calc(34 / 750 * 100vw);
    overflow: hidden;
    margin-bottom: 40px;
    /*margin-top: calc(104 / 750 * 100vw);*/
    /*margin-top: 52px;*/
    margin-top: calc(70 / 750 * 100vw);
    max-width: 675px;
    width: calc(675 / 750 * 100vw);
  }

  .howto-content-item-inner p {
    margin-bottom: 0;
  }

  .howto-content-item-inner .media {
    flex-direction: column-reverse;
  }

  .howto-content-item-inner .d-flex.sp-wide {
    margin-left: calc(50 / 750 * -100vw);
    margin-right: calc(50 / 750 * -100vw);
  }

  .howto-content-item-inner .d-flex.sp-wide .img-container-howto {
    max-width: 100%;
    width: 100%;
  }

  .img-howto-03-2 img {
    margin-left: calc((952 - 750) / 2 / 750 * -100vw);
    width: calc(952 / 750 * 100vw);
  }

  section.books .container-books {
    width: calc(100vw - (110 / 750 * 100vw));
  }

  section.books .section-title {
    margin-bottom: calc(30 / 750 * 100vw);
  }

  section.books .section-title img {
    margin: calc(48 / 750 * 100vw) 0 calc(24 / 750 * 100vw);
    max-width: 467px;
    width: calc(467 / 750 * 100vw);
  }

  .list-books {
    flex-wrap: wrap;
  }

  .list-book-item {
    flex: 0 0 calc(50% - 11px);
  }
}

/*        */
/* ambassador  */
/*        */
#page-ambassador .main-image-wrapper {
  background-image: url(../img/ambassador/bg_heading_ambassador.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-ambassador .img-heading-text {
  max-width: 479px;
  width: calc(479 / 1200 * 100vw);
}

#page-ambassador .lead-text {
  font-size: calc(26 / 1200 * 100vw);
  margin: 0 auto calc(104 / 1200 * 100vw);
  max-width: calc(100% - 40px);
  min-height: 273px;
  padding-bottom: 0;
  padding-left: calc(265 / 1200 * 100vw);
  padding-top: calc(54 / 1200 * 100vw);
  position: relative;
  text-align: left;
  width: calc(992 / 1200 * 100vw);
}

#page-ambassador .lead-text .logo-ambassador {
  left: 0;
  max-width: 220px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: calc(220 / 1200 * 100vw);
}

.container-ambassador {
  margin: 0 auto;
  padding-bottom: 160px;
  width: 856.6467px;
}

.ambassador-list-item {
  margin-bottom: 30px;
}

.ambassador-list-item-inner {
  background-color: rgba(255, 255, 255, .75);
  background-image: url(../img/ambassador/bg_ambassador_item.png);
  background-position: 0 0;
  background-repeat: repeat;
  border-radius: calc(55 / 1200 * 100vw);
  padding: calc(36 / 1200 * 100vw) calc(34 / 1200 * 100vw) calc(46 / 1200 * 100vw);
}

.ambassador-list-item-inner .img-wrapper {
  /*border-radius: calc(47 / 1200 * 100vw);*/
  margin-bottom: calc(26 / 1200 * 100vw);
}

.ambassador-list-item-inner img {
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
}

.ambassador {
  font-size: calc(22 / 1200 * 100vw);
}

.ambassador-name {
  font-weight: bold;
  margin-bottom: calc(20 / 1200 * 100vw);
}

.ambassador .btn-wrapper {
  margin-top: calc(34 / 1200 * 100vw);
}

@media (min-width: 1201px){
  #page-ambassador .main-image-wrapper {
    padding-top: 480px;
  }

  #page-ambassador .img-heading-text {
    width: 479px;
  }

  #page-ambassador .lead-text {
    font-size: 26px;
    margin: 0 auto 104px;
    max-width: 992px;
    padding-left: 265px;
    padding-top: 54px;
    width: 992px;
  }

  #page-ambassador .lead-text .logo-ambassador {
    width: 220px;
  }

  .ambassador-list-item-inner {
    border-radius: 55px;
    padding: 36px 34px 46px;
  }

  .ambassador-list-item-inner .img-wrapper {
    margin-bottom: 26px;
  }

  .ambassador {
    font-size: 22px;
  }

  .ambassador-name {
    margin-bottom: 20px;
  }

  .ambassador .btn-wrapper {
    margin-top: 34px;
  }
}

@media (max-width: 920px){
  .container-ambassador {
    width: calc(100% - 58px);
  }
}

@media (max-width: 767px){
  #page-ambassador .main-image-wrapper {
    background-image: url(../img/ambassador/bg_heading_ambassador_sp.jpg);
    background-position: center top;
    padding-top: calc(609 / 750 * 100%);
  }

  #page-ambassador .img-heading-text {
    max-width: 261px;
    width: calc(261 / 750 * 100vw);
    z-index: 2;
  }

  #page-ambassador .lead-text {
    font-size: calc(28 / 750 * 100vw);
    padding-left: 0;
    padding-top: calc(174 / 750 * 100vw);
  }

  #page-ambassador .lead-text .logo-ambassador {
    left: 50%;
    max-width: 252px;
    position: absolute;
    top: calc((315 / 750 * 100vw) / -2);
    transform: translate(-50%, 0);
    width: calc(252 / 750 * 100vw);
    z-index: 1;
  }

  .ambassador-list-item-inner {
    border-radius: calc(77 / 750 * 100vw);
    padding: calc(50 / 750 * 100vw) calc(46 / 750 * 100vw) calc(64 / 750 * 100vw);
  }

  .ambassador-list-item-inner > .img-wrapper {
    border-radius: calc(66 / 750 * 100vw);
    margin-bottom: calc(38 / 750 * 100vw);
  }

  .ambassador {
    font-size: calc(30 / 750 * 100vw);
  }

  .ambassador-name {
    margin-bottom: calc(28 / 750 * 100vw);
  }

  .ambassador .btn-wrapper {
    margin-top: calc(48 / 750 * 100vw);
  }

  .ambassador .btn-wrapper .btn {
    border-radius: 31px;
    border-width: calc(2.95 / 750 * 100vw);
    height: calc( 62 / 750 * 100vw );
    font-size: calc( 32 / 750 * 100vw );
    line-height: calc( 57 / 750 * 100vw );
    max-height: 62px;
    padding: 0 calc( 76 / 750 * 100vw ) 0 calc( 50 / 750 * 100vw );
  }

  .ambassador .btn-wrapper .btn:before, .ambassador .btn-wrapper .btn:after {
    height: calc(3.32 / 750 * 100vw);
    right: calc(28 / 750 * 100vw);
    width: calc(29 / 750 * 100vw);
  }

  .ambassador .btn-wrapper .btn:before {
    top:  calc(17 / 750 * 100vw);
  }

  .ambassador .btn-wrapper .btn:after {
    top:  calc(36.2 / 750 * 100vw);
  }

}

/*         */
/* company */
/*         */

#page-company .main-image-wrapper {
  background-image: url(../img/top/img_main.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-company .img-heading-text {
  max-width: 456px;
  width: calc(456 / 1200 * 100vw);
}

#page-company .content {
  padding-top: calc(90 / 1200 * 100vw);
}

#page-company .lead-title {
  text-align: center;
}

#page-company .lead-title img {
  height: calc(43 / 1200 * 100vw);
  max-height: 43px;
  width: auto;
}

#page-company .lead-text {
  font-size: calc(40 / 1200 * 100vw);
}

#page-company .lead-vision .lead-text {
  padding: calc(50 / 1200 * 100vw) 0 calc(100 / 1200 * 100vw);
}

#page-company .lead-mission .lead-text {
  padding: calc(50 / 1200 * 100vw) 0 calc(96 / 1200 * 100vw);
}

.container-company {
  margin: 0 auto;
  max-width: 856.6467px;
  padding-bottom: 160px;
  /*width: calc(856 / 1200 * 100vw);*/
  width: 100%;
}

.company-content-item {
  background-color: rgba(255, 255, 255, .75);
  border-radius: calc(53 / 1200 * 100vw);
  font-size: 20px;
  padding: 52px 44px 49px;
}

img.img_company_gear {
  margin-bottom: calc(52 / 1200 * 100vw);
  max-width: 721px;
  width: calc(721 / 1200 * 100vw);
}

.company-content-title {
  margin: calc(86 / 1200 * 100vw) auto calc(82 / 1200 * 100vw);
  max-width: 198px;
  width: calc(198 / 1200 * 100vw);
}

.list-company-overview {
  display: flex;
  flex-direction: column;
  font-size: 25px;
  margin-bottom: 70px;
}

.list-company-overview .list-row {
  align-items: center;
  border-bottom: 3px solid #706359;
  display: flex;
  margin-bottom: 60px;
}

.list-company-overview .list-row .list-heading {
  /*flex: 0 0 calc(180 / 1200 * 100vw);*/
  flex: 0 0 180px;
  height: 48px;
  padding-right: calc(18 / 1200 * 100vw);
  position: relative;
  text-align: center;
}

.list-company-overview .list-row .list-heading:after {
  background-image: url(../img/company/img_slash.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -3px;
  content: '';
  height: 48px;
  position: absolute;
  right: 0;
  width: 24px;
}

.list-company-overview .list-row .list-data {
  margin-bottom: 10px;
  padding-left: 28px;
  word-break: break-word;
}

.container-company .btn-wrapper + .btn-wrapper {
  margin-top: 22px;
}

@media (min-width: 1201px){
  #page-company .main-image-wrapper {
    padding-top: 480px;
  }

  #page-company .content {
    padding-top: 90px;
  }

  #page-company .lead-text {
    font-size: 40px;
  }

  #page-company .lead-vision .lead-text {
    padding: 50px 0 100px;
  }

  #page-company .lead-mission .lead-text {
    padding: 50px 0 96px;
  }

  .company-content-item {
    border-radius: 53px;
  }

  img.img_company_gear {
    margin-bottom: 52px;
  }

  .company-content-title {
    margin: 86px auto 82px;
  }

  .list-company-overview .list-row .list-heading {
    flex: 0 0 180px;
    padding-right: 18px;
  }
}

@media (max-width:  767px){
  #page-company .img-heading-text {
    width: calc(456 / 750 * 100vw);
  }

  #page-company .lead-title img {
    height: calc(43 / 750 * 100vw);
    max-height: 43px;
  }

  #page-company .lead-text {
    font-size: calc(40 / 750 * 100vw);
  }

  .container-company {
    max-width: 100%;
    padding-bottom: calc(96 / 750 * 100vw);
    width: 100%;
  }

  .company-content-item {
    border-radius: 0;
    padding: calc(50 / 750 * 100vw) calc(50 / 750 * 100vw) calc(55 / 750 * 100vw);
  }

  img.img_company_gear {
    margin-bottom: calc(52 / 750 * 100vw);
    max-width: 100%;
    width: calc(668 / 750 * 100vw);
  }

  .list-company-overview {
    font-size: calc(25 / 750 * 100vw);
    margin-bottom: calc(11 / 750 * 100vw);
  }

  .list-company-overview .list-row {
    border-bottom: 2px solid #706359;
    margin-bottom: calc(55 / 750 * 100vw);
  }

  .list-company-overview .list-row .list-heading {
    flex: 0 0 calc(175 / 750 * 100vw); 
    height: calc(48 / 750 * 100vw);
    padding-right: calc(24 / 750 * 100vw);
  }

  .list-company-overview .list-row .list-heading:after {
    bottom: -3px;
    height: calc(48 / 750 * 100vw);
    width: calc(24 / 750 * 100vw);
  }

  .list-company-overview .list-row .list-data {
    margin-bottom: 5px;
    padding-left: calc(28 / 750 * 100vw);
  }

  .container-company .btn-wrapper .btn {
    padding: 0 26px 0 10px;
    /*width: calc(517 / 750 * 100vw);*/
    width: calc(620 / 750 * 100vw);
  }

  .container-company .btn-wrapper .btn:before,
  .container-company .btn-wrapper .btn:after {
    right: 10px;
  }
}

.fab {
  bottom: 32px;
  position: fixed;
  right: -17px;
  transition: all 0.25s ease; 
  width: 164px;
  z-index: 1;
}

a.fab:hover {
  transform: translateX(-10px);
  transform-origin: right center;
}


.fab img {
  width: 100%;
}

.fab.fab-seminar {
  bottom: 170px;
}

@media screen and (max-width: 480px) {
  .fab {
    bottom: 16px;
    right: -8px;
    width: 102px;
  }

  a.fab:hover {
    transform: translateX(-5px);
  }

  .fab.fab-seminar {
    bottom: 102px;
  }
}


/*            */
/* NEWSTOPICS */
/*            */
#page-news .main-image-wrapper,
#single .main-image-wrapper {
  background-image: url(../img/news/img_main_news.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  height: 0;
  padding-top: calc(480 / 1200 * 100%);
  position: relative;
  width: 100%;
}

#page-news .img-heading-text,
#single .img-heading-text {
  left: 50%;
  max-width: 164px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(164 / 1200 * 100vw);
  z-index: 1;
}

.news-list {
  gap: 44px;
  margin-left: auto;
  margin-right: auto;
  max-width: 886px;
  padding-bottom: 315px;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: calc(77 / 1200 * 100vw);
  width: 100%;
}

.news-list-item {
  background-image: url(../img/news/bg_news_item.png);
  background-position: left top;
  background-repeat: repeat;
  border: 5px solid #706359;
  border-radius: 60px;
  overflow: hidden;
  padding: 0;
  width: calc(50% - 22px);
}

.news-list-item a {
  text-decoration: none;
}

.news-list-item .img-news img {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 55px;
  overflow: hidden;
}

.news-list-item .news-info {
  color: #606060;
  font-size: 23px;
  line-height: 37px;
  padding: 17px 34px 43px;
}

.news-info .news-date {
  font-weight: bold;
}

.news-list-item .news-info .tag-list {
  padding: 0;
}

.news-list-item .news-info .tag-list li {
  background-color: #4d94ff;
  border-radius: 20px;
  color: #fff;
  display: inline-block;
  font-size: 19px;
  height: 34px;
  line-height: 34px;
  min-width: 115px;
  pointer-events: none;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

.news-info .news-title {
  margin-bottom: 0;
}

#single .content {
  background-color: #e6c8b8;
  position: relative;
}

#single.news .content:after {
  background-image: url(../img/casestudy/deco_content_before.png);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  content: '';
  height: calc(79 / 1200 * 100vw);
  position: absolute;
  top: calc(79 / 1200 * -100vw);
  width: 100%;
  z-index: 0;
}

.container-single {
  margin: 0 auto;
  max-width: 856.6467px;
  padding-bottom: 160px;
  width: calc(856 / 1200 * 100vw);
}

.news-heading {
  font-size: 26px;
  font-weight: bold;
  line-height: 2;
  /*padding: 77px 0 83px;*/
  padding: 50px 0 30px;
}

.news-heading .container-single {
  padding-bottom: 0;
}

.news-content-item {
  background-color: rgba(255, 255, 255, .75);
  border-radius: calc(53 / 1200 * 100vw);
  font-size: 20px;
  padding: 52px 44px 49px;
  word-break: break-all;
}

.tag-list {
  display: inline-block;
  list-style: none;
  margin: 0;
}

.tag-list li {
  display: inline-block;
}

.tag-list li a {
  background-color: #4d94ff;
  border-radius: 20px;
  color: #fff;
  display: inline-block;
  font-size: 19px;
  height: 34px;
  line-height: 34px;
  min-width: 115px;
  pointer-events: none;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

@media (max-width: 767px) {
  #page-news .img-heading-text {
    max-width: 164px;
    width: calc(164 / 750 * 100vw);
  }

 .news-list-item {
    width: 100%;
  }

  .news-list-item .news-info {
    font-size: calc(16 / 375 * 100vw);
    line-height: calc(26 / 375 * 100vw);
    padding: calc(12 / 375 * 100vw) calc(25 / 375 * 100vw) calc(29 / 375 * 100vw);
  }

  .news-list-item .news-info .tag-list li {
    font-size: 14px;
    height: 24px;
    line-height: 25px;
    min-width: 86px;
    padding: 0 12px;
  }

  .container-single {
    margin: 0 auto;
    max-width: 100%;
    padding-bottom: 160px;
    width: calc(100% - 24px);
  }

  .news-heading {
    font-size: calc(31 / 750 * 100vw);
  }

  .news-heading .tag-list {
    padding-left: 1em;
  }

  .news-heading .tag-list li a {
    border-radius: 40px;
    font-size: calc(28 / 750 * 100vw);
    height: calc(48 / 750 * 100vw);
    line-height:  calc(49 / 750 * 100vw);
    margin-top: -0.4em;
    min-width: 86px;
    padding: 0 12px;
  }

  .news-body .container-single {
    padding: 0 0 calc(190 / 750 * 100vw);
    width: 100%;
  }

  .news-body .container-single .news-content-item {
    border-radius: 0;
    padding: calc(46 / 750 * 100vw) calc(50 / 750 * 100vw) calc(50 / 750 * 100vw);
  }
}
