@charset "UTF-8";
/*---------------------------------------------
mixin
---------------------------------------------*/
/*------------------------------------------
html5doctor.com Reset Stylesheet
------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap&subset=japanese");
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, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  background: transparent;
  border: 0;
  font-size: 100%;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
  /* font-weight: normal; */
}

legend {
  display: table;
  float: left;
  margin: 0;
  padding: 0;
  width: 100%;
}

legend + * {
  clear: both;
}

fieldset {
  border: 0;
  display: block;
  margin: 0;
  min-width: 0;
  padding: 0.01em 0 0 0;
}

body {
  font-size: 1rem;
}

body:not(:-moz-handler-blocked) fieldset {
  display: table-cell;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

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 #000;
  cursor: help;
}

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

hr {
  border: 0;
  border-top: 1px solid #ccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/*------------------------------------------
common
------------------------------------------*/
/* * { font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',YuGothic,'Yu Gothic','メイリオ', Meiryo,sans-serif; margin: 0 auto; padding: 0; letter-spacing: 0; } */
address {
  font-style: normal;
}

li {
  list-style: none;
}

svg {
  margin: 0;
  padding: 0;
}

strong {
  display: inline-block;
}

input, textarea {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  box-sizing: border-box;
  max-width: 100%;
}

input[type="text"], input[type="email"] {
  -webkit-appearance: none;
}

input[type="submit"] {
  -webkit-appearance: none;
  cursor: pointer;
}

input[type="submit"]:hover {
  opacity: .7;
}

textarea {
  -webkit-appearance: none;
}

input[type="text"]:focus, input[type="submit"]:focus, textarea:focus {
  outline: 0;
}

select {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  background: none transparent;
  color: inherit;
  font-size: inherit;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  vertical-align: middle;
}

select option {
  background-color: #fff;
  color: #333;
}

select::-ms-expand {
  display: none;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

input, select, textarea {
  font-family: inherit;
  font-size: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #fff;
  color: #000;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.8;
  margin: 0 auto;
  width: 100%;
}

@media screen and (max-width: 849px) {
  body {
    min-width: 100%;
  }
}

@media print {
  body {
    min-width: auto;
  }
}

img {
  height: auto;
  line-height: 0;
  margin: 0 auto;
  max-width: 100%;
  vertical-align: bottom;
}

a {
  -webkit-transition: all .3s;
  color: #000;
  text-decoration: none;
  transition: all .3s;
}

a:hover {
  -webkit-transition: all .3s;
  transition: all .3s;
}

a[href^="tel:"] {
  border-bottom: none;
  color: inherit;
  pointer-events: none;
}

@media screen and (max-width: 849px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

ruby {
  position: relative;
}

ruby rt {
  letter-spacing: -.02em;
  text-align: center;
}

sub {
  font-size: .6em;
}

sup {
  font-size: .6em;
  position: relative;
  top: -.4em;
}

.pc {
  display: block;
}

@media screen and (max-width: 849px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: none;
}

@media screen and (max-width: 849px) {
  .sp {
    display: block;
    margin: 0 auto;
  }
}

.container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 1200px;
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
  .container {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 4%;
    width: 100%;
  }
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .container {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 4%;
    width: 100%;
  }
}

@media screen and (max-width: 849px) {
  .container {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 4%;
    width: 100%;
  }
}

@media print {
  .container {
    width: 100%;
  }
}

.pagetop {
  bottom: 20px;
  font-size: 77%;
  position: fixed;
  right: 20px;
  z-index: 3000;
}

.pagetop a {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  display: block;
  font-size: 13px;
  font-size: 0.8125rem;
  height: 112px;
  padding-top: 60px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: 112px;
}

.pagetop a:after {
  -webkit-transform: rotate(45deg);
  border-left: 4px solid #fff;
  border-radius: 2px;
  border-top: 4px solid #fff;
  content: "";
  display: block;
  height: 15px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 35px;
  transform: rotate(45deg);
  width: 15px;
}

.pagetop a:hover {
  background: #42b68c;
}

@media screen and (max-width: 849px) {
  .pagetop {
    bottom: 10px;
    right: 10px;
    text-indent: -9999px;
  }
  .pagetop a {
    height: 60px;
    width: 60px;
  }
  .pagetop a:after {
    top: 25px;
  }
}

/*---------------------------------------------
header
---------------------------------------------*/
.header {
  position: relative;
  z-index: 3000;
}

.header .inner {
  margin: 0 auto;
  position: relative;
  width: 1200px;
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
  .header .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
  }
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .header .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
  }
}

@media screen and (max-width: 849px) {
  .header .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
  }
}

@media print {
  .header {
    display: none;
  }
  .header .inner {
    width: 100%;
  }
}

.header-layout {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 10px 0 18px;
  position: relative;
  z-index: 500;
}

.header-layout__logo {
  width: 245px;
}

.header-layout__btn {
  width: calc(100% - 245px);
}

@media screen and (max-width: 849px) {
  .header-layout {
    -webkit-box-sizing: border-box;
    background: #056d2f;
    box-sizing: border-box;
    height: 75px;
    padding: 0 4%;
  }
  .header-layout__logo {
    padding-top: 6px;
    width: 170px;
  }
}

.header-btn {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
  position: absolute;
  right: 0;
  top: 0;
}

.header-btn__item {
  background: #fff;
  border-radius: 0 0 10px 10px;
  display: block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  padding: 4px 0 6px;
  text-align: center;
  width: 228px;
}

.header-btn__item:hover {
  background-color: #74d6b3;
}

.header-btn__item .icon {
  position: relative;
}

.header-btn__item .icon img {
  height: auto;
  width: 100%;
}

.header-btn__item--top {
  background: #056d2f;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  border-right: 2px solid #fff;
  color: #fff;
  margin-right: 12px;
  width: 200px;
}

.header-btn__item--top br {
  display: none;
}

.header-btn__item--chara {
  -webkit-box-sizing: border-box;
  background: url(../images/common/header_chara.png) no-repeat right bottom #fff;
  background-size: contain;
  box-sizing: border-box;
  margin-right: 12px;
  padding-left: 20px;
  text-align: left;
  width: 235px;
}

.header-btn__item--parents {
  margin-right: 12px;
  width: 230px;
}

.header-btn__item--parents .icon {
  display: inline-block;
  margin-right: 8px;
  top: -4px;
  width: 29px;
}

.header-btn__item--parents br {
  display: none;
}

.header-btn__item--company {
  width: 190px;
}

.header-btn__item--company .icon {
  display: inline-block;
  margin-right: 8px;
  top: -3px;
  width: 12px;
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .header-btn__item {
    line-height: 1.3;
    min-height: 36px;
    position: relative;
  }
  .header-btn__item .icon {
    position: relative;
  }
  .header-btn__item .icon img {
    height: auto;
    width: 100%;
  }
  .header-btn__item--top {
    background: #056d2f;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    border-right: 2px solid #fff;
    color: #fff;
    margin-right: 12px;
    padding-top: 5px;
    width: 20%;
  }
  .header-btn__item--top br {
    display: block;
  }
  .header-btn__item--chara {
    -webkit-box-sizing: border-box;
    background: url(../images/common/header_chara.png) no-repeat center bottom #fff;
    background-size: 60px auto;
    box-sizing: border-box;
    margin-right: 12px;
    padding-left: 20px;
    text-align: left;
    width: 22%;
  }
  .header-btn__item--parents {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 12px;
    padding-left: 34px;
    width: 24%;
  }
  .header-btn__item--parents .icon {
    -webkit-transform: translateY(-50%);
    display: inline-block;
    left: 6px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 29px;
  }
  .header-btn__item--parents br {
    display: block;
  }
  .header-btn__item--company {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 15px;
    width: 24%;
  }
  .header-btn__item--company .icon {
    -webkit-transform: translateY(-50%);
    display: inline-block;
    left: 10px;
    position: absolute;
    top: 48%;
    transform: translateY(-50%);
    width: 12px;
  }
}

.navigation {
  display: block;
}

.navigation .global-nav {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 15px;
  font-size: 0.9375rem;
  justify-content: space-between;
}

.navigation .global-nav__item {
  -webkit-box-sizing: border-box;
  background: #fff;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  position: relative;
  text-align: center;
  width: 20%;
}

.navigation .global-nav__item a {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  font-weight: 700;
  min-height: 92px;
  padding: 12px 0 8px;
}

.navigation .global-nav__item a:hover {
  background: #74d6b3;
}

.navigation .global-nav__item .icon {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  height: 44px;
}

.navigation .global-nav__item:not(:last-child):after {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/menu_line.png) repeat-y center top;
  content: "";
  display: block;
  height: 58%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
}

.navigation .global-nav__item:nth-child(1) {
  border-radius: 46px 0 0 46px;
}

.navigation .global-nav__item:nth-child(1) .icon {
  margin: 0 auto;
  padding-top: 0;
  width: 35px;
}

.navigation .global-nav__item:nth-child(2) .icon {
  margin: 0 auto;
  padding-top: 2px;
  width: 53px;
}

.navigation .global-nav__item:nth-child(3) .icon {
  margin: 0 auto;
  padding-top: 0;
  width: 26px;
}

.navigation .global-nav__item:nth-child(4) .icon {
  margin: 0 auto;
  padding-top: 4px;
  width: 42px;
}

.navigation .global-nav__item:nth-child(5) {
  border-radius: 0 46px 46px 0;
}

.navigation .global-nav__item:nth-child(5) .icon {
  margin: 0 auto;
  padding-top: 3px;
  width: 47px;
}

.navigation .global-nav__item--active {
  background: #74d6b3;
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .navigation .global-nav__item:nth-child(5) {
    font-size: calc(10px + ((1vw – 6.4px)*(1.5/5.6)));
  }
}

@media screen and (max-width: 849px) {
  .navigation {
    display: none;
  }
}

/*---------------------------------------------
トップページ
---------------------------------------------*/
.home .kv-wrap {
  background: #009b63;
  min-height: 835px;
  position: relative;
  z-index: 5000;
}

.home .kv-wrap:after {
  background: url(../images/top/kv_pattern.png) repeat-x center top;
  bottom: -40px;
  content: "";
  display: block;
  height: 137px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .home .kv-wrap {
    min-height: 780px;
  }
  .home .kv-wrap:after {
    background: url(../images/top/kv_pattern.png) repeat-x center top;
    background-size: 20%;
    bottom: -40px;
    content: "";
    display: block;
    height: 105px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    width: 100%;
  }
}

.home .kv {
  left: 0;
  margin: 0 auto;
  min-height: 917px;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .home .kv {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-height: 780px;
    padding: 0 4%;
  }
}

.home .kv-copy {
  margin: 320px 0 0 0;
  margin-left: calc((100% - 1200px) / 2);
  position: relative;
  text-align: center;
  width: 720px;
  z-index: 2100;
}

.home .kv-copy__copy {
  left: -10px;
  margin: 0 auto 50px;
  position: relative;
  width: 510px;
}

.home .kv-copy__text {
  color: #fff;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 2.2;
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
  .home .kv-copy__text {
    line-height: 2.2;
  }
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
  .home .kv-copy {
    margin-left: 0;
    width: 46%;
  }
  .home .kv-copy__text {
    color: #fff;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 2.2;
  }
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .home .kv-copy {
    margin-left: 0;
    margin-top: 240px;
    width: calc((100% / 2.5) * 1.1);
  }
  .home .kv-copy__copy {
    left: 0;
    position: relative;
    width: 92%;
  }
  .home .kv-copy__text {
    color: #fff;
    font-size: calc(16px + ((1vw – 6.4px)*(2/5.6)));
    font-weight: 700;
    line-height: 2.2;
  }
}

@media screen and (max-width: 849px) {
  .home .kv-copy {
    margin: 120px auto 0;
    position: relative;
    text-align: left;
    width: 100%;
    z-index: 2100;
  }
  .home .kv-copy__copy {
    left: 0;
    margin: 0 auto 30px;
    position: relative;
    width: 85%;
  }
  .home .kv-copy__copy img {
    max-width: 500px;
    width: 100%;
  }
  .home .kv-copy__text {
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 2.0;
  }
}

.home .kv-flask {
  -webkit-transition: all .3s;
  position: absolute;
  right: -50px;
  top: 0;
  transition: all .3s;
  z-index: 2000;
}

.home .kv-flask .bubble1 {
  background: #0c8855;
  border-radius: 50%;
  height: 82px;
  left: 160px;
  position: absolute;
  top: 320px;
  width: 82px;
}

.home .kv-flask .bubble2 {
  background: #42b68c;
  border-radius: 50%;
  height: 22px;
  position: absolute;
  right: 270px;
  top: 270px;
  width: 22px;
}

.home .kv-flask .bubble3 {
  background: #74d6b3;
  border-radius: 50%;
  height: 38px;
  position: absolute;
  right: 200px;
  top: 340px;
  width: 38px;
}

@media screen and (min-width: 1400px) {
  .home .kv-flask {
    right: 3vw;
    right: calc(((100vw - 54%) - 721px));
  }
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
  .home .kv-flask {
    right: -5%;
    right: calc(((100vw - 54%) - 721px));
  }
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
  .home .kv-flask {
    -webkit-transform-origin: top right;
    -webkit-transform: scale(1);
    right: calc(((100vw - 44%) - 721px));
    transform: scale(1);
    transform-origin: top right;
  }
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .home .kv-flask {
    -webkit-transform-origin: top right;
    -webkit-transform: scale(0.82);
    right: -6%;
    right: calc(((100vw - ((100% / 2.5) * 1.1)) - (721px * 0.82)));
    transform: scale(0.82);
    transform-origin: top right;
  }
}

@media screen and (max-width: 849px) {
  .home .kv-flask {
    right: 0;
    top: 65px;
    width: 350px;
  }
  .home .kv-flask .bubble1 {
    background: #0c8855;
    border-radius: 50%;
    height: 50px;
    left: 80px;
    position: absolute;
    top: 370px;
    width: 50px;
  }
  .home .kv-flask .bubble2 {
    background: #42b68c;
    border-radius: 50%;
    height: 18px;
    left: 180px;
    position: absolute;
    right: auto;
    top: 350px;
    width: 18px;
  }
  .home .kv-flask .bubble3 {
    background: #74d6b3;
    border-radius: 50%;
    height: 28px;
    left: 210px;
    position: absolute;
    right: auto;
    top: 370px;
    width: 28px;
  }
}

.home .kv-slide-wrap {
  position: absolute;
  right: 26px;
  top: 400px;
  width: 672px;
  z-index: 1000;
}

@media screen and (max-width: 849px) {
  .home .kv-slide-wrap {
    right: -13px;
    top: 412px;
    width: 351px;
  }
}

.home .kv-slide-new {
  display: block;
  height: auto;
  left: 14px;
  position: absolute;
  top: 70px;
  width: 74px;
}

@media screen and (max-width: 849px) {
  .home .kv-slide-new {
    left: 10px;
    top: 40px;
    width: 40px;
  }
}

.home .reborn {
  background: #eee;
  position: relative;
  z-index: 500;
}

.home .reborn-inner {
  padding: 140px 0 20px;
}

@media screen and (max-width: 849px) {
  .home .reborn-inner {
    padding: 80px 4% 20px;
  }
}

.home .pickup {
  background: #eee;
  position: relative;
  z-index: 500;
}

.home .pickup:after {
  background: url(../images/top/sponsor_bg.svg) no-repeat center top;
  background-size: cover;
  bottom: 0;
  content: "";
  height: 130px;
  position: absolute;
  width: 100%;
  z-index: 800;
}

.home .pickup .illust {
  bottom: -40px;
  position: absolute;
  right: 50px;
  width: 169px;
}

@media screen and (max-width: 849px) {
  .home .pickup:after {
    background: url(../images/top/sponsor_bg.svg) no-repeat center top;
    background-size: auto 60px;
    bottom: 0;
    content: "";
    height: 60px;
    position: absolute;
    width: 100%;
    z-index: 800;
  }
  .home .pickup .illust {
    bottom: -30px;
    position: absolute;
    right: 20px;
    width: 110px;
  }
}

.home .pickup-inner {
  padding: 40px 0 220px;
}

.home .pickup-inner__heading {
  margin-bottom: 60px;
  width: 334px;
}

@media screen and (max-width: 849px) {
  .home .pickup-inner {
    padding: 40px 4% 100px;
  }
  .home .pickup-inner__heading {
    margin-bottom: 40px;
    width: 70%;
  }
}

