@charset "UTF-8";

body {
  background: #EBE7E1;
}

main p {
  text-align: justify;
}

section {
  margin: 64px 0;
}

section section {
  margin: 32px 0;
}

h2 {
  margin-bottom: 1.4815em;
  color: #E60111;
  font-family: "FOT-ベビポップ Std EB", sans-serif;
  font-size: 6.52174vw;
  text-align: center;
}

h2:before {
  display: block;
  margin: 0 auto .2963em;
  width: 2.925926em;
  height: 1.22223em;
  background: url(../images/tree/deco_h2.svgz) no-repeat 50% 50%;
  background-size: contain;
  content: "";
}

h2:after {
  display: block;
  height: .703704em;
  margin-top: .740741em;
  background: url(../images/tree/bd_h2.svgz) no-repeat 50% 50%;
  background-size: auto 100%;
  content: "";
}

h3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 3.5em;
  line-height: 1.2;
  margin: 0 0 1.2em;
  background: url(../images/tree/bg_h3.svgz) no-repeat 50% 50%;
  background-size: contain;
  color: #fff;
  font-family: "FOT-ベビポップ Std EB", sans-serif;
  font-size: 4.83092vw;
  text-align: center;
}

.text {
  text-align: justify;
}

.image {
  margin-bottom: 24px;
  text-align: center;
}

.tagline {
  color: #1D671A;
  font-family: "FOT-ベビポップ Std EB", sans-serif;
  font-size: 5.7971vw;
  text-align: left;
}

.site-header {
  position: relative;
  max-width: 750px;
  height: 113.5266vw;
  max-height: 852px;
  margin: 0 auto;
  background: url(../images/tree/bg_header.jpg) no-repeat 50% 0;
  background-size: 100%;
}

.site-title {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  width: 95.652174%;
  margin: auto;
  padding: 0;
}

.site-title > img {
  width: 100%;
}

.site-footer {
  background: #1D671A;
  color: #fff;
}

.site-content {
  margin-top: 24px;
  margin-bottom: 0;
}

.introduction-image {
  text-align: center;
}

.introduction-image__caption > img {
  position: relative;
  width: 100%;
  margin-top: -6.78%;
}

.introduction-area__balloon {
  width: 35.74879vw;
  max-width: 268px;
  margin: 0 auto;
}

.introduction-area__balloon > img {
  width: 100%;
}

.introduction-area__heading {
  display: block;
  height: auto;
  line-height: 1.3334;
  margin-bottom: 1em;
  background: none;
  color: #1D671A;
  font-size: 5.7971vw;
  text-align: left;
}

.movie {
  position: relative;
  padding-top: 56.25%;
  background: #fff;
}

.movie > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.history-area,
.prospect-area {
  padding-bottom: 31.401vw;
  background: url(../images/tree/deco_sec.png) no-repeat 50% 100%;
  background-size: 100%;
}

.history-area {
  position: relative;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-top: 32px;
  background-color: #1D671A;
  color: #fff;
}

.history-area:before,
.history-area:after {
  position: absolute;
  top: -8px;
  left: 0;
  width: 100%;
  height: 8px;
  background: url(../images/tree/bd_sec.svgz) repeat-x 50% 0;
  content: "";
}

.history-area:after {
  top: auto;
  bottom: -8px;
  background-position: 50% 100%;
}

.history-area__heading {
  color: inherit;
}

.history-area__heading:before {
  background-image: url(../images/tree/deco_h2_w.svgz);
}

.history-area__heading:after {
  background-image: url(../images/tree/bd_h2_w.svgz);
}

.history-part__heading {
  color: #E60111;
  background-image: url(../images/tree/bg_h3_2.svgz);
}

.prospect-area {
  margin-bottom: 0;
  background-image: url(../images/tree/deco_sec2.png);
}

.prospect-part {
  position: relative;
  padding-left: 9.3334vw;
}

.prospect-part:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 7.73vw;
  height: 6.7633vw;
  background: url(../images/tree/icon_tree.svgz) no-repeat 50% 0;
  background-size: contain;
  content: "";
}

.prospect-part:after {
  position: absolute;
  width: 7.73vw;
  top: 8.696vw;
  bottom: 0;
  left: 0;
  background: url(../images/tree/line.svg) repeat-y 50% 0;
  background-size: 6.25%;
  content: "";
}

.prospect-part__heading {
  display: block;
  height: auto;
  margin-bottom: 1.2em;
  padding-top: .35em;
  background: none;
  color: #E60111;
  font-family: Pacifico, cursive;
  font-size: 4.83092vw;
  text-align: left;
}

.prospect-image {
  overflow: hidden;
  margin-bottom: 24px;
  border-radius: 2.415459vw;
  text-align: center;
}

.prospect-tagline {
  line-height: 1.5;
  margin: 0 0 24px;
  color: #1D671A;
  font-family: "FOT-ベビポップ Std EB", sans-serif;
  font-weight: 700;
  font-size: 4.83092vw;
}

.bottom-image {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  text-align: center;
}

@media print, screen and (min-width: 414px) {
  h2 {
    margin-bottom: 40px;
  }

  h3 {
    margin-bottom: 24px;
  }

  .tagline {
    margin-bottom: 24px;
    font-size: 24px;
  }

  .introduction-area__heading {
    margin-bottom: 24px;
    font-size: 24px;
  }

  .history-area,
  .prospect-area {
    padding-bottom: 130px;
    background-size: 414px;
  }

  .prospect-part__heading {
    margin-bottom: 24px;
  }
}

@media print, screen and (min-width: 750px) {
  h2 {
    font-size: 49px;
  }

  h3 {
    font-size: 36px;
  }

  .tagline {
    font-size: 43px;
  }

  .introduction-area__heading {
    font-size: 43px;
  }

  .prospect-part {
    padding-left: 70px;
  }

  .prospect-part:before,
  .prospect-part:after {
    width: 58px;
  }

  .prospect-part:before {
    height: 51px;
  }

  .prospect-part:after {
    top: 65px;
  }

  .prospect-part__heading {
    font-size: 36px;
  }

  .prospect-image {
    border-radius: 18px;
  }

  .prospect-tagline {
    font-size: 36px;
  }
}