@charset "UTF-8";
/*html5 Reset CSS*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background-color: transparent;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  /* iphone番safariでの文字サイズを調整*/
  -ms-text-size-adjust: 100%; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before {
  content: '';
  content: none; }

blockquote:before, blockquote:after, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*-------------------
GENERAL
-------------------*/
html, body {
  font-family: "Noto Sans Japanese","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Arial,Verdana,"メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
  line-height: 1.6;
  color: #000;
  font-size: 14px;
  width: 100%;
  font-weight: normal;
  min-width: 1100px;
  word-break: break-all;
  background: -webkit-linear-gradient(135deg, #02984b, #8dc556);
  background: linear-gradient(-45deg, #02984b, #8dc556);
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (max-width: 768px) {
    html, body {
      min-width: 100%; } }

.serif {
  font-family: "Yu Mincho", "YuMincho", serif; }

.bold {
  font-weight: 700; }

small {
  font-size: 80%; }

small:before {
  content: "※"; }

sub {
  font-size: 70%;
  vertical-align: bottom; }

sup {
  font-size: 70%;
  vertical-align: super; }

li {
  list-style-position: inside; }

/*flex-layout*/
.u-flex {
  display: -webkit-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.u-jc_sb {
  -webkit-justify-content: space-between;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

/*basic-layout*/
.u-imgwrap img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

.u-cf {
  min-height: 1px; }

.u-cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.u-fl {
  float: left; }

.u-fr {
  float: right; }

/*txt-layout*/
.u-ta-c {
  text-align: center; }

.u-ta-l {
  text-align: left; }

.u-ta-r {
  text-align: left; }

.opacity--0 {
  opacity: 0; }

/*pcとスマホの表示・非表示クラス*/
/*包含ブロック要素にのみ適用する事*/
@media screen and (min-width: 769px) {
  .pc-b {
    display: block !important; }
  .pc-i {
    display: inline !important; }
  .sp-b {
    display: none !important; }
  .sp-i {
    display: none !important; } }

@media screen and (max-width: 768px) {
  .pc-b {
    display: none !important; }
  .pc-i {
    display: none !important; }
  .sp-b {
    display: block !important; }
  .sp-i {
    display: inline !important; } }

img {
  image-rendering: -webkit-optimize-contrast;
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0); }

.wrapper {
  width: 100%;
  min-width: 1100px; }
  @media screen and (max-width: 768px) {
    .wrapper {
      min-width: 100%;
      padding-bottom: 40px; } }

.linkButton {
  text-align: center; }
  .linkButton__link {
    width: 700px;
    min-height: 90px;
    display: inline-block;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    -ms-transition: 0.3s; }
    @media screen and (max-width: 768px) {
      .linkButton__link {
        width: 100%;
        max-width: 320px;
        min-height: 40px; } }
  .linkButton img {
    width: 100%; }

.fixedButton {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 100; }
  .fixedButton img {
    width: 100%;
    vertical-align: bottom; }

.MainVisual {
  width: 100%;
  min-width: 1100px;
  margin-top: 5px;
  padding: 80px 0 30px;
  background: url("../images/pc/KVbg.jpg") no-repeat top center;
  background-size: cover;
  position: relative; }
  @media screen and (max-width: 768px) {
    .MainVisual {
      min-width: 100%;
      background: url("../images/sp/KVbg_sp.jpg") no-repeat top center;
      background-size: cover;
      padding: 70px 15px 15px; } }
  .MainVisual img {
    max-width: 100%; }
  .MainVisual__logo {
    width: 109px;
    position: absolute;
    top: 15px;
    left: 22px; }
    @media screen and (max-width: 768px) {
      .MainVisual__logo {
        width: 60px;
        top: 5px;
        left: 4px; } }
  .MainVisual__maintitle {
    width: 596px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 768px) {
      .MainVisual__maintitle {
        width: 285px; } }
  .MainVisual__maintitle__baloon {
    width: 281px;
    position: absolute;
    top: -30px;
    left: -159px; }
    @media screen and (max-width: 768px) {
      .MainVisual__maintitle__baloon {
        width: 121px;
        top: -31px;
        left: -18px; } }
  .MainVisual__content {
    width: 1018px;
    margin: 23px auto 16px; }
    @media screen and (max-width: 768px) {
      .MainVisual__content {
        margin: 12px auto;
        width: 300px; } }
  .MainVisual__button .linkButton__link {
    background: url(../images/pc/button01_off.png) no-repeat;
    background-size: contain; }
    .MainVisual__button .linkButton__link:hover {
      background: url(../images/pc/button01_on.png) no-repeat;
      background-size: contain; }

.section01 {
  padding-top: 57px;
  padding-bottom: 40px; }
  .section01 img {
    max-width: 100%; }
  @media screen and (max-width: 768px) {
    .section01 {
      padding: 22px 15px 20px; } }
  .section01__title {
    text-align: center; }
    .section01__title img {
      width: 632px; }
      @media screen and (max-width: 768px) {
        .section01__title img {
          width: 292px; } }
  .section01__contentList {
    list-style: none; }
  .section01__contentList__item {
    width: 1000px;
    margin: 40px auto 0;
    position: relative; }
    @media screen and (max-width: 768px) {
      .section01__contentList__item {
        margin-top: 19px;
        width: 100%;
        max-width: 290px; } }
    .section01__contentList__item img {
      width: 100%;
      max-width: 1000px;
      display: inline-block;
      vertical-align: bottom; }
    .section01__contentList__item .item--abs {
      position: absolute; }
    .section01__contentList__item:first-of-type .item--absA101 {
      width: 204px;
      left: 13px;
      top: 0;
      bottom: 0;
      margin: auto; }
    .section01__contentList__item:first-of-type .item--absA102 {
      width: 264px;
      right: -27px;
      top: 13px;
      margin: auto; }
    .section01__contentList__item:nth-of-type(2) .item--absA201 {
      width: 229px;
      left: -15px;
      top: 55px; }
    .section01__contentList__item:nth-of-type(2) .item--absA202 {
      width: 223px;
      right: -12px;
      top: 13px; }
    .section01__contentList__item:nth-of-type(3) .item--absA301 {
      width: 196px;
      top: 57px;
      left: 22px; }
    .section01__contentList__item:nth-of-type(3) .item--absA302 {
      width: 223px;
      top: -12px;
      right: -9px; }
    .section01__contentList__item:nth-of-type(4) .item--absA401 {
      width: 222px;
      top: 9px;
      left: -10px; }
    .section01__contentList__item:nth-of-type(4) .item--absA402 {
      width: 223px;
      bottom: -10px;
      right: -8px; }
    .section01__contentList__item:last-of-type .item--absA501 {
      width: 196px;
      top: 26px;
      left: 25px; }
    .section01__contentList__item:last-of-type .item--absA502 {
      width: 232px;
      top: 62px;
      right: -15px; }
    @media screen and (max-width: 768px) {
      .section01__contentList__item:first-of-type .item--absA101 {
        width: 101px;
        left: 10px;
        top: auto;
        bottom: -15px;
        margin: auto; }
      .section01__contentList__item:first-of-type .item--absA102 {
        width: 133px;
        right: -5px;
        top: auto;
        bottom: -15px;
        margin: auto; }
      .section01__contentList__item:nth-of-type(2) .item--absA201 {
        width: 106px;
        left: 65px;
        top: auto;
        bottom: -10px; }
      .section01__contentList__item:nth-of-type(2) .item--absA202 {
        width: 101px;
        right: 10px;
        top: auto;
        bottom: 8px; }
      .section01__contentList__item:nth-of-type(3) .item--absA301 {
        width: 94px;
        top: auto;
        bottom: -11px;
        left: 20px; }
      .section01__contentList__item:nth-of-type(3) .item--absA302 {
        width: 101px;
        top: auto;
        right: 66px;
        bottom: 7px; }
      .section01__contentList__item:nth-of-type(4) .item--absA401 {
        width: 100px;
        top: auto;
        bottom: -10px;
        left: 80px; }
      .section01__contentList__item:nth-of-type(4) .item--absA402 {
        width: 108px;
        bottom: 14px;
        right: -4px; }
      .section01__contentList__item:last-of-type .item--absA501 {
        width: 85px;
        top: auto;
        bottom: 7px;
        left: 30px; }
      .section01__contentList__item:last-of-type .item--absA502 {
        width: 110px;
        top: auto;
        bottom: -6px;
        right: 53px; } }
  .section01__button {
    margin-top: 40px; }
    .section01__button .linkButton__link {
      background: url(../images/pc/button02_off.png) no-repeat;
      background-size: contain; }
      @media screen and (min-width: 769px) {
        .section01__button .linkButton__link:hover {
          background: url(../images/pc/button02_on.png) no-repeat;
          background-size: contain; } }
  @media screen and (max-width: 768px) {
    .section01__button {
      margin-top: 20px; } }

.section02 {
  overflow: hidden; }
  .section02 img {
    width: 100%;
    vertical-align: bottom; }
  .section02__inWrap {
    overflow: hidden;
    min-height: 400px;
    border-top-right-radius: 2000px 500px;
    border-top-left-radius: 2000px 500px;
    margin-left: -200px;
    margin-right: -200px;
    padding-top: 60px;
    padding-left: 200px;
    padding-right: 200px;
    background: #fff; }
    @media screen and (max-width: 768px) {
      .section02__inWrap {
        padding-top: 30px; } }
  .section02__inner {
    position: relative;
    padding-bottom: 150px;
    z-index: 8; }
  .section02__bgimg {
    position: absolute;
    top: 27px;
    width: 100%; }
  .section02__title {
    position: relative;
    z-index: 10;
    text-align: center; }
    .section02__title img {
      width: 667px; }
      @media screen and (max-width: 768px) {
        .section02__title img {
          width: 277px; } }
  .section02__list {
    padding-top: 40px;
    padding-bottom: 40px;
    list-style: none;
    text-align: center;
    position: relative;
    z-index: 9; }
    @media screen and (max-width: 768px) {
      .section02__list {
        background: none;
        padding-top: 20px;
        padding-bottom: 20px; } }
    .section02__list__button {
      margin-top: 20px; }
    .section02__list img {
      width: 496px; }
      @media screen and (max-width: 768px) {
        .section02__list img {
          width: 291px; } }
  .section02__list__item:last-child {
    margin-top: 40px; }
    @media screen and (max-width: 768px) {
      .section02__list__item:last-child {
        margin-top: 20px; } }

.section03 {
  overflow: hidden;
  margin-top: -150px;
  position: relative;
  z-index: 10; }
  .section03__inner {
    background: #02984b;
    min-height: 300px;
    border-top-right-radius: 2000px 500px;
    border-top-left-radius: 2000px 500px;
    margin-left: -200px;
    margin-right: -200px;
    padding-top: 60px;
    padding-bottom: 40px;
    padding-left: 200px;
    padding-right: 200px; }
    @media screen and (max-width: 768px) {
      .section03__inner {
        min-height: 100px;
        padding-top: 30px;
        padding-bottom: 20px; } }
  .section03__title {
    text-align: center; }
    .section03__title img {
      width: 901px;
      vertical-align: bottom; }
      @media screen and (max-width: 768px) {
        .section03__title img {
          width: 291px; } }
  .section03__button {
    margin-top: 40px;
    padding: 0 15px; }
    @media screen and (max-width: 768px) {
      .section03__button {
        margin-top: 20px; } }
    .section03__button .linkButton__link {
      background: url(../images/pc/button03_off.png) no-repeat;
      background-size: contain; }
      @media screen and (min-width: 769px) {
        .section03__button .linkButton__link:hover {
          background: url(../images/pc/button03_on.png) no-repeat;
          background-size: contain; } }
/*# sourceMappingURL=style.css.map */