.home .pickup-layout {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.home .pickup-layout__item {
  display: block;
  position: relative;
  width: 28%;
}

.home .pickup-layout__item:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.home .pickup-layout__item:after {
  -webkit-transition: all .3s;
  background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
  background-size: contain;
  bottom: 30px;
  content: "";
  display: block;
  height: 16px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  transition: all .3s;
  width: 45px;
}

.home .pickup-layout__item:not(:last-child) {
  margin-right: 5%;
}

.home .pickup-layout__item .icon, .home .pickup-layout__item .text {
  -webkit-transition: all .3s;
  display: block;
  left: 0;
  margin: 0 auto;
  margin: 0 auto;
  position: absolute;
  right: 0;
  transition: all .3s;
}

.home .pickup-layout__item:nth-child(1) {
  background: url(../images/top/pickup_btn1.svg) no-repeat center top;
}

.home .pickup-layout__item:nth-child(1) .icon {
  top: 7%;
  width: 40px;
}

.home .pickup-layout__item:nth-child(1) .text {
  top: 52%;
  width: 251px;
}

.home .pickup-layout__item:nth-child(2) {
  background: url(../images/top/pickup_btn2.svg) no-repeat center top;
}

.home .pickup-layout__item:nth-child(2) .icon {
  top: 10%;
  width: 60px;
}

.home .pickup-layout__item:nth-child(2) .text {
  top: 52%;
  width: 248px;
}

.home .pickup-layout__item:nth-child(3) {
  background: url(../images/top/pickup_btn3.svg) no-repeat center top;
}

.home .pickup-layout__item:nth-child(3) .icon {
  top: 10%;
  width: 69px;
}

.home .pickup-layout__item:nth-child(3) .text {
  top: 42%;
  width: 258px;
}

.home .pickup-layout__item:hover {
  opacity: .8;
}

.home .pickup-layout__item:hover:after {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

.home .pickup-layout__item:hover .icon {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .home .pickup-layout__item:nth-child(1) {
    background: url(../images/top/pickup_btn1.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(1) .icon {
    top: 7%;
    width: 12%;
  }
  .home .pickup-layout__item:nth-child(1) .text {
    top: 52%;
    width: 72%;
  }
  .home .pickup-layout__item:nth-child(2) {
    background: url(../images/top/pickup_btn2.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(2) .icon {
    top: 6%;
    width: 18%;
  }
  .home .pickup-layout__item:nth-child(2) .text {
    top: 52%;
    width: 72%;
  }
  .home .pickup-layout__item:nth-child(3) {
    background: url(../images/top/pickup_btn3.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(3) .icon {
    top: 8%;
    width: 21%;
  }
  .home .pickup-layout__item:nth-child(3) .text {
    top: 42%;
    width: 78%;
  }
}

@media screen and (max-width: 849px) {
  .home .pickup-layout {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -ms-flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .home .pickup-layout__item {
    margin-right: 4%;
    position: relative;
    width: 48%;
  }
  .home .pickup-layout__item:before {
    content: "";
    display: block;
    padding-top: 100%;
  }
  .home .pickup-layout__item:after {
    background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
    background-size: contain;
    bottom: 15px;
    content: "";
    display: block;
    height: 16px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    width: 25px;
  }
  .home .pickup-layout__item:not(:last-child) {
    margin-right: 4%;
  }
  .home .pickup-layout__item:nth-child(2) {
    margin-right: 0;
  }
  .home .pickup-layout__item:nth-child(1) {
    background: url(../images/top/pickup_btn1.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(1) .icon {
    top: 7%;
    width: 12%;
  }
  .home .pickup-layout__item:nth-child(1) .text {
    top: 52%;
    width: 72%;
  }
  .home .pickup-layout__item:nth-child(2) {
    background: url(../images/top/pickup_btn2.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(2) .icon {
    top: 6%;
    width: 18%;
  }
  .home .pickup-layout__item:nth-child(2) .text {
    top: 52%;
    width: 72%;
  }
  .home .pickup-layout__item:nth-child(3) {
    background: url(../images/top/pickup_btn3.svg) no-repeat center top;
  }
  .home .pickup-layout__item:nth-child(3) .icon {
    top: 8%;
    width: 21%;
  }
  .home .pickup-layout__item:nth-child(3) .text {
    top: 42%;
    width: 78%;
  }
}

.home .sponsor {
  background: #fff;
  padding: 20px 0 140px;
  position: relative;
  z-index: 1200;
}

.home .sponsor:after {
  background: url(../images/top/book_bg.svg) no-repeat center top;
  background-size: cover;
  bottom: 0;
  content: "";
  height: 130px;
  position: absolute;
  width: 100%;
  z-index: 800;
}

.home .sponsor__heading {
  margin: 0 auto 50px;
  max-width: 996px;
  width: 100%;
}

.home .sponsor .btn {
  background: #009b63;
  border-radius: 25px;
  color: #fff;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  margin: 50px auto;
  padding: 10px 15px 12px;
  text-align: center;
  width: 22%;
}

.home .sponsor .btn span {
  display: inline-block;
}

.home .sponsor .btn span:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 7px;
  margin-right: 8px;
  transform: translateY(-50%);
  width: 20px;
}

.home .sponsor .btn:hover {
  background: #000;
}

.home .sponsor .ready {
  margin: 20px 0 50px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .home .sponsor {
    padding: 20px 0;
  }
  .home .sponsor:after {
    background: url(../images/top/book_bg.svg) no-repeat center top;
    background-size: 150%;
    bottom: 0;
    content: "";
    height: 38px;
    position: absolute;
    width: 100%;
    z-index: 800;
  }
  .home .sponsor__heading {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 50px;
    padding: 0 4%;
    width: 100%;
  }
  .home .sponsor .btn {
    background: #009b63;
    border-radius: 25px;
    color: #fff;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
    margin: 50px auto;
    padding: 10px 15px 12px;
    text-align: center;
    width: 80%;
  }
  .home .sponsor .btn span {
    display: inline-block;
  }
  .home .sponsor .btn span:before {
    -webkit-transform: translateY(-50%);
    background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 7px;
    margin-right: 8px;
    transform: translateY(-50%);
    width: 20px;
  }
}

.home .sponsor-slide1-wrap {
  margin-bottom: 40px;
}

.home .sponsor-slide1__item {
  -webkit-box-sizing: border-box;
  -webkit-transition: all .3s;
  border: 4px solid #cbcbcb;
  border-radius: 24px;
  box-sizing: border-box;
  margin-right: 20px;
  padding: 10px;
  transition: all .3s;
}

.home .sponsor-slide1__item:hover {
  border: 4px solid #009b63;
}

.home .sponsor-slide1 .slick-prev, .home .sponsor-slide1 .slick-next {
  height: 60px;
  width: 60px;
  z-index: 100;
}

@media screen and (max-width: 849px) {
  .home .sponsor-slide1__item {
    -webkit-box-sizing: border-box;
    border: 2px solid #cbcbcb;
    border-radius: 14px;
    box-sizing: border-box;
    margin-right: 20px;
    padding: 10px;
  }
  .home .sponsor-slide1 .slick-prev, .home .sponsor-slide1 .slick-next {
    height: 60px;
    width: 60px;
    z-index: 100;
  }
}

.home .sponsor-slide2-wrap {
  margin-bottom: 40px;
}

.home .sponsor-slide2__item {
  -webkit-box-sizing: border-box;
  -webkit-transition: all .3s;
  border: 4px solid #cbcbcb;
  border-radius: 24px;
  box-sizing: border-box;
  margin-right: 20px;
  padding: 10px;
  transition: all .3s;
}

.home .sponsor-slide2__item:hover {
  border: 4px solid #009b63;
}

.home .sponsor-slide2 .slick-prev, .home .sponsor-slide2 .slick-next {
  height: 60px;
  width: 60px;
  z-index: 100;
}

@media screen and (max-width: 849px) {
  .home .sponsor-slide2__item {
    -webkit-box-sizing: border-box;
    border: 2px solid #cbcbcb;
    border-radius: 14px;
    box-sizing: border-box;
    margin-right: 20px;
    padding: 10px;
  }
  .home .sponsor-slide2 .slick-prev, .home .sponsor-slide2 .slick-next {
    height: 60px;
    width: 60px;
    z-index: 100;
  }
}

.home .yumekagaku {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  background: #eee;
  border-radius: 16px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto;
  padding: 20px 10px;
  width: 90%;
}

.home .yumekagaku__heading {
  font-weight: 700;
  height: 100%;
  text-align: center;
  width: 17%;
}

.home .yumekagaku__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
  font-size: 1rem;
  padding: 10px 30px;
  position: relative;
  width: 83%;
}

.home .yumekagaku__text:before {
  -webkit-transform: translateY(-50%);
  background: #c8c2a3;
  content: "";
  height: 80%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
}

@media screen and (max-width: 849px) {
  .home .yumekagaku {
    -webkit-box-sizing: border-box;
    border-radius: 16px;
    box-sizing: border-box;
    display: block;
    margin: 0 auto;
    padding: 20px 10px;
    width: 90%;
  }
  .home .yumekagaku__heading {
    font-weight: 700;
    height: auto;
    text-align: center;
    width: 100%;
  }
  .home .yumekagaku__text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 16px;
    font-size: 1rem;
    padding: 10px 15px;
    position: relative;
    width: 100%;
  }
  .home .yumekagaku__text:before {
    display: none;
  }
}

.home .slick-prev {
  -webkit-transition: all .3s;
  background: url(../images/top/kv_slide_left.svg) no-repeat center;
  background-size: contain;
  bottom: 20px;
  height: 55px;
  left: calc(50% - 65px);
  top: auto;
  transition: all .3s;
  width: 55px;
  z-index: 3000;
}

.home .slick-prev:before {
  display: none;
}

.home .slick-prev:hover {
  background: url(../images/top/kv_slide_left_on.svg) no-repeat center;
  background-size: contain;
}

@media screen and (max-width: 849px) {
  .home .slick-prev {
    bottom: -20px;
    left: calc(50% - 55px);
  }
  .home .slick-prev:hover {
    background: url(../images/top/kv_slide_left.svg) no-repeat center;
    background-size: contain;
  }
}

.home .slick-next {
  -webkit-transition: all .3s;
  background: url(../images/top/kv_slide_right.svg) no-repeat center;
  background-size: contain;
  bottom: 20px;
  height: 55px;
  left: calc(50% + 35px);
  top: auto;
  transition: all .3s;
  width: 55px;
  z-index: 3000;
}

.home .slick-next:before {
  display: none;
}

.home .slick-next:hover {
  background: url(../images/top/kv_slide_right_on.svg) no-repeat center;
  background-size: contain;
}

@media screen and (max-width: 849px) {
  .home .slick-next {
    bottom: -20px;
    left: calc(50% + 25px);
  }
  .home .slick-next:hover {
    background: url(../images/top/kv_slide_right.svg) no-repeat center;
    background-size: contain;
  }
}

.home .chemicalday {
  background: #f0ecde;
  padding: 30px 0 80px;
  position: relative;
  z-index: 1300;
}

.home .chemicalday-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  -webkit-box-sizing: border-box;
  align-items: stretch;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 4%;
}

.home .chemicalday-layout__item:nth-child(1) {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  background: #009b63;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  padding: 30px;
  position: relative;
  width: 34%;
}

.home .chemicalday-layout__item:nth-child(1):before {
  border: 15px solid transparent;
  border-left: 15px solid #009b63;
  content: "";
  left: 100%;
  margin-top: -15px;
  position: absolute;
  top: 50%;
}

.home .chemicalday-layout__item:nth-child(2) {
  overflow: hidden;
  width: 62%;
}

.home .chemicalday-layout__item:nth-child(2) .space {
  float: right;
  height: 9em;
}

.home .chemicalday-layout__item:nth-child(2) .chara {
  clear: both;
  float: right;
  margin: 15px 0 0 25px;
  width: 79px;
}

@media screen and (max-width: 849px) {
  .home .chemicalday-layout {
    display: block;
  }
  .home .chemicalday-layout__item:nth-child(1) {
    display: block;
    margin-bottom: 30px;
    width: 100%;
  }
  .home .chemicalday-layout__item:nth-child(1):before {
    border: 15px solid transparent;
    border-top: 15px solid #009b63;
    content: "";
    left: 50%;
    margin-left: -15px;
    margin-top: 0;
    position: absolute;
    top: 100%;
  }
  .home .chemicalday-layout__item:nth-child(2) {
    overflow: visible;
    width: 100%;
  }
  .home .chemicalday-layout__item:nth-child(2) .space {
    display: none;
  }
  .home .chemicalday-layout__item:nth-child(2) .chara {
    clear: both;
    float: none;
    margin: 15px 0 0 25px;
    margin: 0 auto 10px;
    width: 79px;
  }
}

/*---------------------------------------------
bubbles
---------------------------------------------*/
@keyframes stretch {
  0% {
    -webkit-transform: scaleX(1) scaleY(1);
    transform: scaleX(1) scaleY(1);
  }
  33% {
    -webkit-transform: scaleX(0.9) scaleY(1);
    transform: scaleX(0.9) scaleY(1);
  }
  66% {
    -webkit-transform: scaleX(1) scaleY(0.9);
    transform: scaleX(1) scaleY(0.9);
  }
  100% {
    -webkit-transform: scaleX(1) scaleY(1);
    transform: scaleX(1) scaleY(1);
  }
}

@-webkit-keyframes stretch {
  0% {
    -webkit-transform: scaleX(1) scaleY(1);
  }
  33% {
    -webkit-transform: scaleX(0.9) scaleY(1);
  }
  66% {
    -webkit-transform: scaleX(1) scaleY(0.9);
  }
  100% {
    -webkit-transform: scaleX(1) scaleY(1);
  }
}

@keyframes shake {
  0% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  50% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

@-webkit-keyframes shake {
  0% {
    -webkit-transform: translateX(10px);
  }
  50% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(10px);
  }
}

@keyframes move {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-1000px);
    opacity: 0;
    transform: translateY(-1000px);
  }
}

@-webkit-keyframes move {
  0% {
    -webkit-transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-1000px);
    opacity: 0;
  }
}

.field {
  height: 530px;
  left: 0;
  margin: 0 auto;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .field {
    height: 260px;
  }
}

.bubble {
  bottom: -20%;
  left: 50%;
  position: absolute;
}

.bubble .item {
  background: #74d6b3;
  border-radius: 100%;
  display: block;
  height: 80px;
  position: relative;
  width: 80px;
}

@media screen and (max-width: 849px) {
  .bubble .item {
    background: #74d6b3;
    border-radius: 100%;
    display: block;
    height: 50px;
    position: relative;
    width: 50px;
  }
}

.home .field {
  height: 835px;
  left: 0;
  margin: 0 auto;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.home .bubble {
  bottom: -20%;
  position: absolute;
}

.home .bubble .item {
  background: #74d6b3;
  border-radius: 100%;
  display: block;
  height: 80px;
  position: relative;
  width: 80px;
}

.stretch0 {
  -webkit-animation: stretch 2s ease 0s infinite normal;
  animation: stretch 2s ease 0s infinite normal;
}

.shake0 {
  -webkit-animation: shake 2s ease 0s infinite normal;
  animation: shake 2s ease 0s infinite normal;
}

.move0 {
  -webkit-animation: move 5s cubic-bezier(0.47, 0, 0.745, 0.715) 0s infinite normal;
  animation: move 5s cubic-bezier(0.47, 0, 0.745, 0.715) 0s infinite normal;
}

.pos0 {
  left: 0%;
}

.scale0 {
  -webkit-transform: scale(0);
  transform: scale(0);
}

.stretch1 {
  -webkit-animation: stretch 2.1s ease 0s infinite normal;
  animation: stretch 2.1s ease 0s infinite normal;
}

.shake1 {
  -webkit-animation: shake 2.1s ease 0s infinite normal;
  animation: shake 2.1s ease 0s infinite normal;
}

.move1 {
  -webkit-animation: move 5.1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.1s infinite normal;
  animation: move 5.1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.1s infinite normal;
}

.pos1 {
  left: 4%;
}

.scale1 {
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}

.stretch2 {
  -webkit-animation: stretch 2.2s ease 0s infinite normal;
  animation: stretch 2.2s ease 0s infinite normal;
}

.shake2 {
  -webkit-animation: shake 2.2s ease 0s infinite normal;
  animation: shake 2.2s ease 0s infinite normal;
}

.move2 {
  -webkit-animation: move 5.2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s infinite normal;
  animation: move 5.2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s infinite normal;
}

.pos2 {
  left: 8%;
}

.scale2 {
  -webkit-transform: scale(0.2);
  transform: scale(0.2);
}

.stretch3 {
  -webkit-animation: stretch 2.3s ease 0s infinite normal;
  animation: stretch 2.3s ease 0s infinite normal;
}

.shake3 {
  -webkit-animation: shake 2.3s ease 0s infinite normal;
  animation: shake 2.3s ease 0s infinite normal;
}

.move3 {
  -webkit-animation: move 5.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s infinite normal;
  animation: move 5.3s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s infinite normal;
}

.pos3 {
  left: 12%;
}

.scale3 {
  -webkit-transform: scale(0.3);
  transform: scale(0.3);
}

.stretch4 {
  -webkit-animation: stretch 2.4s ease 0s infinite normal;
  animation: stretch 2.4s ease 0s infinite normal;
}

.shake4 {
  -webkit-animation: shake 2.4s ease 0s infinite normal;
  animation: shake 2.4s ease 0s infinite normal;
}

.move4 {
  -webkit-animation: move 5.4s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s infinite normal;
  animation: move 5.4s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s infinite normal;
}

.pos4 {
  left: 16%;
}

.scale4 {
  -webkit-transform: scale(0.4);
  transform: scale(0.4);
}

.stretch5 {
  -webkit-animation: stretch 2.5s ease 0s infinite normal;
  animation: stretch 2.5s ease 0s infinite normal;
}

.shake5 {
  -webkit-animation: shake 2.5s ease 0s infinite normal;
  animation: shake 2.5s ease 0s infinite normal;
}

.move5 {
  -webkit-animation: move 5.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s infinite normal;
  animation: move 5.5s cubic-bezier(0.47, 0, 0.745, 0.715) 0.5s infinite normal;
}

.pos5 {
  left: 20%;
}

.scale5 {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

.stretch6 {
  -webkit-animation: stretch 2.6s ease 0s infinite normal;
  animation: stretch 2.6s ease 0s infinite normal;
}

.shake6 {
  -webkit-animation: shake 2.6s ease 0s infinite normal;
  animation: shake 2.6s ease 0s infinite normal;
}

.move6 {
  -webkit-animation: move 5.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite normal;
  animation: move 5.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite normal;
}

.pos6 {
  left: 24%;
}

.scale6 {
  -webkit-transform: scale(0.6);
  transform: scale(0.6);
}

.stretch7 {
  -webkit-animation: stretch 2.7s ease 0s infinite normal;
  animation: stretch 2.7s ease 0s infinite normal;
}

.shake7 {
  -webkit-animation: shake 2.7s ease 0s infinite normal;
  animation: shake 2.7s ease 0s infinite normal;
}

.move7 {
  -webkit-animation: move 5.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7s infinite normal;
  animation: move 5.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.7s infinite normal;
}

.pos7 {
  left: 28%;
}

.scale7 {
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}

.stretch8 {
  -webkit-animation: stretch 2.8s ease 0s infinite normal;
  animation: stretch 2.8s ease 0s infinite normal;
}

.shake8 {
  -webkit-animation: shake 2.8s ease 0s infinite normal;
  animation: shake 2.8s ease 0s infinite normal;
}

.move8 {
  -webkit-animation: move 5.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite normal;
  animation: move 5.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite normal;
}

.pos8 {
  left: 32%;
}

.scale8 {
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

.stretch9 {
  -webkit-animation: stretch 2.9s ease 0s infinite normal;
  animation: stretch 2.9s ease 0s infinite normal;
}

.shake9 {
  -webkit-animation: shake 2.9s ease 0s infinite normal;
  animation: shake 2.9s ease 0s infinite normal;
}

.move9 {
  -webkit-animation: move 5.9s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s infinite normal;
  animation: move 5.9s cubic-bezier(0.47, 0, 0.745, 0.715) 0.9s infinite normal;
}

.pos9 {
  left: 36%;
}

.scale9 {
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

.stretch10 {
  -webkit-animation: stretch 3s ease 0s infinite normal;
  animation: stretch 3s ease 0s infinite normal;
}

.shake10 {
  -webkit-animation: shake 3s ease 0s infinite normal;
  animation: shake 3s ease 0s infinite normal;
}

.move10 {
  -webkit-animation: move 6s cubic-bezier(0.47, 0, 0.745, 0.715) 1s infinite normal;
  animation: move 6s cubic-bezier(0.47, 0, 0.745, 0.715) 1s infinite normal;
}

.pos10 {
  left: 40%;
}

.scale10 {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.stretch11 {
  -webkit-animation: stretch 3.1s ease 0s infinite normal;
  animation: stretch 3.1s ease 0s infinite normal;
}

.shake11 {
  -webkit-animation: shake 3.1s ease 0s infinite normal;
  animation: shake 3.1s ease 0s infinite normal;
}

.move11 {
  -webkit-animation: move 6.1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s infinite normal;
  animation: move 6.1s cubic-bezier(0.47, 0, 0.745, 0.715) 1.1s infinite normal;
}

.pos11 {
  left: 44%;
}

.scale11 {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.stretch12 {
  -webkit-animation: stretch 3.2s ease 0s infinite normal;
  animation: stretch 3.2s ease 0s infinite normal;
}

.shake12 {
  -webkit-animation: shake 3.2s ease 0s infinite normal;
  animation: shake 3.2s ease 0s infinite normal;
}

.move12 {
  -webkit-animation: move 6.2s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s infinite normal;
  animation: move 6.2s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s infinite normal;
}

.pos12 {
  left: 48%;
}

.scale12 {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.stretch13 {
  -webkit-animation: stretch 3.3s ease 0s infinite normal;
  animation: stretch 3.3s ease 0s infinite normal;
}

.shake13 {
  -webkit-animation: shake 3.3s ease 0s infinite normal;
  animation: shake 3.3s ease 0s infinite normal;
}

.move13 {
  -webkit-animation: move 6.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s infinite normal;
  animation: move 6.3s cubic-bezier(0.47, 0, 0.745, 0.715) 1.3s infinite normal;
}

.pos13 {
  left: 52%;
}

.scale13 {
  -webkit-transform: scale(1.3);
  transform: scale(1.3);
}

.stretch14 {
  -webkit-animation: stretch 3.4s ease 0s infinite normal;
  animation: stretch 3.4s ease 0s infinite normal;
}

.shake14 {
  -webkit-animation: shake 3.4s ease 0s infinite normal;
  animation: shake 3.4s ease 0s infinite normal;
}

.move14 {
  -webkit-animation: move 6.4s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s infinite normal;
  animation: move 6.4s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s infinite normal;
}

.pos14 {
  left: 56%;
}

.scale14 {
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
}

.stretch15 {
  -webkit-animation: stretch 3.5s ease 0s infinite normal;
  animation: stretch 3.5s ease 0s infinite normal;
}

.shake15 {
  -webkit-animation: shake 3.5s ease 0s infinite normal;
  animation: shake 3.5s ease 0s infinite normal;
}

.move15 {
  -webkit-animation: move 6.5s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s infinite normal;
  animation: move 6.5s cubic-bezier(0.47, 0, 0.745, 0.715) 1.5s infinite normal;
}

.pos15 {
  left: 60%;
}

.scale15 {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}

.stretch16 {
  -webkit-animation: stretch 3.6s ease 0s infinite normal;
  animation: stretch 3.6s ease 0s infinite normal;
}

.shake16 {
  -webkit-animation: shake 3.6s ease 0s infinite normal;
  animation: shake 3.6s ease 0s infinite normal;
}

.move16 {
  -webkit-animation: move 6.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s infinite normal;
  animation: move 6.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s infinite normal;
}

.pos16 {
  left: 64%;
}

.scale16 {
  -webkit-transform: scale(1.6);
  transform: scale(1.6);
}

.stretch17 {
  -webkit-animation: stretch 3.7s ease 0s infinite normal;
  animation: stretch 3.7s ease 0s infinite normal;
}

.shake17 {
  -webkit-animation: shake 3.7s ease 0s infinite normal;
  animation: shake 3.7s ease 0s infinite normal;
}

.move17 {
  -webkit-animation: move 6.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s infinite normal;
  animation: move 6.7s cubic-bezier(0.47, 0, 0.745, 0.715) 1.7s infinite normal;
}

.pos17 {
  left: 68%;
}

.scale17 {
  -webkit-transform: scale(1.7);
  transform: scale(1.7);
}

.stretch18 {
  -webkit-animation: stretch 3.8s ease 0s infinite normal;
  animation: stretch 3.8s ease 0s infinite normal;
}

.shake18 {
  -webkit-animation: shake 3.8s ease 0s infinite normal;
  animation: shake 3.8s ease 0s infinite normal;
}

.move18 {
  -webkit-animation: move 6.8s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s infinite normal;
  animation: move 6.8s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s infinite normal;
}

.pos18 {
  left: 72%;
}

.scale18 {
  -webkit-transform: scale(1.8);
  transform: scale(1.8);
}

.stretch19 {
  -webkit-animation: stretch 3.9s ease 0s infinite normal;
  animation: stretch 3.9s ease 0s infinite normal;
}

.shake19 {
  -webkit-animation: shake 3.9s ease 0s infinite normal;
  animation: shake 3.9s ease 0s infinite normal;
}

.move19 {
  -webkit-animation: move 6.9s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9s infinite normal;
  animation: move 6.9s cubic-bezier(0.47, 0, 0.745, 0.715) 1.9s infinite normal;
}

.pos19 {
  left: 76%;
}

.scale19 {
  -webkit-transform: scale(1.9);
  transform: scale(1.9);
}

.stretch20 {
  -webkit-animation: stretch 4s ease 0s infinite normal;
  animation: stretch 4s ease 0s infinite normal;
}

.shake20 {
  -webkit-animation: shake 4s ease 0s infinite normal;
  animation: shake 4s ease 0s infinite normal;
}

.move20 {
  -webkit-animation: move 7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s infinite normal;
  animation: move 7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s infinite normal;
}

.pos20 {
  left: 80%;
}

.scale20 {
  -webkit-transform: scale(2);
  transform: scale(2);
}

.stretch21 {
  -webkit-animation: stretch 4.1s ease 0s infinite normal;
  animation: stretch 4.1s ease 0s infinite normal;
}

.shake21 {
  -webkit-animation: shake 4.1s ease 0s infinite normal;
  animation: shake 4.1s ease 0s infinite normal;
}

.move21 {
  -webkit-animation: move 7.1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s infinite normal;
  animation: move 7.1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.1s infinite normal;
}

.pos21 {
  left: 84%;
}

.scale21 {
  -webkit-transform: scale(2.1);
  transform: scale(2.1);
}

.stretch22 {
  -webkit-animation: stretch 4.2s ease 0s infinite normal;
  animation: stretch 4.2s ease 0s infinite normal;
}

.shake22 {
  -webkit-animation: shake 4.2s ease 0s infinite normal;
  animation: shake 4.2s ease 0s infinite normal;
}

.move22 {
  -webkit-animation: move 7.2s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s infinite normal;
  animation: move 7.2s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s infinite normal;
}

.pos22 {
  left: 88%;
}

.scale22 {
  -webkit-transform: scale(2.2);
  transform: scale(2.2);
}

.stretch23 {
  -webkit-animation: stretch 4.3s ease 0s infinite normal;
  animation: stretch 4.3s ease 0s infinite normal;
}

.shake23 {
  -webkit-animation: shake 4.3s ease 0s infinite normal;
  animation: shake 4.3s ease 0s infinite normal;
}

.move23 {
  -webkit-animation: move 7.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s infinite normal;
  animation: move 7.3s cubic-bezier(0.47, 0, 0.745, 0.715) 2.3s infinite normal;
}

.pos23 {
  left: 92%;
}

.scale23 {
  -webkit-transform: scale(2.3);
  transform: scale(2.3);
}

.stretch24 {
  -webkit-animation: stretch 4.4s ease 0s infinite normal;
  animation: stretch 4.4s ease 0s infinite normal;
}

.shake24 {
  -webkit-animation: shake 4.4s ease 0s infinite normal;
  animation: shake 4.4s ease 0s infinite normal;
}

.move24 {
  -webkit-animation: move 7.4s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s infinite normal;
  animation: move 7.4s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s infinite normal;
}

.pos24 {
  left: 96%;
}

.scale24 {
  -webkit-transform: scale(2.4);
  transform: scale(2.4);
}

.stretch25 {
  -webkit-animation: stretch 4.5s ease 0s infinite normal;
  animation: stretch 4.5s ease 0s infinite normal;
}

.shake25 {
  -webkit-animation: shake 4.5s ease 0s infinite normal;
  animation: shake 4.5s ease 0s infinite normal;
}

.move25 {
  -webkit-animation: move 7.5s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5s infinite normal;
  animation: move 7.5s cubic-bezier(0.47, 0, 0.745, 0.715) 2.5s infinite normal;
}

.pos25 {
  left: 100%;
}

.scale25 {
  -webkit-transform: scale(2.5);
  transform: scale(2.5);
}

.stretch26 {
  -webkit-animation: stretch 4.6s ease 0s infinite normal;
  animation: stretch 4.6s ease 0s infinite normal;
}

.shake26 {
  -webkit-animation: shake 4.6s ease 0s infinite normal;
  animation: shake 4.6s ease 0s infinite normal;
}

.move26 {
  -webkit-animation: move 7.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s infinite normal;
  animation: move 7.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s infinite normal;
}

.pos26 {
  left: 104%;
}

.scale26 {
  -webkit-transform: scale(2.6);
  transform: scale(2.6);
}

.stretch27 {
  -webkit-animation: stretch 4.7s ease 0s infinite normal;
  animation: stretch 4.7s ease 0s infinite normal;
}

.shake27 {
  -webkit-animation: shake 4.7s ease 0s infinite normal;
  animation: shake 4.7s ease 0s infinite normal;
}

.move27 {
  -webkit-animation: move 7.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.7s infinite normal;
  animation: move 7.7s cubic-bezier(0.47, 0, 0.745, 0.715) 2.7s infinite normal;
}

.pos27 {
  left: 108%;
}

.scale27 {
  -webkit-transform: scale(2.7);
  transform: scale(2.7);
}

.stretch28 {
  -webkit-animation: stretch 4.8s ease 0s infinite normal;
  animation: stretch 4.8s ease 0s infinite normal;
}

.shake28 {
  -webkit-animation: shake 4.8s ease 0s infinite normal;
  animation: shake 4.8s ease 0s infinite normal;
}

.move28 {
  -webkit-animation: move 7.8s cubic-bezier(0.47, 0, 0.745, 0.715) 2.8s infinite normal;
  animation: move 7.8s cubic-bezier(0.47, 0, 0.745, 0.715) 2.8s infinite normal;
}

.pos28 {
  left: 112%;
}

.scale28 {
  -webkit-transform: scale(2.8);
  transform: scale(2.8);
}

.stretch29 {
  -webkit-animation: stretch 4.9s ease 0s infinite normal;
  animation: stretch 4.9s ease 0s infinite normal;
}

.shake29 {
  -webkit-animation: shake 4.9s ease 0s infinite normal;
  animation: shake 4.9s ease 0s infinite normal;
}

.move29 {
  -webkit-animation: move 7.9s cubic-bezier(0.47, 0, 0.745, 0.715) 2.9s infinite normal;
  animation: move 7.9s cubic-bezier(0.47, 0, 0.745, 0.715) 2.9s infinite normal;
}

.pos29 {
  left: 116%;
}

.scale29 {
  -webkit-transform: scale(2.9);
  transform: scale(2.9);
}

.stretch30 {
  -webkit-animation: stretch 5s ease 0s infinite normal;
  animation: stretch 5s ease 0s infinite normal;
}

.shake30 {
  -webkit-animation: shake 5s ease 0s infinite normal;
  animation: shake 5s ease 0s infinite normal;
}

.move30 {
  -webkit-animation: move 8s cubic-bezier(0.47, 0, 0.745, 0.715) 3s infinite normal;
  animation: move 8s cubic-bezier(0.47, 0, 0.745, 0.715) 3s infinite normal;
}

.pos30 {
  left: 120%;
}

.scale30 {
  -webkit-transform: scale(3);
  transform: scale(3);
}

/*---------------------------------------------
footer
---------------------------------------------*/
.footer {
  background: #056d2f;
  padding: 25px 0;
}

@media print {
  .footer {
    display: none;
  }
}

.footer-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.footer-layout__item {
  display: inline-block;
}

.footer-layout__item:nth-child(1) {
  width: 19%;
}

.footer-layout__item:nth-child(2) {
  display: block;
  text-align: right;
  width: 75%;
}

@media screen and (max-width: 849px) {
  .footer-layout {
    display: block;
  }
  .footer-layout__item {
    display: block;
  }
  .footer-layout__item:nth-child(1) {
    margin: 0 auto 30px;
    width: 56%;
  }
  .footer-layout__item:nth-child(2) {
    display: block;
    text-align: center;
    width: 100%;
  }
}

.footer-nav {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.footer-nav__item {
  display: inline-block;
  padding-top: 5px;
}

.footer-nav__item a {
  color: #fff;
  font-size: 15px;
  font-size: 0.9375rem;
}

.footer-nav__item a:hover {
  text-decoration: underline;
}

.footer-nav__item:not(:nth-child(6)):not(:last-child):after {
  color: #fff;
  content: "｜";
  margin: 0 10px;
}

@media screen and (max-width: 849px) {
  .footer-nav {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    padding: 0 4%;
  }
  .footer-nav__item {
    border-bottom: 1px dotted #74d6b3;
    display: block;
    line-height: 1.4;
    padding-top: 0px;
  }
  .footer-nav__item a {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    padding: 10px 0 12px;
  }
  .footer-nav__item:not(:nth-child(6)):not(:last-child):after {
    display: none;
  }
  .footer-nav__item:first-child {
    border-top: 1px dotted #74d6b3;
  }
}

.operating {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  background: #045324;
  border-radius: 10px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
  padding: 20px 15px;
}

.operating__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
}

.operating__item:nth-child(1) {
  text-align: center;
  width: 30%;
}

.operating__item:nth-child(2) {
  padding: 0 0 0 50px;
  text-align: left;
  width: 40%;
}

.operating__item:nth-child(3) {
  text-align: center;
  width: 30%;
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .operating__item:nth-child(2) {
    padding: 0 0 0 20px;
  }
}

@media screen and (max-width: 849px) {
  .operating {
    border-radius: 10px;
    display: block;
    margin: 30px 4% 0;
    padding: 20px 4% 25px;
  }
  .operating__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
  }
  .operating__item:nth-child(1) {
    margin-bottom: 20px;
    text-align: center;
    width: 100%;
  }
  .operating__item:nth-child(2) {
    margin-bottom: 20px;
    padding: 0;
    text-align: center;
    width: 100%;
  }
  .operating__item:nth-child(3) {
    text-align: center;
    width: 100%;
  }
}

.footer-company {
  position: relative;
}

.footer-company:after {
  -webkit-transform: translateY(-50%);
  background: #82b697;
  content: "";
  display: inline-block;
  height: 140%;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
}

.footer-company__logo {
  margin: 0 auto;
  width: 242px;
}

.footer-company__text {
  font-size: 15px;
  font-size: 0.9375rem;
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .footer-company__logo {
    margin: 0 auto;
    max-width: 242px;
    width: 90%;
  }
}

@media screen and (max-width: 849px) {
  .footer-company:after {
    display: none;
  }
  .footer-company__logo {
    margin: 0 auto 5px;
    width: 80%;
  }
  .footer-company__text {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.footer-info__address {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.4;
  margin-top: 5px;
}

.footer-info__tel {
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
}

.footer-info__tel:before {
  background: url(../images/common/footer_icon_tel.svg) no-repeat center top;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 16px;
  margin-right: 6px;
  position: relative;
  top: 2px;
  width: 12px;
}

.footer-info__tel .small {
  font-size: 16px;
  font-size: 1rem;
}

@media screen and (max-width: 849px) {
  .footer-info__address {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.4;
    margin-top: 5px;
  }
  .footer-info__tel {
    font-size: 22px;
    font-size: 1.375rem;
    width: auto;
  }
  .footer-info__tel:before {
    background: url(../images/common/footer_icon_tel.svg) no-repeat center top;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 18px;
    margin-right: 6px;
    position: relative;
    top: 2px;
    width: 15px;
  }
  .footer-info__tel .small {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

.footer-btn {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 0;
}

.footer-btn a {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 24px;
  box-sizing: border-box;
  color: #fff;
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 12px 25px;
}

.footer-btn a span:before {
  background: url(../images/common/icon_blank.png) no-repeat center top;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 11px;
  margin-right: 8px;
  position: relative;
  top: 1px;
  width: 14px;
}

.footer-btn a:hover {
  background: #42b68c;
}

@media screen and (min-width: 850px) and (max-width: 1199px) {
  .footer-btn a {
    -webkit-box-sizing: border-box;
    background: #009b63;
    border-radius: 24px;
    box-sizing: border-box;
    color: #fff;
    font-size: calc(10px + ((1vw – 6.4px)*(2/5.6)));
    padding: 12px 25px;
  }
  .footer-btn a span:before {
    background: url(../images/common/icon_blank.png) no-repeat center top;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 11px;
    margin-right: 8px;
    position: relative;
    top: 1px;
    width: 14px;
  }
  .footer-btn a:hover {
    background: #42b68c;
  }
}

@media screen and (max-width: 849px) {
  .footer-btn {
    padding-top: 0;
  }
  .footer-btn a {
    -webkit-box-sizing: border-box;
    background: #009b63;
    border-radius: 24px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 0 auto;
    padding: 12px 25px;
    width: 90%;
  }
}

.copyright {
  color: #fff;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 30px 0;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .copyright {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 30px 0 10px;
  }
}

/*---------------------------------------------
parts
---------------------------------------------*/
.book {
  background: #f0ecde;
  padding: 0 0 140px;
  position: relative;
}

.book:after {
  background: url(../images/top/sponsor_bg.svg) no-repeat center top;
  background-size: cover;
  bottom: 0;
  content: "";
  height: 130px;
  position: absolute;
  width: 100%;
  z-index: 800;
}

.book__heading {
  margin: 0 auto 50px;
  position: relative;
}

.book__heading > .inner {
  display: block;
  margin: 0 auto;
  width: 371px;
}

.book__heading:after {
  background: url(../images/top/book_chara.png) no-repeat center;
  background-size: contain;
  content: "";
  display: block;
  height: 70px;
  position: absolute;
  right: 70px;
  top: 0;
  width: 151px;
  z-index: 1500;
}

.book--sponsor {
  margin-bottom: 80px;
  padding: 50px 0 30px;
}

.book--sponsor:before {
  background: url(../images/sponsor/book_bg.png) repeat center top;
  background-size: contain;
  content: "";
  height: 6px;
  position: absolute;
  top: 0;
  width: 100%;
}

.book--sponsor:after {
  background: url(../images/sponsor/book_bg.png) repeat center top;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 6px;
  position: absolute;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .book {
    padding: 40px 0 80px;
  }
  .book:after {
    background: url(../images/top/sponsor_bg.svg) no-repeat center top;
    background-size: 150%;
    bottom: 0;
    content: "";
    height: 38px;
    position: absolute;
    width: 100%;
    z-index: 800;
  }
  .book__heading {
    margin: 0 auto 100px;
    position: relative;
  }
  .book__heading > .inner {
    display: block;
    margin: 0 auto;
    width: 80%;
  }
  .book__heading:after {
    background: url(../images/top/book_chara.png) no-repeat center;
    background-size: contain;
    content: "";
    display: block;
    height: 60px;
    position: absolute;
    right: 30px;
    top: 45px;
    width: 130px;
    z-index: 1500;
  }
  .book--sponsor {
    margin-bottom: 80px;
    padding: 50px 0 30px;
  }
  .book--sponsor:before {
    background: url(../images/sponsor/book_bg.png) repeat center top;
    background-size: contain;
    content: "";
    height: 6px;
    position: absolute;
    top: 0;
    width: 100%;
  }
  .book--sponsor:after {
    background: url(../images/sponsor/book_bg.png) repeat center top;
    background-size: contain;
    bottom: 0;
    content: "";
    height: 6px;
    position: absolute;
    width: 100%;
  }
}

.book-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto;
  width: 92%;
}

.book-layout__item {
  margin-bottom: 30px;
  width: 48%;
}

.book-layout__item:nth-child(odd) {
  margin-right: 4%;
}

@media screen and (max-width: 849px) {
  .book-layout {
    display: block;
  }
  .book-layout__item {
    margin-bottom: 20px;
    width: 100%;
  }
  .book-layout__item:nth-child(odd) {
    margin-right: 0;
  }
}

.book-card {
  -webkit-box-sizing: border-box;
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px;
}

.book-card__item:nth-child(1) {
  width: 20%;
}

.book-card__item:nth-child(2) {
  width: 76%;
}

@media screen and (max-width: 849px) {
  .book-card {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .book-card__item:nth-child(1) {
    width: 25%;
  }
  .book-card__item:nth-child(2) {
    width: 71%;
  }
}

.book-detail__title {
  color: #009b63;
  font-size: 19px;
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.5;
}

.book-detail__text {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.book-detail__text .company {
  display: inline-block;
  display: block;
  margin-right: 1em;
}

.book-detail__text .price .small {
  font-size: 14px;
  font-size: 0.875rem;
}

.book-detail__btn {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 35px;
  box-sizing: border-box;
  color: #fff;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .04em;
  line-height: 1.4;
  min-width: 200px;
  padding: 5px 5px 7px;
  text-align: center;
  width: 50%;
}

.book-detail__btn .inner {
  display: inline-block;
}

.book-detail__btn .inner:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 6px;
  margin-right: 8px;
  transform: translateY(-50%);
  width: 18px;
}

.book-detail__btn:hover {
  background: #42b68c;
}

@media screen and (max-width: 849px) {
  .book-detail__title {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.4;
    margin-bottom: 5px;
  }
  .book-detail__text {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-bottom: 10px;
  }
  .book-detail__text .company {
    display: block;
    margin-right: 0;
  }
  .book-detail__btn {
    -webkit-box-sizing: border-box;
    background: #009b63;
    border-radius: 35px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.4;
    padding: 5px 5px 7px;
    text-align: center;
    width: 100%;
  }
  .book-detail__btn .inner {
    display: inline-block;
  }
  .book-detail__btn .inner:before {
    -webkit-transform: translateY(-50%);
    background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 6px;
    margin-right: 8px;
    transform: translateY(-50%);
    width: 18px;
  }
  .book-detail__btn:hover {
    background: #42b68c;
  }
}

/*---------------------------------------------
common
---------------------------------------------*/
.style-btn {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 35px;
  box-sizing: border-box;
  color: #fff;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  margin: 50px auto 20px;
  min-width: 300px;
  padding: 10px 15px 12px;
  text-align: center;
  width: 30%;
}

.style-btn span {
  display: inline-block;
}

.style-btn span:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 7px;
  margin-right: 8px;
  transform: translateY(-50%);
  width: 20px;
}

.style-btn:hover {
  background: #74d6b3;
}

.style-btn--yellow {
  background: #f0cb00;
  color: #000;
}

.style-btn--yellow span:before {
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat center;
  background-size: contain;
  content: "";
}

.style-btn--yellow:hover {
  background: #f5db4d;
}

.style-btn--download {
  margin: 0;
}

.style-btn--download span {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding-left: 30px;
  position: relative;
}

.style-btn--download span:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_pdf.png) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 23px;
  left: 0;
  margin-right: 8px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 19px;
}

.style-btn--download:hover {
  background: #42b68c;
}

.style-btn--back {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #000;
  border-radius: 50px;
  box-sizing: border-box;
  color: #000;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 50px auto 20px;
  min-width: auto;
  padding: 10px 15px 12px;
  text-align: center;
  width: 30%;
}

.style-btn--back span {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding-left: .5em;
  position: relative;
  width: 100%;
}

.style-btn--back span:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_left_black.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 7px;
  left: 0;
  margin-right: 8px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
}

.style-btn--back:hover {
  background: #000;
  color: #fff;
}

.style-btn--back:hover span:before {
  background: url(../images/common/icon_arrow_left_white.svg) no-repeat center;
}

@media screen and (max-width: 849px) {
  .style-btn {
    margin: 20px auto 20px;
    min-width: auto;
    width: 100%;
  }
  .style-btn--download {
    min-width: auto;
    padding: 5px 15px 7px;
  }
  .style-btn--download span {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    line-height: 1.6;
    padding-left: 30px;
    position: relative;
  }
  .style-btn--download span:before {
    -webkit-transform: translateY(-50%);
    background: url(../images/common/icon_pdf.png) no-repeat center;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 23px;
    left: 0;
    margin-right: 8px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 19px;
  }
  .style-btn--download:hover {
    background: #42b68c;
  }
}

.back-btn {
  margin-top: 30px;
}

.title-wrap {
  background: #009b63;
  min-height: 530px;
  position: relative;
  z-index: 600;
}

.title-wrap:after {
  background: url(../images/top/kv_pattern.png) repeat-x center top;
  background-size: 94px;
  bottom: -80px;
  content: "";
  display: block;
  height: 137px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 100%;
}

.title-wrap .chara {
  bottom: 15px;
  display: block;
  left: 10px;
  position: absolute;
  width: 322px;
}

@media screen and (max-width: 849px) {
  .title-wrap {
    min-height: 240px;
  }
  .title-wrap:after {
    background: url(../images/top/kv_pattern.png) repeat-x center top;
    background-size: 12%;
    bottom: -40px;
    content: "";
    display: block;
    height: 60px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    width: 100%;
  }
  .title-wrap .chara {
    bottom: 0;
    display: block;
    left: 10px;
    position: absolute;
    width: 120px;
  }
}

@media print {
  .title-wrap {
    display: none;
  }
}

.title-area-layout {
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 200;
}

.title-area {
  -webkit-transition: all .3s;
  left: 0;
  margin: 0 auto;
  min-height: 600px;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
  transition: all .3s;
  width: 100%;
}

.title-area__copy {
  margin: 280px auto 0;
  position: relative;
  width: auto;
  z-index: 2100;
}

.title-area__flask {
  position: absolute;
  right: -50px;
  top: 0;
  z-index: 2000;
}

@media screen and (min-width: 1400px) {
  .title-area__flask {
    right: 5vw;
  }
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
  .title-area__flask {
    right: -5%;
  }
}

@media screen and (min-width: 1200px) and (max-width: 1399px) {
  .title-area__flask {
    right: -150px;
  }
}

@media screen and (max-width: 849px) {
  .title-area {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    min-height: 280px;
    padding: 0 4%;
  }
  .title-area__copy {
    left: 0;
    margin: 116px auto 0;
    position: relative;
    width: 50%;
  }
  .title-area__flask {
    right: -60px;
    top: 65px;
    width: 145px;
  }
}

/* title調整 */
.about .title-area__copy {
  margin: 310px auto 0;
  width: 335px;
}

@media screen and (max-width: 849px) {
  .about .title-area__copy {
    margin: 126px auto 0;
    width: 170px;
  }
}

.parents .title-area__copy {
  width: 447px;
}

@media screen and (max-width: 849px) {
  .parents .title-area__copy {
    width: 220px;
  }
}

.howto .title-area__copy {
  margin: 310px auto 0;
  width: 260px;
}

@media screen and (max-width: 849px) {
  .howto .title-area__copy {
    margin: 126px auto 0;
    width: 130px;
  }
}

.experiment .title-area__copy, .experiment-page .title-area__copy {
  margin: 310px auto 0;
  width: 354px;
}

@media screen and (max-width: 849px) {
  .experiment .title-area__copy, .experiment-page .title-area__copy {
    margin: 126px auto 0;
    width: 180px;
  }
}

.feature .title-area__copy {
  margin: 310px auto 0;
  width: 120px;
}

@media screen and (max-width: 849px) {
  .feature .title-area__copy {
    margin: 126px auto 0;
    width: 75px;
  }
}

.stamp .title-area__copy {
  width: 388px;
}

@media screen and (max-width: 849px) {
  .stamp .title-area__copy {
    margin: 108px auto 0;
    width: 180px;
  }
}

.sponsor .title-area__copy {
  margin: 310px auto 0;
  width: 250px;
}

.sponsor .btn {
  min-width: 300px;
}

@media screen and (max-width: 849px) {
  .sponsor .title-area__copy {
    margin: 126px auto 0;
    width: 105px;
  }
}

.contact .title-area__copy {
  width: 616px;
}

@media screen and (max-width: 849px) {
  .contact .title-area__copy {
    width: 220px;
  }
}

.sitemap .title-area__copy {
  margin: 310px auto 0;
  width: 336px;
}

@media screen and (max-width: 849px) {
  .sitemap .title-area__copy {
    margin: 126px auto 0;
    width: 220px;
  }
}

.error .title-area__copy {
  margin: 310px auto 0;
  width: 408px;
}

@media screen and (max-width: 849px) {
  .error .title-area__copy {
    margin: 126px auto 0;
    width: 220px;
  }
}

.page-content {
  -webkit-box-sizing: border-box;
  background: url(../images/common/page_bg.png) repeat #e0f1e9 top center;
  box-sizing: border-box;
  padding: 120px 0 60px;
}

@media screen and (max-width: 849px) {
  .page-content {
    padding: 80px 4%;
  }
}

.content-area {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 20px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 30px 4% 90px;
  width: 1200px;
}

@media screen and (max-width: 849px) {
  .content-area {
    padding: 25px 25px 50px;
    width: 100%;
  }
}

@media print {
  .content-area {
    margin: 0 auto;
    width: 92%;
  }
}

.error-text {
  text-align: center;
}

.error-illust {
  margin: 40px auto 40px;
  text-align: center;
  width: 400px;
}

.about .content-area {
  letter-spacing: .14em;
  line-height: 1.8;
  padding-top: 80px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .about .content-area {
    padding: 40px 4% 25px;
    text-align: left;
  }
}

.about .content-title {
  margin: 0 auto 70px;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .about .content-title {
    margin: 0 auto 40px;
    width: 100%;
  }
}

.about .color-green {
  color: #009b63;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
}

@media screen and (max-width: 849px) {
  .about .color-green {
    display: inline-block;
    margin-top: 5px;
  }
}

.about .s1 {
  margin-bottom: 20px;
}

.about .s2 {
  margin: 80px auto;
  width: 593px;
}

@media screen and (max-width: 849px) {
  .about .s2 {
    margin: 50px auto;
    width: 90%;
  }
}

.about .s3 {
  margin-bottom: 50px;
  position: relative;
}

.about .s3__text {
  position: relative;
  z-index: 100;
}

.about .s3__text .s {
  display: block;
  margin-bottom: 2em;
}

.about .s3__img1 {
  height: 146px;
  left: 20px;
  position: absolute;
  top: 150px;
  width: 127px;
  z-index: 100;
}

.about .s3__img2 {
  height: 320px;
  position: absolute;
  right: 0px;
  top: 220px;
  width: 174px;
  z-index: 101;
}

.about .s3__img3 {
  display: none;
}

@media screen and (max-width: 849px) {
  .about .s3__img1 {
    display: none;
  }
  .about .s3__img2 {
    display: none;
  }
  .about .s3__img3 {
    display: block;
    margin: 40px 0 30px;
  }
}

.about .s4 {
  font-size: 24px;
  font-size: 1.5rem;
}

@media screen and (max-width: 849px) {
  .about .s4 {
    margin-bottom: 50px;
  }
}

.about .column {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 20px;
  box-sizing: border-box;
  color: #fff;
  margin: 100px auto 0;
  padding: 40px 20px 50px;
  position: relative;
  width: 85%;
}

.about .column__heading {
  font-size: 28px;
  font-size: 1.75rem;
  margin-bottom: 20px;
}

.about .column__text {
  font-size: 16px;
  font-size: 1rem;
}

.about .column__img {
  bottom: -15px;
  height: 150px;
  position: absolute;
  right: -45px;
  width: 139px;
}

@media screen and (max-width: 849px) {
  .about .column {
    margin: 70px auto 50px;
    padding: 30px 20px 110px;
    width: 100%;
  }
  .about .column__heading {
    font-size: 24px;
    font-size: 1.5rem;
    margin-bottom: 20px;
  }
  .about .column__text {
    font-size: 16px;
    font-size: 1rem;
  }
  .about .column__img {
    bottom: -45px;
    height: 130px;
    position: absolute;
    right: -25px;
    width: 110px;
  }
}

.contact .content-area {
  background: #fff;
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 80px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .contact .content-area {
    padding-top: 40px;
  }
}

.contact .read {
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 40px;
}

.contact .read .small {
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  margin-top: 5px;
}

@media screen and (max-width: 849px) {
  .contact .read {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 40px;
    text-align: left;
  }
  .contact .read .small {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 10px;
  }
}

.contact .attention {
  -webkit-box-sizing: border-box;
  border: 4px solid #74d6b3;
  border-radius: 10px;
  box-sizing: border-box;
  font-size: 16px;
  font-size: 1rem;
  margin: 0 auto 80px;
  padding: 15px 25px;
  text-align: left;
  width: 84%;
}

.contact .attention__heading {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 5px;
  padding: 0 0 3px 15px;
  position: relative;
}

.contact .attention__heading:before {
  -webkit-transform: translateY(-50%);
  background: #000;
  content: "";
  height: 60%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
}

.contact .attention__text {
  line-height: 1.8;
}

@media screen and (max-width: 849px) {
  .contact .attention {
    -webkit-box-sizing: border-box;
    border: 4px solid #74d6b3;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 16px;
    font-size: 1rem;
    margin: 0 auto 40px;
    padding: 10px 15px;
    width: 100%;
  }
  .contact .attention__heading {
    line-height: 1.6;
    margin-bottom: 5px;
    padding: 0 0 3px 15px;
  }
  .contact .attention__heading:before {
    -webkit-transform: translateY(-50%);
    background: #000;
    content: "";
    height: 80%;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
  }
  .contact .attention__text {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.6;
  }
}

.contact .form-item {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto 20px;
  width: 92%;
}

.contact .form-item__heading {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: .04em;
  line-height: 1.8;
  margin-right: 4%;
  padding: 15px 60px 15px 15px;
  position: relative;
  text-align: left;
  width: 25%;
}

.contact .form-item__heading .required {
  -webkit-box-sizing: border-box;
  background: #e57d96;
  border-radius: 4px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  padding: 0 5px;
  position: absolute;
  right: 14px;
  text-align: center;
  top: 16px;
}

.contact .form-item__detail {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.0;
  padding-top: 5px;
  text-align: left;
  width: 71%;
}

@media screen and (max-width: 849px) {
  .contact .form-item {
    display: block;
    margin: 0 auto 30px;
    width: 100%;
  }
  .contact .form-item__heading {
    background: #009b63;
    border-radius: 10px;
    color: #fff;
    line-height: 1.8;
    margin: 0 0 10px;
    padding: 15px 60px 15px 15px;
    width: 100%;
  }
  .contact .form-item__detail {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
    width: 100%;
  }
}

.contact .contact-confirm .form-item__detail {
  padding-top: 10px;
}

.contact .btn-area {
  padding: 40px 0 0;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .contact .btn-area {
    padding: 20px 0 0;
  }
}

.contact .btn-wrap {
  display: inline-block;
  position: relative;
}

.contact .btn-wrap:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat center;
  background-size: contain;
  content: "";
  height: 10px;
  left: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
}

.contact .btn-wrap .btn-submit {
  -webkit-box-sizing: border-box;
  background: #f0cb00;
  border: none;
  border-radius: 30px;
  box-sizing: border-box;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  min-width: 260px;
  padding: 15px 30px 15px 45px;
}

.contact .btn-wrap--back:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_left_white.svg) no-repeat center;
  background-size: contain;
  content: "";
  height: 10px;
  left: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
}

.contact .btn-wrap--back .btn-submit {
  -webkit-box-sizing: border-box;
  background: #8f8f8f;
  border: none;
  border-radius: 30px;
  box-sizing: border-box;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  min-width: 260px;
  padding: 15px 30px 15px 45px;
}

.contact .btn-wrap:last-child {
  margin-left: 20px;
}

@media screen and (max-width: 849px) {
  .contact .btn-wrap {
    display: block;
    margin-bottom: 20px;
  }
  .contact .btn-wrap .btn-submit {
    width: 100%;
  }
  .contact .btn-wrap--back {
    position: relative;
  }
  .contact .btn-wrap--back .btn-submit {
    -webkit-box-sizing: border-box;
    background: #8f8f8f;
    border: none;
    border-radius: 30px;
    box-sizing: border-box;
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 700;
    min-width: 260px;
    padding: 15px 30px 15px 45px;
  }
  .contact .btn-wrap:last-child {
    margin-left: 0;
  }
}

.contact .radio1 {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  line-height: 1.8;
  padding: 5px 30px;
  position: relative;
  width: auto;
}

.contact .radio1:before {
  background: #fff;
  border: 1px solid #231815;
  border-radius: 50%;
  content: '';
  display: block;
  height: 16px;
  left: 5px;
  margin-top: -8px;
  position: absolute;
  top: 20px;
  width: 16px;
}

.contact .radio1:after {
  background: #009b63;
  border-radius: 50%;
  content: '';
  display: block;
  height: 10px;
  left: 9px;
  margin-top: -4px;
  opacity: 0;
  position: absolute;
  top: 20px;
  width: 10px;
}

.contact input[type=radio] {
  display: none;
}

.contact input[type=radio]:checked + .radio1::after {
  opacity: 1;
}

.contact input[type="text"], .contact input[type="email"], .contact input[type="tel"], .contact textarea {
  -webkit-box-sizing: border-box;
  border: 2px solid #aaa;
  border-radius: 8px;
  box-sizing: border-box;
  font-size: 18px;
  font-size: 1.125rem;
  padding: 8px;
  width: 100%;
}

.contact textarea {
  min-height: 300px;
}

.experiment-page .content-area {
  background: url(../images/common/page_bg2.png) repeat-y #fff top 20px center;
  background-size: 120%;
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 80px;
}

@media screen and (max-width: 849px) {
  .experiment-page .content-area {
    padding-top: 40px;
  }
}

.experiment-page .content-title {
  margin: 0 auto 50px;
  text-align: center;
  width: 1032px;
}

.experiment-page .content-title__adjust {
  position: relative;
}

.experiment-page .content-title__adjust:before {
  background: url(../images/experiment/page_title_left.svg) no-repeat center;
  background-size: contain;
  bottom: 0;
  content: "";
  display: block;
  height: 66px;
  left: -105px;
  position: absolute;
  width: 65px;
}

.experiment-page .content-title__adjust:after {
  background: url(../images/experiment/page_title_right.svg) no-repeat center;
  background-size: contain;
  bottom: 0;
  content: "";
  display: block;
  height: 66px;
  position: absolute;
  right: -105px;
  width: 65px;
}

.experiment-page .content-title__inner {
  color: #009b63;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 auto;
  position: relative;
}

.experiment-page .content-title__inner ruby rt {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: -.02em;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .experiment-page .content-title {
    margin: 0 auto 30px;
    width: 100%;
  }
  .experiment-page .content-title__adjust {
    display: inline-block;
  }
  .experiment-page .content-title__adjust:before {
    background: url(../images/experiment/page_title_left.svg) no-repeat center;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    height: 10vw;
    left: -4%;
    position: absolute;
    width: 10vw;
  }
  .experiment-page .content-title__adjust:after {
    background: url(../images/experiment/page_title_right.svg) no-repeat center;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    height: 10vw;
    position: absolute;
    right: -4%;
    width: 10vw;
  }
  .experiment-page .content-title__inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    font-size: 8.2vw;
    letter-spacing: 0.1 0.5em;
    line-height: 1.4;
    padding: 0 20px;
  }
}

.experiment-page .content-title2 {
  text-align: center;
}

.experiment-page .content-title2__inner {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 40px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  margin: 0 auto 50px;
  padding: 10px 30px;
  text-align: center;
  width: auto;
}

@media screen and (max-width: 849px) {
  .experiment-page .content-title2 {
    margin: 0 auto 30px;
    width: 100%;
  }
  .experiment-page .content-title2__inner {
    border-radius: 20px;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.4;
    margin: 0 auto 20px;
    padding: 10px 30px;
    width: 100%;
  }
}

.experiment-page .experiment-page-read {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: flex-start;
  line-height: 2.0;
}

.experiment-page .experiment-page-read__item {
  width: 48%;
}

.experiment-page .experiment-page-read__item p {
  margin-bottom: 1em;
}

.experiment-page .experiment-page-read__item:first-child {
  margin-left: 4%;
}

@media screen and (max-width: 849px) {
  .experiment-page .experiment-page-read {
    display: block;
    line-height: 1.8;
  }
  .experiment-page .experiment-page-read__item {
    width: 100%;
  }
  .experiment-page .experiment-page-read__item p {
    margin-bottom: 1em;
  }
  .experiment-page .experiment-page-read__item:first-child {
    margin-left: 0;
  }
}

.experiment-page .style-title1 {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.8;
  margin: 50px 0 10px;
  padding: 0 0 0 20px;
  position: relative;
}

.experiment-page .style-title1:before {
  -webkit-transform: translateY(-50%);
  background: #000;
  border-radius: 3px;
  content: "";
  height: 80%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
}

.experiment-page .style-title1:after {
  background: url(../images/experiment/heading_illust1.png) no-repeat bottom right;
  background-size: contain;
  bottom: -10px;
  content: "";
  display: block;
  height: 88px;
  position: absolute;
  right: 10px;
  width: 100px;
}

.experiment-page .style-title1--no-illust:after {
  display: none;
}

.experiment-page .style-title1__sub {
  font-size: 16px;
  font-size: 1rem;
  margin-left: 2em;
}

@media screen and (max-width: 849px) {
  .experiment-page .style-title1 {
    font-size: 26px;
    font-size: 1.625rem;
    margin: 40px 0 10px;
  }
  .experiment-page .style-title1:after {
    background: url(../images/experiment/heading_illust1.png) no-repeat bottom right;
    background-size: contain;
    bottom: -10px;
    content: "";
    display: block;
    height: 88px;
    position: absolute;
    right: 0;
    width: 80px;
  }
  .experiment-page .style-title1--no-illust:after {
    display: none;
  }
}

.experiment-page .style-title2 {
  -webkit-box-sizing: border-box;
  border-bottom: 3px solid #e4d8c1;
  box-sizing: border-box;
  font-size: 26px;
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 1.8;
  margin: 50px 0 10px;
  padding: 0 0 5px 20px;
  position: relative;
}

.experiment-page .style-title2:before {
  -webkit-transform: translateY(-60%);
  background: #000;
  border-radius: 3px;
  content: "";
  height: 80%;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-60%);
  width: 6px;
}

.experiment-page .style-title2:after {
  background: url(../images/experiment/heading_illust2.png) no-repeat bottom right;
  background-size: contain;
  bottom: 0;
  content: "";
  display: block;
  height: 88px;
  position: absolute;
  right: 10px;
  width: 100px;
}

.experiment-page .style-title2--no-image:after {
  display: none;
}

@media screen and (max-width: 849px) {
  .experiment-page .style-title2 {
    border-bottom: 3px solid #e4d8c1;
    font-size: 26px;
    font-size: 1.625rem;
    line-height: 1.8;
    margin: 50px 0 10px;
    padding: 0 0 5px 20px;
  }
  .experiment-page .style-title2:after {
    background: url(../images/experiment/heading_illust2.png) no-repeat bottom right;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    height: 88px;
    position: absolute;
    right: 0;
    width: 80px;
  }
  .experiment-page .style-title2--no-image:after {
    display: none;
  }
}

.experiment-page .ex-title {
  -webkit-box-sizing: border-box;
  border-bottom: 3px solid #009b63;
  box-sizing: border-box;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 50px 0 20px;
  padding-bottom: 5px;
}

.experiment-page .ex-title span {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 6px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 1;
  margin-right: 12px;
  padding: 6px 15px 11px;
}

.experiment-page .ex-title--blue {
  border-bottom: 3px solid #2473b8;
}

.experiment-page .ex-title--blue span {
  background: #2473b8;
}

.experiment-page .ex-title-sub {
  -webkit-box-sizing: border-box;
  background: #f0cb00;
  box-sizing: border-box;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 30px 0 20px;
  padding: 10px;
  text-align: center;
  width: 100%;
}

.experiment-page .memo {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 4px solid #000;
  border-top: 4px solid #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.8;
  margin: 30px 0 80px;
  padding: 20px 0;
}

.experiment-page .memo--1 .memo__img {
  text-align: center;
  width: 107px;
}

.experiment-page .memo--1 .memo__text {
  width: 86%;
}

.experiment-page .memo--2 {
  margin: 40px 0 20px;
}

.experiment-page .memo--2 .memo__img {
  text-align: center;
  width: 107px;
}

.experiment-page .memo--2 .memo__text {
  width: 86%;
}

@media screen and (max-width: 849px) {
  .experiment-page .memo {
    display: block;
    font-size: 16px;
    font-size: 1rem;
  }
  .experiment-page .memo--1 .memo__img {
    display: none;
  }
  .experiment-page .memo--1 .memo__text {
    width: 100%;
  }
  .experiment-page .memo--2 .memo__img {
    display: none;
  }
  .experiment-page .memo--2 .memo__text {
    width: 100%;
  }
}

.experiment-page .material {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 4px solid #e4d8c1;
  border-radius: 20px;
  box-sizing: border-box;
  padding: 20px;
}

.experiment-page .material-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.experiment-page .material-layout__item {
  width: 48%;
}

@media screen and (max-width: 849px) {
  .experiment-page .material-layout {
    display: block;
  }
  .experiment-page .material-layout__item {
    width: 100%;
  }
}

.experiment-page .material-content__item {
  border-bottom: 2px dotted #e4d8c1;
  line-height: 1.8;
  margin-bottom: 10px;
  padding-bottom: 4px;
}

.experiment-page .material-content__item--no-border {
  border-bottom: none;
}

.experiment-page .material-content__item .caution {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
}

.experiment-page .howto-illust {
  margin: 40px 0 40px;
  width: 100%;
}

.experiment-page .step {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
}

.experiment-page .step__item {
  -webkit-box-sizing: border-box;
  background: #f8f5e6;
  border-radius: 0 0 20px 20px;
  border-top: 8px solid #e4d8c1;
  box-sizing: border-box;
  margin-top: 90px;
  padding: 30px;
  width: 48%;
}

.experiment-page .step__item--margin {
  margin-right: 4% !important;
}

.experiment-page .step__item--nomargin {
  margin-right: 0 !important;
}

@media screen and (max-width: 849px) {
  .experiment-page .step {
    display: block;
  }
  .experiment-page .step__item {
    margin-top: 90px;
    padding: 20px;
    width: 100%;
  }
  .experiment-page .step__item:nth-child(odd) {
    margin-right: 0;
  }
}

.experiment-page .step-content {
  padding-top: 50px;
  position: relative;
}

.experiment-page .step-content__number {
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: -70px;
  width: 107px;
}

.experiment-page .step-content__text {
  line-height: 2.0;
}

.experiment-page .step-content__text:not(:last-child) {
  margin-bottom: 15px;
}

.experiment-page .step-content__text--attention {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 2.5em;
  position: relative;
}

.experiment-page .step-content__text--attention .icon {
  -webkit-box-sizing: border-box;
  background: #f0cb00;
  border-radius: 4px;
  box-sizing: border-box;
  display: inline-block;
  left: 0;
  line-height: 1;
  margin-right: 8px;
  padding: 5px 10px 9px 13px;
  position: absolute;
  text-align: center;
  top: 5px;
}

.experiment-page .step-content__text--caution {
  padding-left: 1em;
  text-indent: -1em;
}

.experiment-page .step-content__text .text-number {
  display: inline-block;
  margin-right: 5px;
  position: relative;
  top: -6px;
  width: 23px;
}

.experiment-page .step-content__text .f-blue {
  color: #2473b8;
  font-weight: 700;
}

.experiment-page .step-content--wide {
  margin-right: 0 !important;
  width: 100%;
}

.experiment-page .step-content--noicon {
  padding-top: 20px;
}

.experiment-page .step-content--noicon.step__item {
  margin-top: 40px;
}

@media screen and (max-width: 849px) {
  .experiment-page .step-content {
    padding-top: 40px;
    position: relative;
  }
  .experiment-page .step-content__number {
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: -50px;
    width: 80px;
  }
  .experiment-page .step-content__text {
    line-height: 1.8;
  }
}

.experiment-page .attention-area {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 15px 0 40px;
}

.experiment-page .attention-area__heading {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #f0cb00;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-weight: 700;
  justify-content: center;
  min-height: 70px;
  width: 8%;
}

.experiment-page .attention-area__text {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.8;
  width: 90%;
}

@media screen and (max-width: 849px) {
  .experiment-page .attention-area {
    display: block;
    margin: 15px 0 40px;
  }
  .experiment-page .attention-area__heading {
    margin-bottom: 10px;
    min-height: auto;
    text-align: left;
    width: 100%;
  }
  .experiment-page .attention-area__text {
    width: 100%;
  }
}

.experiment-page .lets-try {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 2.0;
  margin: 60px 0;
  padding: 30px 0;
  position: relative;
}

.experiment-page .lets-try__item:nth-child(1) {
  width: 19%;
}

.experiment-page .lets-try__item:nth-child(2) {
  width: 77%;
}

.experiment-page .lets-try:before {
  background: url(../images/experiment/line.png) repeat-x center top;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: -2px;
  width: 100%;
}

.experiment-page .lets-try:after {
  background: url(../images/experiment/line.png) repeat-x center top;
  bottom: -2px;
  content: "";
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  width: 100%;
}

.experiment-page .lets-try .attention {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}

.experiment-page .lets-try .attention__heading {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #f0cb00;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-weight: 700;
  justify-content: center;
  width: 8%;
}

.experiment-page .lets-try .attention__text {
  line-height: 1.8;
  width: 90%;
}

@media screen and (max-width: 849px) {
  .experiment-page .lets-try {
    display: block;
    line-height: 1.8;
    margin: 60px 0;
    padding: 30px 0;
  }
  .experiment-page .lets-try__item:nth-child(1) {
    margin: 0 auto 20px;
    text-align: center;
    width: 80%;
  }
  .experiment-page .lets-try__item:nth-child(2) {
    width: 100%;
  }
  .experiment-page .lets-try .attention {
    display: block;
    margin-top: 15px;
  }
  .experiment-page .lets-try .attention__heading {
    background: #f0cb00;
    border-radius: 8px;
    margin: 25px 0 10px;
    width: 100%;
  }
  .experiment-page .lets-try .attention__text {
    line-height: 1.8;
    width: 100%;
  }
}

.experiment-page .check {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  background: #f8f5e6;
  border: 4px solid #009b63;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px;
}

.experiment-page .check__title {
  text-align: center;
  width: 12%;
}

.experiment-page .check__title img {
  width: 104px;
}

.experiment-page .check__text {
  line-height: 2.0;
  width: 84%;
}

.experiment-page .check .check-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 2.0;
  width: 84%;
}

.experiment-page .check .check-layout__text {
  width: 80%;
}

.experiment-page .check .check-layout__img {
  width: 16%;
}

@media screen and (max-width: 849px) {
  .experiment-page .check {
    display: block;
    padding: 20px;
  }
  .experiment-page .check__title {
    margin-bottom: 15px;
    width: 100%;
  }
  .experiment-page .check__title img {
    width: 104px;
  }
  .experiment-page .check__text {
    line-height: 1.8;
    width: 100%;
  }
  .experiment-page .check .check-layout {
    line-height: 2.0;
    width: 1000%;
  }
  .experiment-page .check .check-layout__text {
    width: 70%;
  }
  .experiment-page .check .check-layout__img {
    text-align: center;
    width: 26%;
  }
}

.experiment-page .reference {
  margin-top: 30px;
}

.experiment-page .reference__item {
  margin-bottom: 10px;
}

.experiment-page .reference .detail {
  margin-bottom: 15px;
}

.experiment-page .reference .detail__title {
  line-height: 1.4;
}

.experiment-page .reference .detail__url a {
  color: #009b63;
  display: inline-block;
  line-height: 1.6;
  text-decoration: underline;
  word-break: break-all;
}

.experiment-page .reference .detail__url a:hover {
  text-decoration: none;
}

.experiment-marbling .step .step-content .step-chara {
  display: block;
  position: relative;
  text-align: right;
}

.experiment-marbling .step .step-content .step-chara img {
  bottom: -50px;
  position: relative;
  right: 20px;
  width: 142px;
}

.experiment-marbling .check .check-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 84%;
}

.experiment-marbling .check .check-layout__text {
  width: 80%;
}

.experiment-marbling .check .check-layout__img {
  text-align: center;
  width: 15%;
}

.experiment-marbling .check .check-layout__img img {
  width: 70px;
}

@media screen and (max-width: 849px) {
  .experiment-marbling .check .check-layout {
    display: block;
    width: 100%;
  }
  .experiment-marbling .check .check-layout__text {
    width: 100%;
  }
  .experiment-marbling .check .check-layout__img {
    margin-top: 30px;
    text-align: center;
    width: 100%;
  }
  .experiment-marbling .check .check-layout__img img {
    width: 40%;
  }
}

.experiment-soda .check .check-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 84%;
}

.experiment-soda .check .check-layout__text {
  width: 80%;
}

.experiment-soda .check .check-layout__img {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  text-align: center;
  width: 15%;
}

.experiment-soda .check .check-layout__img img {
  width: 79px;
}

@media screen and (max-width: 849px) {
  .experiment-soda .check .check-layout {
    display: block;
    width: 100%;
  }
  .experiment-soda .check .check-layout__text {
    width: 100%;
  }
  .experiment-soda .check .check-layout__img {
    margin-top: 30px;
    text-align: center;
    width: 100%;
  }
  .experiment-soda .check .check-layout__img img {
    width: 45%;
  }
}

.experiment-reagent .memo__text .ph {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  margin: 20px 0;
  padding: 10px;
}

.experiment-suzukimadoka .content-title2 {
  margin-bottom: 40px;
}

.experiment-suzukimadoka .talk-content-wrap {
  margin: 0 auto;
  width: 90%;
}

.experiment-suzukimadoka .talk-layout {
  margin: 40px 0;
}

.experiment-suzukimadoka .talk {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 16px;
  font-size: 1rem;
  justify-content: flex-start;
  line-height: 1.5;
  margin-bottom: 12px;
  position: relative;
}

.experiment-suzukimadoka .talk__balloon {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #009b63;
  border-radius: 10px;
  box-sizing: border-box;
  max-width: calc(90% - 140px);
  padding: 12px 15px;
  position: relative;
}

.experiment-suzukimadoka .talk__balloon:before {
  content: "";
  display: block;
  height: 17px;
  position: absolute;
  top: 15px;
  width: 15px;
}

.experiment-suzukimadoka .talk--left .talk__chara {
  text-align: center;
  width: 140px;
}

.experiment-suzukimadoka .talk--left .talk__balloon:before {
  background: url(../images/experiment/common/balloon_arrow_left.svg) no-repeat center;
  left: -18px;
}

.experiment-suzukimadoka .talk--right {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.experiment-suzukimadoka .talk--right .talk__chara {
  text-align: right;
  width: 120px;
}

.experiment-suzukimadoka .talk--right .talk__balloon {
  background: #fffbeb;
  max-width: calc(90% - 120px);
}

.experiment-suzukimadoka .talk--right .talk__balloon:before {
  background: url(../images/experiment/common/balloon_arrow_right.svg) no-repeat center;
  right: -18px;
}

.experiment-suzukimadoka .introduction-layout {
  margin: 40px auto;
  padding: 30px 0;
  position: relative;
}

.experiment-suzukimadoka .introduction-layout:before {
  background: url(../images/experiment/common/line_dot.png) repeat-x center;
  content: "";
  display: block;
  height: 6px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.experiment-suzukimadoka .introduction-layout:after {
  background: url(../images/experiment/common/line_dot.png) repeat-x center;
  bottom: 0;
  content: "";
  display: block;
  height: 6px;
  left: 0;
  position: absolute;
  width: 100%;
}

.experiment-suzukimadoka .introduction {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 16px;
  font-size: 1rem;
  justify-content: center;
  line-height: 1.6;
  margin: 0 auto;
  position: relative;
}

.experiment-suzukimadoka .introduction__chara {
  margin-right: 15px;
  width: 104px;
}

.experiment-suzukimadoka .introduction__text {
  width: auto;
}

.experiment-suzukimadoka .contents-list-layout {
  font-size: 16px;
  font-size: 1rem;
  margin: 0 auto 40px;
}

.experiment-suzukimadoka .contents-list {
  margin: 10px 0 0 1em;
}

.experiment-suzukimadoka .contents-list__item {
  margin-bottom: 3px;
}

.experiment-suzukimadoka .contents-list__item .link-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  line-height: 1.8;
  padding-left: 30px;
  position: relative;
}

.experiment-suzukimadoka .contents-list__item .link-item:before {
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat;
  content: "";
  display: block;
  height: 8px;
  left: 0;
  position: absolute;
  top: 12px;
  width: 22px;
}

.experiment-suzukimadoka .contents-list__item .link-item .category {
  -webkit-box-sizing: border-box;
  background: #f0cb00;
  box-sizing: border-box;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  letter-spacing: 0;
  line-height: 1.8;
  margin-right: 10px;
  min-width: 61px;
  padding: 0 8px;
  text-align: center;
}

.experiment-suzukimadoka .contents-list__item .link-item .text {
  text-decoration: underline;
}

.experiment-suzukimadoka .contents-list__item .link-item .text:hover {
  text-decoration: none;
}

.experiment-suzukimadoka .category-title {
  background: #46320f;
  background-color: #46320f;
  border-color: #46320f;
  color: #fff;
  font-size: 3.2vmin;
  letter-spacing: 0;
  line-height: 1;
  margin-bottom: 30px;
  padding: 10px;
  position: relative;
}

.experiment-suzukimadoka .category-title:before, .experiment-suzukimadoka .category-title:after {
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
}

.experiment-suzukimadoka .category-title:before {
  border: 6px solid transparent;
  border-bottom-color: inherit;
  bottom: 100%;
}

.experiment-suzukimadoka .category-title:after {
  border: 8px solid transparent;
  border-top-color: inherit;
  top: 100%;
}

.experiment-suzukimadoka .category-title__category {
  background-color: #f0cb00;
  border-color: #f0cb00;
  color: #46320f;
  font-size: 24px;
  font-size: 1.5rem;
  letter-spacing: 0;
  line-height: 1;
  margin-right: 15px;
  padding: 0 10px;
  position: relative;
}

.experiment-suzukimadoka .category-title__category:before, .experiment-suzukimadoka .category-title__category:after {
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
}

.experiment-suzukimadoka .category-title__category:before {
  border: 6px solid transparent;
  border-bottom-color: inherit;
  bottom: 100%;
}

.experiment-suzukimadoka .category-title__category:after {
  border: 8px solid transparent;
  border-top-color: inherit;
  top: 100%;
}

.experiment-suzukimadoka .category-title__category .small {
  font-size: 22px;
  font-size: 1.375rem;
}

.experiment-suzukimadoka .category-title__category .large {
  font-size: 28px;
  font-size: 1.75rem;
}

.experiment-suzukimadoka .category-title rt {
  font-size: .3em;
}

.experiment-suzukimadoka .material {
  margin-bottom: 40px;
}

.experiment-suzukimadoka .material-content {
  font-size: 16px;
  font-size: 1rem;
}

.experiment-suzukimadoka .talk-illust {
  margin: 30px auto 60px;
  text-align: center;
}

.experiment-suzukimadoka .talk-ending {
  color: #46320f;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 60px;
  text-align: center;
}

.experiment-suzukimadoka .starch-list-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-size: 16px;
  font-size: 1rem;
  justify-content: space-between;
  letter-spacing: 0;
  margin: 30px auto 50px;
  position: relative;
}

.experiment-suzukimadoka .starch-list {
  width: 48%;
}

.experiment-suzukimadoka .starch-list__item {
  margin-bottom: 10px;
}

.experiment-suzukimadoka .starch-list-items {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  line-height: 1.4;
  position: relative;
}

.experiment-suzukimadoka .starch-list-items .starch-img {
  background: #fff;
  display: inline-block;
  width: 75px;
}

.experiment-suzukimadoka .starch-list-items .starch-yasai {
  -webkit-box-sizing: border-box;
  background: #fff;
  box-sizing: border-box;
  display: inline-block;
  min-width: 64px;
  padding: 0 5px;
}

.experiment-suzukimadoka .starch-list-items .starch-line {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  background: url(../images/experiment/starch/line.png) repeat-x center;
  display: inline-block;
  flex-grow: 1;
  min-height: 10px;
}

.experiment-suzukimadoka .starch-list-items .starch-result {
  -webkit-box-sizing: border-box;
  background: #fff;
  box-sizing: border-box;
  padding: 0 5px;
}

.experiment-suzukimadoka .starch-list-items .starch-result--red {
  color: #d01016;
}

.experiment-suzukimadoka .starch-list-items .starch-result .small {
  font-size: 11px;
  font-size: 0.6875rem;
}

.experiment-suzukimadoka .talk-line {
  background: url(../images/experiment/common/line_dot.png) repeat-x center;
  display: block;
  height: 6px;
  margin: 50px 0;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .experiment-suzukimadoka .content-title2 {
    margin-bottom: 40px;
  }
  .experiment-suzukimadoka .talk-content-wrap {
    margin: 0 auto;
    width: 100%;
  }
  .experiment-suzukimadoka .talk-layout {
    margin: 40px 0;
  }
  .experiment-suzukimadoka .talk {
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: 12px;
  }
  .experiment-suzukimadoka .talk__balloon {
    max-width: calc(100% - 75px);
    padding: 12px 15px;
  }
  .experiment-suzukimadoka .talk--left .talk__chara {
    width: 60px;
  }
  .experiment-suzukimadoka .talk--left .talk__balloon {
    margin-left: 15px;
  }
  .experiment-suzukimadoka .talk--right .talk__chara {
    width: 50px;
  }
  .experiment-suzukimadoka .talk--right .talk__balloon {
    margin-right: 20px;
    max-width: calc(100% - 70px);
  }
  .experiment-suzukimadoka .introduction {
    display: block;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 1.6;
    margin: 0 auto;
    position: relative;
  }
  .experiment-suzukimadoka .introduction__chara {
    margin: 0 auto 10px;
    width: 80px;
  }
  .experiment-suzukimadoka .contents-list-layout {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 0 auto 40px;
  }
  .experiment-suzukimadoka .contents-list {
    margin: 10px 0 0 0;
  }
  .experiment-suzukimadoka .category-title {
    color: #fff;
    font-size: 22px;
    font-size: 1.375rem;
    letter-spacing: 0;
    line-height: 1.4;
    margin-bottom: 30px;
    padding: 6px;
    text-align: center;
  }
  .experiment-suzukimadoka .category-title:before, .experiment-suzukimadoka .category-title:after {
    content: "";
    display: block;
    left: 0;
    position: absolute;
    right: 0;
  }
  .experiment-suzukimadoka .category-title:before {
    border: 6px solid transparent;
    border-bottom-color: inherit;
    bottom: 100%;
  }
  .experiment-suzukimadoka .category-title:after {
    border: 8px solid transparent;
    border-top-color: inherit;
    top: 100%;
  }
  .experiment-suzukimadoka .category-title__category {
    -webkit-box-sizing: border-box;
    background-color: #f0cb00;
    border-color: #f0cb00;
    box-sizing: border-box;
    color: #46320f;
    display: block;
    font-size: 18px;
    font-size: 1.125rem;
    letter-spacing: 0;
    line-height: 1;
    margin: 0 auto 15px;
    padding: 0 2px;
    text-align: center;
    width: 100%;
  }
  .experiment-suzukimadoka .category-title__category .small {
    font-size: 18px;
    font-size: 1.125rem;
  }
  .experiment-suzukimadoka .category-title__category .large {
    font-size: 24px;
    font-size: 1.5rem;
  }
  .experiment-suzukimadoka .material-content {
    font-size: 16px;
    font-size: 1rem;
  }
  .experiment-suzukimadoka .talk-illust {
    margin: 30px auto 60px;
    text-align: center;
  }
  .experiment-suzukimadoka .starch-list-layout {
    display: block;
    font-size: 16px;
    font-size: 1rem;
  }
  .experiment-suzukimadoka .starch-list {
    width: 100%;
  }
  .experiment-suzukimadoka .starch-list-items {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 2px dotted #ccc;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    line-height: 1.4;
    margin-bottom: 15px;
    padding-bottom: 15px;
    position: relative;
  }
  .experiment-suzukimadoka .starch-list-items .starch-img {
    background: #fff;
    display: inline-block;
    width: 75px;
  }
  .experiment-suzukimadoka .starch-list-items .starch-yasai {
    -webkit-box-sizing: border-box;
    background: #fff;
    box-sizing: border-box;
    display: inline-block;
    min-width: 64px;
    padding: 0 5px;
    width: calc(100% - 75px);
  }
  .experiment-suzukimadoka .starch-list-items .starch-line {
    -webkit-box-flex: 0;
    -ms-flex: none;
    display: none;
    flex: none;
  }
  .experiment-suzukimadoka .starch-list-items .starch-result {
    -webkit-box-sizing: border-box;
    background: #fff;
    box-sizing: border-box;
    padding: 0 5px;
    width: 50%;
  }
  .experiment-suzukimadoka .starch-list-items .starch-result:before {
    content: "→";
  }
  .experiment-suzukimadoka .starch-list-items .starch-result--red {
    color: #d01016;
  }
  .experiment-suzukimadoka .starch-list-items .starch-result .small {
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .experiment-suzukimadoka .talk-line {
    margin: 30px 0;
  }
}

.experiment {
  /* 一覧 */
}

.experiment .content-area {
  background: url(../images/common/page_bg2.png) repeat-y #fff top 20px center;
  background-size: 120%;
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 80px;
}

@media screen and (max-width: 849px) {
  .experiment .content-area {
    padding-top: 40px;
  }
}

.experiment .content-title {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto 80px;
  padding: 0 4%;
  width: 719px;
}

@media screen and (max-width: 849px) {
  .experiment .content-title {
    margin-bottom: 40px;
    padding: 0;
    width: 95%;
  }
}

.experiment .article-list {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.experiment .article-list__item {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #009b63;
  border-radius: 20px;
  box-sizing: border-box;
  display: block;
  margin-bottom: 40px;
  padding: 10px;
  position: relative;
  width: 30%;
}

.experiment .article-list__item:not(:nth-child(3n)) {
  margin-right: 5%;
}

.experiment .article-list__item:hover {
  background: #74d6b3;
}

@media screen and (max-width: 849px) {
  .experiment .article-list {
    display: block;
  }
  .experiment .article-list__item {
    margin: 0 auto 20px;
    width: 100%;
  }
  .experiment .article-list__item:not(:nth-child(3)) {
    margin-right: auto;
  }
}

.experiment .list-detail__img {
  border-radius: 12px;
  overflow: hidden;
}

.experiment .list-detail__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: .1em;
  line-height: 1.6;
  margin: 15px 0 5px;
  padding-left: 40px;
  position: relative;
}

.experiment .list-detail__text:before {
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat center;
  background-size: contain;
  content: "";
  height: 7px;
  left: 10px;
  position: absolute;
  top: 11px;
  width: 20px;
}

.experiment .icon-new {
  background: #e3643b;
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.6;
  padding: 2px 12px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: -10px;
}

.experiment .icon-backnumber {
  background: #666;
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.6;
  padding: 2px 12px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: -10px;
}

.feature.feature-asahiyukizai .content-area {
  background: url(../images/feature/asahiyukizai/bg.png) #48bbed center top;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-asahiyukizai .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 4% 40px;
}

.feature.feature-asahiyukizai .feature-title img {
  height: auto;
  width: 100%;
}

.feature.feature-asahiyukizai .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 30px 30px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .content-box {
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-asahiyukizai .read {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 20px auto 40px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .read {
    margin: 20px auto 40px;
    text-align: left;
  }
}

.feature.feature-asahiyukizai .heading1 {
  margin: 0 0 20px 0;
  text-align: left;
}

.feature.feature-asahiyukizai .heading2 {
  margin: 0;
  text-align: left;
}

.feature.feature-asahiyukizai .heading2 img {
  margin: 0;
}

.feature.feature-asahiyukizai .text {
  margin-bottom: 40px;
}

.feature.feature-asahiyukizai .img {
  margin-bottom: 50px;
}

.feature.feature-asahiyukizai .source {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0;
  margin-top: 2em;
  padding-left: 1em;
  text-indent: -1em;
}

.feature.feature-asahiyukizai .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-asahiyukizai .box-layout1__img {
  display: block;
  height: auto;
  margin: 20px 0 20px 30px;
  width: 40%;
}

.feature.feature-asahiyukizai .box-layout1__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .box-layout1 {
    display: block;
  }
  .feature.feature-asahiyukizai .box-layout1__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-asahiyukizai .box-layout1__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-asahiyukizai .box-layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-asahiyukizai .box-layout2__img {
  display: block;
  height: auto;
  margin: 20px 30px 20px 0;
  width: 40%;
}

.feature.feature-asahiyukizai .box-layout2__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .box-layout2 {
    display: block;
  }
  .feature.feature-asahiyukizai .box-layout2__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-asahiyukizai .box-layout2__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-asahiyukizai .box-layout3 {
  margin: 25px auto 50px;
  width: 100%;
}

.feature.feature-asahiyukizai .box-layout3 a:hover {
  -webkit-transition: all .3s;
  opacity: .7;
  transition: all .3s;
}

.feature.feature-asahiyukizai .box-layout4 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  border: 2px solid #000;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 25px auto 0;
  padding: 20px;
  width: 100%;
}

.feature.feature-asahiyukizai .box-layout4__text {
  letter-spacing: .04em;
  width: 55%;
}

.feature.feature-asahiyukizai .box-layout4__text a {
  color: #009b63;
  text-decoration: underline;
}

.feature.feature-asahiyukizai .box-layout4__text a[href^="tel:"] {
  border-bottom: none;
  color: inherit;
  pointer-events: none;
  text-decoration: none;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .box-layout4__text a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
}

.feature.feature-asahiyukizai .box-layout4__text a:hover {
  text-decoration: none;
}

.feature.feature-asahiyukizai .box-layout4__text .adddress {
  padding-left: 3.5em;
  text-indent: -3.5em;
}

.feature.feature-asahiyukizai .box-layout4__text .tel {
  padding-left: 3em;
  text-indent: -3em;
}

.feature.feature-asahiyukizai .box-layout4__text .web {
  padding-left: 3.2em;
  text-indent: -3.2em;
}

.feature.feature-asahiyukizai .box-layout4__img {
  text-align: left;
  width: 40%;
}

@media screen and (max-width: 849px) {
  .feature.feature-asahiyukizai .box-layout4 {
    display: block;
  }
  .feature.feature-asahiyukizai .box-layout4__img {
    margin-bottom: 20px;
    width: 100%;
  }
  .feature.feature-asahiyukizai .box-layout4__text {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
}

.feature.feature-chemistry-olympic .content-area {
  background: #005bab;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-chemistry-olympic .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 80px 4% 90px;
}

.feature.feature-chemistry-olympic .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 6px solid #000;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 85px 45px 45px;
  position: relative;
  width: 100%;
}

.feature.feature-chemistry-olympic .content-box__title {
  -webkit-box-sizing: border-box;
  background: #f9be00;
  border: 6px solid #000;
  box-sizing: border-box;
  color: #000;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  left: 25px;
  padding: 7px 20px;
  position: absolute;
  top: -40px;
}

.feature.feature-chemistry-olympic .content-box--sub {
  margin-top: -60px;
  padding: 45px;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic .content-box {
    border: 5px solid #000;
    margin-bottom: 60px;
    padding: 0 5% 45px;
    position: relative;
  }
  .feature.feature-chemistry-olympic .content-box__title {
    -webkit-box-sizing: border-box;
    border: 5px solid #000;
    box-sizing: border-box;
    font-size: 5.5vw;
    left: -10%;
    line-height: 1.5;
    padding: 7px 10px;
    position: relative;
    top: -30px;
    width: 112%;
  }
}

.feature.feature-chemistry-olympic .bold-yellow {
  color: #e9b200;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic .bold-yellow {
    font-size: 6.5vw;
  }
}

.feature.feature-chemistry-olympic .box-layout1 {
  overflow: hidden;
}

.feature.feature-chemistry-olympic .box-layout1 img {
  float: right;
  margin: 20px 0 20px 30px;
  width: 37%;
}

.feature.feature-chemistry-olympic .box-layout1 p:not(:last-child) {
  margin-bottom: 1.5em;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic .box-layout1 img {
    display: block;
    float: none;
    margin: 0 auto 30px;
    width: 90%;
  }
  .feature.feature-chemistry-olympic .box-layout1 p:not(:last-child) {
    margin-bottom: 1.5em;
  }
}

.feature.feature-chemistry-olympic .box-layout2 {
  margin-top: 30px;
  overflow: hidden;
}

.feature.feature-chemistry-olympic .box-layout2 img {
  float: left;
  margin: 20px 30px 20px 0;
  width: 37%;
}

.feature.feature-chemistry-olympic .box-layout2 p:not(:last-child) {
  margin-bottom: 1.5em;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic .box-layout2 {
    margin-top: 30px;
    overflow: hidden;
  }
  .feature.feature-chemistry-olympic .box-layout2 img {
    display: block;
    float: none;
    margin: 0 auto 30px;
    width: 90%;
  }
  .feature.feature-chemistry-olympic .box-layout2 p:not(:last-child) {
    margin-bottom: 1.5em;
  }
}

.feature.feature-chemistry-olympic .box-layout1 .img-center, .feature.feature-chemistry-olympic .box-layout2 .img-center {
  text-align: center;
}

.feature.feature-chemistry-olympic .box-layout1 .img-center img, .feature.feature-chemistry-olympic .box-layout2 .img-center img {
  float: none;
  max-width: 100%;
  width: auto;
}

.feature.feature-chemistry-olympic .box-layout1 .caption, .feature.feature-chemistry-olympic .box-layout2 .caption {
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
}

.feature.feature-chemistry-olympic .space-top {
  margin-top: 2em;
}

.feature.feature-chemistry-olympic .caution {
  color: #009b63;
  font-size: .8em;
  text-decoration: underline;
}

.feature.feature-chemistry-olympic .caution-list {
  font-size: 16px;
  font-size: 1rem;
  padding-left: 3em;
  text-indent: -3em;
}

.feature.feature-chemistry-olympic .caution-list li {
  margin-bottom: 8px;
}

.feature.feature-chemistry-olympic2023 .content-area {
  background: #005bab;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic2023 .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-chemistry-olympic2023 .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 80px 4% 90px;
}

.feature.feature-chemistry-olympic2023 .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px 4% 90px;
}

.feature.feature-chemistry-olympic2023 .read {
  color: #fff;
  display: inline-block;
  margin-bottom: 40px;
}

.feature.feature-chemistry-olympic2023 .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 6px solid #000;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 45px 45px 45px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic2023 .content-box {
    border: 5px solid #000;
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-chemistry-olympic2023 .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
  overflow: hidden;
}

.feature.feature-chemistry-olympic2023 .box-layout1__img {
  padding: 10px 20px 30px 20px;
  width: 37%;
}

.feature.feature-chemistry-olympic2023 .box-layout1__text {
  width: calc(100% - 42%);
}

.feature.feature-chemistry-olympic2023 .box-layout1__text p:not(:last-child) {
  margin-bottom: 1.5em;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic2023 .box-layout1 {
    display: block;
    margin-bottom: 20px;
  }
  .feature.feature-chemistry-olympic2023 .box-layout1__img {
    display: block;
    float: none;
    margin: 10px auto;
    width: 90%;
  }
  .feature.feature-chemistry-olympic2023 .box-layout1__text {
    width: 100%;
  }
}

.feature.feature-chemistry-olympic2023 .box-layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
  overflow: hidden;
}

.feature.feature-chemistry-olympic2023 .box-layout2__img {
  padding: 10px 20px 30px 20px;
  width: 37%;
}

.feature.feature-chemistry-olympic2023 .box-layout2__text {
  width: calc(100% - 42%);
}

.feature.feature-chemistry-olympic2023 .box-layout2__text p:not(:last-child) {
  margin-bottom: 1.5em;
}

@media screen and (max-width: 849px) {
  .feature.feature-chemistry-olympic2023 .box-layout2 {
    display: block;
    margin-bottom: 20px;
  }
  .feature.feature-chemistry-olympic2023 .box-layout2__img {
    display: block;
    float: none;
    margin: 10px auto 0;
    width: 80%;
  }
  .feature.feature-chemistry-olympic2023 .box-layout2__text {
    width: 100%;
  }
}

.feature.feature-chemistry-olympic2023 .box-layout3 {
  margin-bottom: 30px;
}

.feature.feature-chemistry-olympic2023 .box-layout3 p:not(:last-child) {
  margin-bottom: 1.5em;
}

.feature.feature-chemistry-olympic2023 .box-layout1 .img-center, .feature.feature-chemistry-olympic2023 .box-layout2 .img-center {
  text-align: center;
}

.feature.feature-chemistry-olympic2023 .box-layout1 .img-center img, .feature.feature-chemistry-olympic2023 .box-layout2 .img-center img {
  float: none;
  max-width: 100%;
  width: auto;
}

.feature.feature-chemistry-olympic2023 .box-layout1 .caption, .feature.feature-chemistry-olympic2023 .box-layout2 .caption {
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
}

.feature.feature-chemistry-olympic2023 .space-top {
  margin-top: 2em;
}

.feature.feature-chemistry-olympic2023 .caution {
  color: #009b63;
  font-size: .8em;
  text-decoration: underline;
}

.feature.feature-chemistry-olympic2023 .caution-list {
  font-size: 16px;
  font-size: 1rem;
  padding-left: 3em;
  text-indent: -3em;
}

.feature.feature-chemistry-olympic2023 .caution-list li {
  margin-bottom: 8px;
}

.feature.feature-chemistry-olympic2023 .box-img {
  margin: 50px auto;
  text-align: center;
}

.feature.feature-chemistry-olympic2023 .small {
  font-size: .8em;
}

.feature.feature-chemistry-olympic2023 .box-caution {
  font-size: .8em;
  letter-spacing: 0;
  padding-left: 1em;
  text-indent: -1em;
}

.feature.feature-mcgc .content-area {
  background: #0052b5;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-mcgc .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 4% 40px;
}

.feature.feature-mcgc .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 30px 30px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .content-box {
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-mcgc .read {
  margin: 20px auto 40px;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .read {
    margin: 20px auto 20px;
  }
}

.feature.feature-mcgc .heading1 {
  margin: 0 0 30px 0;
  text-align: left;
}

.feature.feature-mcgc .heading2 {
  margin: 0;
  text-align: left;
}

.feature.feature-mcgc .heading2 img {
  margin: 0;
}

.feature.feature-mcgc .text {
  margin-bottom: 40px;
}

.feature.feature-mcgc .img {
  margin-bottom: 50px;
}

.feature.feature-mcgc .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0 10px;
}

.feature.feature-mcgc .box-layout1__img {
  display: block;
  height: auto;
  margin: 20px 0 20px 30px;
  width: 40%;
}

.feature.feature-mcgc .box-layout1__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .box-layout1 {
    display: block;
  }
  .feature.feature-mcgc .box-layout1__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-mcgc .box-layout1__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-mcgc .box-layout2 {
  background: #e3f7fc;
  border-radius: 20px;
  margin-bottom: 30px;
}

.feature.feature-mcgc .box-layout3 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 25px auto 0;
  padding: 0 30px 30px;
  width: 100%;
}

.feature.feature-mcgc .box-layout3__text {
  width: 62%;
}

.feature.feature-mcgc .box-layout3__img {
  text-align: center;
  width: 35%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .box-layout3 {
    display: block;
  }
  .feature.feature-mcgc .box-layout3__img {
    width: 100%;
  }
  .feature.feature-mcgc .box-layout3__text {
    margin-bottom: 30px;
    width: 100%;
  }
}

.feature.feature-mcgc .box-layout4 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  border: 2px solid #000;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 25px auto 0;
  padding: 20px;
  width: 100%;
}

.feature.feature-mcgc .box-layout4__text {
  letter-spacing: .04em;
  width: 55%;
}

.feature.feature-mcgc .box-layout4__text a {
  color: #009b63;
  text-decoration: underline;
}

.feature.feature-mcgc .box-layout4__text a[href^="tel:"] {
  border-bottom: none;
  color: inherit;
  pointer-events: none;
  text-decoration: none;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .box-layout4__text a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
}

.feature.feature-mcgc .box-layout4__text a:hover {
  text-decoration: none;
}

.feature.feature-mcgc .box-layout4__img {
  text-align: left;
  width: 40%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc .box-layout4 {
    display: block;
  }
  .feature.feature-mcgc .box-layout4__img {
    margin-bottom: 20px;
    width: 100%;
  }
  .feature.feature-mcgc .box-layout4__text {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
}

.feature.feature-mcgc2025 .content-area {
  background: url(../images/feature/mcgc2025/bg.png) #48bbed center top;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-mcgc2025 .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 4% 40px;
}

.feature.feature-mcgc2025 .feature-title img {
  height: auto;
  width: 100%;
}

.feature.feature-mcgc2025 .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 30px 30px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .content-box {
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-mcgc2025 .read {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 20px auto 40px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .read {
    margin: 20px auto 40px;
    text-align: left;
  }
}

.feature.feature-mcgc2025 .heading1 {
  margin: 0 0 20px 0;
  text-align: left;
}

.feature.feature-mcgc2025 .heading2 {
  margin: 0;
  text-align: left;
}

.feature.feature-mcgc2025 .heading2 img {
  margin: 0;
}

.feature.feature-mcgc2025 .text {
  margin-bottom: 40px;
}

.feature.feature-mcgc2025 .img {
  margin-bottom: 50px;
}

.feature.feature-mcgc2025 .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-mcgc2025 .box-layout1__img {
  display: block;
  height: auto;
  margin: 20px 0 20px 30px;
  width: 40%;
}

.feature.feature-mcgc2025 .box-layout1__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .box-layout1 {
    display: block;
  }
  .feature.feature-mcgc2025 .box-layout1__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-mcgc2025 .box-layout1__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-mcgc2025 .box-layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-mcgc2025 .box-layout2__img {
  display: block;
  height: auto;
  margin: 20px 30px 20px 0;
  width: 40%;
}

.feature.feature-mcgc2025 .box-layout2__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .box-layout2 {
    display: block;
  }
  .feature.feature-mcgc2025 .box-layout2__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-mcgc2025 .box-layout2__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-mcgc2025 .box-layout3 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 25px auto 0;
  padding: 0 30px 30px;
  width: 100%;
}

.feature.feature-mcgc2025 .box-layout3__text {
  width: 62%;
}

.feature.feature-mcgc2025 .box-layout3__img {
  text-align: center;
  width: 35%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .box-layout3 {
    display: block;
  }
  .feature.feature-mcgc2025 .box-layout3__img {
    width: 100%;
  }
  .feature.feature-mcgc2025 .box-layout3__text {
    margin-bottom: 30px;
    width: 100%;
  }
}

.feature.feature-mcgc2025 .box-layout4 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  border: 2px solid #000;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 25px auto 0;
  padding: 20px;
  width: 100%;
}

.feature.feature-mcgc2025 .box-layout4__text {
  letter-spacing: .04em;
  width: 55%;
}

.feature.feature-mcgc2025 .box-layout4__text a {
  color: #009b63;
  text-decoration: underline;
}

.feature.feature-mcgc2025 .box-layout4__text a[href^="tel:"] {
  border-bottom: none;
  color: inherit;
  pointer-events: none;
  text-decoration: none;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .box-layout4__text a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
}

.feature.feature-mcgc2025 .box-layout4__text a:hover {
  text-decoration: none;
}

.feature.feature-mcgc2025 .box-layout4__text .adddress {
  padding-left: 3.5em;
  text-indent: -3.5em;
}

.feature.feature-mcgc2025 .box-layout4__text .tel {
  padding-left: 3em;
  text-indent: -3em;
}

.feature.feature-mcgc2025 .box-layout4__text .web {
  padding-left: 3.2em;
  text-indent: -3.2em;
}

.feature.feature-mcgc2025 .box-layout4__img {
  text-align: left;
  width: 40%;
}

@media screen and (max-width: 849px) {
  .feature.feature-mcgc2025 .box-layout4 {
    display: block;
  }
  .feature.feature-mcgc2025 .box-layout4__img {
    margin-bottom: 20px;
    width: 100%;
  }
  .feature.feature-mcgc2025 .box-layout4__text {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
}

.feature-plastic .content-area {
  letter-spacing: .14em;
  line-height: 2.0;
  padding-top: 50px;
}

.feature-plastic .content-area--full {
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature-plastic .content-area {
    line-height: 1.8;
    padding: 15px 0;
  }
}

.feature-plastic .feature-title {
  -webkit-box-sizing: border-box;
  background-size: cover;
  border-radius: 20px 20px 0 0;
  box-sizing: border-box;
  display: block;
  overflow: hidden;
  padding: 50px;
}

@media screen and (max-width: 849px) {
  .feature-plastic .feature-title {
    display: block;
    margin-bottom: 40px;
    padding: 5px;
  }
}

.feature-plastic .style-text {
  margin-bottom: 1.5em;
}

.feature-plastic .style-text--indent {
  text-indent: 1em;
}

.feature-plastic .layout1-wrap, .feature-plastic .layout2-wrap {
  margin-bottom: 60px;
  position: relative;
}

.feature-plastic .layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  width: 90%;
}

.feature-plastic .layout1__item:nth-child(1) {
  width: 60%;
}

.feature-plastic .layout1__item:nth-child(2) {
  padding-top: 40px;
  width: 36%;
}

@media screen and (max-width: 849px) {
  .feature-plastic .layout1 {
    display: block;
    margin: 0 auto;
    width: 90%;
  }
  .feature-plastic .layout1__item:nth-child(1) {
    width: 100%;
  }
  .feature-plastic .layout1__item:nth-child(2) {
    padding-top: 0;
    width: 100%;
  }
}

.feature-plastic .layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  width: 90%;
}

.feature-plastic .layout2__item:nth-child(1) {
  width: 60%;
}

.feature-plastic .layout2__item:nth-child(2) {
  padding-top: 40px;
  width: 36%;
}

@media screen and (max-width: 849px) {
  .feature-plastic .layout2 {
    display: block;
  }
  .feature-plastic .layout2__item:nth-child(1) {
    width: 100%;
  }
  .feature-plastic .layout2__item:nth-child(2) {
    padding-top: 0;
    width: 100%;
  }
}

.feature-plastic .interview {
  padding-bottom: 90px;
}

.feature-plastic .interview__title {
  -webkit-box-sizing: border-box;
  border: 5px solid #4a4600;
  box-sizing: border-box;
  color: #4a4600;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 auto 60px;
  padding: 15px 20px;
  width: 90%;
}

.feature-plastic .interview .s1 {
  background: url(../images/feature/plastic/img3.jpg) no-repeat right top 100px;
  background-size: 520px 726px;
  margin-bottom: 100px;
}

.feature-plastic .interview .s1__heading {
  color: #aac114;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 40px;
}

.feature-plastic .interview .s1__text {
  -webkit-box-sizing: border-box;
  background: rgba(251, 248, 245, 0.8);
  box-sizing: border-box;
  padding: 40px 35px;
  width: 76%;
}

.feature-plastic .interview .s1 .inner {
  margin: 0 0 0 5%;
  width: 90%;
}

.feature-plastic .interview .s2 {
  background: url(../images/feature/plastic/img4.jpg) no-repeat left top 100px;
  background-size: 411px 646px;
  margin-bottom: 100px;
}

.feature-plastic .interview .s2__heading {
  color: #aac114;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 40px;
}

.feature-plastic .interview .s2__text {
  -webkit-box-sizing: border-box;
  background: rgba(251, 248, 245, 0.8);
  box-sizing: border-box;
  padding: 40px 35px;
  width: 100%;
}

.feature-plastic .interview .s2 .inner {
  margin: 0 0 0 26%;
  width: 69%;
}

.feature-plastic .interview .s3 {
  background: url(../images/feature/plastic/img5.jpg) no-repeat center bottom 0;
  background-size: contain;
  margin-bottom: 100px;
  padding-bottom: 50px;
}

.feature-plastic .interview .s3__heading {
  color: #aac114;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 auto;
  margin-bottom: 40px;
  width: 76%;
}

.feature-plastic .interview .s3__text {
  -webkit-box-sizing: border-box;
  background: rgba(251, 248, 245, 0.8);
  box-sizing: border-box;
  margin: 0 auto;
  padding: 40px 35px;
  width: 76%;
}

.feature-plastic .interview .s3 .inner {
  margin: 0 auto;
  width: 90%;
}

.feature-plastic .interview .s4 {
  margin-bottom: 100px;
}

.feature-plastic .interview .s4__heading {
  color: #aac114;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 auto;
  margin-bottom: 40px;
  width: 100%;
}

.feature-plastic .interview .s4__text {
  -webkit-box-sizing: border-box;
  background: rgba(251, 248, 245, 0.8);
  box-sizing: border-box;
  margin: 0 auto;
  padding: 40px 35px;
  width: 100%;
}

.feature-plastic .interview .s4 .inner {
  margin: 0 auto;
  width: 90%;
}

.feature-plastic .interview .s5 {
  background: url(../images/feature/plastic/img6.jpg) no-repeat right top 50px;
  background-size: 520px 726px;
  margin-bottom: 100px;
}

.feature-plastic .interview .s5__heading {
  color: #aac114;
  font-size: 42px;
  font-size: 2.625rem;
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 40px;
}

.feature-plastic .interview .s5__text {
  -webkit-box-sizing: border-box;
  background: rgba(251, 248, 245, 0.8);
  box-sizing: border-box;
  padding: 40px 35px;
  width: 76%;
}

.feature-plastic .interview .s5 .inner {
  margin: 0 0 0 5%;
  width: 90%;
}

.feature-plastic .interview .s6 {
  line-height: 2.4;
  margin: 0 auto;
  text-align: center;
  width: 90%;
}

@media screen and (max-width: 849px) {
  .feature-plastic .interview {
    padding-bottom: 50px;
  }
  .feature-plastic .interview .s1 {
    background: url(../images/feature/plastic/img3.jpg) no-repeat right top 100px;
    background-size: 70%;
    margin-bottom: 100px;
  }
  .feature-plastic .interview .s1__heading {
    font-size: 28px;
    font-size: 1.75rem;
  }
  .feature-plastic .interview .s1__text {
    padding: 20px 15px;
    width: 100%;
  }
  .feature-plastic .interview .s1 .inner {
    margin: 0 0 0 5%;
    width: 90%;
  }
  .feature-plastic .interview .s2 {
    background: url(../images/feature/plastic/img4.jpg) no-repeat left top 200px;
    background-size: 70%;
    margin-bottom: 100px;
  }
  .feature-plastic .interview .s2__heading {
    font-size: 28px;
    font-size: 1.75rem;
  }
  .feature-plastic .interview .s2__text {
    padding: 20px 15px;
    width: 100%;
  }
  .feature-plastic .interview .s2 .inner {
    margin: 0 0 0 5%;
    width: 90%;
  }
  .feature-plastic .interview .s3 {
    background: url(../images/feature/plastic/img5.jpg) no-repeat center bottom 0;
    background-size: 150%;
    margin-bottom: 100px;
    padding-bottom: 50px;
  }
  .feature-plastic .interview .s3__heading {
    font-size: 28px;
    font-size: 1.75rem;
    margin: 0 auto 40px;
    width: 100%;
  }
  .feature-plastic .interview .s3__text {
    margin: 0 auto;
    padding: 20px 15px;
    width: 100%;
  }
  .feature-plastic .interview .s3 .inner {
    margin: 0 auto;
    width: 90%;
  }
  .feature-plastic .interview .s4 {
    margin-bottom: 100px;
  }
  .feature-plastic .interview .s4__heading {
    font-size: 28px;
    font-size: 1.75rem;
    margin: 0 auto 40px;
    width: 100%;
  }
  .feature-plastic .interview .s4__text {
    margin: 0 auto;
    padding: 20px 15px;
    width: 100%;
  }
  .feature-plastic .interview .s4 .inner {
    margin: 0 auto;
    width: 90%;
  }
  .feature-plastic .interview .s5 {
    background: url(../images/feature/plastic/img6.jpg) no-repeat right top 50px;
    background-size: 70%;
    margin-bottom: 100px;
  }
  .feature-plastic .interview .s5__heading {
    font-size: 28px;
    font-size: 1.75rem;
  }
  .feature-plastic .interview .s5__text {
    padding: 20px 15px;
    width: 100%;
  }
  .feature-plastic .interview .s5 .inner {
    margin: 0 0 0 5%;
    width: 90%;
  }
  .feature-plastic .interview .s6 {
    line-height: 2.0;
    margin: 0 auto;
    text-align: center;
    width: 90%;
  }
}

.feature-plastic .profile {
  margin: 100px auto 0;
  position: relative;
  width: 90%;
}

.feature-plastic .profile__title {
  left: 30px;
  position: absolute;
  top: -30px;
  width: 175px;
}

@media screen and (max-width: 849px) {
  .feature-plastic .profile {
    margin-top: 90px;
  }
  .feature-plastic .profile__title {
    left: 10px;
    top: -30px;
    width: 175px;
  }
}

.feature-plastic .profile-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-box-sizing: border-box;
  align-items: flex-start;
  background: #eef2d6;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 60px 50px 50px 50px;
}

.feature-plastic .profile-layout__item:nth-child(1) {
  width: 17%;
}

.feature-plastic .profile-layout__item:nth-child(2) {
  width: 79%;
}

@media screen and (max-width: 849px) {
  .feature-plastic .profile-layout {
    display: block;
    padding: 60px 20px 20px 20px;
  }
  .feature-plastic .profile-layout__item:nth-child(1) {
    margin: 0 auto 20px;
    width: 70%;
  }
  .feature-plastic .profile-layout__item:nth-child(2) {
    width: 100%;
  }
}

.feature-plastic .profile-detail__name {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  margin-bottom: 15px;
}

.feature-plastic .profile-detail__text {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.8;
}

@media screen and (max-width: 849px) {
  .feature-plastic .profile-detail__name {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .feature-plastic .profile-detail__text {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.7;
  }
}

.feature-plastic .profile-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  box-sizing: border-box;
  margin-top: 40px;
  padding: 25px 30px;
}

.feature-plastic .profile-box__heading {
  color: #aac114;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.feature-plastic .profile-box__text {
  line-height: 1.8;
}

.feature-plastic .back-btn {
  margin: 60px 4% 0;
}

.feature.feature-pokemonchemicalschool a:hover {
  opacity: .7;
}

.feature.feature-pokemonchemicalschool .content-area {
  background: #f5ab15;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-pokemonchemicalschool .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-pokemonchemicalschool .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px 4% 30px;
}

@media screen and (max-width: 849px) {
  .feature.feature-pokemonchemicalschool .content-area-inner {
    padding: 20px 4% 30px;
  }
}

.feature.feature-pokemonchemicalschool .content-box {
  -webkit-box-sizing: border-box;
  background: #fde28a;
  border-radius: 20px;
  box-sizing: border-box;
  padding: 10px;
  position: relative;
  width: 100%;
}

.feature.feature-pokemonchemicalschool .tv-layout {
  -webkit-box-sizing: border-box;
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px;
}

.feature.feature-pokemonchemicalschool .tv-layout__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px;
  width: 48%;
}

@media screen and (max-width: 849px) {
  .feature.feature-pokemonchemicalschool .tv-layout {
    display: block;
    padding: 0;
  }
  .feature.feature-pokemonchemicalschool .tv-layout__item {
    display: block;
    margin-bottom: 5px;
    width: 100%;
  }
}

.feature.feature-pokemonchemicalschool .btn-pokemon-kids-tv {
  margin: 30px auto;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-pokemonchemicalschool .btn-pokemon-kids-tv {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 20px;
  }
}

.feature.feature-pokemonchemicalschool .modal-content {
  text-align: center;
}

.feature.feature-pokemonchemicalschool .modal-content__text {
  margin-bottom: 20px;
}

.feature.feature-pokemonchemicalschool .modal-content__pokemon-kids-tv {
  margin: 20px auto;
  text-align: center;
}

.feature.feature-pokemonchemicalschool .modal-content .youtube {
  background: url(../images/feature/pokemonchemicalschool/modal_tv_bg.png) no-repeat center;
  background-size: contain;
  padding: 30vw 0;
  position: relative;
}

.feature.feature-pokemonchemicalschool .modal-content .youtube .youtube-inner {
  aspect-ratio: 16 / 9;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 17vw;
  width: 58vw;
}

.feature.feature-pokemonchemicalschool .modal-content .youtube iframe {
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 1400px) and (max-width: 1599px) {
  .feature.feature-pokemonchemicalschool .modal-content .youtube {
    background: url(../images/feature/pokemonchemicalschool/modal_tv_bg.png) no-repeat center;
    background-size: contain;
    height: 620px;
    padding: 0 0;
    position: relative;
    width: 940px;
  }
  .feature.feature-pokemonchemicalschool .modal-content .youtube .youtube-inner {
    top: 160px;
    width: 660px;
  }
}

@media screen and (min-width: 1400px) {
  .feature.feature-pokemonchemicalschool .modal-content .youtube {
    background: url(../images/feature/pokemonchemicalschool/modal_tv_bg.png) no-repeat center;
    background-size: contain;
    height: 620px;
    padding: 0 0;
    position: relative;
    width: 940px;
  }
  .feature.feature-pokemonchemicalschool .modal-content .youtube .youtube-inner {
    top: 160px;
    width: 660px;
  }
}

.feature.feature-pokemonchemicalschool .modaal-close {
  border: 2px solid #000;
}

.feature.feature-pokemonchemicalschool .modaal-close:before,
.feature.feature-pokemonchemicalschool .modaal-close:after {
  background: #000;
}

.feature.feature-reagent .content-area {
  background: url(../images/feature/reagent/bg.png) no-repeat #f9f9e0 top center;
  background-size: contain;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-reagent .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 60px 4% 50px;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .content-area-inner {
    padding: 0 3% 50px;
  }
}

.feature.feature-reagent .content-wrap {
  -webkit-box-sizing: border-box;
  background: url(../images/feature/reagent/bg_pattern.png) repeat center top #fff;
  border: 8px solid #35a1ce;
  border-radius: 30px;
  box-sizing: border-box;
  padding: 50px;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .content-wrap {
    border: 4px solid #35a1ce;
    padding: 10px 15px;
  }
}

.feature.feature-reagent .feature-title__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 40px 0;
  width: 82%;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .feature-title {
    padding: 0;
  }
  .feature.feature-reagent .feature-title__item {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 40px 0;
    width: 92%;
  }
}

.feature.feature-reagent .read {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 2.2;
  margin: 20px 0 70px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .read {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6;
    margin: 20px 0 40px;
    text-align: left;
  }
}

.feature.feature-reagent .read-end {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 2.2;
  margin: 70px 0 50px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .read-end {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6;
    margin: 50px 0 40px;
    text-align: left;
  }
}

.feature.feature-reagent .chara-nav {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #35a1ce;
  border-radius: 50px;
  box-sizing: border-box;
  left: 0;
  margin: 0 auto;
  max-width: 600px;
  padding: 10px 50px;
  position: fixed;
  right: 0;
  top: 30px;
  z-index: 8000;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .chara-nav {
    opacity: 0;
  }
}

.feature.feature-reagent .chara-introduction {
  margin-bottom: 60px;
  text-align: center;
}

.feature.feature-reagent .talk {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0 auto 20px;
  width: 92%;
}

.feature.feature-reagent .talk__name {
  font-weight: 700;
  position: relative;
  width: auto;
}

.feature.feature-reagent .talk__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 10px;
  width: calc(100% - 6em);
}

.feature.feature-reagent .talk__text strong {
  color: #eb9f29;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
}

.feature.feature-reagent .talk--orange .talk__name {
  color: #f7a62a;
}

.feature.feature-reagent .talk--green .talk__name {
  color: #009b63;
}

.feature.feature-reagent .talk--pink .talk__name {
  color: #e992bd;
}

.feature.feature-reagent .talk--blue .talk__name {
  color: #2473b8;
}

.feature.feature-reagent .talk--purple .talk__name {
  color: #c483d4;
}

.feature.feature-reagent .talk--lightblue .talk__name {
  color: #8ae4e1;
}

.feature.feature-reagent .talk--black .talk__name {
  width: auto;
}

.feature.feature-reagent .talk--black .talk__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 10px;
  width: auto;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .talk {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 auto 20px;
    width: 100%;
  }
  .feature.feature-reagent .talk__name {
    width: 100%;
  }
  .feature.feature-reagent .talk__text {
    padding-left: 1em;
    width: auto;
  }
}

.feature.feature-reagent .talk-border {
  border-bottom: 3px dotted #000;
  margin-bottom: 50px;
  padding-bottom: 60px;
}

.feature.feature-reagent .movie {
  -webkit-box-sizing: border-box;
  background: #eb9f29;
  border-radius: 20px;
  box-sizing: border-box;
  margin: 60px 0 60px;
  padding: 40px;
}

.feature.feature-reagent .movie__title {
  -webkit-box-sizing: border-box;
  border-left: 4px solid #fff;
  box-sizing: border-box;
  color: #fff;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 10px auto 15px;
  padding-bottom: 2px;
  padding-left: 10px;
}

.feature.feature-reagent .movie video {
  margin-bottom: 20px;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .movie {
    border-radius: 10px;
    margin: 60px 0 30px;
    padding: 20px;
  }
}

.feature.feature-reagent .movie-chara {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.feature.feature-reagent .movie-chara__item {
  width: 48%;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .movie-chara {
    display: block;
  }
  .feature.feature-reagent .movie-chara__item {
    width: 100%;
  }
}

.feature.feature-reagent .chara-title {
  -webkit-box-sizing: border-box;
  background: #47b494;
  border-radius: 40px;
  box-sizing: border-box;
  color: #fff;
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: 700;
  margin: 30px 0 40px;
  padding: 5px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .chara-title {
    font-size: 18px;
    font-size: 1.125rem;
    letter-spacing: 0;
    line-height: 1.6;
    margin: 20px 0 25px;
    padding: 5px 5px 7px;
  }
}

.feature.feature-reagent .chara-detail {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
}

.feature.feature-reagent .chara-detail__img {
  width: 35%;
}

.feature.feature-reagent .chara-detail__text {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 15px;
  box-sizing: border-box;
  padding: 20px;
  position: relative;
  width: 60%;
}

.feature.feature-reagent .chara-detail__text:before {
  border: none;
  border-bottom: 15px solid transparent;
  border-right: 15px solid #fff;
  border-top: 15px solid transparent;
  content: '';
  height: 0;
  left: -15px;
  position: absolute;
  top: 50%;
  width: 0;
}

.feature.feature-reagent .chara-detail__text .text1 {
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: center;
}

.feature.feature-reagent .chara-detail__text .text2 {
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 5px;
  text-align: center;
}

.feature.feature-reagent .chara-detail__text .text3 {
  font-size: 16px;
  font-size: 1rem;
  letter-spacing: .04em;
  line-height: 1.6;
  text-align: left;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .chara-detail {
    display: block;
  }
  .feature.feature-reagent .chara-detail:last-child {
    margin-bottom: 0;
  }
  .feature.feature-reagent .chara-detail__img {
    margin: 0 auto 20px;
    width: 60%;
  }
  .feature.feature-reagent .chara-detail__text {
    border-radius: 10px;
    padding: 15px;
    position: relative;
    width: 100%;
  }
  .feature.feature-reagent .chara-detail__text:before {
    border: none;
    border-bottom: 10px solid #fff;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    content: '';
    height: 0;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: -10px;
    width: 0;
  }
  .feature.feature-reagent .chara-detail__text .text1 {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.5;
    margin-bottom: 8px;
    text-align: center;
  }
  .feature.feature-reagent .chara-detail__text .text2 {
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.6;
    margin-bottom: 10px;
    text-align: center;
  }
  .feature.feature-reagent .chara-detail__text .text3 {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.5;
    text-align: left;
  }
}

.feature.feature-reagent .company-profile {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #eb9f29;
  border-radius: 20px;
  box-sizing: border-box;
  margin-top: 70px;
  padding: 30px;
}

.feature.feature-reagent .company-profile__name {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 10px;
}

.feature.feature-reagent .company-profile__address {
  margin-bottom: 5px;
}

.feature.feature-reagent .company-profile__tel {
  margin-bottom: 5px;
}

.feature.feature-reagent .company-profile__web {
  margin-bottom: 5px;
}

.feature.feature-reagent .company-profile__web a {
  color: #eb9f29;
  text-decoration: underline;
}

.feature.feature-reagent .company-profile__web a:hover {
  text-decoration: none;
}

.feature.feature-reagent .company-profile__pr {
  -webkit-box-sizing: border-box;
  border-top: 1px dotted #ccc;
  box-sizing: border-box;
  margin-top: 20px;
  padding-top: 20px;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .company-profile {
    border-radius: 20px;
    margin-top: 60px;
    padding: 15px;
  }
  .feature.feature-reagent .company-profile__name {
    font-size: 19px;
    font-size: 1.1875rem;
    letter-spacing: 0;
    margin-bottom: 10px;
  }
  .feature.feature-reagent .company-profile__address {
    line-height: 1.6;
    margin-bottom: 10px;
  }
  .feature.feature-reagent .company-profile__tel {
    margin-bottom: 10px;
  }
  .feature.feature-reagent .company-profile__tel a {
    color: #eb9f29;
    text-decoration: underline;
  }
  .feature.feature-reagent .company-profile__tel a:hover {
    text-decoration: none;
  }
  .feature.feature-reagent .company-profile__web {
    margin-bottom: 10px;
  }
  .feature.feature-reagent .company-profile__web a {
    color: #eb9f29;
    text-decoration: underline;
    word-break: break-all;
  }
  .feature.feature-reagent .company-profile__web a:hover {
    text-decoration: none;
  }
  .feature.feature-reagent .company-profile__pr {
    line-height: 1.6;
  }
}

.feature.feature-reagent .company-layout {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.feature.feature-reagent .company-layout__item:nth-child(1) {
  margin-bottom: 10px;
  width: 35%;
}

.feature.feature-reagent .company-layout__item:nth-child(2) {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 50px;
  width: 65%;
}

@media screen and (max-width: 849px) {
  .feature.feature-reagent .company-layout {
    display: block;
    letter-spacing: .08em;
  }
  .feature.feature-reagent .company-layout__item:nth-child(1) {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px;
    width: 100%;
  }
  .feature.feature-reagent .company-layout__item:nth-child(2) {
    padding-left: 0;
    width: 100%;
  }
}

.feature.feature-taiyohd .content-area {
  background: url(../images/feature/taiyohd/bg.png) #48bbed center top;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-taiyohd .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 4% 40px;
}

.feature.feature-taiyohd .feature-title img {
  height: auto;
  width: 100%;
}

.feature.feature-taiyohd .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 30px 30px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .content-box {
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-taiyohd .read {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 20px auto 40px;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .read {
    margin: 20px auto 40px;
    text-align: left;
  }
}

.feature.feature-taiyohd .heading1 {
  margin: 0 0 20px 0;
  text-align: left;
}

.feature.feature-taiyohd .heading2 {
  margin: 0;
  text-align: left;
}

.feature.feature-taiyohd .heading2 img {
  margin: 0;
}

.feature.feature-taiyohd .text {
  margin-bottom: 40px;
}

.feature.feature-taiyohd .img {
  margin-bottom: 50px;
}

.feature.feature-taiyohd .source {
  font-size: 12px;
  font-size: 0.75rem;
  letter-spacing: 0;
  margin-top: 2em;
  padding-left: 1em;
  text-indent: -1em;
}

.feature.feature-taiyohd .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-taiyohd .box-layout1__img {
  display: block;
  height: auto;
  margin: 20px 0 20px 30px;
  width: 40%;
}

.feature.feature-taiyohd .box-layout1__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .box-layout1 {
    display: block;
  }
  .feature.feature-taiyohd .box-layout1__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-taiyohd .box-layout1__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-taiyohd .box-layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  margin-bottom: 40px;
  padding: 0 10px;
}

.feature.feature-taiyohd .box-layout2__img {
  display: block;
  height: auto;
  margin: 20px 30px 20px 0;
  width: 40%;
}

.feature.feature-taiyohd .box-layout2__text {
  width: 57%;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .box-layout2 {
    display: block;
  }
  .feature.feature-taiyohd .box-layout2__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-taiyohd .box-layout2__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-taiyohd .box-layout3 {
  margin: 25px auto 50px;
  width: 100%;
}

.feature.feature-taiyohd .box-layout3 a:hover {
  -webkit-transition: all .3s;
  opacity: .7;
  transition: all .3s;
}

.feature.feature-taiyohd .box-layout4 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  border: 2px solid #000;
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 25px auto 0;
  padding: 20px;
  width: 100%;
}

.feature.feature-taiyohd .box-layout4__text {
  letter-spacing: .04em;
  width: 55%;
}

.feature.feature-taiyohd .box-layout4__text a {
  color: #009b63;
  text-decoration: underline;
}

.feature.feature-taiyohd .box-layout4__text a[href^="tel:"] {
  border-bottom: none;
  color: inherit;
  pointer-events: none;
  text-decoration: none;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .box-layout4__text a[href^="tel:"] {
    pointer-events: auto;
    text-decoration: underline;
  }
}

.feature.feature-taiyohd .box-layout4__text a:hover {
  text-decoration: none;
}

.feature.feature-taiyohd .box-layout4__text .adddress {
  padding-left: 3.5em;
  text-indent: -3.5em;
}

.feature.feature-taiyohd .box-layout4__text .tel {
  padding-left: 3em;
  text-indent: -3em;
}

.feature.feature-taiyohd .box-layout4__text .web {
  padding-left: 3.2em;
  text-indent: -3.2em;
}

.feature.feature-taiyohd .box-layout4__img {
  text-align: left;
  width: 40%;
}

@media screen and (max-width: 849px) {
  .feature.feature-taiyohd .box-layout4 {
    display: block;
  }
  .feature.feature-taiyohd .box-layout4__img {
    margin-bottom: 20px;
    width: 100%;
  }
  .feature.feature-taiyohd .box-layout4__text {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
}

.feature.feature-ut-cast .content-area {
  background: #92eef1;
  letter-spacing: .14em;
  line-height: 1.8;
  padding: 0;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .content-area {
    font-size: 17px;
    font-size: 1.0625rem;
  }
}

.feature.feature-ut-cast .content-area-inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 4% 40px;
}

.feature.feature-ut-cast .content-box {
  -webkit-box-sizing: border-box;
  background: #fff;
  border-radius: 16px;
  box-sizing: border-box;
  margin-bottom: 60px;
  padding: 30px 30px;
  position: relative;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .content-box {
    border: 5px solid #000;
    margin-bottom: 60px;
    padding: 30px 5% 45px;
    position: relative;
  }
}

.feature.feature-ut-cast .member {
  margin: 0 auto;
  padding: 50px 0 0;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .member {
    padding: 20px 0 0;
  }
}

.feature.feature-ut-cast .message {
  margin: 0 auto;
  padding: 0 30px 0;
  text-align: center;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .message {
    margin-bottom: 40px;
    padding: 20px 0 0;
  }
}

.feature.feature-ut-cast .faq {
  margin-bottom: 50px;
}

.feature.feature-ut-cast .faq__q {
  margin-bottom: 20px;
  text-align: left;
}

.feature.feature-ut-cast .faq__q img {
  margin: 0;
}

.feature.feature-ut-cast .faq .a {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-bottom: 35px;
}

.feature.feature-ut-cast .faq .a__img {
  width: 160px;
}

.feature.feature-ut-cast .faq .a__text {
  -webkit-box-sizing: border-box;
  border-left: 3px solid #03ab13;
  box-sizing: border-box;
  padding-left: 30px;
  width: calc(100% - 163px);
}

.feature.feature-ut-cast .faq .a--green strong {
  color: #03ab13;
  display: inline;
  font-weight: 700;
}

.feature.feature-ut-cast .faq .a--green .a__text {
  border-left: 3px solid #03ab13;
}

.feature.feature-ut-cast .faq .a--pink strong {
  color: #db469d;
  display: inline;
  font-weight: 700;
}

.feature.feature-ut-cast .faq .a--pink .a__text {
  border-left: 3px solid #db469d;
}

.feature.feature-ut-cast .faq .a--orange strong {
  color: #ef9d00;
  display: inline;
  font-weight: 700;
}

.feature.feature-ut-cast .faq .a--orange .a__text {
  border-left: 3px solid #ef9d00;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .faq {
    margin-bottom: 50px;
  }
  .feature.feature-ut-cast .faq__q {
    margin-bottom: 20px;
  }
  .feature.feature-ut-cast .faq .a {
    display: block;
    margin-bottom: 35px;
  }
  .feature.feature-ut-cast .faq .a__img {
    margin-bottom: 8px;
    text-align: center;
    width: 100%;
  }
  .feature.feature-ut-cast .faq .a__img img {
    height: auto;
    width: 110px;
  }
  .feature.feature-ut-cast .faq .a__text {
    border-left: none;
    border-top: 3px solid #03ab13;
    padding-left: 0;
    padding-top: 10px;
    width: 100%;
  }
  .feature.feature-ut-cast .faq .a--green strong {
    color: #03ab13;
    font-weight: 700;
  }
  .feature.feature-ut-cast .faq .a--green .a__text {
    border-left: none;
    border-top: 3px solid #03ab13;
  }
  .feature.feature-ut-cast .faq .a--pink strong {
    color: #db469d;
    font-weight: 700;
  }
  .feature.feature-ut-cast .faq .a--pink .a__text {
    border-left: none;
    border-top: 3px solid #db469d;
  }
  .feature.feature-ut-cast .faq .a--orange strong {
    color: #ef9d00;
    font-weight: 700;
  }
  .feature.feature-ut-cast .faq .a--orange .a__text {
    border-left: none;
    border-top: 3px solid #ef9d00;
  }
}

.feature.feature-ut-cast .faq-caution {
  font-size: .8em;
  letter-spacing: 0;
}

.feature.feature-ut-cast .faq-caution__item {
  padding-left: 2em;
  text-indent: -2em;
}

.feature.feature-ut-cast .font-small {
  font-size: .8em;
}

.feature.feature-ut-cast .color-red {
  color: #d80808;
  font-weight: 700;
}

.feature.feature-ut-cast .color-green {
  color: #03ab13;
  font-weight: 700;
}

.feature.feature-ut-cast .color-pink {
  color: #db469d;
  font-weight: 700;
}

.feature.feature-ut-cast .color-orange {
  color: #ef9d00;
  font-weight: 700;
}

.feature.feature-ut-cast .box-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.feature.feature-ut-cast .box-layout1__img {
  display: block;
  height: auto;
  margin: 20px 0 20px 30px;
  width: 35%;
}

.feature.feature-ut-cast .box-layout1__text {
  width: 62%;
}

@media screen and (max-width: 849px) {
  .feature.feature-ut-cast .box-layout1 {
    display: block;
  }
  .feature.feature-ut-cast .box-layout1__img {
    display: block;
    height: auto;
    margin: 0 auto;
    text-align: center;
    width: 100%;
  }
  .feature.feature-ut-cast .box-layout1__text {
    margin-bottom: 1.5em;
    width: 100%;
  }
}

.feature.feature-ut-cast .box-layout1 .img-center {
  text-align: center;
}

.feature.feature-ut-cast .box-layout1 .img-center img {
  float: none;
  max-width: 100%;
  width: auto;
}

.feature.feature-ut-cast .box-layout1 .caption {
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
}

.feature-world .content-area {
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 50px;
}

@media screen and (max-width: 849px) {
  .feature-world .content-area {
    padding: 15px 4%;
  }
}

.feature-world .feature-title {
  -webkit-box-sizing: border-box;
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: url(../images/feature/world/bg.png) no-repeat center top;
  background-size: cover;
  border-bottom: 2px dotted #4a4600;
  border-radius: 20px 20px 0 0;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  overflow: hidden;
  padding: 50px;
}

.feature-world .feature-title__item:nth-child(1) {
  width: 46%;
}

.feature-world .feature-title__item:nth-child(2) {
  width: 46%;
}

@media screen and (max-width: 849px) {
  .feature-world .feature-title {
    display: block;
    padding: 20px;
  }
  .feature-world .feature-title__item:nth-child(1) {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 40px;
    padding: 10px;
    width: 100%;
  }
  .feature-world .feature-title__item:nth-child(2) {
    width: 100%;
  }
}

.feature-world .feature-title-text {
  -webkit-box-sizing: border-box;
  background: #f0cb00;
  border-radius: 10px;
  box-sizing: border-box;
  color: #4a4600;
  line-height: 2.0;
  padding: 20px 30px;
}

@media screen and (max-width: 849px) {
  .feature-world .feature-title-text {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 2.0;
    line-height: 1.6;
    padding: 10px 15px;
  }
}

.feature-world .interview {
  -webkit-box-sizing: border-box;
  background: #fbf8f5;
  border-radius: 0 0 20px 20px;
  box-sizing: border-box;
  line-height: 1.8;
  padding: 60px 4% 50px;
}

.feature-world .interview .style-q {
  color: #a39a00;
  font-weight: 700;
  margin-bottom: 1.6em;
}

.feature-world .interview .style-a {
  margin-bottom: 3em;
}

.feature-world .interview .caution {
  display: block;
  font-size: 13px;
  font-size: 0.8125rem;
  letter-spacing: 0;
  line-height: 1.6;
  margin-top: 10px;
  text-align: right;
}

.feature-world .interview .layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 70px;
}

.feature-world .interview .layout1__item:nth-child(1) {
  width: 62%;
}

.feature-world .interview .layout1__item:nth-child(2) {
  padding-top: 20px;
  width: 34%;
}

.feature-world .interview .layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 70px;
}

.feature-world .interview .layout2__item:nth-child(1) {
  width: 62%;
}

.feature-world .interview .layout2__item:nth-child(2) {
  padding-top: 20px;
  width: 34%;
}

.feature-world .interview .layout3 {
  margin-bottom: 70px;
}

@media screen and (max-width: 849px) {
  .feature-world .interview {
    line-height: 1.8;
    padding: 40px 5% 40px;
  }
  .feature-world .interview .caution {
    font-size: 13px;
    font-size: 0.8125rem;
    line-height: 1.6;
    text-align: left;
  }
  .feature-world .interview .layout1 {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 50px;
  }
  .feature-world .interview .layout1__item:nth-child(1) {
    width: 100%;
  }
  .feature-world .interview .layout1__item:nth-child(2) {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 20px;
    width: 100%;
  }
  .feature-world .interview .layout2 {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 50px;
  }
  .feature-world .interview .layout2__item:nth-child(1) {
    width: 100%;
  }
  .feature-world .interview .layout2__item:nth-child(2) {
    padding-top: 20px;
    width: 100%;
  }
  .feature-world .interview .layout3 {
    margin-bottom: 50px;
  }
}

.feature-world .profile {
  margin-top: 100px;
  position: relative;
}

.feature-world .profile__title {
  left: 30px;
  position: absolute;
  top: -30px;
  width: 175px;
}

@media screen and (max-width: 849px) {
  .feature-world .profile {
    margin-top: 90px;
  }
  .feature-world .profile__title {
    left: 10px;
    top: -30px;
    width: 175px;
  }
}

.feature-world .profile-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-box-sizing: border-box;
  align-items: flex-start;
  background: #5e5c32;
  border-radius: 10px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 60px 30px 30px 30px;
}

.feature-world .profile-layout__item:nth-child(1) {
  width: 22%;
}

.feature-world .profile-layout__item:nth-child(2) {
  color: #fff;
  width: 74%;
}

@media screen and (max-width: 849px) {
  .feature-world .profile-layout {
    display: block;
    padding: 60px 20px 20px 20px;
  }
  .feature-world .profile-layout__item:nth-child(1) {
    margin: 0 auto 20px;
    width: 70%;
  }
  .feature-world .profile-layout__item:nth-child(2) {
    width: 100%;
  }
}

.feature-world .profile-detail__name {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  margin-bottom: 15px;
}

.feature-world .profile-detail__text {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.8;
}

@media screen and (max-width: 849px) {
  .feature-world .profile-detail__name {
    font-size: 20px;
    font-size: 1.25rem;
  }
  .feature-world .profile-detail__text {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.7;
  }
}

.feature .content-area {
  letter-spacing: .14em;
  line-height: 2.0;
  padding-top: 50px;
}

@media screen and (max-width: 849px) {
  .feature .content-area {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.8;
    padding: 30px 4%;
  }
}

.feature .content-title {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto 80px;
  padding: 0 4%;
  width: 639px;
}

@media screen and (max-width: 849px) {
  .feature .content-title {
    margin-bottom: 40px;
    padding: 0 4%;
    width: 80%;
  }
}

.feature .article-list {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.feature .article-list__item {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #009b63;
  border-radius: 20px;
  box-sizing: border-box;
  display: block;
  margin-bottom: 40px;
  padding: 10px;
  position: relative;
  width: 30%;
}

.feature .article-list__item:not(:nth-child(3n)) {
  margin-right: 5%;
}

.feature .article-list__item:hover {
  background: #74d6b3;
}

@media screen and (max-width: 849px) {
  .feature .article-list {
    display: block;
  }
  .feature .article-list__item {
    margin: 0 auto 20px;
    width: 90%;
  }
  .feature .article-list__item:not(:nth-child(3n)) {
    margin-right: auto;
  }
}

.feature .list-detail__img {
  border-radius: 12px;
  overflow: hidden;
}

.feature .list-detail__img img {
  height: auto;
  width: 100%;
}

.feature .list-detail__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: .1em;
  line-height: 1.6;
  margin: 15px 0 5px;
  padding-left: 40px;
  position: relative;
}

.feature .list-detail__text:before {
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat center;
  background-size: contain;
  content: "";
  height: 7px;
  left: 10px;
  position: absolute;
  top: 11px;
  width: 20px;
}

.feature .icon-new {
  background: #e3643b;
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.6;
  padding: 2px 12px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: -10px;
}

.feature .icon-backnumber {
  background: #666;
  border-radius: 6px;
  color: #fff;
  display: inline-block;
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.6;
  padding: 2px 12px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: -10px;
}

.howto .content-area {
  background: url(../images/common/page_bg2.png) repeat-y #fff top 20px center;
  background-size: 120%;
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 80px;
}

@media screen and (max-width: 849px) {
  .howto .content-area {
    padding-top: 40px;
  }
}

.howto .content-title {
  margin: 0 auto 50px;
  width: 639px;
}

@media screen and (max-width: 849px) {
  .howto .content-title {
    width: 100%;
  }
}

.howto .read {
  font-size: 18px;
  font-size: 1.125rem;
  margin-bottom: 100px;
  text-align: center;
}

.howto .step {
  -webkit-box-sizing: border-box;
  border: 6px solid #cbcbcb;
  border-radius: 40px;
  box-sizing: border-box;
  margin-bottom: 80px;
  padding: 20px 25px;
  position: relative;
  position: relative;
  width: 800px;
}

.howto .step__number {
  left: -40px;
  position: absolute;
  top: -40px;
  width: 103px;
}

.howto .step__title {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #009b63;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.8;
  margin-bottom: 10px;
  padding-left: 50px;
}

.howto .step__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 2.0;
  padding: 0 70px 0 50px;
}

.howto .step__illust {
  bottom: -30px;
  position: absolute;
  right: -30px;
  width: 95px;
}

.howto .step--1 {
  left: 80px;
}

.howto .step--1 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--1 .step__title {
  color: #009b63;
}

.howto .step--1 .step__illust {
  bottom: -30px;
  right: -40px;
  width: 95px;
}

.howto .step--2 {
  left: 180px;
}

.howto .step--2 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--2 .step__title {
  color: #f5ad3a;
}

.howto .step--2 .step__illust {
  bottom: -30px;
  right: -80px;
  width: 139px;
}

.howto .step--3 {
  left: 140px;
}

.howto .step--3 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--3 .step__title {
  color: #2473b8;
}

.howto .step--3 .step__illust {
  bottom: -30px;
  right: -50px;
  width: 97px;
}

.howto .step--4 {
  left: 100px;
}

.howto .step--4 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--4 .step__title {
  color: #a6639c;
}

.howto .step--4 .step__illust {
  bottom: -30px;
  right: -70px;
  width: 116px;
}

.howto .step--5 {
  left: 220px;
}

.howto .step--5 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--5 .step__title {
  color: #be6506;
}

.howto .step--5 .step__illust {
  bottom: -30px;
  right: -60px;
  width: 112px;
}

.howto .step--6 {
  left: 160px;
  margin-bottom: 120px;
}

.howto .step--6 .step__number {
  left: -40px;
  top: -40px;
  width: 103px;
}

.howto .step--6 .step__title {
  color: #e57d96;
}

.howto .step--6 .step__text {
  padding: 0 0 0 50px;
}

.howto .step--6 .step__text .img-number {
  display: inline-block;
  margin-right: 5px;
  position: relative;
  top: -5px;
  width: 24px;
}

.howto .step--6 .step__illust {
  bottom: auto;
  right: 20px;
  top: 20px;
  width: 105px;
}

@media screen and (max-width: 849px) {
  .howto .step {
    -webkit-box-sizing: border-box;
    border: 4px solid #cbcbcb;
    border-radius: 30px;
    box-sizing: border-box;
    margin-bottom: 80px;
    padding: 20px 25px;
    position: relative;
    position: relative;
    width: 100%;
  }
  .howto .step__number {
    left: -20px;
    position: absolute;
    top: -50px;
    width: 70px;
  }
  .howto .step__title {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 10px;
    padding-left: 0;
  }
  .howto .step__text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.8;
    padding: 0 0 0 0;
  }
  .howto .step__illust {
    bottom: -30px;
    max-width: 80px;
    position: absolute;
    right: -30px;
    width: 95px;
  }
  .howto .step--1 {
    left: 0;
  }
  .howto .step--1 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--1 .step__title {
    color: #009b63;
  }
  .howto .step--1 .step__illust {
    bottom: -30px;
    right: -40px;
    width: 25%;
  }
  .howto .step--2 {
    left: 0;
  }
  .howto .step--2 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--2 .step__title {
    color: #f5ad3a;
  }
  .howto .step--2 .step__illust {
    bottom: -30px;
    right: -40px;
    width: 30%;
  }
  .howto .step--3 {
    left: 0;
  }
  .howto .step--3 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--3 .step__title {
    color: #2473b8;
  }
  .howto .step--3 .step__illust {
    bottom: -30px;
    right: -40px;
    width: 25%;
  }
  .howto .step--4 {
    left: 0;
  }
  .howto .step--4 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--4 .step__title {
    color: #a6639c;
  }
  .howto .step--4 .step__illust {
    bottom: -30px;
    right: -35px;
    width: 26%;
  }
  .howto .step--5 {
    left: 0;
  }
  .howto .step--5 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--5 .step__title {
    color: #be6506;
  }
  .howto .step--5 .step__illust {
    bottom: -30px;
    right: -40px;
    width: 25%;
  }
  .howto .step--6 {
    left: 0;
    margin-bottom: 60px;
  }
  .howto .step--6 .step__number {
    left: -40px;
    top: -40px;
    width: 70px;
  }
  .howto .step--6 .step__title {
    color: #e57d96;
  }
  .howto .step--6 .step__text {
    padding: 0;
  }
  .howto .step--6 .step__text .img-number {
    display: inline-block;
    margin-right: 5px;
    position: relative;
    top: -5px;
    width: 24px;
  }
  .howto .step--6 .step__illust {
    bottom: auto;
    right: 20px;
    top: 15px;
    width: 22%;
  }
}

.howto .rp__title {
  margin: 0 auto 40px;
  width: 462px;
}

.howto .rp .inner {
  -webkit-box-sizing: border-box;
  background: #125e48;
  border: 12px solid #9c5f00;
  box-sizing: border-box;
  padding: 80px 6.5% 0;
}

@media screen and (max-width: 849px) {
  .howto .rp__title {
    margin: 0 auto 20px;
    width: 100%;
  }
  .howto .rp .inner {
    -webkit-box-sizing: border-box;
    background: #125e48;
    border: 8px solid #9c5f00;
    box-sizing: border-box;
    padding: 50px 4% 0;
  }
}

.howto .rp-wrap {
  margin-bottom: 60px;
}

@media screen and (max-width: 849px) {
  .howto .rp-wrap {
    margin-bottom: 30px;
  }
}

.howto .rp-content {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.8;
}

.howto .rp-content__title {
  margin: 0 auto 40px;
  width: 786px;
}

.howto .rp-content__title2 {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 30px;
  padding: 5px;
  text-align: center;
}

.howto .rp-content__title3 {
  border-bottom: 2px dotted #fff;
  color: #fff;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  margin: 30px 0 20px;
  padding-bottom: 4px;
}

.howto .rp-content .style-text1 {
  color: #fff;
  line-height: 2.0;
  margin-bottom: 40px;
}

@media screen and (max-width: 849px) {
  .howto .rp-content__title {
    margin: 0 auto 30px;
    width: 100%;
  }
  .howto .rp-content__title2 {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6;
    margin-bottom: 20px;
  }
  .howto .rp-content__title3 {
    font-size: 18px;
    font-size: 1.125rem;
    margin: 20px 0 15px;
  }
  .howto .rp-content .style-text1 {
    line-height: 1.8;
    margin-bottom: 30px;
  }
}

.howto .rp-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 15px;
}

.howto .rp-layout1__item:nth-child(1) {
  -webkit-box-sizing: border-box;
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 8px;
  box-sizing: border-box;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-weight: 700;
  justify-content: center;
  margin-right: 6%;
  padding: 3px;
  position: relative;
  text-align: center;
  width: 40%;
}

.howto .rp-layout1__item:nth-child(1):after {
  content: "→";
  position: absolute;
  right: -2.5em;
  top: 0;
  width: auto;
}

.howto .rp-layout1__item:nth-child(2) {
  color: #fff;
  width: 54%;
}

@media screen and (max-width: 849px) {
  .howto .rp-layout1 {
    display: block;
    margin-bottom: 15px;
  }
  .howto .rp-layout1__item:nth-child(1) {
    margin-bottom: 2em;
    margin-right: 0;
    padding: 3px;
    width: 100%;
  }
  .howto .rp-layout1__item:nth-child(1):after {
    bottom: -2em;
    content: "↓";
    left: 0;
    position: absolute;
    right: 0;
    top: auto;
    width: auto;
  }
  .howto .rp-layout1__item:nth-child(2) {
    text-align: center;
    width: 100%;
  }
}

.howto .list-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.howto .list-layout__item {
  color: #fff;
  width: 48%;
}

.howto .list-layout .list__item {
  margin-bottom: 8px;
}

@media screen and (max-width: 849px) {
  .howto .list-layout {
    display: block;
  }
  .howto .list-layout__item {
    width: 100%;
  }
  .howto .list-layout .list__item {
    margin-bottom: 4px;
    padding-left: 1em;
    text-indent: -1em;
  }
}

.howto .rp-layout2 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.howto .rp-layout2__item:nth-child(1) {
  line-height: 2.2;
  width: 68%;
}

.howto .rp-layout2__item:nth-child(1) span {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding-left: 1.2em;
}

.howto .rp-layout2__item:nth-child(2) {
  padding-top: 20px;
  text-align: center;
  width: 32%;
}

.howto .rp-layout2__item:nth-child(2) img {
  width: 241px;
}

@media screen and (max-width: 849px) {
  .howto .rp-layout2 {
    display: block;
  }
  .howto .rp-layout2__item:nth-child(1) {
    line-height: 1.8;
    padding-left: 1em;
    text-indent: -1em;
    width: 100%;
  }
  .howto .rp-layout2__item:nth-child(1) span {
    padding-left: 0;
  }
  .howto .rp-layout2__item:nth-child(2) {
    padding-top: 30px;
    width: 100%;
  }
  .howto .rp-layout2__item:nth-child(2) img {
    width: 100%;
  }
}

.parents .content-area {
  background: url(../images/parents/bg.png) repeat-y #fff top 20px center;
  letter-spacing: .14em;
  line-height: 2.4;
  padding-top: 80px;
  text-align: center;
}

.parents .s1 {
  margin-bottom: 76px;
}

.parents .s2 {
  margin-bottom: 76px;
}

.parents .s2 img {
  width: 25%;
}

.parents .s3 {
  margin-bottom: 76px;
}

.parents .s4 {
  margin-bottom: 76px;
}

.parents .s4 img {
  width: 25.6%;
}

.parents .s5 {
  margin-bottom: 76px;
}

.parents .s6 {
  margin-bottom: 76px;
}

.parents .s6 .marker {
  display: block;
  margin-bottom: 15px;
}

.parents .s6 .marker > .inner {
  border-bottom: 5px solid #ffed64;
  display: inline;
  padding-bottom: 5px;
}

.parents .s7 {
  margin-bottom: 56px;
}

.parents .s7 img {
  width: 70%;
}

.parents .s8 {
  margin-bottom: 1em;
}

.parents .s9 {
  margin-bottom: 1em;
}

.parents .s10 {
  margin-bottom: 56px;
}

.parents .s11 img {
  width: 70%;
}

@media screen and (max-width: 849px) {
  .parents .content-area {
    background: url(../images/parents/bg_sp.png) repeat-y #fff top 20px center;
    background-size: contain;
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: .12em;
    line-height: 2.0;
    padding-top: 30px;
    text-align: left;
  }
  .parents .s1 {
    margin-bottom: 46px;
  }
  .parents .s2 {
    margin-bottom: 46px;
    text-align: center;
  }
  .parents .s2 img {
    width: 80%;
  }
  .parents .s3 {
    margin-bottom: 46px;
  }
  .parents .s4 {
    margin-bottom: 46px;
    text-align: center;
  }
  .parents .s4 img {
    width: 80%;
  }
  .parents .s5 {
    margin-bottom: 46px;
  }
  .parents .s6 {
    margin-bottom: 46px;
    text-align: left;
  }
  .parents .s6 .marker {
    display: block;
    margin-bottom: 20px;
  }
  .parents .s6 .marker > .inner {
    border-bottom: 5px solid #ffed64;
    display: inline;
    line-height: 2.4;
    padding-bottom: 3px;
  }
  .parents .s7 {
    margin-bottom: 36px;
    text-align: center;
  }
  .parents .s7 img {
    width: 100%;
  }
  .parents .s8 {
    margin-bottom: 1em;
  }
  .parents .s9 {
    margin-bottom: 1em;
  }
  .parents .s10 {
    margin-bottom: 56px;
  }
  .parents .s11 {
    text-align: center;
  }
  .parents .s11 img {
    width: 100%;
  }
}

.sitemap .content-area {
  letter-spacing: .14em;
  line-height: 1.8;
  padding-top: 50px;
  text-align: left;
}

@media screen and (max-width: 849px) {
  .sitemap .content-area {
    padding: 40px 4% 25px;
    text-align: left;
  }
}

.sitemap .content-title {
  margin: 0 auto 70px;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .sitemap .content-title {
    margin: 0 auto 40px;
    width: 100%;
  }
}

.sitemap .list-link a {
  color: #009b63;
  display: inline-block;
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  padding-left: 1.5em;
  position: relative;
  text-decoration: underline;
}

.sitemap .list-link a:hover {
  text-decoration: none;
}

.sitemap .list-link a:before {
  background: url(../images/common/icon_arrow_right_black.svg) no-repeat center;
  background-size: contain;
  content: "";
  height: 7px;
  left: 0;
  position: absolute;
  top: 14px;
  width: 20px;
}

.sitemap .list-link > li {
  margin-bottom: 30px;
}

.sitemap .list-link > li > ul {
  margin: 10px 0 20px;
}

.sitemap .list-link > li > ul li {
  margin-bottom: 10px;
}

.sitemap .list-link > li > ul li a {
  color: #000;
  font-weight: 500;
  margin-left: 1.5em;
  padding-left: 1.5em;
}

.sitemap .layout1 {
  border-bottom: 2px dotted #ddd;
  margin-bottom: 30px;
  padding-bottom: 10px;
}

.sitemap .layout2 {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.sitemap .layout2__item {
  width: 46%;
}

@media screen and (max-width: 849px) {
  .sitemap .layout2 {
    display: block;
  }
  .sitemap .layout2__item {
    width: 100%;
  }
}

.sponsor .content-area {
  letter-spacing: .14em;
  line-height: 1.8;
  padding-top: 70px;
  text-align: left;
}

@media screen and (max-width: 849px) {
  .sponsor .content-area {
    padding: 40px 4% 25px;
    text-align: left;
  }
}

.sponsor .content-title {
  margin: 0 auto 70px;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .sponsor .content-title {
    margin: 0 auto 40px;
    width: 100%;
  }
}

.sponsor .read {
  text-align: center;
}

.sponsor .read .read-color-green {
  color: #009b63;
}

.sponsor .read__small {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  margin-top: 30px;
}

.sponsor .read--pre {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 2.2;
  margin-bottom: 120px;
}

.sponsor .about-icon-wrap {
  -webkit-box-sizing: border-box;
  background: #f2efe6;
  box-sizing: border-box;
  margin: 50px 0 50px;
  padding: 30px;
}

.sponsor .about-icon {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
}

.sponsor .about-icon__item:nth-child(1) {
  margin-right: 3%;
}

.sponsor .about-icon__item:nth-child(1) .balloon {
  -webkit-box-sizing: border-box;
  background: #009b63;
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  padding: 10px 25px;
  position: relative;
  text-align: center;
  width: 34%;
}

.sponsor .about-icon__item:nth-child(1) .balloon:before {
  border: 7px solid transparent;
  border-left: 8px solid #009b63;
  content: "";
  left: 100%;
  margin-top: -7px;
  position: absolute;
  top: 50%;
}

.sponsor .about-icon__item:nth-child(2) {
  font-size: 16px;
  font-size: 1rem;
  margin-right: 3%;
}

.sponsor .about-icon__item:nth-child(2) .icon {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 2px solid #000;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block;
  height: 40px;
  margin-right: 5px;
  padding-top: 5px;
  text-align: center;
  width: 40px;
}

.sponsor .about-icon__item:nth-child(2) .icon img {
  height: auto;
  width: 65%;
}

.sponsor .about-icon__item:nth-child(3) {
  font-size: 16px;
  font-size: 1rem;
}

.sponsor .about-icon__item:nth-child(3) .icon {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 2px solid #000;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block;
  height: 40px;
  margin-right: 5px;
  padding-top: 5px;
  text-align: center;
  width: 40px;
}

.sponsor .about-icon__item:nth-child(3) .icon img {
  height: auto;
  width: 46%;
}

@media screen and (max-width: 849px) {
  .sponsor .about-icon {
    display: block;
  }
  .sponsor .about-icon__item:nth-child(1) {
    margin-bottom: 15px;
    margin-right: 0;
  }
  .sponsor .about-icon__item:nth-child(1) .balloon {
    -webkit-box-sizing: border-box;
    background: #009b63;
    border-radius: 10px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
    padding: 10px 25px;
    position: relative;
    text-align: center;
    width: 100%;
  }
  .sponsor .about-icon__item:nth-child(1) .balloon:before {
    border: 7px solid transparent;
    border-top: 8px solid #009b63;
    bottom: 0;
    content: "";
    left: 50%;
    margin-bottom: -15px;
    position: absolute;
    top: auto;
  }
  .sponsor .about-icon__item:nth-child(2) {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 10px;
    margin-right: 0;
  }
  .sponsor .about-icon__item:nth-child(2) .icon {
    -webkit-box-sizing: border-box;
    background: #fff;
    border: 2px solid #000;
    border-radius: 50%;
    box-sizing: border-box;
    display: inline-block;
    height: 30px;
    margin-right: 5px;
    padding-top: 2px;
    position: relative;
    text-align: center;
    top: 4px;
    width: 30px;
  }
  .sponsor .about-icon__item:nth-child(2) .icon img {
    height: auto;
    vertical-align: baseline;
    width: 65%;
  }
  .sponsor .about-icon__item:nth-child(3) {
    font-size: 16px;
    font-size: 1rem;
  }
  .sponsor .about-icon__item:nth-child(3) .icon {
    -webkit-box-sizing: border-box;
    background: #fff;
    border: 2px solid #000;
    border-radius: 50%;
    box-sizing: border-box;
    display: inline-block;
    height: 30px;
    margin-right: 5px;
    padding-top: 2px;
    position: relative;
    text-align: center;
    top: 4px;
    width: 30px;
  }
  .sponsor .about-icon__item:nth-child(3) .icon img {
    height: auto;
    vertical-align: baseline;
    width: 46%;
  }
}

.sponsor .sponsor-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 40px;
}

.sponsor .sponsor-layout__item {
  display: block;
  margin-bottom: 30px;
  position: relative;
  width: 24%;
}

.sponsor .sponsor-layout__item:not(:nth-child(4n)) {
  margin-right: 1.3%;
}

.sponsor .sponsor-layout__item:hover .banner-layout__img {
  border: 3px solid #009b63;
}

.sponsor .sponsor-layout__item:hover .banner-layout__text {
  color: #009b63;
}

.sponsor .sponsor-layout .icon {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 2px solid #000;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block;
  height: 34px;
  left: -10px;
  margin-right: 5px;
  padding-top: 2px;
  position: absolute;
  text-align: center;
  top: -10px;
  width: 34px;
}

.sponsor .sponsor-layout .icon--kids img {
  height: auto;
  vertical-align: baseline;
  width: 65%;
}

.sponsor .sponsor-layout .icon--company img {
  height: auto;
  vertical-align: baseline;
  width: 45%;
}

.sponsor .sponsor-layout .banner-layout__img {
  -webkit-box-sizing: border-box;
  -webkit-transition: all .3s;
  border: 3px solid #e5e5e5;
  border-radius: 10px;
  box-sizing: border-box;
  margin-bottom: 8px;
  padding: 4px;
  transition: all .3s;
}

.sponsor .sponsor-layout .banner-layout__text {
  -webkit-transition: all .3s;
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0;
  line-height: 1.6;
  transition: all .3s;
}

.sponsor .sponsor-layout .banner-layout__text .ex1 {
  letter-spacing: -0.8px;
}

@media screen and (max-width: 849px) {
  .sponsor .sponsor-layout {
    margin-bottom: 40px;
  }
  .sponsor .sponsor-layout__item {
    display: block;
    margin-bottom: 30px;
    position: relative;
    width: 48%;
  }
  .sponsor .sponsor-layout__item:not(:nth-child(4n)) {
    margin-right: 0%;
  }
  .sponsor .sponsor-layout__item:not(:nth-child(2n)) {
    margin-right: 4%;
  }
  .sponsor .sponsor-layout .icon {
    height: 24px;
    left: -8px;
    top: -8px;
    width: 24px;
  }
  .sponsor .sponsor-layout .icon--kids img {
    height: auto;
    vertical-align: top;
    width: 65%;
  }
  .sponsor .sponsor-layout .icon--company img {
    height: auto;
    vertical-align: top;
    width: 45%;
  }
  .sponsor .sponsor-layout .banner-layout__text .ex1 {
    letter-spacing: 0;
  }
}

.sponsor .sponsor-layout-s {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 40px;
}

.sponsor .sponsor-layout-s__item {
  display: block;
  margin-bottom: 30px;
  position: relative;
  width: 15%;
}

.sponsor .sponsor-layout-s__item:not(:nth-child(6n)) {
  margin-right: 1.9%;
}

.sponsor .sponsor-layout-s__item:hover .banner {
  border: 3px solid #009b63;
}

.sponsor .sponsor-layout-s .icon {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 1px solid #000;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block;
  height: 24px;
  left: -6px;
  margin-right: 5px;
  padding-top: 2px;
  position: absolute;
  text-align: center;
  top: -6px;
  width: 24px;
}

.sponsor .sponsor-layout-s .icon--kids img {
  height: auto;
  vertical-align: top;
  width: 65%;
}

.sponsor .sponsor-layout-s .icon--company img {
  height: auto;
  margin-top: 1px;
  vertical-align: top;
  width: 45%;
}

.sponsor .sponsor-layout-s .banner {
  -webkit-box-sizing: border-box;
  -webkit-transition: all .3s;
  border: 3px solid #e5e5e5;
  border-radius: 10px;
  box-sizing: border-box;
  margin-bottom: 8px;
  padding: 4px;
  transition: all .3s;
}

@media screen and (max-width: 849px) {
  .sponsor .sponsor-layout-s {
    margin-bottom: 40px;
  }
  .sponsor .sponsor-layout-s__item {
    display: block;
    margin-bottom: 15px;
    position: relative;
    width: 30%;
  }
  .sponsor .sponsor-layout-s__item:not(:nth-child(6n)) {
    margin-right: 0;
  }
  .sponsor .sponsor-layout-s__item:not(:nth-child(3n)) {
    margin-right: 5%;
  }
  .sponsor .sponsor-layout-s__item:hover .banner {
    border: 3px solid #009b63;
  }
  .sponsor .sponsor-layout-s .icon {
    -webkit-box-sizing: border-box;
    background: #fff;
    border: 1px solid #000;
    border-radius: 50%;
    box-sizing: border-box;
    display: inline-block;
    height: 24px;
    left: -7px;
    margin-right: 5px;
    padding-top: 2px;
    position: absolute;
    text-align: center;
    top: -7px;
    width: 24px;
  }
  .sponsor .sponsor-layout-s .icon--kids img {
    height: auto;
    vertical-align: top;
    width: 65%;
  }
  .sponsor .sponsor-layout-s .icon--company img {
    height: auto;
    margin-top: 1px;
    vertical-align: top;
    width: 45%;
  }
}

.sponsor .ad {
  text-align: center;
}

.sponsor .ad__heading {
  border-bottom: 6px solid #009b63;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 50px;
  padding-bottom: 10px;
}

.sponsor .ad__text {
  line-height: 1.8;
  margin-bottom: 1.8em;
}

.sponsor .ad__illust {
  margin: 0 auto 50px;
  width: 400px;
}

@media screen and (max-width: 849px) {
  .sponsor .ad__heading {
    font-size: 24px;
    font-size: 1.5rem;
    margin-bottom: 30px;
  }
  .sponsor .ad__text {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 1.8em;
    text-align: left;
  }
  .sponsor .ad__illust {
    margin: 0 auto 40px;
    width: 100%;
  }
}

.stamp {
  /* list */
}

.stamp .content-area {
  background-image: url(../images/stamp/bg1.png), url(../images/stamp/bg2.png);
  background-position: center top, center top;
  background-repeat: no-repeat, repeat;
  background-size: cover, auto;
  letter-spacing: .14em;
  line-height: 2.4;
  overflow: hidden;
  padding: 0;
  padding-top: 170px;
  position: relative;
}

.stamp .content-area .inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 30px 4% 60px;
  width: 100%;
}

.stamp .content-area .inner2 {
  -webkit-box-sizing: border-box;
  background: url(../images/stamp/bg3.jpg) repeat center top;
  background-size: cover;
  box-sizing: border-box;
  line-height: 1.8;
  padding: 30px 4%;
}

@media screen and (max-width: 849px) {
  .stamp .content-area {
    background-image: url(../images/stamp/bg1_sp.png), url(../images/stamp/bg2.png);
    background-position: center top, center top;
    background-repeat: no-repeat, repeat;
    background-size: contain, auto;
    letter-spacing: .14em;
    line-height: 2.4;
    overflow: hidden;
    padding: 40px 0 0;
  }
  .stamp .content-area .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 5% 60px;
    width: 100%;
  }
  .stamp .content-area .inner2 {
    -webkit-box-sizing: border-box;
    background: url(../images/stamp/bg3.jpg) repeat center top;
    background-size: cover;
    box-sizing: border-box;
    line-height: 1.8;
    padding: 30px 5%;
  }
}

.stamp.stamp-list .content-area {
  background-image: url(../images/stamp/bg1.png), url(../images/stamp/bg2.png);
  background-position: center top, center top;
  background-repeat: no-repeat, repeat;
  background-size: cover, auto;
  letter-spacing: .14em;
  line-height: 2.4;
  overflow: hidden;
  padding: 0;
  padding-top: 0;
}

.stamp.stamp-list .content-area .inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 80px 4% 60px;
  width: 100%;
}

.stamp.stamp-list .content-area .inner2 {
  -webkit-box-sizing: border-box;
  background: url(../images/stamp/bg3.jpg) repeat center top;
  background-size: cover;
  box-sizing: border-box;
  line-height: 1.8;
  padding: 30px 4%;
}

@media screen and (max-width: 849px) {
  .stamp.stamp-list .content-area {
    background-image: url(../images/stamp/bg1_sp.png), url(../images/stamp/bg2.png);
    background-position: center top, center top;
    background-repeat: no-repeat, repeat;
    background-size: contain, auto;
    letter-spacing: .14em;
    line-height: 2.4;
    overflow: hidden;
    padding: 40px 0 0;
  }
  .stamp.stamp-list .content-area .inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 30px 5% 60px;
    width: 100%;
  }
  .stamp.stamp-list .content-area .inner2 {
    -webkit-box-sizing: border-box;
    background: url(../images/stamp/bg3.jpg) repeat center top;
    background-size: cover;
    box-sizing: border-box;
    line-height: 1.8;
    padding: 30px 5%;
  }
}

.stamp .label {
  background: #020024;
  background: -webkit-gradient(linear, left top, right top, from(rgba(2, 0, 36, 0)), color-stop(15%, #322c19), to(#322c19));
  background: -webkit-linear-gradient(left, rgba(2, 0, 36, 0) 0%, #322c19 15%, #322c19 100%);
  background: linear-gradient(90deg, rgba(2, 0, 36, 0) 0%, #322c19 15%, #322c19 100%);
  color: #fff;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  padding: 6px 10px 8px 70px;
  position: absolute;
  right: 0;
  top: 80px;
}

@media screen and (max-width: 849px) {
  .stamp .label {
    font-size: 12px;
    font-size: 0.75rem;
    letter-spacing: .04em;
    padding: 1px 10px 3px 30px;
    position: absolute;
    right: 0;
    top: 20px;
  }
}

.stamp .read {
  margin-bottom: 0;
  text-align: center;
}

.stamp .read__end {
  margin-top: 1.5em;
}

.stamp .read .large {
  font-size: 40px;
  font-size: 2.5rem;
  letter-spacing: .2em;
  margin-bottom: 40px;
}

@media screen and (max-width: 849px) {
  .stamp .read {
    line-height: 1.8;
    margin-bottom: 0;
    text-align: left;
  }
  .stamp .read .large {
    font-size: 7vw;
    letter-spacing: .12em;
    line-height: 1.8;
    margin-bottom: 30px;
    margin-left: 1em;
    text-align: center;
  }
  .stamp .read .brackets {
    display: none;
  }
}

.stamp .frame {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 50px auto;
  padding: 30px 40px;
  position: relative;
  width: 88%;
}

.stamp .frame__img {
  margin-right: 4%;
  width: 18%;
}

.stamp .frame__text {
  width: 78%;
}

.stamp .frame:before {
  background: url(../images/stamp/frame1_top.png) no-repeat center top;
  background-size: contain;
  content: "";
  height: 58px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.stamp .frame:after {
  background: url(../images/stamp/frame1_bottom.png) no-repeat center top;
  background-size: contain;
  bottom: 0;
  content: "";
  height: 58px;
  left: 0;
  position: absolute;
  right: 0;
  width: 100%;
}

@media screen and (max-width: 849px) {
  .stamp .frame {
    display: block;
    margin: 30px auto 30px;
    padding: 30px 15px 50px;
    width: 100%;
  }
  .stamp .frame__img {
    margin: 0 auto 20px;
    width: 50%;
  }
  .stamp .frame__text {
    width: 100%;
  }
  .stamp .frame:before {
    background: url(../images/stamp/frame1_top_sp.png) no-repeat center top;
    background-size: contain;
    content: "";
    height: 58px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
  }
  .stamp .frame:after {
    background: url(../images/stamp/frame1_bottom_sp.png) no-repeat center top;
    background-size: contain;
    bottom: 0;
    content: "";
    height: 58px;
    left: 0;
    position: absolute;
    right: 0;
    width: 100%;
  }
}

.stamp .frame-layout {
  text-align: left;
}

.stamp .frame-layout__heading {
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.8;
  margin-bottom: 20px;
}

.stamp .frame-layout__text {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.7;
}

.stamp .download {
  -webkit-box-sizing: border-box;
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
  padding: 30px;
}

.stamp .download__item:nth-child(1) {
  width: 46%;
}

.stamp .download__item:nth-child(1) .style-btn {
  margin: 50px auto 0;
}

.stamp .download__item:nth-child(2) {
  width: 50%;
}

@media screen and (max-width: 849px) {
  .stamp .download {
    -ms-flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 30px;
    padding: 30px;
  }
  .stamp .download__item .style-btn {
    margin: 30px 0 30px;
  }
  .stamp .download__item:nth-child(1) {
    margin-bottom: 15px;
    width: 100%;
  }
  .stamp .download__item:nth-child(2) {
    width: 100%;
  }
}

.stamp .why {
  -webkit-box-sizing: border-box;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 20px;
  box-sizing: border-box;
  margin-bottom: 50px;
  padding: 30px;
  position: relative;
}

.stamp .why__stamp-left {
  display: block;
  left: -10px;
  position: absolute;
  top: -10px;
  width: 223px;
}

.stamp .why__stamp-right {
  display: block;
  position: absolute;
  right: -10px;
  top: -8px;
  width: 187px;
}

.stamp .why__title {
  margin-top: 80px;
  text-align: center;
}

.stamp .why__title .balloon {
  background: url(../images/stamp/why_balloon.svg) no-repeat center;
  color: #fff;
  display: block;
  font-size: 32px;
  font-size: 2rem;
  height: 99px;
  left: 0;
  margin: 0 auto;
  padding-top: 20px;
  position: absolute;
  right: 0;
  top: -15px;
  width: 273px;
}

.stamp .why__title .text {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #ffed64));
  background: -webkit-linear-gradient(transparent 70%, #ffed64 0%);
  background: linear-gradient(transparent 70%, #ffed64 0%);
  display: inline;
  font-size: 34px;
  font-size: 2.125rem;
  padding: 0 2px 4px;
}

@media screen and (max-width: 849px) {
  .stamp .why {
    margin-bottom: 30px;
  }
  .stamp .why__stamp-left {
    display: block;
    left: -10px;
    position: absolute;
    top: -10px;
    width: 123px;
  }
  .stamp .why__stamp-right {
    display: block;
    position: absolute;
    right: -10px;
    top: -8px;
    width: 87px;
  }
  .stamp .why__title {
    margin-top: 30px;
    text-align: center;
  }
  .stamp .why__title .balloon {
    background: url(../images/stamp/why_balloon.svg) no-repeat center;
    background-size: contain;
    color: #fff;
    font-size: 18px;
    font-size: 1.125rem;
    height: 60px;
    left: 0;
    margin: 0 auto;
    padding-top: 20px;
    position: absolute;
    right: 0;
    top: -15px;
    width: 160px;
  }
  .stamp .why__title .text {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #ffed64));
    background: -webkit-linear-gradient(transparent 70%, #ffed64 0%);
    background: linear-gradient(transparent 70%, #ffed64 0%);
    display: inline;
    font-size: 4.8vw;
    padding: 0 2px 4px;
  }
}

.stamp .btn-layout, .stamp .nav-stamp {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin: 30px 0;
}

.stamp .btn-layout__item, .stamp .nav-stamp__item {
  width: 28%;
}

.stamp .btn-layout__item:not(:last-child), .stamp .nav-stamp__item:not(:last-child) {
  margin-right: 4%;
}

.stamp .btn-layout .btn, .stamp .nav-stamp .btn {
  -webkit-box-sizing: border-box;
  background: #a6639c;
  border: 3px solid #fff;
  border-radius: 50px;
  box-sizing: border-box;
  color: #fff;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 50px auto 20px;
  padding: 8px 15px 17px;
  position: relative;
  text-align: center;
  width: 30%;
}

.stamp .btn-layout .btn .btn-inner, .stamp .nav-stamp .btn .btn-inner {
  display: inline-block;
}

.stamp .btn-layout .btn .btn-inner:before, .stamp .nav-stamp .btn .btn-inner:before {
  -webkit-transform: translateY(-50%);
  background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 7px;
  left: 20px;
  margin-right: 8px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
}

.stamp .btn-layout .btn .btn-inner .large, .stamp .nav-stamp .btn .btn-inner .large {
  font-size: 28px;
  font-size: 1.75rem;
}

.stamp .btn-layout .btn:hover, .stamp .nav-stamp .btn:hover {
  background: #c47ab8;
}

.stamp .btn-layout .btn--active, .stamp .nav-stamp .btn--active {
  background: #8a8a8a;
}

.stamp .btn-layout .btn--active:hover, .stamp .nav-stamp .btn--active:hover {
  background: #aaaaaa;
}

@media screen and (max-width: 849px) {
  .stamp .btn-layout, .stamp .nav-stamp {
    display: block;
    margin: 30px 0 0;
  }
  .stamp .btn-layout__item, .stamp .nav-stamp__item {
    width: 100%;
  }
  .stamp .btn-layout__item:not(:last-child), .stamp .nav-stamp__item:not(:last-child) {
    margin-right: 0;
  }
  .stamp .btn-layout .btn, .stamp .nav-stamp .btn {
    -webkit-box-sizing: border-box;
    background: #a6639c;
    border-radius: 50px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 4.0vw;
    font-weight: 700;
    line-height: 1.4;
    margin: 15px auto 10px;
    padding: 4px 5px 12px 20px;
    position: relative;
    text-align: center;
    width: 100%;
  }
  .stamp .btn-layout .btn .btn-inner, .stamp .nav-stamp .btn .btn-inner {
    display: inline-block;
  }
  .stamp .btn-layout .btn .btn-inner:before, .stamp .nav-stamp .btn .btn-inner:before {
    -webkit-transform: translateY(-50%);
    background: url(../images/common/icon_arrow_right_white.svg) no-repeat center;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 7px;
    left: 15px;
    margin-right: 8px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
  }
  .stamp .btn-layout .btn .btn-inner .large, .stamp .nav-stamp .btn .btn-inner .large {
    font-size: 5.4vw;
  }
  .stamp .btn-layout .btn:hover, .stamp .nav-stamp .btn:hover {
    background: #c47ab8;
  }
  .stamp .btn-layout .btn--active, .stamp .nav-stamp .btn--active {
    background: #8a8a8a;
  }
  .stamp .btn-layout .btn--active:hover, .stamp .nav-stamp .btn--active:hover {
    background: #aaaaaa;
  }
}

.stamp .gakkai {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 2px solid #3d350e;
  border-top: 2px solid #3d350e;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 15px 0;
  width: 80%;
}

.stamp .gakkai__item:nth-child(1) {
  -webkit-box-sizing: border-box;
  border-right: 2px solid #3d350e;
  box-sizing: border-box;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  margin-right: 2%;
  padding-right: 2%;
  text-align: center;
  width: 43%;
}

.stamp .gakkai__item:nth-child(2) {
  font-size: 18px;
  font-size: 1.125rem;
  width: 53%;
}

.stamp .gakkai__item:nth-child(2) a {
  color: #a6639c;
  text-decoration: underline;
}

.stamp .gakkai__item:nth-child(2) a:hover {
  text-decoration: none;
}

@media screen and (max-width: 849px) {
  .stamp .gakkai {
    display: block;
    margin: 30px auto 0;
    padding: 15px 0;
    width: 100%;
  }
  .stamp .gakkai__item:nth-child(1) {
    -webkit-box-sizing: border-box;
    border-bottom: 2px dotted #ccc;
    border-right: none;
    box-sizing: border-box;
    font-size: 17px;
    font-size: 1.0625rem;
    margin-bottom: 10px;
    margin-right: 0;
    padding-bottom: 10px;
    padding-right: 0;
    text-align: left;
    width: 100%;
  }
  .stamp .gakkai__item:nth-child(2) {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
  }
  .stamp .gakkai__item:nth-child(2) a {
    color: #a6639c;
    text-decoration: underline;
    word-break: break-all;
  }
  .stamp .gakkai__item:nth-child(2) a:hover {
    text-decoration: none;
  }
}

.stamp .club {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  border: 2px solid #978259;
  border-radius: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  overflow: hidden;
}

.stamp .club__item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.stamp .club__item:nth-child(1) {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #978259;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  font-weight: 700;
  justify-content: center;
  text-align: center;
  width: 40%;
}

.stamp .club__item:nth-child(1) .large {
  font-size: 24px;
  font-size: 1.5rem;
}

.stamp .club__item:nth-child(2) {
  -webkit-box-sizing: border-box;
  background: #fff;
  box-sizing: border-box;
  padding: 20px 30px;
  width: 60%;
}

@media screen and (max-width: 849px) {
  .stamp .club {
    border: 2px solid #978259;
    display: block;
  }
  .stamp .club__item:nth-child(1) {
    display: block;
    font-size: 16px;
    font-size: 1rem;
    padding: 10px;
    width: 100%;
  }
  .stamp .club__item:nth-child(1) .large {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.4;
  }
  .stamp .club__item:nth-child(2) {
    padding: 20px 20px;
    text-align: center;
    width: 100%;
  }
}

.stamp .club-title {
  font-weight: 700;
  margin-bottom: 10px;
}

.stamp .club-title__frame {
  -webkit-box-sizing: border-box;
  border: 2px solid #978259;
  border-radius: 8px;
  box-sizing: border-box;
  display: inline-block;
  margin-right: 2.2em;
  padding: 2px 5px;
}

@media screen and (max-width: 849px) {
  .stamp .club-title {
    margin-bottom: 10px;
  }
  .stamp .club-title__frame {
    border-radius: 8px;
    display: block;
    margin-right: 0;
    padding: 2px 5px;
    width: auto;
  }
}

.stamp .club-list {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.stamp .club-list__item {
  font-size: 16px;
  font-size: 1rem;
  width: 20%;
}

.stamp .club-list__item:first-child {
  width: 30%;
}

@media screen and (max-width: 849px) {
  .stamp .club-list {
    display: block;
    width: 100%;
  }
  .stamp .club-list__item {
    width: 100%;
  }
  .stamp .club-list__item:first-child {
    width: 100%;
  }
}

.stamp .nav-stamp {
  margin: 60px 0 0;
}

.stamp .nav-stamp .btn {
  margin: 0 auto;
}

@media screen and (max-width: 849px) {
  .stamp .nav-stamp {
    margin: 0 0 0;
  }
  .stamp .nav-stamp .btn {
    margin-bottom: 15px;
  }
}

.stamp .download-list {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-sizing: border-box;
  align-items: center;
  background: rgba(255, 255, 255, 0.7);
  border-radius: 20px;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px 0;
  padding: 30px 20px;
  position: relative;
}

.stamp .download-list__chara {
  bottom: 0;
  display: block;
  left: 10px;
  position: absolute;
  width: 132px;
}

.stamp .download-list__text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.8;
  padding-left: 150px;
  width: 70%;
}

.stamp .download-list__btn {
  width: 30%;
}

@media screen and (max-width: 849px) {
  .stamp .download-list {
    display: block;
    margin: 40px 0;
    padding: 30px 20px 10px;
  }
  .stamp .download-list__chara {
    bottom: auto;
    display: block;
    display: none;
    left: 10px;
    position: absolute;
    top: 0;
    width: 100px;
  }
  .stamp .download-list__text {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 5vw;
    font-weight: 700;
    line-height: 1.8;
    padding-left: 0;
    text-align: center;
    width: 100%;
  }
  .stamp .download-list__btn {
    width: 100%;
  }
}

.stamp .table-wrap {
  margin-top: 50px;
}

@media screen and (max-width: 849px) {
  .stamp .table-wrap {
    margin-bottom: 40px;
    overflow: auto;
    white-space: nowrap;
    width: 100%;
  }
  .stamp .table-wrap::-webkit-scrollbar {
    height: 15px;
  }
  .stamp .table-wrap::-webkit-scrollbar-track {
    background: #333;
  }
  .stamp .table-wrap::-webkit-scrollbar-thumb {
    background: #999;
  }
}

.stamp .table-layout {
  -webkit-box-sizing: border-box;
  background: #fff;
  border: 3px solid #000;
  border-collapse: separate;
  border-radius: 12px;
  border-spacing: 0;
  box-sizing: border-box;
}

.stamp .table-layout th, .stamp .table-layout td {
  border-bottom: #ccc solid 1px;
  border-right: #ccc solid 1px;
  letter-spacing: 0;
  line-height: 1.4;
}

.stamp .table-layout th {
  font-size: 16px;
  font-size: 1rem;
  padding: 4px 2px;
  text-align: center;
  vertical-align: middle;
}

.stamp .table-layout th:nth-child(1) {
  width: 4%;
}

.stamp .table-layout th:nth-child(2) {
  width: 5%;
}

.stamp .table-layout th:nth-child(3) {
  width: 12%;
}

.stamp .table-layout th:nth-child(4) {
  width: 29%;
}

.stamp .table-layout th:nth-child(5) {
  width: 27%;
}

.stamp .table-layout th:nth-child(6) {
  width: 23%;
}

.stamp .table-layout td {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 8px 8px;
  vertical-align: middle;
}

.stamp .table-layout td:nth-child(1) {
  text-align: center;
}

.stamp .table-layout td:nth-child(2) {
  text-align: center;
}

.stamp .table-layout td:nth-child(3) {
  text-align: center;
}

.stamp .table-layout td:nth-child(4) {
  text-align: left;
}

.stamp .table-layout td:nth-child(5) {
  text-align: left;
}

.stamp .table-layout td:nth-child(6) {
  text-align: left;
}

.stamp .table-layout .symbol {
  -webkit-box-sizing: border-box;
  border-radius: 8px;
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-weight: 700;
  height: 42px;
  letter-spacing: 0;
  line-height: 1;
  padding-top: 11px;
  text-align: center;
  width: 42px;
}

.stamp .table-layout .symbol--red {
  background: #de395c;
}

.stamp .table-layout .symbol--light-green {
  background: #a3b638;
}

.stamp .table-layout .symbol--yellow {
  background: #e6a72c;
}

.stamp .table-layout .symbol--blue {
  background: #436fbf;
}

.stamp .table-layout .symbol--light-blue {
  background: #42bcc0;
}

.stamp .table-layout .symbol--blue-green {
  background: #318386;
}

.stamp .table-layout .symbol--purple {
  background: #9c74b1;
}

.stamp .table-layout .symbol--pink {
  background: #c154a4;
}

.stamp .table-layout .symbol--brown {
  background: #ad9470;
}

.stamp .table-layout .symbol-name {
  display: block;
  font-weight: 700;
  margin-bottom: 3px;
}

.stamp .table-layout .symbol-name-en {
  display: block;
  font-size: 12px;
  font-size: 0.75rem;
}

.stamp .table-layout .table-layout1 {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.stamp .table-layout .table-layout1__left {
  width: 30%;
}

.stamp .table-layout .table-layout1__right {
  font-size: 13px;
  font-size: 0.8125rem;
  text-align: right;
  white-space: normal;
  width: 70%;
}

.stamp .table-layout .right-layout {
  -ms-flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.stamp .table-layout .right-layout__right {
  margin-left: 5px;
}

.stamp .table-layout sub {
  font-size: 11px;
  font-size: 0.6875rem;
}

.stamp .table-layout sup {
  font-size: 11px;
  font-size: 0.6875rem;
  position: relative;
  top: -.4em;
}

.stamp .back-btn .style-btn {
  width: 45%;
}

@media screen and (max-width: 849px) {
  .stamp .back-btn {
    margin-top: 40px;
  }
  .stamp .back-btn .style-btn {
    font-size: 4vw;
    letter-spacing: .04em;
    width: 100%;
  }
}

/*---------------------------------------------
spmenu
---------------------------------------------*/
.spmenu {
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9000;
}

.spmenu-wrap {
  background: #056d2f;
  display: none;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.spmenu-wrap .spmenu-inner {
  height: 100vh;
}

.spmenu-wrap .spmenu-inner .spmenu-list {
  -webkit-box-sizing: border-box;
  -ms-overflow-style: none;
  box-sizing: border-box;
  display: block;
  height: 100%;
  margin: auto;
  overflow-y: scroll;
  padding: 20px 0;
  width: 100%;
}

.spmenu-wrap .spmenu-inner .spmenu-list::-webkit-scrollbar {
  display: none;
}

.spmenu-wrap .spmenu-list .spmenu-list__item {
  margin: 0 auto;
  text-align: center;
}

.spmenu-wrap .spmenu-list .spmenu-list__item--logo {
  margin-bottom: 20px;
  width: 50%;
}

.spmenu-wrap .spmenu-list .spmenu-list__item:last-child {
  border: none;
  margin-bottom: 100px;
}

.spmenu-wrap .spmenu-list .spmenu-list__item:last-child a:after {
  background: #74d6b3;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  width: 100%;
}

.spmenu-wrap .spmenu-list .spmenu-list__item a {
  border-bottom: none;
  color: #fff;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  padding: 16px 0;
  position: relative;
  text-decoration: none;
}

.spmenu-wrap .spmenu-list .spmenu-list__item a:before {
  background: #74d6b3;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  margin: 0 auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

@media screen and (min-width: 850px) {
  .spmenu-wrap .spmenu-list .spmenu-list__item a:hover {
    background: #303030;
  }
}

/*開閉ボタン*/
.spmenu-toggle {
  -webkit-box-sizing: border-box;
  background: #056d2f;
  border-radius: 10px;
  box-sizing: border-box;
  display: block;
  height: 60px;
  position: absolute;
  right: 10px;
  top: 10px;
  width: 60px;
  z-index: 9000;
}

@media screen and (min-width: 850px) {
  .spmenu-toggle:hover {
    background: #fff;
    border: 1px solid #410000;
    cursor: pointer;
  }
  .spmenu-toggle:hover span {
    background: #410000;
  }
}

.spmenu-toggle div {
  position: relative;
}

.spmenu-toggle span {
  -webkit-transition: 0.3s ease-in-out;
  background: #fff;
  border-radius: 1px;
  display: block;
  height: 2px;
  left: 17.5px;
  margin: 0 auto;
  position: absolute;
  transition: 0.3s ease-in-out;
  width: 100%;
}

.spmenu-toggle span:nth-child(1) {
  top: 20px;
  width: 25px;
}

.spmenu-toggle span:nth-child(2) {
  top: 30px;
  width: 25px;
}

.spmenu-toggle span:nth-child(3) {
  top: 40px;
  width: 25px;
}

/*開閉ボタンopen時*/
.open .spmenu-toggle {
  background: #fff;
  border: 1px solid #fff;
}

.open .spmenu-toggle span {
  background: #009b63;
}

.open .spmenu-toggle span:nth-child(1) {
  -webkit-transform: rotate(135deg);
  top: 29px;
  transform: rotate(135deg);
}

.open .spmenu-toggle span:nth-child(2) {
  left: 50%;
  width: 0;
}

.open .spmenu-toggle span:nth-child(3) {
  -webkit-transform: rotate(-135deg);
  top: 29px;
  transform: rotate(-135deg);
  width: 25px;
}

/* 展開時背景コンテンツ固定 */
.scroll-prevent {
  height: 100%;
  position: fixed;
  width: 100%;
  z-index: -1;
}
